diff options
author | Peter Levine <plevine457@gmail.com> | 2017-06-23 22:21:10 -0400 |
---|---|---|
committer | Alexis Ballier <aballier@gentoo.org> | 2017-06-25 17:09:44 +0200 |
commit | de5e1e1e04de972badd3a92832270c31acc19e70 (patch) | |
tree | e2070d364f12d058b38465730369dacb2a95e498 /dev-libs/OpenNI | |
parent | dev-ml/ppx_jane: add missing dev-ml/ppx_type_conv:= dep (diff) | |
download | gentoo-de5e1e1e04de972badd3a92832270c31acc19e70.tar.gz gentoo-de5e1e1e04de972badd3a92832270c31acc19e70.tar.bz2 gentoo-de5e1e1e04de972badd3a92832270c31acc19e70.zip |
dev-libs/OpenNI: Fix building with GCC-6
Bug: https://bugs.gentoo.org/show_bug.cgi?id=594988
Package-Manager: Portage-2.3.6, Repoman-2.3.2
Diffstat (limited to 'dev-libs/OpenNI')
-rw-r--r-- | dev-libs/OpenNI/OpenNI-1.5.7.10.ebuild | 5 | ||||
-rw-r--r-- | dev-libs/OpenNI/OpenNI-9999.ebuild | 5 | ||||
-rw-r--r-- | dev-libs/OpenNI/files/OpenNI-1.5.7.10-gcc6.patch | 145 |
3 files changed, 151 insertions, 4 deletions
diff --git a/dev-libs/OpenNI/OpenNI-1.5.7.10.ebuild b/dev-libs/OpenNI/OpenNI-1.5.7.10.ebuild index d30b883c574c..af12cd1ce875 100644 --- a/dev-libs/OpenNI/OpenNI-1.5.7.10.ebuild +++ b/dev-libs/OpenNI/OpenNI-1.5.7.10.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2015 Gentoo Foundation +# Copyright 1999-2017 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=5 @@ -43,7 +43,8 @@ src_prepare() { epatch \ "${FILESDIR}/tinyxml.patch" \ "${FILESDIR}/jpeg.patch" \ - "${FILESDIR}/soname.patch" + "${FILESDIR}/soname.patch" \ + "${FILESDIR}/${P}-gcc6.patch" rm -rf External/{LibJPEG,TinyXml} for i in Platform/Linux/Build/Common/Platform.* Externals/PSCommon/Linux/Build/Platform.* ; do diff --git a/dev-libs/OpenNI/OpenNI-9999.ebuild b/dev-libs/OpenNI/OpenNI-9999.ebuild index d30b883c574c..79a0be764ee3 100644 --- a/dev-libs/OpenNI/OpenNI-9999.ebuild +++ b/dev-libs/OpenNI/OpenNI-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2015 Gentoo Foundation +# Copyright 1999-2017 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=5 @@ -43,7 +43,8 @@ src_prepare() { epatch \ "${FILESDIR}/tinyxml.patch" \ "${FILESDIR}/jpeg.patch" \ - "${FILESDIR}/soname.patch" + "${FILESDIR}/soname.patch" \ + "${FILESDIR}/${PN}-1.5.7.10-gcc6.patch" rm -rf External/{LibJPEG,TinyXml} for i in Platform/Linux/Build/Common/Platform.* Externals/PSCommon/Linux/Build/Platform.* ; do diff --git a/dev-libs/OpenNI/files/OpenNI-1.5.7.10-gcc6.patch b/dev-libs/OpenNI/files/OpenNI-1.5.7.10-gcc6.patch new file mode 100644 index 000000000000..2b93d8c642b9 --- /dev/null +++ b/dev-libs/OpenNI/files/OpenNI-1.5.7.10-gcc6.patch @@ -0,0 +1,145 @@ +Bug: https://bugs.gentoo.org/594988 +Upstream PR: https://github.com/OpenNI/OpenNI/pull/122 + +diff -Naur a/Samples/NiUserSelection/glh/glh_linear.h b/Samples/NiUserSelection/glh/glh_linear.h +--- a/Samples/NiUserSelection/glh/glh_linear.h 2013-11-12 11:30:03.000000000 -0500 ++++ b/Samples/NiUserSelection/glh/glh_linear.h 2017-06-22 18:43:34.470107723 -0400 +@@ -77,7 +77,7 @@ + #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 is_equivalent(a,b) (((a < b + GLH_EPSILON) && (a > b - GLH_EPSILON)) ? true : false)
+
+ namespace glh
+ {
+@@ -1093,7 +1093,7 @@ +
+ 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 = (is_equivalent(norm,GLH_ZERO)) ? GLH_ZERO : ( GLH_TWO / norm );
+
+ xs = q[0] * s;
+ ys = q[1] * s;
+@@ -1194,7 +1194,7 @@ + theta *= real(0.5);
+ real sin_theta = real(sin(theta));
+
+- if (!equivalent(sqnorm,GLH_ONE))
++ if (!is_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 @@ +
+ alpha = p1.dot(p2);
+
+- if(equivalent(alpha,GLH_ONE))
++ if(is_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(is_equivalent(alpha,-GLH_ONE))
+ {
+ vec3 v;
+
+@@ -1280,7 +1280,7 @@ + void normalize()
+ {
+ real rnorm = GLH_ONE / real(sqrt(w * w + x * x + y * y + z * z));
+- if (equivalent(rnorm, GLH_ZERO))
++ if (is_equivalent(rnorm, GLH_ZERO))
+ return;
+ x *= rnorm;
+ y *= rnorm;
+@@ -1439,10 +1439,10 @@ + 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 (is_equivalent(q1.x, q2.x) &&
++ is_equivalent(q1.y, q2.y) &&
++ is_equivalent(q1.z, q2.z) &&
++ is_equivalent(q1.w, q2.w) );
+ }
+
+ inline
+diff -Naur a/Samples/NiViewer/glh/glh_linear.h b/Samples/NiViewer/glh/glh_linear.h +--- a/Samples/NiViewer/glh/glh_linear.h 2013-11-12 11:30:03.000000000 -0500 ++++ b/Samples/NiViewer/glh/glh_linear.h 2017-06-22 18:43:34.470107723 -0400 +@@ -77,7 +77,7 @@ + #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 is_equivalent(a,b) (((a < b + GLH_EPSILON) && (a > b - GLH_EPSILON)) ? true : false)
+
+ namespace glh
+ {
+@@ -1093,7 +1093,7 @@ +
+ 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 = (is_equivalent(norm,GLH_ZERO)) ? GLH_ZERO : ( GLH_TWO / norm );
+
+ xs = q[0] * s;
+ ys = q[1] * s;
+@@ -1194,7 +1194,7 @@ + theta *= real(0.5);
+ real sin_theta = real(sin(theta));
+
+- if (!equivalent(sqnorm,GLH_ONE))
++ if (!is_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 @@ +
+ alpha = p1.dot(p2);
+
+- if(equivalent(alpha,GLH_ONE))
++ if(is_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(is_equivalent(alpha,-GLH_ONE))
+ {
+ vec3 v;
+
+@@ -1280,7 +1280,7 @@ + void normalize()
+ {
+ real rnorm = GLH_ONE / real(sqrt(w * w + x * x + y * y + z * z));
+- if (equivalent(rnorm, GLH_ZERO))
++ if (is_equivalent(rnorm, GLH_ZERO))
+ return;
+ x *= rnorm;
+ y *= rnorm;
+@@ -1439,10 +1439,10 @@ + 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 (is_equivalent(q1.x, q2.x) &&
++ is_equivalent(q1.y, q2.y) &&
++ is_equivalent(q1.z, q2.z) &&
++ is_equivalent(q1.w, q2.w) );
+ }
+
+ inline
|