summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2022-01-12 16:28:46 +0100
committerAndreas Baumann <mail@andreasbaumann.cc>2022-01-12 16:28:46 +0100
commit30df5f31e405a335f922bb8bd2d08ca6d129ce21 (patch)
tree6bd540040cd65309c28ba24bf97a93cb0add6163
parent100b5703c41786ec2cf1151c14b19165605f0b3e (diff)
downloadpackages-30df5f31e405a335f922bb8bd2d08ca6d129ce21.tar.xz
extra/tbb: added patch to not use WAITPKG
-rw-r--r--extra/tbb/PKGBUILD14
-rw-r--r--extra/tbb/oneTBB-2021.5.0-no-waitpkg.patch12
2 files changed, 26 insertions, 0 deletions
diff --git a/extra/tbb/PKGBUILD b/extra/tbb/PKGBUILD
new file mode 100644
index 00000000..fa2854cf
--- /dev/null
+++ b/extra/tbb/PKGBUILD
@@ -0,0 +1,14 @@
+# disable waitpkg extensions (error is inline failing in _tpause)
+# (see https://github.com/oneapi-src/oneTBB/issues/370 and
+# https://github.com/oneapi-src/oneTBB/pull/609/commits/542a27fa1cfafaf76772e793549d9f4d288d03a9)
+source+=('oneTBB-2021.5.0-no-waitpkg.patch')
+sha512sums+=('0050970336052909d0572514bb88b8ca12210224bec1245f1c05423f1a8e6e28a5048cc06f969efd81f2de14d342f69641cdfbf9f82ad8e41ca618ae4ce16f16')
+eval "$(
+ {
+ declare -f prepare || \
+ printf 'prepare() { cd ${srcdir}/oneTBB-${pkgver}\n}\n'
+ } \
+ | sed '
+ $i patch -p1 -i "$srcdir/oneTBB-2021.5.0-no-waitpkg.patch"
+ '
+)"
diff --git a/extra/tbb/oneTBB-2021.5.0-no-waitpkg.patch b/extra/tbb/oneTBB-2021.5.0-no-waitpkg.patch
new file mode 100644
index 00000000..17d031b4
--- /dev/null
+++ b/extra/tbb/oneTBB-2021.5.0-no-waitpkg.patch
@@ -0,0 +1,12 @@
+diff -rauN oneTBB-2021.5.0/cmake/compilers/GNU.cmake oneTBB-2021.5.0-no-waitpkg-patch/cmake/compilers/GNU.cmake
+--- oneTBB-2021.5.0/cmake/compilers/GNU.cmake 2021-12-17 14:40:54.000000000 +0100
++++ oneTBB-2021.5.0-no-waitpkg-patch/cmake/compilers/GNU.cmake 2022-01-12 16:04:07.448846997 +0100
+@@ -36,7 +36,7 @@
+ endif()
+
+ # Enable Intel(R) Transactional Synchronization Extensions (-mrtm) and WAITPKG instructions support (-mwaitpkg) on relevant processors
+-if (CMAKE_SYSTEM_PROCESSOR MATCHES "(x86|AMD64)")
++if (CMAKE_SYSTEM_PROCESSOR MATCHES "(x86|AMD64|i.86)")
+ set(TBB_COMMON_COMPILE_FLAGS ${TBB_COMMON_COMPILE_FLAGS} -mrtm $<$<AND:$<NOT:$<CXX_COMPILER_ID:Intel>>,$<NOT:$<VERSION_LESS:${CMAKE_CXX_COMPILER_VERSION},11.0>>>:-mwaitpkg>)
+ endif()
+