summaryrefslogtreecommitdiff
path: root/meta-openembedded/meta-oe/recipes-support/tbb
diff options
context:
space:
mode:
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-support/tbb')
-rw-r--r--meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-set_my_tls_end_of_input-Use-an-arbitrary-but-valid-p.patch37
-rw-r--r--meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb6
2 files changed, 43 insertions, 0 deletions
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-set_my_tls_end_of_input-Use-an-arbitrary-but-valid-p.patch b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-set_my_tls_end_of_input-Use-an-arbitrary-but-valid-p.patch
new file mode 100644
index 000000000..caa68e64c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/tbb/tbb/0001-set_my_tls_end_of_input-Use-an-arbitrary-but-valid-p.patch
@@ -0,0 +1,37 @@
+From a996fd451bbd7be93cff5f466bff7282ae972fe1 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 11 May 2021 10:52:51 -0700
+Subject: [PATCH] set_my_tls_end_of_input: Use an arbitrary but valid pointer
+ as value
+
+Pass a valid pointer to pthread_setspecific to avoid GCC 11 warning.
+Fixes
+
+src/tbb/tls.h:44:46: error: 'int pthread_setspecific(pthread_key_t, const void*)' expecting 1 byte in a region of size 0 [-Werror=stringop-overread]
+| 44 | void set( T value ) { pthread_setspecific(my_key, (void*)value); }
+| | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
+| compilation terminated due to -Wfatal-errors.
+
+Upstream-Status: Submitted [https://github.com/oneapi-src/oneTBB/pull/394]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/tbb/parallel_pipeline.cpp | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/tbb/parallel_pipeline.cpp b/src/tbb/parallel_pipeline.cpp
+index b7655c6b..ca518b5b 100644
+--- a/src/tbb/parallel_pipeline.cpp
++++ b/src/tbb/parallel_pipeline.cpp
+@@ -243,7 +243,8 @@ public:
+ return end_of_input_tls.get() != 0;
+ }
+ void set_my_tls_end_of_input() {
+- end_of_input_tls.set(1);
++ // Use an arbitrary but valid pointer as value.
++ end_of_input_tls.set(array_size);
+ }
+ };
+
+--
+2.31.1
+
diff --git a/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb b/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb
index b05a59dc7..f4c52daf4 100644
--- a/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/tbb/tbb_2021.2.0.bb
@@ -9,6 +9,8 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=86d3f3a95c324c9479bd8986968f4327"
DEPENDS_append_libc-musl = " libucontext"
+PE = "1"
+
BRANCH = "onetbb_2021"
SRCREV = "2dba2072869a189b9fdab3ffa431d3ea49059a19"
SRC_URI = "git://github.com/oneapi-src/oneTBB.git;protocol=https;branch=${BRANCH} \
@@ -16,6 +18,7 @@ SRC_URI = "git://github.com/oneapi-src/oneTBB.git;protocol=https;branch=${BRANCH
file://GLIBC-PREREQ-is-not-defined-on-musl.patch \
file://0001-CMakeLists.txt-exclude-riscv64-riscv32.patch \
file://0001-Disable-use-of-_tpause-instruction.patch \
+ file://0001-set_my_tls_end_of_input-Use-an-arbitrary-but-valid-p.patch \
"
S = "${WORKDIR}/git"
@@ -43,3 +46,6 @@ LDFLAGS_append_mips = " -latomic"
LDFLAGS_append_mipsel = " -latomic"
LDFLAGS_append_libc-musl = " -lucontext"
+
+# The latest version of oneTBB does not support PPC
+COMPATIBLE_MACHINE_powerpc = "(!.*ppc).*"