Rebase to 4.4u5.
Also: - Build in C++14 mode - Build the new python module
This commit is contained in:
parent
29a05f65c9
commit
ceceba32de
2
sources
2
sources
@ -1 +1 @@
|
|||||||
95999ccff3470f6565c516e67fb37019 tbb44_20160413oss_src.tgz
|
d2c573131c8f4315d19f1778ab396d06 tbb44_20160526oss_src.tgz
|
||||||
|
90
tbb.spec
90
tbb.spec
@ -1,16 +1,20 @@
|
|||||||
%global releasedate 20160413
|
%global releasedate 20160526
|
||||||
%global major 4
|
%global major 4
|
||||||
%global minor 4
|
%global minor 4
|
||||||
%global update 4
|
%global update 5
|
||||||
%global dotver %{major}.%{minor}
|
%global dotver %{major}.%{minor}
|
||||||
%global sourcebasename tbb%{major}%{minor}_%{releasedate}oss
|
%global sourcebasename tbb%{major}%{minor}_%{releasedate}oss
|
||||||
|
|
||||||
%global sourcefilename %{sourcebasename}_src.tgz
|
%global sourcefilename %{sourcebasename}_src.tgz
|
||||||
|
|
||||||
|
%if 0%{?fedora} || 0%{?rhel} >= 8
|
||||||
|
%global with_python3 1
|
||||||
|
%endif
|
||||||
|
|
||||||
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: %{dotver}
|
Version: %{dotver}
|
||||||
Release: 6.%{releasedate}%{?dist}
|
Release: 7.%{releasedate}%{?dist}
|
||||||
License: GPLv2 with exceptions
|
License: GPLv2 with exceptions
|
||||||
Group: Development/Tools
|
Group: Development/Tools
|
||||||
URL: http://threadingbuildingblocks.org/
|
URL: http://threadingbuildingblocks.org/
|
||||||
@ -37,6 +41,12 @@ Patch2: tbb-4.0-mfence.patch
|
|||||||
Patch3: tbb-4.3-dont-snip-Wall.patch
|
Patch3: tbb-4.3-dont-snip-Wall.patch
|
||||||
|
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: gcc-c++
|
||||||
|
BuildRequires: python2-devel
|
||||||
|
BuildRequires: swig
|
||||||
|
|
||||||
|
%if 0%{?with_python3}
|
||||||
|
BuildRequires: python3-devel
|
||||||
|
%endif
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Threading Building Blocks (TBB) is a C++ runtime library that
|
Threading Building Blocks (TBB) is a C++ runtime library that
|
||||||
@ -70,6 +80,24 @@ PDF documentation for the user of the Threading Building Block (TBB)
|
|||||||
C++ library.
|
C++ library.
|
||||||
|
|
||||||
|
|
||||||
|
%package -n python2-%{name}
|
||||||
|
Summary: Python 2 TBB module
|
||||||
|
%{?python_provide:%python_provide python2-%{name}}
|
||||||
|
|
||||||
|
%description -n python2-%{name}
|
||||||
|
Python 2 TBB module.
|
||||||
|
|
||||||
|
|
||||||
|
%if 0%{?with_python3}
|
||||||
|
%package -n python3-%{name}
|
||||||
|
Summary: Python 3 TBB module
|
||||||
|
%{?python_provide:%python_provide python3-%{name}}
|
||||||
|
|
||||||
|
%description -n python3-%{name}
|
||||||
|
Python 3 TBB module.
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n %{sourcebasename}
|
%setup -q -n %{sourcebasename}
|
||||||
%patch1 -p1
|
%patch1 -p1
|
||||||
@ -80,18 +108,21 @@ C++ library.
|
|||||||
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
|
||||||
|
|
||||||
|
# Prepare to build the python module for both python 2 and python 3
|
||||||
|
cp -a python python3
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%ifarch %{ix86}
|
%ifarch %{ix86}
|
||||||
# Build an SSE2-enabled version so the mfence instruction can be used
|
# Build an SSE2-enabled version so the mfence instruction can be used
|
||||||
cp -a build build.orig
|
cp -a build build.orig
|
||||||
make %{?_smp_mflags} tbb_build_prefix=obj cpp0x=1 \
|
make %{?_smp_mflags} tbb_build_prefix=obj stdver=c++14 \
|
||||||
CXXFLAGS="$RPM_OPT_FLAGS -march=pentium4 -msse2 -fno-delete-null-pointer-checks" \
|
CXXFLAGS="$RPM_OPT_FLAGS -march=pentium4 -msse2 -fno-delete-null-pointer-checks" \
|
||||||
LDFLAGS="$RPM_LD_FLAGS"
|
LDFLAGS="$RPM_LD_FLAGS"
|
||||||
mv build build.sse2
|
mv build build.sse2
|
||||||
mv build.orig build
|
mv build.orig build
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
make %{?_smp_mflags} tbb_build_prefix=obj cpp0x=1 \
|
make %{?_smp_mflags} tbb_build_prefix=obj stdver=c++14 \
|
||||||
CXXFLAGS="$RPM_OPT_FLAGS -fno-delete-null-pointer-checks" \
|
CXXFLAGS="$RPM_OPT_FLAGS -fno-delete-null-pointer-checks" \
|
||||||
LDFLAGS="$RPM_LD_FLAGS"
|
LDFLAGS="$RPM_LD_FLAGS"
|
||||||
for file in %{SOURCE6} %{SOURCE7} %{SOURCE8}; do
|
for file in %{SOURCE6} %{SOURCE7} %{SOURCE8}; do
|
||||||
@ -100,9 +131,23 @@ for file in %{SOURCE6} %{SOURCE7} %{SOURCE8}; do
|
|||||||
touch -r ${file} ${base}
|
touch -r ${file} ${base}
|
||||||
done
|
done
|
||||||
|
|
||||||
|
# Build for python 2
|
||||||
|
. build/obj_release/tbbvars.sh
|
||||||
|
pushd python
|
||||||
|
%py2_build
|
||||||
|
popd
|
||||||
|
|
||||||
|
%if 0%{?with_python3}
|
||||||
|
# Build for python 3
|
||||||
|
pushd python3
|
||||||
|
%py3_build
|
||||||
|
popd
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
%check
|
%check
|
||||||
%ifarch ppc64le
|
%ifarch ppc64le
|
||||||
make test tbb_build_prefix=obj cpp0x=1 \
|
make test tbb_build_prefix=obj stdver=c++14 \
|
||||||
CXXFLAGS="$RPM_OPT_FLAGS -fno-delete-null-pointer-checks"
|
CXXFLAGS="$RPM_OPT_FLAGS -fno-delete-null-pointer-checks"
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
@ -134,9 +179,22 @@ popd
|
|||||||
|
|
||||||
for file in %{SOURCE6} %{SOURCE7} %{SOURCE8}; do
|
for file in %{SOURCE6} %{SOURCE7} %{SOURCE8}; do
|
||||||
install -p -D -m 644 $(basename ${file}) \
|
install -p -D -m 644 $(basename ${file}) \
|
||||||
$RPM_BUILD_ROOT/%{_libdir}/pkgconfig/$(basename ${file})
|
$RPM_BUILD_ROOT/%{_libdir}/pkgconfig/$(basename ${file})
|
||||||
done
|
done
|
||||||
|
|
||||||
|
# Python 2 install
|
||||||
|
. build/obj_release/tbbvars.sh
|
||||||
|
pushd python
|
||||||
|
%py2_install
|
||||||
|
popd
|
||||||
|
|
||||||
|
%if 0%{?with_python3}
|
||||||
|
# Python 3 install
|
||||||
|
pushd python3
|
||||||
|
%py3_install
|
||||||
|
popd
|
||||||
|
%endif
|
||||||
|
|
||||||
%post -p /sbin/ldconfig
|
%post -p /sbin/ldconfig
|
||||||
|
|
||||||
%postun -p /sbin/ldconfig
|
%postun -p /sbin/ldconfig
|
||||||
@ -158,7 +216,25 @@ done
|
|||||||
%doc doc/Release_Notes.txt
|
%doc doc/Release_Notes.txt
|
||||||
%doc doc/html
|
%doc doc/html
|
||||||
|
|
||||||
|
%files -n python2-%{name}
|
||||||
|
%doc python/index.html
|
||||||
|
%{python2_sitearch}/TBB*
|
||||||
|
%{python2_sitearch}/_TBB.so
|
||||||
|
|
||||||
|
%if 0%{?with_python3}
|
||||||
|
%files -n python3-%{name}
|
||||||
|
%doc python3/index.html
|
||||||
|
%{python3_sitearch}/TBB*
|
||||||
|
%{python3_sitearch}/_TBB.*.so
|
||||||
|
%{python3_sitearch}/__pycache__/TBB*
|
||||||
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Jun 1 2016 Jerry James <loganjerry@gmail.com> - 4.4-7.20160526
|
||||||
|
- Rebase to 4.4u5
|
||||||
|
- Build in C++14 mode
|
||||||
|
- Build the new python module
|
||||||
|
|
||||||
* Fri May 6 2016 Jerry James <loganjerry@gmail.com> - 4.4-6.20160413
|
* Fri May 6 2016 Jerry James <loganjerry@gmail.com> - 4.4-6.20160413
|
||||||
- Rebase to 4.4u4
|
- Rebase to 4.4u4
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user