Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2019-12-12 19:37:27 +0100
committerAndreas Baumann <mail@andreasbaumann.cc>2019-12-12 19:37:27 +0100
commit332d58575b99b2db61bebb96ae74fd30f0dfd512 (patch)
tree5bb4e35ca919e5a0da74e6de536b9c471621d48f
parentb55f4c51514b8af8e2c6ec878a8ee03f29dfaa13 (diff)
extra/openal: new patching of SSE2, etc.
-rw-r--r--extra/openal/PKGBUILD31
-rw-r--r--extra/openal/openal-i486.patch53
-rw-r--r--extra/openal/openal-i686.patch53
-rw-r--r--extra/openal/openal-pentium4.patch43
4 files changed, 172 insertions, 8 deletions
diff --git a/extra/openal/PKGBUILD b/extra/openal/PKGBUILD
index 6c8ed3c2..2e982053 100644
--- a/extra/openal/PKGBUILD
+++ b/extra/openal/PKGBUILD
@@ -1,22 +1,37 @@
+# disable Intel micro-optimizations and intrinsics per platform
+source+=('openal-pentium4.patch' 'openal-i686.patch' 'openal-i486.patch')
+sha512sums+=(
+ 'bba897b5c1f39775ec28c4e92e3ef0e3e69d62c9463cacd6841c704e7ff5130860cef7f16e464593491dcb50a0036c487188939a989780b5a5c7321f735ae820'
+ '7fdbf5efa7fb223666592d1d78e684798e29a46e7948f379d8b8e3f527c42f1875539722cfacb88182a3187dfb334de3aea012298a6ab111d3c06abd8d41c9b4'
+ '54423f4a45a90570e5331c98916dcb7442bc97b39c1161c0dad2450da829f8866e9c95098b84b4f9fabce34f44df3c1b9f43d257672c7d210236160548ac081f'
+)
+
if [ "$CARCH" = 'pentium4' ]; then
eval "$(
- declare -f build | \
+ declare -f prepare | \
sed '
- s@cmake@cmake -DALSOFT_CPUEXT_SSE3=0 -DALSOFT_CPUEXT_SSE4_1=0@
+ /git/ a \
+ patch -p1 -i "$srcdir/openal-pentium4.patch"
'
)"
-elif [ "$CARCH" = 'i686' ]; then
+fi
+
+if [ "$CARCH" = 'i686' ]; then
eval "$(
- declare -f build | \
+ declare -f prepare | \
sed '
- s@cmake@cmake -DALSOFT_ENABLE_SSE2_CODEGEN=0 -DALSOFT_CPUEXT_SSE2=0@
+ /git/ a \
+ patch -p1 -i "$srcdir/openal-i686.patch"
'
)"
-elif [ "$CARCH" = 'i486' ]; then
+fi
+
+if [ "$CARCH" = 'i486' ]; then
eval "$(
- declare -f build | \
+ declare -f prepare | \
sed '
- s@cmake@cmake -DALSOFT_CPUEXT_SSE=0 -DALSOFT_ENABLE_SSE_CODEGEN=0 -DALSOFT_ENABLE_SSE2_CODEGEN=0@
+ /git/ a \
+ patch -p1 -i "$srcdir/openal-i486.patch"
'
)"
fi
diff --git a/extra/openal/openal-i486.patch b/extra/openal/openal-i486.patch
new file mode 100644
index 00000000..f59cf4f4
--- /dev/null
+++ b/extra/openal/openal-i486.patch
@@ -0,0 +1,53 @@
+diff -rauN openal/CMakeLists.txt openal-i486-patch/CMakeLists.txt
+--- openal/CMakeLists.txt 2019-12-12 17:07:05.966917263 +0100
++++ openal-i486-patch/CMakeLists.txt 2019-12-12 19:13:29.678013351 +0100
+@@ -307,28 +307,28 @@
+ SET(SSE4_1_SWITCH "")
+ SET(FPU_NEON_SWITCH "")
+
+-CHECK_C_COMPILER_FLAG(-msse2 HAVE_MSSE2_SWITCH)
+-IF(HAVE_MSSE2_SWITCH)
+- SET(SSE2_SWITCH "-msse2")
+-ENDIF()
+-CHECK_C_COMPILER_FLAG(-msse3 HAVE_MSSE3_SWITCH)
+-IF(HAVE_MSSE3_SWITCH)
+- SET(SSE3_SWITCH "-msse3")
+-ENDIF()
+-CHECK_C_COMPILER_FLAG(-msse4.1 HAVE_MSSE4_1_SWITCH)
+-IF(HAVE_MSSE4_1_SWITCH)
+- SET(SSE4_1_SWITCH "-msse4.1")
+-ENDIF()
+-CHECK_C_COMPILER_FLAG(-mfpu=neon HAVE_MFPU_NEON_SWITCH)
+-IF(HAVE_MFPU_NEON_SWITCH)
+- SET(FPU_NEON_SWITCH "-mfpu=neon")
+-ENDIF()
++#~ CHECK_C_COMPILER_FLAG(-msse2 HAVE_MSSE2_SWITCH)
++#~ IF(HAVE_MSSE2_SWITCH)
++ #~ SET(SSE2_SWITCH "-msse2")
++#~ ENDIF()
++#~ CHECK_C_COMPILER_FLAG(-msse3 HAVE_MSSE3_SWITCH)
++#~ IF(HAVE_MSSE3_SWITCH)
++ #~ SET(SSE3_SWITCH "-msse3")
++#~ ENDIF()
++#~ CHECK_C_COMPILER_FLAG(-msse4.1 HAVE_MSSE4_1_SWITCH)
++#~ IF(HAVE_MSSE4_1_SWITCH)
++ #~ SET(SSE4_1_SWITCH "-msse4.1")
++#~ ENDIF()
++#~ CHECK_C_COMPILER_FLAG(-mfpu=neon HAVE_MFPU_NEON_SWITCH)
++#~ IF(HAVE_MFPU_NEON_SWITCH)
++ #~ SET(FPU_NEON_SWITCH "-mfpu=neon")
++#~ ENDIF()
+
+-CHECK_INCLUDE_FILE(xmmintrin.h HAVE_XMMINTRIN_H "${SSE2_SWITCH}")
+-CHECK_INCLUDE_FILE(emmintrin.h HAVE_EMMINTRIN_H "${SSE2_SWITCH}")
+-CHECK_INCLUDE_FILE(pmmintrin.h HAVE_PMMINTRIN_H "${SSE3_SWITCH}")
+-CHECK_INCLUDE_FILE(smmintrin.h HAVE_SMMINTRIN_H "${SSE4_1_SWITCH}")
+-CHECK_INCLUDE_FILE(arm_neon.h HAVE_ARM_NEON_H "${FPU_NEON_SWITCH}")
++#~ CHECK_INCLUDE_FILE(xmmintrin.h HAVE_XMMINTRIN_H "${SSE2_SWITCH}")
++#~ CHECK_INCLUDE_FILE(emmintrin.h HAVE_EMMINTRIN_H "${SSE2_SWITCH}")
++#~ CHECK_INCLUDE_FILE(pmmintrin.h HAVE_PMMINTRIN_H "${SSE3_SWITCH}")
++#~ CHECK_INCLUDE_FILE(smmintrin.h HAVE_SMMINTRIN_H "${SSE4_1_SWITCH}")
++#~ CHECK_INCLUDE_FILE(arm_neon.h HAVE_ARM_NEON_H "${FPU_NEON_SWITCH}")
+
+ SET(SSE_FLAGS )
+ SET(FPMATH_SET "0")
diff --git a/extra/openal/openal-i686.patch b/extra/openal/openal-i686.patch
new file mode 100644
index 00000000..44261849
--- /dev/null
+++ b/extra/openal/openal-i686.patch
@@ -0,0 +1,53 @@
+diff -rauN openal/CMakeLists.txt openal-i686-patch/CMakeLists.txt
+--- openal/CMakeLists.txt 2019-12-12 17:07:05.966917263 +0100
++++ openal-i686-patch/CMakeLists.txt 2019-12-12 19:11:43.256675497 +0100
+@@ -307,28 +307,28 @@
+ SET(SSE4_1_SWITCH "")
+ SET(FPU_NEON_SWITCH "")
+
+-CHECK_C_COMPILER_FLAG(-msse2 HAVE_MSSE2_SWITCH)
+-IF(HAVE_MSSE2_SWITCH)
+- SET(SSE2_SWITCH "-msse2")
+-ENDIF()
+-CHECK_C_COMPILER_FLAG(-msse3 HAVE_MSSE3_SWITCH)
+-IF(HAVE_MSSE3_SWITCH)
+- SET(SSE3_SWITCH "-msse3")
+-ENDIF()
+-CHECK_C_COMPILER_FLAG(-msse4.1 HAVE_MSSE4_1_SWITCH)
+-IF(HAVE_MSSE4_1_SWITCH)
+- SET(SSE4_1_SWITCH "-msse4.1")
+-ENDIF()
+-CHECK_C_COMPILER_FLAG(-mfpu=neon HAVE_MFPU_NEON_SWITCH)
+-IF(HAVE_MFPU_NEON_SWITCH)
+- SET(FPU_NEON_SWITCH "-mfpu=neon")
+-ENDIF()
++#~ CHECK_C_COMPILER_FLAG(-msse2 HAVE_MSSE2_SWITCH)
++#~ IF(HAVE_MSSE2_SWITCH)
++ #~ SET(SSE2_SWITCH "-msse2")
++#~ ENDIF()
++#~ CHECK_C_COMPILER_FLAG(-msse3 HAVE_MSSE3_SWITCH)
++#~ IF(HAVE_MSSE3_SWITCH)
++ #~ SET(SSE3_SWITCH "-msse3")
++#~ ENDIF()
++#~ CHECK_C_COMPILER_FLAG(-msse4.1 HAVE_MSSE4_1_SWITCH)
++#~ IF(HAVE_MSSE4_1_SWITCH)
++ #~ SET(SSE4_1_SWITCH "-msse4.1")
++#~ ENDIF()
++#~ CHECK_C_COMPILER_FLAG(-mfpu=neon HAVE_MFPU_NEON_SWITCH)
++#~ IF(HAVE_MFPU_NEON_SWITCH)
++ #~ SET(FPU_NEON_SWITCH "-mfpu=neon")
++#~ ENDIF()
+
+-CHECK_INCLUDE_FILE(xmmintrin.h HAVE_XMMINTRIN_H "${SSE2_SWITCH}")
+-CHECK_INCLUDE_FILE(emmintrin.h HAVE_EMMINTRIN_H "${SSE2_SWITCH}")
+-CHECK_INCLUDE_FILE(pmmintrin.h HAVE_PMMINTRIN_H "${SSE3_SWITCH}")
+-CHECK_INCLUDE_FILE(smmintrin.h HAVE_SMMINTRIN_H "${SSE4_1_SWITCH}")
+-CHECK_INCLUDE_FILE(arm_neon.h HAVE_ARM_NEON_H "${FPU_NEON_SWITCH}")
++#~ CHECK_INCLUDE_FILE(xmmintrin.h HAVE_XMMINTRIN_H "${SSE2_SWITCH}")
++#~ CHECK_INCLUDE_FILE(emmintrin.h HAVE_EMMINTRIN_H "${SSE2_SWITCH}")
++#~ CHECK_INCLUDE_FILE(pmmintrin.h HAVE_PMMINTRIN_H "${SSE3_SWITCH}")
++#~ CHECK_INCLUDE_FILE(smmintrin.h HAVE_SMMINTRIN_H "${SSE4_1_SWITCH}")
++#~ CHECK_INCLUDE_FILE(arm_neon.h HAVE_ARM_NEON_H "${FPU_NEON_SWITCH}")
+
+ SET(SSE_FLAGS )
+ SET(FPMATH_SET "0")
diff --git a/extra/openal/openal-pentium4.patch b/extra/openal/openal-pentium4.patch
new file mode 100644
index 00000000..a5a39e44
--- /dev/null
+++ b/extra/openal/openal-pentium4.patch
@@ -0,0 +1,43 @@
+diff -rauN openal/CMakeLists.txt openal-pentium4-patch/CMakeLists.txt
+--- openal/CMakeLists.txt 2019-12-12 17:07:05.966917263 +0100
++++ openal-pentium4-patch/CMakeLists.txt 2019-12-12 19:10:50.689347069 +0100
+@@ -311,24 +311,24 @@
+ IF(HAVE_MSSE2_SWITCH)
+ SET(SSE2_SWITCH "-msse2")
+ ENDIF()
+-CHECK_C_COMPILER_FLAG(-msse3 HAVE_MSSE3_SWITCH)
+-IF(HAVE_MSSE3_SWITCH)
+- SET(SSE3_SWITCH "-msse3")
+-ENDIF()
+-CHECK_C_COMPILER_FLAG(-msse4.1 HAVE_MSSE4_1_SWITCH)
+-IF(HAVE_MSSE4_1_SWITCH)
+- SET(SSE4_1_SWITCH "-msse4.1")
+-ENDIF()
+-CHECK_C_COMPILER_FLAG(-mfpu=neon HAVE_MFPU_NEON_SWITCH)
+-IF(HAVE_MFPU_NEON_SWITCH)
+- SET(FPU_NEON_SWITCH "-mfpu=neon")
+-ENDIF()
++#~ CHECK_C_COMPILER_FLAG(-msse3 HAVE_MSSE3_SWITCH)
++#~ IF(HAVE_MSSE3_SWITCH)
++ #~ SET(SSE3_SWITCH "-msse3")
++#~ ENDIF()
++#~ CHECK_C_COMPILER_FLAG(-msse4.1 HAVE_MSSE4_1_SWITCH)
++#~ IF(HAVE_MSSE4_1_SWITCH)
++ #~ SET(SSE4_1_SWITCH "-msse4.1")
++#~ ENDIF()
++#~ CHECK_C_COMPILER_FLAG(-mfpu=neon HAVE_MFPU_NEON_SWITCH)
++#~ IF(HAVE_MFPU_NEON_SWITCH)
++ #~ SET(FPU_NEON_SWITCH "-mfpu=neon")
++#~ ENDIF()
+
+ CHECK_INCLUDE_FILE(xmmintrin.h HAVE_XMMINTRIN_H "${SSE2_SWITCH}")
+ CHECK_INCLUDE_FILE(emmintrin.h HAVE_EMMINTRIN_H "${SSE2_SWITCH}")
+-CHECK_INCLUDE_FILE(pmmintrin.h HAVE_PMMINTRIN_H "${SSE3_SWITCH}")
+-CHECK_INCLUDE_FILE(smmintrin.h HAVE_SMMINTRIN_H "${SSE4_1_SWITCH}")
+-CHECK_INCLUDE_FILE(arm_neon.h HAVE_ARM_NEON_H "${FPU_NEON_SWITCH}")
++#~ CHECK_INCLUDE_FILE(pmmintrin.h HAVE_PMMINTRIN_H "${SSE3_SWITCH}")
++#~ CHECK_INCLUDE_FILE(smmintrin.h HAVE_SMMINTRIN_H "${SSE4_1_SWITCH}")
++#~ CHECK_INCLUDE_FILE(arm_neon.h HAVE_ARM_NEON_H "${FPU_NEON_SWITCH}")
+
+ SET(SSE_FLAGS )
+ SET(FPMATH_SET "0")