mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
dev-cpp/tbb: Drop some old versions
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
This commit is contained in:
@@ -1,9 +1,5 @@
|
||||
DIST tbb-2020.3.tar.gz 2639788 BLAKE2B 3e92bccdc8179fc049379ccbb8ad7f615623177abc61d813b1a601020c345137bfd7d4c4600cf5b0d587e5ebef677635c3c8124d06b05fdd3325128ed8c9f84a SHA512 04c4b5501418792827190691d03d20d4dc1fd3cbbcf459a4d40c5c2281d964e658f31f133ad3907b78e17ed04f4ff16728ed89487ed0ce2cb239f23feb34bd87
|
||||
DIST tbb-2021.10.0.tar.gz 2598088 BLAKE2B ba8352474b97c3d98b534cbfd8f61af165352967529f19226dbae17f17d20a8b5dfd7a3b29bab85431620cea1ee1c5990ec7311cc9b1b865d6aa1800540dd6d0 SHA512 d71cf317e7f78948c1ea20977cfcfba1eff72cb20c457c87e624cb3aaa3215a1c24eeeec11ed6ed99cf118c577d956234202458bb5e0215c9c317099d9c3b732
|
||||
DIST tbb-2021.11.0.tar.gz 2613493 BLAKE2B 2b56042c8126709b6f36c1118685b28ddf2ff39b6563aae168d6bb8106d234757ff125a39da37f907a7da62f2f2ad64e4db01ca028d20c1e74def4ba2e92c1a6 SHA512 4779141b7602f2fa3a509fdd346824ba270a3a568df3649ce8cb51264d233df5cec5e5cb67b91319dd11d3d5e054697b4ed345e07216107985ddb6e1e7ef94e5
|
||||
DIST tbb-2021.12.0.tar.gz 2617255 BLAKE2B 3e1db8b1972a7225c5355def66ae40006e6e0f0f97e2efff45dd361f724e348a2f0476bc14b59f89f5361cac6fa36a4973602467bc7fbb2b8b139a4ff4dd58de SHA512 64022bcb61cf7b2030a1bcc11168445ef9f0d69b70290233a7febb71cc7a12cc2282dddc045f84e30893efe276342f02fd78d176706268eeaefe9aac7446d4e9
|
||||
DIST tbb-2021.13.0.tar.gz 2613916 BLAKE2B 0edd2d8a966dba673e50827629491924140a302430f4380e7cd9914f3592eaf6515204c7267649237970a5482cc030f0c29cbddd1476f16caf46989f70041058 SHA512 1f536b98c4eb331c3ba21e4b36362c932d7852b974ea7237b5f7bffb0e996d76f688c7ac534cb56f5866cfdffd5d3f015521b4c2ca21e584503070782ca82a2f
|
||||
DIST tbb-2021.5.0.tar.gz 2463218 BLAKE2B 2d50d312b86318ba4923afe68753b3781f9646cbdb33861f3458301a3a19b7ca3aab6959dca085294dfc743d7f552635f80fb524ec5d780a46f58ffe02e3280d SHA512 0e7b71022e397a6d7abb0cea106847935ae79a1e12a6976f8d038668c6eca8775ed971202c5bd518f7e517092b67af805cc5feb04b5c3a40e9fbf972cc703a46
|
||||
DIST tbb-2021.7.0.tar.gz 2571727 BLAKE2B 2977ef1a33d9bc7baa40e0e57c02e62798a09c6c66cdbe369f2702d87fd9877c3d97f8d83f71384028995ea0956f5c5630d4aaf4edbe68538e7c514d3b87085c SHA512 d314e3d88b85c96607a9eda15e3d808bf361eb562a534c59101929236e90c187883e7718e5435b5e7f01f4ee652c9765af95f5f173368b83997e4666b7403a49
|
||||
DIST tbb-2021.8.0.tar.gz 2575336 BLAKE2B 2c3a7f0e59d70b17550f805461a15a520c7f1b3a37a41bd51c51f9f5863b50812d2b939351e11e0f4ceb3da8a47e413abe171bcb6bfb71c0fe2f81ed373f65f2 SHA512 72f68730dfd89409796f9548d3c302111787712089688a7c77092ed1b3a7bf4e7444fe4b58015d2c78b7b71259852526789b2483bf1e71bea8146c4b4676e7b4
|
||||
DIST tbb-2021.9.0.tar.gz 2579150 BLAKE2B f6f701df1605913770222689063ff422416f86f132fb3fbc80f383b7c52762d3804e75200ca4826906b16c66f674918bcfd78b16a1dafb499ca53a9d2b6652ec SHA512 2ece7f678ad7c8968c0ad5cda9f987e4b318c6d9735169e1039beb0ff8dfca18815835875211acc6c7068913d9b0bdd4c9ded22962b0bb48f4a0ce0f7b78f31c
|
||||
|
||||
@@ -1,249 +0,0 @@
|
||||
https://github.com/oneapi-src/oneTBB/pull/608
|
||||
|
||||
From 6feeba8035ea2bdf652d473a35730b19427752db Mon Sep 17 00:00:00 2001
|
||||
From: Ivan Kochin <kochin.ivan@intel.com>
|
||||
Date: Wed, 27 Oct 2021 17:23:32 +0300
|
||||
Subject: [PATCH] Use native CMake way to detect the IPO support (#608)
|
||||
|
||||
* Use native CMake way to detect the IPO support
|
||||
|
||||
Signed-off-by: Kochin Ivan <kochin.ivan@intel.com>
|
||||
---
|
||||
CMakeLists.txt | 17 +++++++++++++++++
|
||||
cmake/README.md | 1 +
|
||||
cmake/compilers/Clang.cmake | 8 ++------
|
||||
cmake/compilers/GNU.cmake | 8 +++-----
|
||||
cmake/compilers/MSVC.cmake | 1 +
|
||||
cmake/utils.cmake | 13 +++++++++++++
|
||||
src/tbb/CMakeLists.txt | 5 ++---
|
||||
src/tbbbind/CMakeLists.txt | 6 +++---
|
||||
src/tbbmalloc/CMakeLists.txt | 5 ++---
|
||||
9 files changed, 44 insertions(+), 20 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 13b1dbc2c..4dbdadb97 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -103,6 +103,7 @@ option(TBBMALLOC_BUILD "Enable tbbmalloc build" ON)
|
||||
option(TBB_CPF "Enable preview features of the library" OFF)
|
||||
option(TBB_FIND_PACKAGE "Enable search for external oneTBB using find_package instead of build from sources" OFF)
|
||||
option(TBB_DISABLE_HWLOC_AUTOMATIC_SEARCH "Disable HWLOC automatic search by pkg-config tool" OFF)
|
||||
+option(TBB_ENABLE_IPO "Enable Interprocedural Optimization (IPO) during the compilation" ON)
|
||||
|
||||
if (NOT DEFINED BUILD_SHARED_LIBS)
|
||||
set(BUILD_SHARED_LIBS ON)
|
||||
@@ -181,6 +182,22 @@ foreach(FILE_WITH_EXTRA_TARGETS ${FILES_WITH_EXTRA_TARGETS})
|
||||
include(${FILE_WITH_EXTRA_TARGETS})
|
||||
endforeach()
|
||||
|
||||
+# - Enabling LTO on Android causes the NDK bug.
|
||||
+# NDK throws the warning: "argument unused during compilation: '-Wa,--noexecstack'"
|
||||
+# - For some reason GCC does not instrument code with Thread Sanitizer when lto is enabled and C linker is used.
|
||||
+if (TBB_ENABLE_IPO AND BUILD_SHARED_LIBS AND NOT ANDROID_PLATFORM AND NOT TBB_SANITIZE MATCHES "thread")
|
||||
+ if (NOT CMAKE_VERSION VERSION_LESS 3.9)
|
||||
+ cmake_policy(SET CMP0069 NEW)
|
||||
+ include(CheckIPOSupported)
|
||||
+ check_ipo_supported(RESULT TBB_IPO_PROPERTY)
|
||||
+ else()
|
||||
+ set(TBB_IPO_FLAGS TRUE)
|
||||
+ endif()
|
||||
+ if (TBB_IPO_PROPERTY OR TBB_IPO_FLAGS)
|
||||
+ message(STATUS "IPO enabled")
|
||||
+ endif()
|
||||
+endif()
|
||||
+
|
||||
set(TBB_COMPILER_SETTINGS_FILE ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compilers/${CMAKE_CXX_COMPILER_ID}.cmake)
|
||||
if (EXISTS ${TBB_COMPILER_SETTINGS_FILE})
|
||||
include(${TBB_COMPILER_SETTINGS_FILE})
|
||||
diff --git a/cmake/README.md b/cmake/README.md
|
||||
index ec56e423c..ed1631de3 100644
|
||||
--- a/cmake/README.md
|
||||
+++ b/cmake/README.md
|
||||
@@ -16,6 +16,7 @@ TBB_CPF:BOOL - Enable preview features of the library (OFF by default)
|
||||
TBB_INSTALL_VARS:BOOL - Enable auto-generated vars installation(packages generated by `cpack` and `make install` will also include the vars script)(OFF by default)
|
||||
TBB_VALGRIND_MEMCHECK:BOOL - Enable scan for memory leaks using Valgrind (OFF by default)
|
||||
TBB_DISABLE_HWLOC_AUTOMATIC_SEARCH - Disable HWLOC automatic search by pkg-config tool (OFF by default)
|
||||
+TBB_ENABLE_IPO - Enable Interprocedural Optimization (IPO) during the compilation (ON by default)
|
||||
```
|
||||
|
||||
## Configure, build and test
|
||||
diff --git a/cmake/compilers/Clang.cmake b/cmake/compilers/Clang.cmake
|
||||
index 183341fcc..69aa51932 100644
|
||||
--- a/cmake/compilers/Clang.cmake
|
||||
+++ b/cmake/compilers/Clang.cmake
|
||||
@@ -58,12 +58,8 @@ if (MINGW)
|
||||
list(APPEND TBB_COMMON_COMPILE_FLAGS -U__STRICT_ANSI__)
|
||||
endif()
|
||||
|
||||
-# Enabling LTO on Android causes the NDK bug.
|
||||
-# NDK throws the warning: "argument unused during compilation: '-Wa,--noexecstack'"
|
||||
-if (NOT ANDROID_PLATFORM AND BUILD_SHARED_LIBS)
|
||||
- set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
|
||||
- set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
|
||||
-endif()
|
||||
+set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
|
||||
+set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
|
||||
|
||||
# TBB malloc settings
|
||||
set(TBBMALLOC_LIB_COMPILE_FLAGS -fno-rtti -fno-exceptions)
|
||||
diff --git a/cmake/compilers/GNU.cmake b/cmake/compilers/GNU.cmake
|
||||
index fa14c869e..a9cfa8927 100644
|
||||
--- a/cmake/compilers/GNU.cmake
|
||||
+++ b/cmake/compilers/GNU.cmake
|
||||
@@ -63,11 +63,9 @@ if (MINGW)
|
||||
list(APPEND TBB_COMMON_COMPILE_FLAGS -U__STRICT_ANSI__)
|
||||
endif()
|
||||
|
||||
-# For some reason GCC does not instrument code with Thread Sanitizer when lto is enabled and C linker is used.
|
||||
-if (NOT TBB_SANITIZE MATCHES "thread")
|
||||
- set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
|
||||
- set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
|
||||
-endif()
|
||||
+set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
|
||||
+set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
|
||||
+
|
||||
|
||||
# TBB malloc settings
|
||||
set(TBBMALLOC_LIB_COMPILE_FLAGS -fno-rtti -fno-exceptions)
|
||||
diff --git a/cmake/compilers/MSVC.cmake b/cmake/compilers/MSVC.cmake
|
||||
index 3447418cc..5767235a0 100644
|
||||
--- a/cmake/compilers/MSVC.cmake
|
||||
+++ b/cmake/compilers/MSVC.cmake
|
||||
@@ -77,6 +77,7 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "(Clang|IntelLLVM)")
|
||||
endif()
|
||||
set(TBB_OPENMP_NO_LINK_FLAG TRUE)
|
||||
set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
|
||||
+ set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
|
||||
else()
|
||||
set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:/GL>)
|
||||
set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-LTCG> $<$<NOT:$<CONFIG:Debug>>:-INCREMENTAL:NO>)
|
||||
diff --git a/cmake/utils.cmake b/cmake/utils.cmake
|
||||
index 06d3a9aee..f74abfcf9 100644
|
||||
--- a/cmake/utils.cmake
|
||||
+++ b/cmake/utils.cmake
|
||||
@@ -44,3 +44,16 @@ macro(tbb_install_target target)
|
||||
COMPONENT devel)
|
||||
endif()
|
||||
endmacro()
|
||||
+
|
||||
+macro(tbb_handle_ipo target)
|
||||
+ if (TBB_IPO_PROPERTY)
|
||||
+ set_target_properties(${target} PROPERTIES INTERPROCEDURAL_OPTIMIZATION TRUE)
|
||||
+ elseif (TBB_IPO_FLAGS)
|
||||
+ target_compile_options(${target} PRIVATE ${TBB_IPO_COMPILE_FLAGS})
|
||||
+ if (COMMAND target_link_options)
|
||||
+ target_link_options(${target} PRIVATE ${TBB_IPO_LINK_FLAGS})
|
||||
+ else()
|
||||
+ target_link_libraries(${target} PRIVATE ${TBB_IPO_LINK_FLAGS})
|
||||
+ endif()
|
||||
+ endif()
|
||||
+endmacro()
|
||||
diff --git a/src/tbb/CMakeLists.txt b/src/tbb/CMakeLists.txt
|
||||
index 80fdcdcde..021392d89 100644
|
||||
--- a/src/tbb/CMakeLists.txt
|
||||
+++ b/src/tbb/CMakeLists.txt
|
||||
@@ -79,7 +79,6 @@ target_compile_options(tbb
|
||||
${TBB_WARNING_SUPPRESS}
|
||||
${TBB_LIB_COMPILE_FLAGS}
|
||||
${TBB_COMMON_COMPILE_FLAGS}
|
||||
- ${TBB_IPO_COMPILE_FLAGS}
|
||||
)
|
||||
|
||||
# Avoid use of target_link_libraries here as it changes /DEF option to \DEF on Windows.
|
||||
@@ -89,6 +88,8 @@ set_target_properties(tbb PROPERTIES
|
||||
SOVERSION ${TBB_BINARY_VERSION}
|
||||
)
|
||||
|
||||
+tbb_handle_ipo(tbb)
|
||||
+
|
||||
if (TBB_DEF_FILE_PREFIX) # If there's no prefix, assume we're using export directives
|
||||
set_target_properties(tbb PROPERTIES
|
||||
LINK_FLAGS ${TBB_LINK_DEF_FILE_FLAG}${CMAKE_CURRENT_SOURCE_DIR}/def/${TBB_DEF_FILE_PREFIX}-tbb.def
|
||||
@@ -103,14 +104,12 @@ if (COMMAND target_link_options)
|
||||
PRIVATE
|
||||
${TBB_LIB_LINK_FLAGS}
|
||||
${TBB_COMMON_LINK_FLAGS}
|
||||
- ${TBB_IPO_LINK_FLAGS}
|
||||
)
|
||||
else()
|
||||
target_link_libraries(tbb
|
||||
PRIVATE
|
||||
${TBB_LIB_LINK_FLAGS}
|
||||
${TBB_COMMON_LINK_FLAGS}
|
||||
- ${TBB_IPO_LINK_FLAGS}
|
||||
)
|
||||
endif()
|
||||
|
||||
diff --git a/src/tbbbind/CMakeLists.txt b/src/tbbbind/CMakeLists.txt
|
||||
index 99b7ccaac..3233ec718 100644
|
||||
--- a/src/tbbbind/CMakeLists.txt
|
||||
+++ b/src/tbbbind/CMakeLists.txt
|
||||
@@ -46,7 +46,6 @@ function(tbbbind_build TBBBIND_NAME REQUIRED_HWLOC_TARGET)
|
||||
${TBB_WARNING_LEVEL}
|
||||
${TBB_LIB_COMPILE_FLAGS}
|
||||
${TBB_COMMON_COMPILE_FLAGS}
|
||||
- ${TBB_IPO_COMPILE_FLAGS}
|
||||
)
|
||||
|
||||
# Avoid use of target_link_libraries here as it changes /DEF option to \DEF on Windows.
|
||||
@@ -55,6 +54,9 @@ function(tbbbind_build TBBBIND_NAME REQUIRED_HWLOC_TARGET)
|
||||
VERSION ${TBBBIND_BINARY_VERSION}.${TBB_BINARY_MINOR_VERSION}
|
||||
SOVERSION ${TBBBIND_BINARY_VERSION}
|
||||
)
|
||||
+
|
||||
+ tbb_handle_ipo(${TBBBIND_NAME})
|
||||
+
|
||||
if (TBB_DEF_FILE_PREFIX) # If there's no prefix, assume we're using export directives
|
||||
set_target_properties(${TBBBIND_NAME} PROPERTIES
|
||||
LINK_FLAGS ${TBB_LINK_DEF_FILE_FLAG}${CMAKE_CURRENT_SOURCE_DIR}/def/${TBB_DEF_FILE_PREFIX}-tbbbind.def
|
||||
@@ -69,14 +71,12 @@ function(tbbbind_build TBBBIND_NAME REQUIRED_HWLOC_TARGET)
|
||||
PRIVATE
|
||||
${TBB_LIB_LINK_FLAGS}
|
||||
${TBB_COMMON_LINK_FLAGS}
|
||||
- ${TBB_IPO_LINK_FLAGS}
|
||||
)
|
||||
else()
|
||||
target_link_libraries(${TBBBIND_NAME}
|
||||
PRIVATE
|
||||
${TBB_LIB_LINK_FLAGS}
|
||||
${TBB_COMMON_LINK_FLAGS}
|
||||
- ${TBB_IPO_LINK_FLAGS}
|
||||
)
|
||||
endif()
|
||||
|
||||
diff --git a/src/tbbmalloc/CMakeLists.txt b/src/tbbmalloc/CMakeLists.txt
|
||||
index f77bc8f10..5a851851f 100644
|
||||
--- a/src/tbbmalloc/CMakeLists.txt
|
||||
+++ b/src/tbbmalloc/CMakeLists.txt
|
||||
@@ -59,7 +59,6 @@ target_compile_options(tbbmalloc
|
||||
${TBB_LIB_COMPILE_FLAGS}
|
||||
${TBBMALLOC_LIB_COMPILE_FLAGS}
|
||||
${TBB_COMMON_COMPILE_FLAGS}
|
||||
- ${TBB_IPO_COMPILE_FLAGS}
|
||||
)
|
||||
|
||||
enable_language(C)
|
||||
@@ -72,6 +71,8 @@ set_target_properties(tbbmalloc PROPERTIES
|
||||
LINKER_LANGUAGE C
|
||||
)
|
||||
|
||||
+tbb_handle_ipo(tbbmalloc)
|
||||
+
|
||||
if (TBB_DEF_FILE_PREFIX) # If there's no prefix, assume we're using export directives
|
||||
set_target_properties(tbbmalloc PROPERTIES
|
||||
LINK_FLAGS ${TBB_LINK_DEF_FILE_FLAG}${CMAKE_CURRENT_SOURCE_DIR}/def/${TBB_DEF_FILE_PREFIX}-tbbmalloc.def
|
||||
@@ -88,14 +89,12 @@ if (COMMAND target_link_options)
|
||||
PRIVATE
|
||||
${TBB_LIB_LINK_FLAGS}
|
||||
${TBB_COMMON_LINK_FLAGS}
|
||||
- ${TBB_IPO_LINK_FLAGS}
|
||||
)
|
||||
else()
|
||||
target_link_libraries(tbbmalloc
|
||||
PRIVATE
|
||||
${TBB_LIB_LINK_FLAGS}
|
||||
${TBB_COMMON_LINK_FLAGS}
|
||||
- ${TBB_IPO_LINK_FLAGS}
|
||||
)
|
||||
endif()
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
https://github.com/oneapi-src/oneTBB/issues/186
|
||||
https://github.com/oneapi-src/oneTBB/pull/550
|
||||
https://bugs.gentoo.org/827883
|
||||
|
||||
From: Felix Yan <felixonmars@archlinux.org>
|
||||
Date: Thu, 7 Oct 2021 14:16:16 +0800
|
||||
Subject: [PATCH] Define ITT_ARCH_IA64 when undefiend (#550)
|
||||
|
||||
Upstream-Status: Merged in commit later than 2021.5.0
|
||||
|
||||
--- a/src/tbb/tools_api/ittnotify_config.h
|
||||
+++ b/src/tbb/tools_api/ittnotify_config.h
|
||||
@@ -147,6 +147,10 @@
|
||||
# define ITT_ARCH_IA32E 2
|
||||
#endif /* ITT_ARCH_IA32E */
|
||||
|
||||
+#ifndef ITT_ARCH_IA64
|
||||
+# define ITT_ARCH_IA64 3
|
||||
+#endif /* ITT_ARCH_IA64 */
|
||||
+
|
||||
#ifndef ITT_ARCH_ARM
|
||||
# define ITT_ARCH_ARM 4
|
||||
#endif /* ITT_ARCH_ARM */
|
||||
@@ -1,27 +0,0 @@
|
||||
https://github.com/oneapi-src/oneTBB/pull/716
|
||||
|
||||
From 9595b9699ae6863d1e0cf770a89728eafcaf8845 Mon Sep 17 00:00:00 2001
|
||||
From: Christoph Erhardt <github@sicherha.de>
|
||||
Date: Wed, 5 Jan 2022 15:13:32 +0100
|
||||
Subject: [PATCH] Fix overeager stripping of compile flag
|
||||
|
||||
The existing regex strips all occurrences of the given string from
|
||||
`${CMAKE_CXX_FLAGS}`, regardless of whether it is just a substring of a
|
||||
flag. For instance, `-Werror=format-security` gets truncated to
|
||||
`=format-security`.
|
||||
|
||||
The new regex makes sure that only whole words get replaced.
|
||||
|
||||
Signed-off-by: Christoph Erhardt <github@sicherha.de>
|
||||
--- a/cmake/utils.cmake
|
||||
+++ b/cmake/utils.cmake
|
||||
@@ -18,7 +18,7 @@ macro(tbb_remove_compile_flag flag)
|
||||
set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY COMPILE_OPTIONS ${_tbb_compile_options})
|
||||
unset(_tbb_compile_options)
|
||||
if (CMAKE_CXX_FLAGS)
|
||||
- string(REGEX REPLACE ${flag} "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
|
||||
+ string(REGEX REPLACE "(^|[ \t\r\n]+)${flag}($|[ \t\r\n]+)" " " CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
https://github.com/oneapi-src/oneTBB/commit/883c2e5245c39624b3b5d6d56d5b203cf09eac38
|
||||
https://bugs.gentoo.org/830698
|
||||
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Wed, 15 Dec 2021 08:08:07 -0800
|
||||
Subject: [PATCH] Musl/linux can not use RTLD_DEEPBIND (#684)
|
||||
|
||||
Exclude non-glibc linux systems along with android
|
||||
Fixes
|
||||
src/tbb/dynamic_link.cpp:417:29: error: use
|
||||
of undeclared identifier 'RTLD_DEEPBIND' | flags = flags | RTLD_DEEPBIND;
|
||||
| ^
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
--- a/src/tbb/dynamic_link.cpp
|
||||
+++ b/src/tbb/dynamic_link.cpp
|
||||
@@ -413,7 +413,7 @@ namespace r1 {
|
||||
int flags = RTLD_NOW;
|
||||
if (local_binding) {
|
||||
flags = flags | RTLD_LOCAL;
|
||||
-#if __linux__ && !__ANDROID__ && !__TBB_USE_SANITIZERS
|
||||
+#if (__linux__ && __GLIBC__) && !__TBB_USE_SANITIZERS
|
||||
flags = flags | RTLD_DEEPBIND;
|
||||
#endif
|
||||
} else {
|
||||
@@ -1,32 +0,0 @@
|
||||
https://cgit.openembedded.org/meta-openembedded/tree/meta-oe/recipes-support/tbb/tbb/0001-mallinfo-is-glibc-specific-API-mark-it-so.patch
|
||||
https://github.com/oneapi-src/oneTBB/pull/203
|
||||
https://bugs.gentoo.org/828704
|
||||
|
||||
From: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
Date: Wed, 7 Apr 2021 11:14:13 +0800
|
||||
Subject: [PATCH] mallinfo() is glibc specific API mark it so
|
||||
|
||||
Helps compiling with musl
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
|
||||
--- a/src/tbbmalloc_proxy/proxy.cpp
|
||||
+++ b/src/tbbmalloc_proxy/proxy.cpp
|
||||
@@ -260,6 +260,7 @@ int mallopt(int /*param*/, int /*value*/
|
||||
return 1;
|
||||
}
|
||||
|
||||
+#ifdef __GLIBC__
|
||||
struct mallinfo mallinfo() __THROW
|
||||
{
|
||||
struct mallinfo m;
|
||||
@@ -267,6 +268,7 @@ struct mallinfo mallinfo() __THROW
|
||||
|
||||
return m;
|
||||
}
|
||||
+#endif
|
||||
|
||||
#if __ANDROID__
|
||||
// Android doesn't have malloc_usable_size, provide it to be compatible
|
||||
@@ -1,30 +0,0 @@
|
||||
https://bugs.gentoo.org/832700
|
||||
https://github.com/oneapi-src/oneTBB/commit/6a15b64093c51ddc00bdf4a6b49d4bbec1574a12
|
||||
|
||||
From: Rui Ueyama <rui314@gmail.com>
|
||||
Date: Fri, 4 Feb 2022 19:32:11 +0900
|
||||
Subject: [PATCH] Make tbb compile with musl libc (#748)
|
||||
|
||||
TBB resumable tasks are implemented using getcontext() and setcontext()
|
||||
on Unix-like systems. These functions are deprecated in the recent
|
||||
versions of POSIX and may not exist. musl libc does not provide these
|
||||
functions.
|
||||
|
||||
There's unfortunately no way to detect musl (musl intentionally do not
|
||||
define macros like `__MUSL__`), so __TBB_RESUMABLE_TASKS is defined if
|
||||
`__GLIBC__`. glibc-compatible libc's such as uClibc defines `__GLIBC__`,
|
||||
so it should work as a catch-all condition.
|
||||
|
||||
Signed-off-by: Rui Ueyama <ruiu@cs.stanford.edu>
|
||||
--- a/include/oneapi/tbb/detail/_config.h
|
||||
+++ b/include/oneapi/tbb/detail/_config.h
|
||||
@@ -268,7 +268,7 @@
|
||||
#define __TBB_CPP20_COMPARISONS_PRESENT __TBB_CPP20_PRESENT
|
||||
#endif
|
||||
|
||||
-#define __TBB_RESUMABLE_TASKS (!__TBB_WIN8UI_SUPPORT && !__ANDROID__ && !__QNXNTO__)
|
||||
+#define __TBB_RESUMABLE_TASKS (!__TBB_WIN8UI_SUPPORT && !__ANDROID__ && !__QNXNTO__ && (!__linux__ || __GLIBC__))
|
||||
|
||||
/* This macro marks incomplete code or comments describing ideas which are considered for the future.
|
||||
* See also for plain comment with TODO and FIXME marks for small improvement opportunities.
|
||||
|
||||
@@ -1,43 +0,0 @@
|
||||
https://github.com/oneapi-src/oneTBB/pull/609
|
||||
https://github.com/oneapi-src/oneTBB/issues/370
|
||||
https://bugs.gentoo.org/842762
|
||||
|
||||
From 542a27fa1cfafaf76772e793549d9f4d288d03a9 Mon Sep 17 00:00:00 2001
|
||||
From: Ilya Isaev <ilya.isaev@intel.com>
|
||||
Date: Fri, 8 Oct 2021 10:18:16 +0300
|
||||
Subject: [PATCH] Detect 32 bit x86 systems while adding -mwaitpkg option
|
||||
|
||||
Signed-off-by: Ilya Isaev <ilya.isaev@intel.com>
|
||||
--- a/cmake/compilers/Clang.cmake
|
||||
+++ b/cmake/compilers/Clang.cmake
|
||||
@@ -44,7 +44,7 @@ if (NOT TBB_STRICT AND COMMAND tbb_remove_compile_flag)
|
||||
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 $<$<NOT:$<VERSION_LESS:${CMAKE_CXX_COMPILER_VERSION},12.0>>:-mwaitpkg>)
|
||||
endif()
|
||||
|
||||
--- a/cmake/compilers/GNU.cmake
|
||||
+++ b/cmake/compilers/GNU.cmake
|
||||
@@ -36,7 +36,7 @@ if (NOT CMAKE_GENERATOR MATCHES "Ninja" AND NOT CMAKE_CXX_DEPENDS_USE_COMPILER)
|
||||
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()
|
||||
|
||||
--- a/cmake/compilers/MSVC.cmake
|
||||
+++ b/cmake/compilers/MSVC.cmake
|
||||
@@ -72,7 +72,7 @@ if (TBB_WINDOWS_DRIVER)
|
||||
endif()
|
||||
|
||||
if (CMAKE_CXX_COMPILER_ID MATCHES "(Clang|IntelLLVM)")
|
||||
- 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 -mwaitpkg)
|
||||
endif()
|
||||
set(TBB_OPENMP_NO_LINK_FLAG TRUE)
|
||||
@@ -1,48 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake-multilib flag-o-matic
|
||||
|
||||
DESCRIPTION="High level abstract threading library"
|
||||
HOMEPAGE="https://github.com/oneapi-src/oneTBB"
|
||||
SRC_URI="https://github.com/oneapi-src/oneTBB/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/oneTBB-${PV}"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
# https://github.com/oneapi-src/oneTBB/blob/master/CMakeLists.txt#L53
|
||||
# libtbb<SONAME>-libtbbmalloc<SONAME>-libtbbbind<SONAME>
|
||||
SLOT="0/12.5-2.5-3.5"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="!kernel_Darwin? ( sys-apps/hwloc:= )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2021.8.0-gcc-13.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
# Workaround for bug #912210
|
||||
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
|
||||
|
||||
# Has an #error to force compilation as C but links with C++ library, dies
|
||||
# with GLIBCXX_ASSERTIONS as a result.
|
||||
sed -i -e '/tbb_add_c_test(SUBDIR tbbmalloc NAME test_malloc_pure_c DEPENDENCIES TBB::tbbmalloc)/d' test/CMakeLists.txt || die
|
||||
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DTBB_TEST=$(usex test)
|
||||
-DTBB_ENABLE_IPO=OFF
|
||||
-DTBB_STRICT=OFF
|
||||
)
|
||||
|
||||
cmake-multilib_src_configure
|
||||
}
|
||||
@@ -1,48 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake-multilib flag-o-matic
|
||||
|
||||
DESCRIPTION="High level abstract threading library"
|
||||
HOMEPAGE="https://github.com/oneapi-src/oneTBB"
|
||||
SRC_URI="https://github.com/oneapi-src/oneTBB/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/oneTBB-${PV}"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
# https://github.com/oneapi-src/oneTBB/blob/master/CMakeLists.txt#L53
|
||||
# libtbb<SONAME>-libtbbmalloc<SONAME>-libtbbbind<SONAME>
|
||||
SLOT="0/12.5-2.5-3.5"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="!kernel_Darwin? ( sys-apps/hwloc:= )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2021.8.0-gcc-13.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
# Has an #error to force compilation as C but links with C++ library, dies
|
||||
# with GLIBCXX_ASSERTIONS as a result.
|
||||
sed -i -e '/tbb_add_c_test(SUBDIR tbbmalloc NAME test_malloc_pure_c DEPENDENCIES TBB::tbbmalloc)/d' test/CMakeLists.txt || die
|
||||
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Workaround for bug #912210
|
||||
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
|
||||
|
||||
local mycmakeargs=(
|
||||
-DTBB_TEST=$(usex test)
|
||||
-DTBB_ENABLE_IPO=OFF
|
||||
-DTBB_STRICT=OFF
|
||||
)
|
||||
|
||||
cmake-multilib_src_configure
|
||||
}
|
||||
@@ -1,55 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake-multilib flag-o-matic
|
||||
|
||||
DESCRIPTION="High level abstract threading library"
|
||||
HOMEPAGE="https://github.com/oneapi-src/oneTBB"
|
||||
SRC_URI="https://github.com/oneapi-src/oneTBB/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/oneTBB-${PV}"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
# https://github.com/oneapi-src/oneTBB/blob/master/CMakeLists.txt#L53
|
||||
# libtbb<SONAME>-libtbbmalloc<SONAME>-libtbbbind<SONAME>
|
||||
SLOT="0/12.5-2.5-3.5"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="!kernel_Darwin? ( sys-apps/hwloc:= )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
# should be in.. 2022?
|
||||
"${FILESDIR}"/${PN}-2021.4.0-lto.patch
|
||||
"${FILESDIR}"/${PN}-2021.5.0-musl-deepbind.patch
|
||||
# bug 827883
|
||||
"${FILESDIR}"/${PN}-2021.4.0-missing-TBB_machine_fetchadd4.patch
|
||||
# need to verify this is in master
|
||||
"${FILESDIR}"/${PN}-2021.5.0-musl-mallinfo.patch
|
||||
# musl again, should be in.. 2022?
|
||||
"${FILESDIR}"/${PN}-2021.5.0-musl-setcontext.patch
|
||||
# should be in.. 2022?
|
||||
"${FILESDIR}"/${PN}-2021.5.0-x86-mwaitpkg.patch
|
||||
|
||||
"${FILESDIR}"/${PN}-2021.5.0-flags-stripping.patch
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
# Workaround for bug #912210
|
||||
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
|
||||
|
||||
# Workaround for bug #912210
|
||||
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
|
||||
|
||||
local mycmakeargs=(
|
||||
-DTBB_TEST=$(usex test)
|
||||
-DTBB_ENABLE_IPO=OFF
|
||||
-DTBB_STRICT=OFF
|
||||
)
|
||||
|
||||
cmake-multilib_src_configure
|
||||
}
|
||||
@@ -1,40 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake-multilib flag-o-matic
|
||||
|
||||
DESCRIPTION="High level abstract threading library"
|
||||
HOMEPAGE="https://github.com/oneapi-src/oneTBB"
|
||||
SRC_URI="https://github.com/oneapi-src/oneTBB/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/oneTBB-${PV}"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
# https://github.com/oneapi-src/oneTBB/blob/master/CMakeLists.txt#L53
|
||||
# libtbb<SONAME>-libtbbmalloc<SONAME>-libtbbbind<SONAME>
|
||||
SLOT="0/12.5-2.5-3.5"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="!kernel_Darwin? ( sys-apps/hwloc:= )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
src_configure() {
|
||||
# Workaround for bug #912210
|
||||
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
|
||||
|
||||
# bug #872287
|
||||
filter-flags -D_GLIBCXX_ASSERTIONS
|
||||
append-cppflags -U_GLIBCXX_ASSERTIONS
|
||||
|
||||
local mycmakeargs=(
|
||||
-DTBB_TEST=$(usex test)
|
||||
-DTBB_ENABLE_IPO=OFF
|
||||
-DTBB_STRICT=OFF
|
||||
)
|
||||
|
||||
cmake-multilib_src_configure
|
||||
}
|
||||
@@ -1,49 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake-multilib flag-o-matic
|
||||
|
||||
DESCRIPTION="High level abstract threading library"
|
||||
HOMEPAGE="https://github.com/oneapi-src/oneTBB"
|
||||
SRC_URI="https://github.com/oneapi-src/oneTBB/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/oneTBB-${PV}"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
# https://github.com/oneapi-src/oneTBB/blob/master/CMakeLists.txt#L53
|
||||
# libtbb<SONAME>-libtbbmalloc<SONAME>-libtbbbind<SONAME>
|
||||
SLOT="0/12.5-2.5-3.5"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="!kernel_Darwin? ( sys-apps/hwloc:= )"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2021.7.0-pthread-eagain.patch
|
||||
"${FILESDIR}"/${PN}-2021.8.0-gcc-13.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
# Has an #error to force compilation as C but links with C++ library, dies
|
||||
# with GLIBCXX_ASSERTIONS as a result.
|
||||
sed -i -e '/tbb_add_c_test(SUBDIR tbbmalloc NAME test_malloc_pure_c DEPENDENCIES TBB::tbbmalloc)/d' test/CMakeLists.txt || die
|
||||
|
||||
cmake_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# Workaround for bug #912210
|
||||
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
|
||||
|
||||
local mycmakeargs=(
|
||||
-DTBB_TEST=$(usex test)
|
||||
-DTBB_ENABLE_IPO=OFF
|
||||
-DTBB_STRICT=OFF
|
||||
)
|
||||
|
||||
cmake-multilib_src_configure
|
||||
}
|
||||
Reference in New Issue
Block a user