[SCM] openni2/master: Add gcc6 patch
jspricke-guest at users.alioth.debian.org
jspricke-guest at users.alioth.debian.org
Sat Jan 23 16:35:47 UTC 2016
The following commit has been merged in the master branch:
commit 35e2dbda04da55a546ca188093b86a4ae9105275
Author: Jochen Sprickerhof <git at jochen.sprickerhof.de>
Date: Sat Jan 23 15:57:22 2016 +0100
Add gcc6 patch
Closes: #812056
diff --git a/debian/patches/0013-Fix-GCC6-compilation.patch b/debian/patches/0013-Fix-GCC6-compilation.patch
new file mode 100644
index 0000000..8227c97
--- /dev/null
+++ b/debian/patches/0013-Fix-GCC6-compilation.patch
@@ -0,0 +1,190 @@
+From: Jochen Sprickerhof <git at jochen.sprickerhof.de>
+Date: Sat, 23 Jan 2016 15:56:22 +0100
+Subject: Fix GCC6 compilation
+
+* Ignore Warray-bounds
+* Rename equivalent to fix compilation on gcc6
+* Fix -Werror=misleading-indentation
+---
+ Source/Drivers/PS1080/Formats/XnFormatsMirror.cpp | 3 ++
+ ThirdParty/GL/glh/glh_glut2.h | 2 +-
+ ThirdParty/GL/glh/glh_linear.h | 66 +++++++++++------------
+ 3 files changed, 37 insertions(+), 34 deletions(-)
+
+diff --git a/Source/Drivers/PS1080/Formats/XnFormatsMirror.cpp b/Source/Drivers/PS1080/Formats/XnFormatsMirror.cpp
+index 120534c..7759333 100644
+--- a/Source/Drivers/PS1080/Formats/XnFormatsMirror.cpp
++++ b/Source/Drivers/PS1080/Formats/XnFormatsMirror.cpp
+@@ -26,6 +26,8 @@
+ #include "XnFormats.h"
+ #include <XnOS.h>
+ #include <XnLog.h>
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Warray-bounds"
+
+ //---------------------------------------------------------------------------
+ // Defines
+@@ -240,3 +242,4 @@ XnStatus XnFormatsMirrorPixelData(OniPixelFormat nOutputFormat, XnUChar* pBuffer
+ return XN_STATUS_ERROR;
+ }
+ }
++#pragma GCC diagnostic pop
+diff --git a/ThirdParty/GL/glh/glh_glut2.h b/ThirdParty/GL/glh/glh_glut2.h
+index 908a0fc..0430698 100644
+--- a/ThirdParty/GL/glh/glh_glut2.h
++++ b/ThirdParty/GL/glh/glh_glut2.h
+@@ -190,7 +190,7 @@ namespace glh
+ {
+ if (interactors.empty())
+ return;
+- std::list<glut_interactor *>::iterator it =
++ std::list<glut_interactor *>::iterator it =
+ std::find(interactors.begin(), interactors.end(), gi);
+ if(it != interactors.end())
+ interactors.erase(it);
+diff --git a/ThirdParty/GL/glh/glh_linear.h b/ThirdParty/GL/glh/glh_linear.h
+index 422c05f..2e033ba 100644
+--- a/ThirdParty/GL/glh/glh_linear.h
++++ b/ThirdParty/GL/glh/glh_linear.h
+@@ -77,7 +77,7 @@ glh_linear.h
+ #define GLH_EPSILON GLH_REAL(10e-6)
+ #define GLH_PI GLH_REAL(3.1415926535897932384626433832795)
+
+-#define equivalent(a,b) (((a < b + GLH_EPSILON) && (a > b - GLH_EPSILON)) ? true : false)
++#define glh_equivalent(a,b) (((a < b + GLH_EPSILON) && (a > b - GLH_EPSILON)) ? true : false)
+
+ namespace glh
+ {
+@@ -225,7 +225,7 @@ namespace glh
+ for(int i = 0; i < N; i++)
+ if(v1.v[i] != v2.v[i])
+ return false;
+- return true;
++ return true;
+ }
+
+ template <int N, class T> inline
+@@ -633,7 +633,7 @@ namespace glh
+ scp[i] = real(fabs(s[i][0]));
+ for(j=1;j<4;j++)
+ if(real(fabs(s[i][j])) > scp[i]) scp[i] = real(fabs(s[i][j]));
+- if(scp[i] == 0.0) return minv; // singular matrix!
++ if(scp[i] == 0.0) return minv; // singular matrix!
+ }
+
+ int pivot_to;
+@@ -647,26 +647,26 @@ namespace glh
+ for(p=i+1;p<4;p++)
+ if(real(fabs(s[p][i]/scp[p])) > scp_max)
+ { scp_max = real(fabs(s[p][i]/scp[p])); pivot_to = p; }
+- // Pivot if necessary
+- if(pivot_to != i)
+- {
+- tmprow = s[i];
+- s[i] = s[pivot_to];
+- s[pivot_to] = tmprow;
+- real tmpscp;
+- tmpscp = scp[i];
+- scp[i] = scp[pivot_to];
+- scp[pivot_to] = tmpscp;
+- }
+-
+- real mji;
+- // perform gaussian elimination
+- for(j=i+1;j<4;j++)
+- {
+- mji = s[j][i]/s[i][i];
+- s[j][i] = 0.0;
+- for(jj=i+1;jj<8;jj++)
+- s[j][jj] -= mji*s[i][jj];
++ // Pivot if necessary
++ if(pivot_to != i)
++ {
++ tmprow = s[i];
++ s[i] = s[pivot_to];
++ s[pivot_to] = tmprow;
++ real tmpscp;
++ tmpscp = scp[i];
++ scp[i] = scp[pivot_to];
++ scp[pivot_to] = tmpscp;
++ }
++
++ real mji;
++ // perform gaussian elimination
++ for(j=i+1;j<4;j++)
++ {
++ mji = s[j][i]/s[i][i];
++ s[j][i] = 0.0;
++ for(jj=i+1;jj<8;jj++)
++ s[j][jj] -= mji*s[i][jj];
+ }
+ }
+ if(s[3][3] == 0.0) return minv; // singular matrix!
+@@ -702,7 +702,7 @@ namespace glh
+ for(j=0;j<4;j++)
+ minv(i,j) = s[i][j+4] / s[i][i];
+
+- return minv;
++ return minv;
+ }
+
+
+@@ -1093,7 +1093,7 @@ namespace glh
+
+ real norm = q[0] * q[0] + q[1] * q[1] + q[2] * q[2] + q[3] * q[3];
+
+- s = (equivalent(norm,GLH_ZERO)) ? GLH_ZERO : ( GLH_TWO / norm );
++ s = (glh_equivalent(norm,GLH_ZERO)) ? GLH_ZERO : ( GLH_TWO / norm );
+
+ xs = q[0] * s;
+ ys = q[1] * s;
+@@ -1194,7 +1194,7 @@ namespace glh
+ theta *= real(0.5);
+ real sin_theta = real(sin(theta));
+
+- if (!equivalent(sqnorm,GLH_ONE))
++ if (!glh_equivalent(sqnorm,GLH_ONE))
+ sin_theta /= real(sqrt(sqnorm));
+ x = sin_theta * axis.v[0];
+ y = sin_theta * axis.v[1];
+@@ -1216,14 +1216,14 @@ namespace glh
+
+ alpha = p1.dot(p2);
+
+- if(equivalent(alpha,GLH_ONE))
++ if(glh_equivalent(alpha,GLH_ONE))
+ {
+ *this = identity();
+ return *this;
+ }
+
+ // ensures that the anti-parallel case leads to a positive dot
+- if(equivalent(alpha,-GLH_ONE))
++ if(glh_equivalent(alpha,-GLH_ONE))
+ {
+ vec3 v;
+
+@@ -1280,7 +1280,7 @@ namespace glh
+ void normalize()
+ {
+ real rnorm = GLH_ONE / real(sqrt(w * w + x * x + y * y + z * z));
+- if (equivalent(rnorm, GLH_ZERO))
++ if (glh_equivalent(rnorm, GLH_ZERO))
+ return;
+ x *= rnorm;
+ y *= rnorm;
+@@ -1439,10 +1439,10 @@ namespace glh
+ inline
+ bool operator == ( const quaternion & q1, const quaternion & q2 )
+ {
+- return (equivalent(q1.x, q2.x) &&
+- equivalent(q1.y, q2.y) &&
+- equivalent(q1.z, q2.z) &&
+- equivalent(q1.w, q2.w) );
++ return (glh_equivalent(q1.x, q2.x) &&
++ glh_equivalent(q1.y, q2.y) &&
++ glh_equivalent(q1.z, q2.z) &&
++ glh_equivalent(q1.w, q2.w) );
+ }
+
+ inline
diff --git a/debian/patches/series b/debian/patches/series
index 8a8c0f7..a690e7b 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -10,3 +10,4 @@
0009-Add-ARMhf-support.patch
0011-Mark-variables-unused.patch
0012-generic-linux.patch
+0013-Fix-GCC6-compilation.patch
--
openni2 packaging
More information about the pkg-multimedia-commits
mailing list