diff --git a/devel/onetbb/Makefile b/devel/onetbb/Makefile index 00a0c49cb4e9..578bec315771 100644 --- a/devel/onetbb/Makefile +++ b/devel/onetbb/Makefile @@ -1,43 +1,40 @@ # Created by: Arun Sharma PORTNAME= onetbb PORTVERSION= 2021.3.0 DISTVERSIONPREFIX= v CATEGORIES= devel -PATCH_SITES= https://github.com/oneapi-src/oneTBB/commit/ -PATCHFILES= fa944e19600500863507ed8e9b1f5a30037d9df6.patch:-p1 - MAINTAINER= martymac@FreeBSD.org COMMENT= Library that provides thread building blocks LICENSE= APACHE20 LIB_DEPENDS= libhwloc.so.15:devel/hwloc2 USES= cmake compiler:c++11-lang tar:tgz CMAKE_ARGS+= -DTBB_STRICT:BOOL=FALSE \ -DCMAKE_INSTALL_DOCDIR:PATH="${DOCSDIR}" \ -DCMAKE_HWLOC_2_4_LIBRARY_PATH:PATH="${LOCALBASE}/lib/libhwloc.so" \ -DCMAKE_HWLOC_2_4_INCLUDE_PATH:PATH="${LOCALBASE}/include" CONFLICTS= tbb-[0-9]* USE_GITHUB= yes GH_ACCOUNT= oneapi-src GH_PROJECT= oneTBB USE_LDCONFIG= yes PORTDOCS= README.md OPTIONS_DEFINE= DOCS .include .if ${ARCH} == powerpc || ${ARCH} == riscv64 EXTRA_PATCHES= ${FILESDIR}/extra-patch-src_tbb_tools__api_ittnotify__config.h .endif .include diff --git a/devel/onetbb/distinfo b/devel/onetbb/distinfo index f1f339d292cb..b362736545bd 100644 --- a/devel/onetbb/distinfo +++ b/devel/onetbb/distinfo @@ -1,5 +1,3 @@ TIMESTAMP = 1626043027 SHA256 (oneapi-src-oneTBB-v2021.3.0_GH0.tar.gz) = 8f616561603695bbb83871875d2c6051ea28f8187dbe59299961369904d1d49e SIZE (oneapi-src-oneTBB-v2021.3.0_GH0.tar.gz) = 1651329 -SHA256 (fa944e19600500863507ed8e9b1f5a30037d9df6.patch) = a7c4dfdcf6794019d1f4d247cf669e9b8ef4511eb6d254eeca038b82de41334d -SIZE (fa944e19600500863507ed8e9b1f5a30037d9df6.patch) = 1467 diff --git a/devel/onetbb/files/patch-src_tbbmalloc_frontend.cpp b/devel/onetbb/files/patch-src_tbbmalloc_frontend.cpp new file mode 100644 index 000000000000..314267054456 --- /dev/null +++ b/devel/onetbb/files/patch-src_tbbmalloc_frontend.cpp @@ -0,0 +1,30 @@ +Backport fa944e19600500863507ed8e9b1f5a30037d9df6 + +--- src/tbbmalloc/frontend.cpp.orig 2021-06-30 08:19:55 UTC ++++ src/tbbmalloc/frontend.cpp +@@ -802,21 +802,15 @@ static inline unsigned int highestBitPos(unsigned int + return pos; + } + +- +-#if __TBB_x86_32 || __aarch32__ + unsigned int getSmallObjectIndex(unsigned int size) + { +- return (size-1)>>3; +-} +-#elif __TBB_x86_64 || __aarch64__ +-unsigned int getSmallObjectIndex(unsigned int size) +-{ +- // For 64-bit malloc, 16 byte alignment is needed except for bin 0. + unsigned int result = (size-1)>>3; +- if (result) result |= 1; // 0,1,3,5,7; bins 2,4,6 are not aligned to 16 bytes ++ if (sizeof(void*)==8) { ++ // For 64-bit malloc, 16 byte alignment is needed except for bin 0. ++ if (result) result |= 1; // 0,1,3,5,7; bins 2,4,6 are not aligned to 16 bytes ++ } + return result; + } +-#endif // __TBB_x86_32 || __aarch32__ + + /* + * Depending on indexRequest, for a given size return either the index into the bin