update to 4.2_20140122 [release 4.2_20140122-1mamba;Sat Mar 01 2014]

This commit is contained in:
Silvan Calarco 2024-01-05 18:20:59 +01:00
parent 1a1c3a644c
commit fc09de0913
7 changed files with 5343 additions and 0 deletions

BIN
Getting_Started.pdf Normal file

Binary file not shown.

View File

@ -1,2 +1,5 @@
# tbb # tbb
Threading Building Blocks (TBB) is a C++ runtime library that abstracts the low-level threading details necessary for optimal multi-core performance. It uses common C++ templates and coding style to eliminate tedious threading implementation work.
TBB requires fewer lines of code to achieve parallelism than other threading models. The applications you write are portable across platforms. Since the library is also inherently scalable, no code maintenance is required as more processor cores become available.

5190
Reference.pdf Normal file

File diff suppressed because one or more lines are too long

BIN
Tutorial.pdf Normal file

Binary file not shown.

View File

@ -0,0 +1,15 @@
--- tbb22_20090809oss_src/build/linux.gcc.inc 2007-09-28 22:13:21.000000000 +0200
+++ tbb22_20090809oss_src.pm/build/linux.gcc.inc 2007-12-19 16:56:13.000000000 +0100
@@ -45,10 +45,10 @@ LIBS = -lpthread -lrt -ldl
C_FLAGS = $(CPLUS_FLAGS)
ifeq ($(cfg), release)
- CPLUS_FLAGS = -DDO_ITT_NOTIFY -O2 -DUSE_PTHREAD
+ CPLUS_FLAGS = $(CXXFLAGS) -DDO_ITT_NOTIFY -O2 -DUSE_PTHREAD
endif
ifeq ($(cfg), debug)
- CPLUS_FLAGS = -DTBB_USE_DEBUG -DDO_ITT_NOTIFY -g -O0 -DUSE_PTHREAD
+ CPLUS_FLAGS = $(CXXFLAGS) -DTBB_USE_DEBUG -DDO_ITT_NOTIFY -g -O0 -DUSE_PTHREAD
endif
ASM=

20
tbb-2.2-mfence.patch Normal file
View File

@ -0,0 +1,20 @@
diff -up /home/petr/fedora/tbb/devel/tbb22_20090809oss-pm/include/tbb/machine/linux_ia32.h\~ /home/petr/fedora/tbb/devel/tbb22_20090809oss-pm/include/tbb/machine/linux_ia32.h
--- tbb22_20090809oss-pm/include/tbb/machine/linux_ia32.h~ 2009-08-12 09:05:03.000000000 +0200
+++ tbb22_20090809oss-pm/include/tbb/machine/linux_ia32.h 2010-06-10 17:11:17.000000000 +0200
@@ -39,7 +39,13 @@
#define __TBB_release_consistency_helper() __asm__ __volatile__("": : :"memory")
-inline void __TBB_rel_acq_fence() { __asm__ __volatile__("mfence": : :"memory"); }
+inline void __TBB_rel_acq_fence() {
+ int tmp;
+ __asm__ __volatile__("xchg %0,%0"
+ : "=r"(tmp)
+ : "r"(tmp)
+ : "memory");
+}
#define __MACHINE_DECL_ATOMICS(S,T,X) \
static inline T __TBB_machine_cmpswp##S (volatile void *ptr, T value, T comparand ) \
Diff finished. Thu Jun 10 17:13:43 2010

115
tbb.spec Normal file
View File

@ -0,0 +1,115 @@
%define pkg_version %(echo %version | tr -d .)
Name: tbb
Version: 4.2_20140122
Release: 1mamba
Summary: The Threading Building Blocks library abstracts low-level threading details
Group: Development/Tools
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://www.threadingbuildingblocks.org/
Source0: https://www.threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb%{pkg_version}oss_src.tgz
Source1: http://www.threadingbuildingblocks.org/uploads/81/91/Latest%20Open%20Source%20Documentation/Getting_Started.pdf
Source2: http://www.threadingbuildingblocks.org/uploads/81/91/Latest%20Open%20Source%20Documentation/Reference.pdf
Source3: http://www.threadingbuildingblocks.org/uploads/81/91/Latest%20Open%20Source%20Documentation/Tutorial.pdf
Patch0: tbb-2.2-20090809-cxxflags.patch
Patch1: tbb-2.2-mfence.patch
License: GPL with exceptions
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libgcc
BuildRequires: libstdc++6-devel
## AUTOBUILDREQ-END
BuildRequires: net-tools
BuildRequires: util-linux-ng
BuildRoot: %{_tmppath}/%{name}-%{version}-root
%description
Threading Building Blocks (TBB) is a C++ runtime library that abstracts the low-level threading details necessary for optimal multi-core performance. It uses common C++ templates and coding style to eliminate tedious threading implementation work.
TBB requires fewer lines of code to achieve parallelism than other threading models. The applications you write are portable across platforms. Since the library is also inherently scalable, no code maintenance is required as more processor cores become available.
%package devel
Group: Development/Libraries
Summary: The Threading Building Blocks C++ headers and shared development libraries
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
%description devel
The Threading Building Blocks library abstracts low-level threading details.
This package contains header files and shared object symlinks for the Threading Building Blocks (TBB) C++ libraries.
%package doc
Group: Documentation
Summary: The Threading Building Blocks documentation
%description doc
The Threading Building Blocks library abstracts low-level threading details.
This package contains the Threading Building Blocks (TBB) documentation.
%prep
%setup -q -n %{name}%{pkg_version}oss
#%patch0 -p1
#%patch1 -p1
%build
%make CXXFLAGS="$RPM_OPT_FLAGS" tbb_build_prefix=obj
cp -p "%{SOURCE1}" "%{SOURCE2}" "%{SOURCE3}" .
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
mkdir -p %{buildroot}%{_libdir}
#,malloc_proxy
pushd build/obj_release
for file in libtbb{,malloc}; do
install -pm 755 ${file}.so.2 %{buildroot}%{_libdir}
ln -s $file.so.2 %{buildroot}%{_libdir}/$file.so
done
popd
mkdir -p %{buildroot}%{_includedir}/tbb/{compat,machine}
pushd include
install -pm 644 tbb/*.h %{buildroot}%{_includedir}/tbb/
install -pm 644 tbb/compat/*.h %{buildroot}%{_includedir}/tbb/compat/
install -pm 644 tbb/machine/*.h %{buildroot}%{_includedir}/tbb/machine/
popd
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%defattr(-,root,root)
%{_libdir}/libtbb.so.2
%{_libdir}/libtbbmalloc.so.2
#%{_libdir}/libtbbmalloc_proxy.so.2
%doc doc/Release_Notes.txt
%doc CHANGES COPYING README
%files devel
%defattr(-,root,root)
%dir %{_includedir}/tbb
%{_includedir}/tbb/*.h
%dir %{_includedir}/tbb/compat
%{_includedir}/tbb/compat/*.h
%dir %{_includedir}/tbb/machine
%{_includedir}/tbb/machine/*.h
%{_libdir}/libtbb.so
%{_libdir}/libtbbmalloc.so
#%{_libdir}/libtbbmalloc_proxy.so
%files doc
%defattr(-,root,root)
%doc Getting_Started.pdf Reference.pdf Tutorial.pdf
%changelog
* Sat Mar 01 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 4.2_20140122-1mamba
- update to 4.2_20140122
* Mon Nov 08 2010 gil <puntogil@libero.it> 2.2-1mamba
- package created by autospec