|
|
@ -1,42 +1,61 @@
|
|
|
|
|
|
|
|
%global upver 2018
|
|
|
|
|
|
|
|
%global uprel 2
|
|
|
|
|
|
|
|
|
|
|
|
Name: tbb
|
|
|
|
Name: tbb
|
|
|
|
Summary: The Threading Building Blocks library abstracts low-level threading details
|
|
|
|
Summary: The Threading Building Blocks library abstracts low-level threading details
|
|
|
|
Version: 2020.3
|
|
|
|
Version: %{upver}%{?uprel:.%{uprel}}
|
|
|
|
Release: 8%{?dist}.1
|
|
|
|
Release: 10%{?dist}.1
|
|
|
|
License: ASL 2.0
|
|
|
|
License: ASL 2.0
|
|
|
|
|
|
|
|
Group: Development/Tools
|
|
|
|
URL: http://threadingbuildingblocks.org/
|
|
|
|
URL: http://threadingbuildingblocks.org/
|
|
|
|
|
|
|
|
|
|
|
|
Source0: https://github.com/intel/tbb/archive/v%{version}/%{name}-%{version}.tar.gz
|
|
|
|
Source0: https://github.com/01org/tbb/archive/%{upver}%{?uprel:_U%{uprel}}.tar.gz
|
|
|
|
# These three are downstream sources.
|
|
|
|
# These three are downstream sources.
|
|
|
|
Source6: tbb.pc
|
|
|
|
Source6: tbb.pc
|
|
|
|
Source7: tbbmalloc.pc
|
|
|
|
Source7: tbbmalloc.pc
|
|
|
|
Source8: tbbmalloc_proxy.pc
|
|
|
|
Source8: tbbmalloc_proxy.pc
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Propagate CXXFLAGS variable into flags used when compiling C++.
|
|
|
|
|
|
|
|
# This is so that RPM_OPT_FLAGS are respected.
|
|
|
|
|
|
|
|
Patch1: tbb-4.4-cxxflags.patch
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# For 32-bit x86 only, don't assume that the mfence instruction is available.
|
|
|
|
|
|
|
|
# It was added with SSE2. This patch causes a lock xchg instruction to be
|
|
|
|
|
|
|
|
# emitted for non-SSE2 builds, and the mfence instruction to be emitted for
|
|
|
|
|
|
|
|
# SSE2-enabled builds.
|
|
|
|
|
|
|
|
Patch2: tbb-4.0-mfence.patch
|
|
|
|
|
|
|
|
|
|
|
|
# Don't snip -Wall from C++ flags. Add -fno-strict-aliasing, as that
|
|
|
|
# Don't snip -Wall from C++ flags. Add -fno-strict-aliasing, as that
|
|
|
|
# uncovers some static-aliasing warnings.
|
|
|
|
# uncovers some static-aliasing warnings.
|
|
|
|
# Related: https://bugzilla.redhat.com/show_bug.cgi?id=1037347
|
|
|
|
# Related: https://bugzilla.redhat.com/show_bug.cgi?id=1037347
|
|
|
|
Patch0: tbb-2019-dont-snip-Wall.patch
|
|
|
|
Patch3: tbb-4.3-dont-snip-Wall.patch
|
|
|
|
|
|
|
|
|
|
|
|
# Make attributes of aliases match those on the aliased function.
|
|
|
|
# python3 is not available on RHEL <=7
|
|
|
|
Patch1: tbb-2020-attributes.patch
|
|
|
|
%if 0%{?rhel} && 0%{?rhel} <= 7
|
|
|
|
|
|
|
|
# disable python3 by default
|
|
|
|
# Fix test-thread-monitor, which had multiple bugs that could (and did, on
|
|
|
|
%bcond_with python3
|
|
|
|
# ppc64le) result in a hang.
|
|
|
|
%else
|
|
|
|
Patch2: tbb-2019-test-thread-monitor.patch
|
|
|
|
%bcond_without python3
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# python2 is not available on RHEL > 7 and not needed on Fedora > 28
|
|
|
|
|
|
|
|
%if 0%{?rhel} > 7 || 0%{?fedora} > 28
|
|
|
|
|
|
|
|
# disable python2 by default
|
|
|
|
|
|
|
|
%bcond_with python2
|
|
|
|
|
|
|
|
%else
|
|
|
|
|
|
|
|
%bcond_without python2
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
# Fix a test that builds a 4-thread barrier, but cannot guarantee that more
|
|
|
|
BuildRequires: gcc-c++
|
|
|
|
# than 2 threads will be available to use it.
|
|
|
|
BuildRequires: swig
|
|
|
|
Patch3: tbb-2019-test-task-scheduler-init.patch
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Fix ABI break resulting from tbb::empty_task being removed from libtbb.so's
|
|
|
|
%if %{with python2}
|
|
|
|
# exported symbols
|
|
|
|
BuildRequires: python2-devel
|
|
|
|
Patch4: tbb-mark-empty_task-execute-with-gnu-used.patch
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
BuildRequires: cmake
|
|
|
|
%if %{with python3}
|
|
|
|
BuildRequires: doxygen
|
|
|
|
|
|
|
|
BuildRequires: gcc-c++
|
|
|
|
|
|
|
|
BuildRequires: make
|
|
|
|
|
|
|
|
BuildRequires: python3-devel
|
|
|
|
BuildRequires: python3-devel
|
|
|
|
BuildRequires: swig
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
%description
|
|
|
|
%description
|
|
|
|
Threading Building Blocks (TBB) is a C++ runtime library that
|
|
|
|
Threading Building Blocks (TBB) is a C++ runtime library that
|
|
|
@ -52,6 +71,7 @@ maintenance is required as more processor cores become available.
|
|
|
|
|
|
|
|
|
|
|
|
%package devel
|
|
|
|
%package devel
|
|
|
|
Summary: The Threading Building Blocks C++ headers and shared development libraries
|
|
|
|
Summary: The Threading Building Blocks C++ headers and shared development libraries
|
|
|
|
|
|
|
|
Group: Development/Libraries
|
|
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
|
|
|
|
|
|
|
|
|
|
%description devel
|
|
|
|
%description devel
|
|
|
@ -61,89 +81,149 @@ Blocks (TBB) C++ libraries.
|
|
|
|
|
|
|
|
|
|
|
|
%package doc
|
|
|
|
%package doc
|
|
|
|
Summary: The Threading Building Blocks documentation
|
|
|
|
Summary: The Threading Building Blocks documentation
|
|
|
|
|
|
|
|
Group: Documentation
|
|
|
|
|
|
|
|
|
|
|
|
%description doc
|
|
|
|
%description doc
|
|
|
|
HTML documentation for the user of the Threading Building Block (TBB)
|
|
|
|
HTML documentation for the user of the Threading Building Block (TBB)
|
|
|
|
C++ library.
|
|
|
|
C++ library.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%if %{with python2}
|
|
|
|
|
|
|
|
%package -n python2-%{name}
|
|
|
|
|
|
|
|
Summary: Python 2 TBB module
|
|
|
|
|
|
|
|
%{?python_provide:%python_provide python2-%{name}}
|
|
|
|
|
|
|
|
Requires: tbb = %{version}-%{release}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%description -n python2-%{name}
|
|
|
|
|
|
|
|
Python 2 TBB module.
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%if %{with python3}
|
|
|
|
%package -n python3-%{name}
|
|
|
|
%package -n python3-%{name}
|
|
|
|
Summary: Python 3 TBB module
|
|
|
|
Summary: Python 3 TBB module
|
|
|
|
|
|
|
|
%{?python_provide:%python_provide python3-%{name}}
|
|
|
|
|
|
|
|
Requires: tbb = %{version}-%{release}
|
|
|
|
|
|
|
|
|
|
|
|
%description -n python3-%{name}
|
|
|
|
%description -n python3-%{name}
|
|
|
|
Python 3 TBB module.
|
|
|
|
Python 3 TBB module.
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
%prep
|
|
|
|
%prep
|
|
|
|
%autosetup -p1 -n oneTBB-%{version}
|
|
|
|
%setup -q -n %{name}-%{upver}_U%{uprel}
|
|
|
|
|
|
|
|
%patch1 -p1
|
|
|
|
|
|
|
|
%patch2 -p1
|
|
|
|
|
|
|
|
%patch3 -p1
|
|
|
|
|
|
|
|
|
|
|
|
# For repeatable builds, don't query the hostname or architecture
|
|
|
|
# For repeatable builds, don't query the hostname or architecture
|
|
|
|
sed -i 's/"`hostname -s`" ("`uname -m`"/fedorabuild (%{_arch}/' \
|
|
|
|
sed -i 's/"`hostname -s`" ("`uname -m`"/fedorabuild (%{_arch}/' \
|
|
|
|
build/version_info_linux.sh
|
|
|
|
build/version_info_linux.sh
|
|
|
|
|
|
|
|
|
|
|
|
# Insert --as-needed before the libraries to be linked.
|
|
|
|
# Do not assume the RTM instructions are available
|
|
|
|
sed -i "s/-fPIC/& -Wl,--as-needed/" build/linux.gcc.inc
|
|
|
|
sed -i 's/-mrtm//' build/linux.gcc.inc
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%if %{with python2}
|
|
|
|
|
|
|
|
# Invoke the right python binary directly
|
|
|
|
|
|
|
|
sed -i 's,env python,python2,' python/TBB.py python/tbb/__*.py
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%if %{with python3}
|
|
|
|
# Invoke the right python binary directly
|
|
|
|
# Invoke the right python binary directly
|
|
|
|
sed -i 's,env python,python3,' python/TBB.py python/tbb/__*.py
|
|
|
|
sed -i 's,env python,python3,' python/TBB.py python/tbb/__*.py
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
# Remove shebang from files that don't need it
|
|
|
|
# Remove shebang from files that don't need it
|
|
|
|
sed -i '/^#!/d' python/tbb/{pool,test}.py
|
|
|
|
sed -i '/^#!/d' python/tbb/{pool,test}.py
|
|
|
|
|
|
|
|
|
|
|
|
# Disable jQuery use
|
|
|
|
# Fix libdir on 64-bit systems
|
|
|
|
sed -i '/^SEARCHENGINE/s/YES/NO/' Doxyfile
|
|
|
|
if [ "%{_libdir}" != "%{_prefix}/lib" ]; then
|
|
|
|
|
|
|
|
sed -i.orig 's/"lib"/"%{_lib}"/' cmake/TBBMakeConfig.cmake
|
|
|
|
%build
|
|
|
|
touch -r cmake/TBBMakeConfig.cmake.orig cmake/TBBMakeConfig.cmake
|
|
|
|
compiler=""
|
|
|
|
rm cmake/TBBMakeConfig.cmake.orig
|
|
|
|
if [[ %{__cc} == *"gcc"* ]]; then
|
|
|
|
|
|
|
|
compiler="gcc"
|
|
|
|
|
|
|
|
elif [[ %{__cc} == *"clang"* ]]; then
|
|
|
|
|
|
|
|
compiler="clang"
|
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
compiler="%{__cc}"
|
|
|
|
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
%make_build tbb_build_prefix=obj stdver=c++14 \
|
|
|
|
# Prepare to build the python module for both python 2 and python 3
|
|
|
|
compiler=${compiler} \
|
|
|
|
%if %{with python2}
|
|
|
|
CXXFLAGS="%{optflags} -DUSE_PTHREAD" \
|
|
|
|
cp -a python python2
|
|
|
|
LDFLAGS="$RPM_LD_FLAGS -lpthread"
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%if %{with python3}
|
|
|
|
|
|
|
|
cp -a python python3
|
|
|
|
|
|
|
|
sed -i 's,python,python3,g' python3/Makefile python3/rml/Makefile
|
|
|
|
|
|
|
|
sed -i 's,python2,python3,' python3/TBB.py python3/tbb/__*.py
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Invoke Python with the %%{__python3} executable instead of hardcoded python3
|
|
|
|
|
|
|
|
sed -i 's,PY_SETUP=python3,PY_SETUP=%{__python3},g' python3/Makefile
|
|
|
|
|
|
|
|
sed -i 's,python3 -m tbb test,%{__python3} -m tbb test,g' python3/Makefile
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Remove jQuery
|
|
|
|
|
|
|
|
rm doc/html/jquery.js
|
|
|
|
|
|
|
|
find doc/html -name '*.html' | xargs sed -i '/<script type="text.javascript" src="jquery.js"><.script>/d'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%build
|
|
|
|
|
|
|
|
%ifarch %{ix86}
|
|
|
|
|
|
|
|
# Build an SSE2-enabled version so the mfence instruction can be used
|
|
|
|
|
|
|
|
cp -a build build.orig
|
|
|
|
|
|
|
|
make %{?_smp_mflags} tbb_build_prefix=obj stdver=c++14 \
|
|
|
|
|
|
|
|
CXXFLAGS="$RPM_OPT_FLAGS -march=pentium4 -msse2" \
|
|
|
|
|
|
|
|
LDFLAGS="-Wl,--as-needed $RPM_LD_FLAGS"
|
|
|
|
|
|
|
|
mv build build.sse2
|
|
|
|
|
|
|
|
mv build.orig build
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
make %{?_smp_mflags} tbb_build_prefix=obj stdver=c++14 \
|
|
|
|
|
|
|
|
CXXFLAGS="$RPM_OPT_FLAGS" \
|
|
|
|
|
|
|
|
LDFLAGS="-Wl,--as-needed $RPM_LD_FLAGS"
|
|
|
|
for file in %{SOURCE6} %{SOURCE7} %{SOURCE8}; do
|
|
|
|
for file in %{SOURCE6} %{SOURCE7} %{SOURCE8}; do
|
|
|
|
base=$(basename ${file})
|
|
|
|
base=$(basename ${file})
|
|
|
|
sed 's/_FEDORA_VERSION/%{version}/' ${file} > ${base}
|
|
|
|
sed 's/_FEDORA_VERSION/%{version}/' ${file} > ${base}
|
|
|
|
touch -r ${file} ${base}
|
|
|
|
touch -r ${file} ${base}
|
|
|
|
done
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Build for python 2
|
|
|
|
|
|
|
|
%if %{with python2}
|
|
|
|
|
|
|
|
. build/obj_release/tbbvars.sh
|
|
|
|
|
|
|
|
pushd python2
|
|
|
|
|
|
|
|
make %{?_smp_mflags} -C rml stdver=c++14 \
|
|
|
|
|
|
|
|
CPLUS_FLAGS="%{optflags} -DDO_ITT_NOTIFY -DUSE_PTHREAD" \
|
|
|
|
|
|
|
|
PIC_KEY="-fPIC -Wl,--as-needed" \
|
|
|
|
|
|
|
|
LDFLAGS="$RPM_LD_FLAGS"
|
|
|
|
|
|
|
|
cp -p rml/libirml.so* .
|
|
|
|
|
|
|
|
%py2_build
|
|
|
|
|
|
|
|
popd
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%if %{with python3}
|
|
|
|
# Build for python 3
|
|
|
|
# Build for python 3
|
|
|
|
. build/obj_release/tbbvars.sh
|
|
|
|
. build/obj_release/tbbvars.sh
|
|
|
|
pushd python
|
|
|
|
pushd python3
|
|
|
|
%make_build -C rml stdver=c++14 \
|
|
|
|
make %{?_smp_mflags} -C rml stdver=c++14 \
|
|
|
|
compiler=${compiler} \
|
|
|
|
CPLUS_FLAGS="%{optflags} -DDO_ITT_NOTIFY -DUSE_PTHREAD" \
|
|
|
|
CPLUS_FLAGS="%{optflags} -DUSE_PTHREAD" \
|
|
|
|
PIC_KEY="-fPIC -Wl,--as-needed" \
|
|
|
|
LDFLAGS="$RPM_LD_FLAGS -lpthread"
|
|
|
|
LDFLAGS="$RPM_LD_FLAGS"
|
|
|
|
cp -p rml/libirml.so* .
|
|
|
|
cp -p rml/libirml.so* .
|
|
|
|
%py3_build
|
|
|
|
%py3_build
|
|
|
|
popd
|
|
|
|
popd
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
# Build the documentation
|
|
|
|
|
|
|
|
make doxygen
|
|
|
|
|
|
|
|
# We don't want to ship jQuery in the tbb-doc package
|
|
|
|
|
|
|
|
rm html/jquery.js
|
|
|
|
|
|
|
|
find html -name '*.html' | xargs sed -i '/<script type="text.javascript" src="jquery.js"><.script>/d'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%check
|
|
|
|
%check
|
|
|
|
# This test assumes it can create thread barriers for arbitrary numbers of
|
|
|
|
echo ============BEGIN TESTING===============
|
|
|
|
# threads, but tbb limits the number of threads spawned to a function of the
|
|
|
|
make -k test tbb_build_prefix=obj stdver=c++14 CXXFLAGS="$RPM_OPT_FLAGS" && true
|
|
|
|
# number of CPUs available. Some of the koji builders have a small number of
|
|
|
|
echo ============END TESTING===========
|
|
|
|
# CPUs, so the test hangs waiting for threads that have not been created to
|
|
|
|
|
|
|
|
# arrive at the barrier. Skip this test until upstream fixes it.
|
|
|
|
|
|
|
|
sed -i '/test_task_scheduler_observer/d' build/Makefile.test
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
make test tbb_build_prefix=obj stdver=c++14 CXXFLAGS="%{optflags}"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%install
|
|
|
|
%install
|
|
|
|
mkdir -p $RPM_BUILD_ROOT/%{_libdir}
|
|
|
|
mkdir -p $RPM_BUILD_ROOT/%{_libdir}
|
|
|
|
mkdir -p $RPM_BUILD_ROOT/%{_includedir}
|
|
|
|
mkdir -p $RPM_BUILD_ROOT/%{_includedir}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%ifarch %{ix86}
|
|
|
|
|
|
|
|
mkdir -p $RPM_BUILD_ROOT/%{_libdir}/sse2
|
|
|
|
|
|
|
|
pushd build.sse2/obj_release
|
|
|
|
|
|
|
|
for file in libtbb{,malloc{,_proxy}}; do
|
|
|
|
|
|
|
|
install -p -D -m 755 ${file}.so.2 $RPM_BUILD_ROOT/%{_libdir}/sse2
|
|
|
|
|
|
|
|
done
|
|
|
|
|
|
|
|
popd
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
pushd build/obj_release
|
|
|
|
pushd build/obj_release
|
|
|
|
for file in libtbb{,malloc{,_proxy}}; do
|
|
|
|
for file in libtbb{,malloc{,_proxy}}; do
|
|
|
|
install -p -D -m 755 ${file}.so.2 $RPM_BUILD_ROOT/%{_libdir}
|
|
|
|
install -p -D -m 755 ${file}.so.2 $RPM_BUILD_ROOT/%{_libdir}
|
|
|
@ -166,162 +246,104 @@ done
|
|
|
|
mkdir -p $RPM_BUILD_ROOT%{_includedir}/rml
|
|
|
|
mkdir -p $RPM_BUILD_ROOT%{_includedir}/rml
|
|
|
|
cp -p src/rml/include/*.h $RPM_BUILD_ROOT%{_includedir}/rml
|
|
|
|
cp -p src/rml/include/*.h $RPM_BUILD_ROOT%{_includedir}/rml
|
|
|
|
|
|
|
|
|
|
|
|
# Python 3 install
|
|
|
|
# Python 2 install
|
|
|
|
|
|
|
|
%if %{with python2}
|
|
|
|
. build/obj_release/tbbvars.sh
|
|
|
|
. build/obj_release/tbbvars.sh
|
|
|
|
pushd python
|
|
|
|
pushd python2
|
|
|
|
|
|
|
|
%py2_install
|
|
|
|
|
|
|
|
chmod a+x $RPM_BUILD_ROOT%{python2_sitearch}/TBB.py
|
|
|
|
|
|
|
|
chmod a+x $RPM_BUILD_ROOT%{python2_sitearch}/tbb/__*.py
|
|
|
|
|
|
|
|
cp -p libirml.so.1 $RPM_BUILD_ROOT%{_libdir}
|
|
|
|
|
|
|
|
ln -s libirml.so.1 $RPM_BUILD_ROOT%{_libdir}/libirml.so
|
|
|
|
|
|
|
|
popd
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Python 3 install
|
|
|
|
|
|
|
|
%if %{with python3}
|
|
|
|
|
|
|
|
pushd python3
|
|
|
|
%py3_install
|
|
|
|
%py3_install
|
|
|
|
chmod a+x $RPM_BUILD_ROOT%{python3_sitearch}/TBB.py
|
|
|
|
chmod a+x $RPM_BUILD_ROOT%{python3_sitearch}/TBB.py
|
|
|
|
chmod a+x $RPM_BUILD_ROOT%{python3_sitearch}/tbb/__*.py
|
|
|
|
chmod a+x $RPM_BUILD_ROOT%{python3_sitearch}/tbb/__*.py
|
|
|
|
cp -p libirml.so.1 $RPM_BUILD_ROOT%{_libdir}
|
|
|
|
cp -p libirml.so.1 $RPM_BUILD_ROOT%{_libdir}
|
|
|
|
ln -s libirml.so.1 $RPM_BUILD_ROOT%{_libdir}/libirml.so
|
|
|
|
ln -s libirml.so.1 $RPM_BUILD_ROOT%{_libdir}/libirml.so
|
|
|
|
popd
|
|
|
|
popd
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
# Install the cmake files
|
|
|
|
# Install the cmake files
|
|
|
|
cmake \
|
|
|
|
mkdir -p $RPM_BUILD_ROOT%{_libdir}/cmake
|
|
|
|
-DINSTALL_DIR=$RPM_BUILD_ROOT%{_libdir}/cmake/TBB \
|
|
|
|
cp -a cmake $RPM_BUILD_ROOT%{_libdir}/cmake/%{name}
|
|
|
|
-DSYSTEM_NAME=Linux \
|
|
|
|
rm $RPM_BUILD_ROOT%{_libdir}/cmake/%{name}/README.rst
|
|
|
|
-DLIB_REL_PATH=../.. \
|
|
|
|
|
|
|
|
-P cmake/tbb_config_installer.cmake
|
|
|
|
%post -p /sbin/ldconfig
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%postun -p /sbin/ldconfig
|
|
|
|
|
|
|
|
|
|
|
|
%files
|
|
|
|
%files
|
|
|
|
%doc doc/Release_Notes.txt README.md
|
|
|
|
%doc doc/Release_Notes.txt README.md
|
|
|
|
%license LICENSE
|
|
|
|
%license LICENSE
|
|
|
|
%{_libdir}/libtbb.so.2
|
|
|
|
%{_libdir}/*.so.2
|
|
|
|
%{_libdir}/libtbbmalloc.so.2
|
|
|
|
|
|
|
|
%{_libdir}/libtbbmalloc_proxy.so.2
|
|
|
|
|
|
|
|
%{_libdir}/libirml.so.1
|
|
|
|
%{_libdir}/libirml.so.1
|
|
|
|
|
|
|
|
%ifarch %{ix86}
|
|
|
|
|
|
|
|
%{_libdir}/sse2/*.so.2
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
%files devel
|
|
|
|
%files devel
|
|
|
|
%doc CHANGES cmake/README.rst
|
|
|
|
%doc CHANGES cmake/README.rst
|
|
|
|
%{_includedir}/rml/
|
|
|
|
%{_includedir}/rml
|
|
|
|
%{_includedir}/tbb/
|
|
|
|
%{_includedir}/tbb
|
|
|
|
%{_libdir}/*.so
|
|
|
|
%{_libdir}/*.so
|
|
|
|
%{_libdir}/cmake/TBB/
|
|
|
|
%{_libdir}/cmake/
|
|
|
|
%{_libdir}/pkgconfig/*.pc
|
|
|
|
%{_libdir}/pkgconfig/*.pc
|
|
|
|
|
|
|
|
|
|
|
|
%files doc
|
|
|
|
%files doc
|
|
|
|
%doc doc/Release_Notes.txt
|
|
|
|
%doc doc/Release_Notes.txt
|
|
|
|
%doc html
|
|
|
|
%doc doc/html
|
|
|
|
|
|
|
|
|
|
|
|
%files -n python3-%{name}
|
|
|
|
%if %{with python2}
|
|
|
|
|
|
|
|
%files -n python2-%{name}
|
|
|
|
%doc python/index.html
|
|
|
|
%doc python/index.html
|
|
|
|
|
|
|
|
%{python2_sitearch}/TBB*
|
|
|
|
|
|
|
|
%{python2_sitearch}/tbb/
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%if %{with python3}
|
|
|
|
|
|
|
|
%files -n python3-%{name}
|
|
|
|
|
|
|
|
%doc python3/index.html
|
|
|
|
%{python3_sitearch}/TBB*
|
|
|
|
%{python3_sitearch}/TBB*
|
|
|
|
%{python3_sitearch}/tbb/
|
|
|
|
%{python3_sitearch}/tbb/
|
|
|
|
%{python3_sitearch}/__pycache__/TBB*
|
|
|
|
%{python3_sitearch}/__pycache__/TBB*
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
%changelog
|
|
|
|
* Tue Feb 04 2025 Jonathan Wakely <jwakely@redhat.com> - 2020.3-8.1
|
|
|
|
* Tue Feb 04 2025 Jonathan Wakely <jwakely@redhat.com> - 2018.2-10.1
|
|
|
|
- Remove jQuery from Doxygen output (RHEL-77693)
|
|
|
|
- Remove jQuery from Doxygen files (RHEL-77669)
|
|
|
|
|
|
|
|
|
|
|
|
* Tue Aug 10 2021 Mohan Boddu <mboddu@redhat.com> - 2020.3-8
|
|
|
|
|
|
|
|
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
|
|
|
|
|
|
|
Related: rhbz#1991688
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Thu Jun 3 2021 Thomas Rodgers <trodgers@redhat.com> - 2020.3-6
|
|
|
|
|
|
|
|
- Fix ABI regression in tbb::empty_task caused by switch to LTO
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 2020.3-6
|
|
|
|
|
|
|
|
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Mon Feb 22 2021 Jerry James <loganjerry@gmail.com> - 2020.3-5
|
|
|
|
|
|
|
|
- Fix cmake file installation some more (bz 1930389)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Thu Feb 18 2021 Jerry James <loganjerry@gmail.com> - 2020.3-4
|
|
|
|
|
|
|
|
- Fix cmake file installation (bz 1930389)
|
|
|
|
|
|
|
|
- Allow use of RTM instructions when available
|
|
|
|
|
|
|
|
- At upstream's suggestion, do not force ITT_NOTIFY support
|
|
|
|
|
|
|
|
- Drop -fetchadd64 patch, only needed for forced ITT_NOTIFY support
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2020.3-3
|
|
|
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2020.3-2
|
|
|
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Mon Jul 27 2020 Jerry James <loganjerry@gmail.com> - 2020.3-1
|
|
|
|
|
|
|
|
- Rebase to version 2020.3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Tue Jul 14 2020 Tom Stellard <tstellar@redhat.com> - 2020.2-4
|
|
|
|
|
|
|
|
- Use make macros
|
|
|
|
|
|
|
|
- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 2020.2-3
|
|
|
|
|
|
|
|
- Rebuilt for Python 3.9
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Mon Apr 27 2020 Timm Baeder <tbaeder@redhat.com> - 2020.2-2
|
|
|
|
|
|
|
|
- Pass the compiler to when building
|
|
|
|
|
|
|
|
- Update the tbb-2019-test-thread-monitor.patch to use std::atomic
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Tue Mar 31 2020 Jerry James <loganjerry@gmail.com> - 2020.2-1
|
|
|
|
|
|
|
|
- Rebase to version 2020.2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2020.1-2
|
|
|
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Wed Jan 22 2020 Jerry James <loganjerry@gmail.com> - 2020.1-1
|
|
|
|
|
|
|
|
- Rebase to version 2020.1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Tue Dec 31 2019 Jerry James <loganjerry@gmail.com> - 2020-1
|
|
|
|
|
|
|
|
- Rebase to version 2020
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Sat Oct 12 2019 Jerry James <loganjerry@gmail.com> - 2019.9-1
|
|
|
|
|
|
|
|
- Rebase to 2019 update 9
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 2019.8-4
|
|
|
|
|
|
|
|
- Rebuilt for Python 3.8.0rc1 (#1748018)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Tue Aug 27 2019 Jerry James <loganjerry@gmail.com> - 2019.8-3
|
|
|
|
|
|
|
|
- Add -test-thread-monitor and -test-task-scheduler-init patches to fix FTBFS
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 2019.8-3
|
|
|
|
|
|
|
|
- Rebuilt for Python 3.8
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2019.8-2
|
|
|
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Sat Jun 8 2019 Jerry James <loganjerry@gmail.com> - 2019.8-1
|
|
|
|
|
|
|
|
- Rebase to 2019 update 8
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Thu May 23 2019 Jerry James <loganjerry@gmail.com> - 2019.7-1
|
|
|
|
|
|
|
|
- Rebase to 2019 update 7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Thu May 9 2019 Jerry James <loganjerry@gmail.com> - 2019.6-1
|
|
|
|
|
|
|
|
- Rebase to 2019 update 6
|
|
|
|
|
|
|
|
- Add -attributes patch to silence gcc warnings
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Mon Mar 25 2019 Jerry James <loganjerry@gmail.com> - 2019.5-1
|
|
|
|
|
|
|
|
- Rebase to 2019 update 5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Mon Mar 4 2019 Jerry James <loganjerry@gmail.com> - 2019.4-1
|
|
|
|
|
|
|
|
- Rebase to 2019 update 4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2019.3-2
|
|
|
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Sat Dec 8 2018 Jerry James <loganjerry@gmail.com> - 2019.3-1
|
|
|
|
* Wed Jul 26 2023 MSVSphere Packaging Team <packager@msvsphere.ru> - 2018.2-10
|
|
|
|
- Rebase to 2019 update 3
|
|
|
|
- Rebuilt for MSVSphere 8.8
|
|
|
|
|
|
|
|
|
|
|
|
* Fri Nov 16 2018 Jerry James <loganjerry@gmail.com> - 2019.2-1
|
|
|
|
* Wed Feb 03 2021 Thomas Rodgers <trodgers@redhat.com> - 2018.2-10
|
|
|
|
- Rebase to 2019 update 2
|
|
|
|
- Apply patches from (BZ #1907561)
|
|
|
|
|
|
|
|
- Bump release
|
|
|
|
|
|
|
|
|
|
|
|
* Thu Oct 4 2018 Jerry James <loganjerry@gmail.com> - 2019.1-1
|
|
|
|
* Sun Dec 20 2020 Owen Taylor <otaylor@redhat.com> - 2018.2-9
|
|
|
|
- Rebase to 2019 update 1
|
|
|
|
- Fix build directory referenced in python2 build
|
|
|
|
- Drop special SSE2 build for 32-bit x86 as that is now default
|
|
|
|
- Move some python3 code that escaped back into a conditional
|
|
|
|
- Drop unneeded -cxxflags patch
|
|
|
|
(BZ #1907561)
|
|
|
|
- Drop python 2 support (bz 1629761)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2018.5-2
|
|
|
|
* Tue Nov 13 2018 Patsy Griffin Franklin <pfrankli@redhat.com> - 2018.2-9
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
|
|
- Require the correct version of tbb for python2-tbb and python3-tbb.
|
|
|
|
|
|
|
|
(BZ #1638041)
|
|
|
|
|
|
|
|
|
|
|
|
* Tue Jul 3 2018 Jerry James <loganjerry@gmail.com> - 2018.5-1
|
|
|
|
* Fri Sep 28 2018 Patsy Griffin Franklin <pfrankli@redhat.com> - 2018.2-8
|
|
|
|
- Rebase to 2018 update 5
|
|
|
|
- Run check for all supported architectures.
|
|
|
|
- Run check script on all architectures
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 2018.4-2
|
|
|
|
* Wed Aug 01 2018 Patsy Griffin Franklin <pfrankli@redhat.com> - 2018.2-7
|
|
|
|
- Rebuilt for Python 3.7
|
|
|
|
- Selectively build python2 or python3 based on current version.
|
|
|
|
|
|
|
|
- Don't use pathfix.py as it fails prep on RHEL when building on systems
|
|
|
|
|
|
|
|
do not have python installled.
|
|
|
|
|
|
|
|
|
|
|
|
* Thu May 31 2018 Jerry James <loganjerry@gmail.com> - 2018.4-1
|
|
|
|
* Tue Jul 03 2018 Tomas Orsava <torsava@redhat.com> - 2018.2-6
|
|
|
|
- Rebase to 2018 update 4
|
|
|
|
- Switch hardcoded python3 path into the %%{__python3} macro
|
|
|
|
|
|
|
|
|
|
|
|
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2018.2-5
|
|
|
|
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2018.2-5
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
|
|