From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: media-libs/glm/, media-libs/glm/files/
Date: Fri, 5 Feb 2021 21:57:21 +0000 (UTC) [thread overview]
Message-ID: <1612562236.c74dcd154317d93fc07455b0f03bb442d592ca35.sam@gentoo> (raw)
commit: c74dcd154317d93fc07455b0f03bb442d592ca35
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Feb 5 21:57:16 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Feb 5 21:57:16 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c74dcd15
media-libs/glm: fix tests on big endian arches
Closes: https://bugs.gentoo.org/673972
Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../glm/files/glm-0.9.9.8-big-endian-tests.patch | 186 +++++++++++++++++++++
media-libs/glm/glm-0.9.9.8-r1.ebuild | 3 +-
2 files changed, 187 insertions(+), 2 deletions(-)
diff --git a/media-libs/glm/files/glm-0.9.9.8-big-endian-tests.patch b/media-libs/glm/files/glm-0.9.9.8-big-endian-tests.patch
new file mode 100644
index 00000000000..cc8b1b637a8
--- /dev/null
+++ b/media-libs/glm/files/glm-0.9.9.8-big-endian-tests.patch
@@ -0,0 +1,186 @@
+https://github.com/g-truc/glm/commit/06ce42e72324b32b1f4c37c646e99950c2bd5f6b.patch
+https://bugs.gentoo.org/673972
+
+Not yet applied upstream because <endian.h> is not available on non-Linux platforms.
+
+From 06ce42e72324b32b1f4c37c646e99950c2bd5f6b Mon Sep 17 00:00:00 2001
+From: Max Rees <maxcrees@me.com>
+Date: Sun, 15 Mar 2020 15:13:27 -0400
+Subject: [PATCH] Fix test suite on big endian platforms
+
+---
+ glm/gtc/packing.inl | 55 ++++++++++++++++++++++++++++++++++++++++
+ test/gtc/gtc_packing.cpp | 3 ++-
+ 2 files changed, 57 insertions(+), 1 deletion(-)
+
+diff --git a/glm/gtc/packing.inl b/glm/gtc/packing.inl
+index 8c906e16c..b1c99a507 100644
+--- a/glm/gtc/packing.inl
++++ b/glm/gtc/packing.inl
+@@ -9,6 +9,9 @@
+ #include "../detail/type_half.hpp"
+ #include <cstring>
+ #include <limits>
++extern "C" {
++#include <endian.h>
++}
+
+ namespace glm{
+ namespace detail
+@@ -183,9 +186,15 @@ namespace detail
+ {
+ struct
+ {
++#if BYTE_ORDER == LITTLE_ENDIAN
+ uint x : 3;
+ uint y : 3;
+ uint z : 2;
++#else
++ uint z : 2;
++ uint y : 3;
++ uint x : 3;
++#endif
+ } data;
+ uint8 pack;
+ };
+@@ -194,8 +203,13 @@ namespace detail
+ {
+ struct
+ {
++#if BYTE_ORDER == LITTLE_ENDIAN
+ uint x : 4;
+ uint y : 4;
++#else
++ uint y : 4;
++ uint x : 4;
++#endif
+ } data;
+ uint8 pack;
+ };
+@@ -204,10 +218,17 @@ namespace detail
+ {
+ struct
+ {
++#if BYTE_ORDER == LITTLE_ENDIAN
+ uint x : 4;
+ uint y : 4;
+ uint z : 4;
+ uint w : 4;
++#else
++ uint w : 4;
++ uint z : 4;
++ uint y : 4;
++ uint x : 4;
++#endif
+ } data;
+ uint16 pack;
+ };
+@@ -216,9 +237,15 @@ namespace detail
+ {
+ struct
+ {
++#if BYTE_ORDER == LITTLE_ENDIAN
+ uint x : 5;
+ uint y : 6;
+ uint z : 5;
++#else
++ uint z : 5;
++ uint y : 6;
++ uint x : 5;
++#endif
+ } data;
+ uint16 pack;
+ };
+@@ -227,10 +254,17 @@ namespace detail
+ {
+ struct
+ {
++#if BYTE_ORDER == LITTLE_ENDIAN
+ uint x : 5;
+ uint y : 5;
+ uint z : 5;
+ uint w : 1;
++#else
++ uint w : 1;
++ uint z : 5;
++ uint y : 5;
++ uint x : 5;
++#endif
+ } data;
+ uint16 pack;
+ };
+@@ -239,10 +273,17 @@ namespace detail
+ {
+ struct
+ {
++#if BYTE_ORDER == LITTLE_ENDIAN
+ uint x : 10;
+ uint y : 10;
+ uint z : 10;
+ uint w : 2;
++#else
++ uint w : 2;
++ uint z : 10;
++ uint y : 10;
++ uint x : 10;
++#endif
+ } data;
+ uint32 pack;
+ };
+@@ -251,10 +292,17 @@ namespace detail
+ {
+ struct
+ {
++#if BYTE_ORDER == LITTLE_ENDIAN
+ int x : 10;
+ int y : 10;
+ int z : 10;
+ int w : 2;
++#else
++ int w : 2;
++ int z : 10;
++ int y : 10;
++ int x : 10;
++#endif
+ } data;
+ uint32 pack;
+ };
+@@ -263,10 +311,17 @@ namespace detail
+ {
+ struct
+ {
++#if BYTE_ORDER == LITTLE_ENDIAN
+ uint x : 9;
+ uint y : 9;
+ uint z : 9;
+ uint w : 5;
++#else
++ uint w : 5;
++ uint z : 9;
++ uint y : 9;
++ uint x : 9;
++#endif
+ } data;
+ uint32 pack;
+ };
+diff --git a/test/gtc/gtc_packing.cpp b/test/gtc/gtc_packing.cpp
+index df5b3bb1a..fbaaa5bcc 100644
+--- a/test/gtc/gtc_packing.cpp
++++ b/test/gtc/gtc_packing.cpp
+@@ -4,6 +4,7 @@
+ #include <glm/ext/vector_relational.hpp>
+ #include <cstdio>
+ #include <vector>
++#include <arpa/inet.h>
+
+ void print_bits(float const& s)
+ {
+@@ -156,7 +157,7 @@ int test_U3x10_1x2()
+
+ glm::u8vec4 const v0(0xff, 0x77, 0x0, 0x33);
+ glm::uint32 const p0 = *reinterpret_cast<glm::uint32 const*>(&v0[0]);
+- glm::uint32 const r0 = 0x330077ff;
++ glm::uint32 const r0 = htonl(0xff770033);
+
+ Error += p0 == r0 ? 0 : 1;
+
diff --git a/media-libs/glm/glm-0.9.9.8-r1.ebuild b/media-libs/glm/glm-0.9.9.8-r1.ebuild
index 10f370ff15e..96a90be0b01 100644
--- a/media-libs/glm/glm-0.9.9.8-r1.ebuild
+++ b/media-libs/glm/glm-0.9.9.8-r1.ebuild
@@ -15,11 +15,10 @@ KEYWORDS="amd64 ~arm arm64 ~ppc ~ppc64 ~sparc x86"
IUSE="test cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_avx cpu_flags_x86_avx2"
RESTRICT="!test? ( test )"
-RDEPEND=""
-
PATCHES=(
"${FILESDIR}"/${PN}-0.9.9.6-simd.patch
"${FILESDIR}"/${P}-clang.patch
+ "${FILESDIR}"/${PN}-0.9.9.8-big-endian-tests.patch
)
src_configure() {
next reply other threads:[~2021-02-05 21:57 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-05 21:57 Sam James [this message]
-- strict thread matches above, loose matches on Subject: below --
2020-07-07 6:51 [gentoo-commits] repo/gentoo:master commit in: media-libs/glm/, media-libs/glm/files/ Alfredo Tupone
2019-09-10 17:17 Alfredo Tupone
2019-03-06 19:46 Alfredo Tupone
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1612562236.c74dcd154317d93fc07455b0f03bb442d592ca35.sam@gentoo \
--to=sam@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox