summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-02-03 19:40:03 +0000
committerSam James <sam@gentoo.org>2023-02-03 19:50:32 +0000
commit7b30162d5662f0ec77c702d7919e2ea3dacccd1c (patch)
treef92e832d98034c4b287d1798a3f668ffe75ebbfa /games-util
parentapp-emulation/wine-proton: add 7.0.6 (diff)
downloadgentoo-7b30162d5662f0ec77c702d7919e2ea3dacccd1c.tar.gz
gentoo-7b30162d5662f0ec77c702d7919e2ea3dacccd1c.tar.bz2
gentoo-7b30162d5662f0ec77c702d7919e2ea3dacccd1c.zip
games-util/basis_universal: fix build w/ AVX
Closes: https://bugs.gentoo.org/892727 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'games-util')
-rw-r--r--games-util/basis_universal/basis_universal-1.16.3.ebuild1
-rw-r--r--games-util/basis_universal/files/basis_universal-1.16.3-SSE4.1-AVX-checks.patch40
2 files changed, 41 insertions, 0 deletions
diff --git a/games-util/basis_universal/basis_universal-1.16.3.ebuild b/games-util/basis_universal/basis_universal-1.16.3.ebuild
index 298c8ecdb705..239d01901831 100644
--- a/games-util/basis_universal/basis_universal-1.16.3.ebuild
+++ b/games-util/basis_universal/basis_universal-1.16.3.ebuild
@@ -24,6 +24,7 @@ RDEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}"/${PN}-1.16.3-respect-CFLAGS.patch
"${FILESDIR}"/${PN}-1.16.3-fix-RPATH.patch
+ "${FILESDIR}"/${PN}-1.16.3-SSE4.1-AVX-checks.patch
)
src_configure() {
diff --git a/games-util/basis_universal/files/basis_universal-1.16.3-SSE4.1-AVX-checks.patch b/games-util/basis_universal/files/basis_universal-1.16.3-SSE4.1-AVX-checks.patch
new file mode 100644
index 000000000000..89be7b13482e
--- /dev/null
+++ b/games-util/basis_universal/files/basis_universal-1.16.3-SSE4.1-AVX-checks.patch
@@ -0,0 +1,40 @@
+https://bugs.gentoo.org/892727
+https://github.com/BinomialLLC/basis_universal/issues/342
+https://github.com/BinomialLLC/basis_universal/pull/343
+
+From e61fe1e4ff66decbb14f86a1bf8ec4ea40d23bbf Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=C8=98tefan=20Talpalaru?= <stefantalpalaru@yahoo.com>
+Date: Tue, 31 Jan 2023 14:39:17 +0100
+Subject: [PATCH] SIMD: disable compile time checks
+
+SSE4.1 support is checked at runtime, so compile time checks are
+redundant at best and harmful when compiling for a different machine.
+
+Further more, a logic error prevented the use of SSE4.1 on systems with
+any version of AVX available. This is fixed now.
+--- a/encoder/basisu_kernels_sse.cpp
++++ b/encoder/basisu_kernels_sse.cpp
+@@ -22,22 +22,6 @@
+ #include <intrin.h>
+ #endif
+
+-#if !defined(_MSC_VER)
+- #if __AVX__ || __AVX2__ || __AVX512F__
+- #error Please check your compiler options
+- #endif
+-
+- #if CPPSPMD_SSE2
+- #if __SSE4_1__ || __SSE3__ || __SSE4_2__ || __SSSE3__
+- #error SSE4.1/SSE3/SSE4.2/SSSE3 cannot be enabled to use this file
+- #endif
+- #else
+- #if !__SSE4_1__ || !__SSE3__ || !__SSSE3__
+- #error Please check your compiler options
+- #endif
+- #endif
+-#endif
+-
+ #include "cppspmd_sse.h"
+
+ #include "cppspmd_type_aliases.h"
+