Skip to content

Commit

Permalink
Merge pull request #6792 from mrodozov/tbb_2021_2_0
Browse files Browse the repository at this point in the history
Update TBB to 2021.2.0 and use cmake to build
  • Loading branch information
cmsbuild authored May 4, 2021
2 parents eb939c0 + 0b05726 commit b982e6f
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 16 deletions.
20 changes: 17 additions & 3 deletions tbb-toolfile.spec
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
### RPM external tbb-toolfile 1.0
### RPM external tbb-toolfile 2.0
Requires: tbb
%prep

Expand All @@ -13,8 +13,8 @@ cat << \EOF_TOOLFILE >%i/etc/scram.d/tbb.xml
<lib name="tbb"/>
<client>
<environment name="TBB_BASE" default="@TOOL_ROOT@"/>
<environment name="LIBDIR" default="$TBB_BASE/lib"/>
<environment name="INCLUDE" default="$TBB_BASE/include"/>
<environment name="LIBDIR" default="$TBB_BASE/lib"/>
<environment name="INCLUDE" default="$TBB_BASE/include"/>
</client>
<runtime name="ROOT_INCLUDE_PATH" value="$INCLUDE" type="path"/>
<use name="root_cxxdefaults"/>
Expand All @@ -25,6 +25,20 @@ cat << \EOF_TOOLFILE >%i/etc/scram.d/tbb.xml
</tool>
EOF_TOOLFILE

cat << \EOF_TOOLFILE >%i/etc/scram.d/tbbbind.xml
<tool name="tbbbind" version="@TOOL_VERSION@">
<info url="http://threadingbuildingblocks.org"/>
<use name="tbb"/>
<lib name="tbbbind_2_0"/>
<client>
<environment name="TBBBIND_BASE" default="@TOOL_ROOT@"/>
<environment name="LIBDIR" default="$TBBBIND_BASE/lib"/>
<environment name="INCLUDE" default="$TBBBIND_BASE/include"/>
</client>
<flags SYSTEM_INCLUDE="1"/>
</tool>
EOF_TOOLFILE

export GCC_GLIBCXX_VERSION=$(gcc -dumpversion | tr '.' '0')

## IMPORT scram-tools-post
32 changes: 19 additions & 13 deletions tbb.spec
Original file line number Diff line number Diff line change
@@ -1,25 +1,31 @@
### RPM external tbb 2020_U3
### RPM external tbb v2021.2.0

%define tag %{realversion}
%define branch tbb_2020
%define branch onetbb_2021
%define github_user oneapi-src
Source: git+https://github.com/%{github_user}/oneTBB.git?obj=%{branch}/%{tag}&export=%{n}-%{realversion}&output=/%{n}-%{realversion}-%{tag}.tgz
%define github_repo oneTBB
Source: git+https://github.com/%{github_user}/%{github_repo}.git?obj=%{branch}/%{tag}&export=%{n}-%{realversion}&output=/%{n}-%{branch}-%{tag}.tgz
Requires: hwloc
BuildRequires: cmake

%prep
%setup -n %{n}-%{realversion}

%build
rm -rf %{_builddir}/build
mkdir %{_builddir}/build

make %{makeprocesses} stdver=c++17 tbb_cpf=1
cd %{_builddir}/build
cmake ../%{n}-%{realversion} \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=%{i} \
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_HWLOC_2_INCLUDE_PATH=$HWLOC_ROOT/include \
-DCMAKE_HWLOC_2_LIBRARY_PATH=$HWLOC_ROOT/lib/libhwloc.so \
-DTBB_CPF=ON

make %{makeprocesses}

%install
install -d %i/lib
cp -r include %i/include
case %cmsplatf in
osx*) SONAME=dylib ;;
*) SONAME=so ;;
esac
find build -name "*.$SONAME*" -exec cp {} %i/lib \;
ln -s libtbb_preview.${SONAME} %{i}/lib/libtbb.${SONAME}
cmake -DINSTALL_DIR=%{i}/cmake/TBB -DSYSTEM_NAME=Linux -DINC_PATH=%{i}/include -DLIB_PATH=%{i}/lib -P cmake/tbb_config_installer.cmake
cd %{_builddir}/build
make install

0 comments on commit b982e6f

Please sign in to comment.