diff --git a/common/shlibs b/common/shlibs index 83d8c3f16c9..e5acf00ba83 100644 --- a/common/shlibs +++ b/common/shlibs @@ -2376,10 +2376,15 @@ libanthy-unicode.so.0 libanthy-unicode-1.0.0.20201109_1 libanthydic-unicode.so.0 libanthy-unicode-1.0.0.20201109_1 libanthyinput-unicode.so.0 libanthy-unicode-1.0.0.20201109_1 libanthygobject-1.0.so.5 ibus-anthy-1.5.6_1 +libtbbmalloc_proxy_debug.so.2 tbb-4.3_1 libtbbmalloc_proxy.so.2 tbb-4.3_1 libtbbmalloc.so.2 tbb-4.3_1 libtbb.so.12 tbb-2021.5.0_1 libembree.so.3 embree-3.12.2_1 +libtbb_debug.so.2 tbb-4.3_1 +libtbb.so.2 tbb-4.3_1 +libtbbmalloc_debug.so.2 tbb-4.3_1 +libembree.so.2 embree-2.5.1_1 libgtkimageview.so.0 gtkimageview-1.6.4_1 libgoocanvas-2.0.so.9 goocanvas-2.0.4_1 libp8-platform.so.2 p8-platform-2.1.0.1_1 diff --git a/srcpkgs/tbb/patches/hostname-usage.patch b/srcpkgs/tbb/patches/hostname-usage.patch new file mode 100644 index 00000000000..4aefeff192b --- /dev/null +++ b/srcpkgs/tbb/patches/hostname-usage.patch @@ -0,0 +1,11 @@ +--- a/build/version_info_linux.sh ++++ b/build/version_info_linux.sh +@@ -20,7 +20,7 @@ + + # Script used to generate version info string + echo "#define __TBB_VERSION_STRINGS(N) \\" +-echo '#N": BUILD_HOST'"\t\t"`hostname -s`" ("`uname -m`")"'" ENDL \' ++echo '#N": BUILD_HOST'"\t\t"`hostname`" ("`uname -m`")"'" ENDL \' + # find OS name in *-release and issue* files by filtering blank lines and lsb-release content out + echo '#N": BUILD_OS'"\t\t"`lsb_release -sd 2>/dev/null | grep -ih '[a-z] ' - /etc/*release /etc/issue 2>/dev/null | head -1 | sed -e 's/["\\\\]//g'`'" ENDL \' + echo '#N": BUILD_KERNEL'"\t"`uname -srv`'" ENDL \' diff --git a/srcpkgs/tbb/patches/musl.patch b/srcpkgs/tbb/patches/musl.patch index ca44a7d0db9..a8867eb5379 100644 --- a/srcpkgs/tbb/patches/musl.patch +++ b/srcpkgs/tbb/patches/musl.patch @@ -1,20 +1,18 @@ -diff --git a/src/tbbmalloc_proxy/proxy.cpp b/src/tbbmalloc_proxy/proxy.cpp -index 6cf1f49f64..3acbaa8d9d 100644 ---- a/src/tbbmalloc_proxy/proxy.cpp -+++ b/src/tbbmalloc_proxy/proxy.cpp -@@ -24,6 +24,7 @@ +--- a/src/tbbmalloc/proxy.cpp 2018-10-17 14:05:31.311723013 +0200 ++++ b/src/tbbmalloc/proxy.cpp 2018-10-17 14:06:32.972726194 +0200 +@@ -28,6 +28,7 @@ // of aligned_alloc as required by new C++ standard, this makes it hard to // redefine aligned_alloc here. However, running on systems with new libc // version, it still needs it to be redefined, thus tricking system headers +#if defined(__GLIBC__) - #if defined(__GLIBC_PREREQ) - #if !__GLIBC_PREREQ(2, 16) && _GLIBCXX_HAVE_ALIGNED_ALLOC + #if defined(__GLIBC_PREREQ) && !__GLIBC_PREREQ(2, 16) && _GLIBCXX_HAVE_ALIGNED_ALLOC // tell that there is no aligned_alloc -@@ -35,6 +36,7 @@ - #undef aligned_alloc - #endif // !__GLIBC_PREREQ(2, 16) && _GLIBCXX_HAVE_ALIGNED_ALLOC - #endif // defined(__GLIBC_PREREQ) -+#endif // defined(__GLIBC__) + #undef _GLIBCXX_HAVE_ALIGNED_ALLOC +@@ -37,6 +38,7 @@ #include - #endif // __unix__ && !__ANDROID__ + #undef aligned_alloc + #endif // defined(__GLIBC_PREREQ)&&!__GLIBC_PREREQ(2, 16)&&_GLIBCXX_HAVE_ALIGNED_ALLOC ++#endif // defined(__GLIBC__) + #endif // __linux__ && !__ANDROID__ + #include "proxy.h" diff --git a/srcpkgs/tbb/patches/rtld_deepbind.patch b/srcpkgs/tbb/patches/rtld_deepbind.patch deleted file mode 100644 index 14bb2dbc6a0..00000000000 --- a/srcpkgs/tbb/patches/rtld_deepbind.patch +++ /dev/null @@ -1,14 +0,0 @@ -# https://github.com/oneapi-src/oneTBB/pull/684/commits/453a9c555d3fae5df3b42d98621b17d401d622f0 -diff --git a/src/tbb/dynamic_link.cpp b/src/tbb/dynamic_link.cpp -index 3f1342503..5330d7107 100644 ---- 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 { diff --git a/srcpkgs/tbb/template b/srcpkgs/tbb/template index d665aedaec9..606c880a75a 100644 --- a/srcpkgs/tbb/template +++ b/srcpkgs/tbb/template @@ -1,46 +1,77 @@ # Template file for 'tbb' pkgname=tbb -version=2021.5.0 -revision=1 -wrksrc="oneTBB-${version}" -build_style=cmake -makedepends="libgomp-devel libhwloc-devel" +reverts="2021.5.0_1" +version=2020.U3 +revision=2 +# version rewrite: 2017_U7 (upstream) => 2017.7 (xbps) +_ver=${version/./_} +wrksrc="oneTBB-${_ver}" +build_style=gnu-makefile +hostmakedepends="cmake" short_desc="Intel Threading Building Blocks" maintainer="Andrea Brancaleoni " license="Apache-2.0" homepage="https://www.threadingbuildingblocks.org" -changelog="https://raw.githubusercontent.com/oneapi-src/oneTBB/master/RELEASE_NOTES.md" -distfiles="https://github.com/oneapi-src/oneTBB/archive/refs/tags/v${version}.tar.gz" -checksum=e5b57537c741400cf6134b428fc1689a649d7d38d9bb9c1b6d64f092ea28178a -make_check=no # checks fail upstream on i686 +distfiles="https://github.com/oneapi-src/oneTBB/archive/${_ver}.tar.gz" +checksum=2103cc6238c935664f87680618f6684d57501d4a2fa8ea8f6c97ad6ff7dc722a -if [ "$XBPS_TARGET_LIBC" = "musl" ]; then - makedepends+=" libucontext-devel" - configure_args+=" -DCMAKE_CXX_STANDARD_LIBRARIES=-lucontext" -fi - -if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then - makedepends+=" libatomic-devel" - # XXX: should be some linking related flag, but couldn't find how to append to them - configure_args+=" -DCMAKE_CXX_FLAGS=-latomic" -fi +case "$XBPS_TARGET_MACHINE" in + x86_64*) + make_build_args="arch=intel64" + ;; + i686*) + make_build_args="arch=ia32" + ;; + armv7l*) + make_build_args="arch=armv7" + ;; + aarch64*) + make_build_args="arch=arm64" + ;; + ppc64*) + make_build_args="arch=ppc64" + ;; + ppc*) + make_build_args="arch=ppc32" + ;; + *) + # make sure to fall back instead of letting host uname control it + make_build_args="arch=generic" + ;; +esac post_extract() { + sed -i 's|CPLUS = g..|CPLUS = $(CXX)|g' build/linux.gcc.inc + sed -i 's|CONLY = gcc|CONLY = $(CC)|g' build/linux.gcc.inc + # alternative might be: # https://git.alpinelinux.org/cgit/aports/tree/testing/libtbb/glibc-struct-mallinfo.patch if [ "$XBPS_TARGET_LIBC" = "musl" ]; then vsed -e "s@#define MALLOC_UNIXLIKE_OVERLOAD_ENABLED __linux__@@" \ - -i src/tbbmalloc_proxy/proxy.h + -i src/tbbmalloc/proxy.h fi } +do_install() { + vmkdir usr/lib + vcopy build/linux_*/*.so* usr/lib + vmkdir usr/include/tbb + vcopy include/tbb/* usr/include/tbb + + cmake \ + -DINSTALL_DIR=$DESTDIR/usr/lib/cmake/TBB \ + -DSYSTEM_NAME=Linux \ + -DLIB_REL_PATH=../.. \ + -DINC_REL_PATH=../../../include \ + -P cmake/tbb_config_installer.cmake +} + tbb-devel_package() { depends="${sourcepkg}>=${version}_${revision}" short_desc+=" - development files" pkg_install() { vmove usr/include - vmove usr/lib/cmake - vmove usr/lib/pkgconfig vmove "usr/lib/*.so" + vmove usr/lib/cmake } }