-DIST tbb41_20121003oss_src.tgz 2250789 SHA256 5383727b9582a54cf4c4adbf22186b70e8eba276fcd3be81d746a937c5b47afc SHA512 fada6e32a09be2a151746caf3a15729c9ec6043b17e2f0aeb1bd903542310cdc6fe9ad85017ff5b2cfb16ae955c81c8b39ad8cf97f871bfcbd19d4948ef1d821 WHIRLPOOL 6c2a094e1dc6efed7189903bf8a6bbb8688ab1b15134c9f3c09fd5ed6a72315140505f5df410c89b65cd160a896222d71e01b3bfcbcd933281fb18a69eaf33f1
DIST tbb43_20141023oss_src.tgz 2777177 SHA256 247a8d22d6850caa37d376aaeaf8bfcb06525ec5561fb6f6ed09cdad2c1f6414 SHA512 0718e7bf5f0b9525da9eb45beedc1c3832ccd813d72b10a7ed7c6a281d342325d04c65f797c29e2551d4f2bd470e57c81f38db0d6bd983f7871a90f2b5fe5020 WHIRLPOOL 7a6bc75e9404cbfc9f1e1bc53ff195e63c605aae1cc2883147d69bdd394694d21f916fa6d1c2708ff397a01c620fdb38966d0da5085df6d23dcba235de18c6a8
DIST tbb43_20150611oss_src.tgz 2757631 SHA256 221f85fe64e11c9638e43b3c57d5750c26683905fc90827c0bcfefdb286e79c9 SHA512 83d5d827706b774ef5cd6df8082e5d7f48683388684423bb40565dfc25892fc2e57c382f719b78087d83e51edb3f7f7215f33d8b5039b55c32788d80efa6e0b8 WHIRLPOOL 8e98162b2307c759fb26923d76ab784dea81e166c8bf5323869d234da59641c333e5ae30b4a224bccbf20d4f5f6b75c658589f519a165ea3ad7658322f148c72
+++ /dev/null
-diff -up tbb40_20120408oss/include/tbb/tbb_machine.h\~ tbb40_20120408oss/include/tbb/tbb_machine.h
---- tbb40_20120408oss/include/tbb/tbb_machine.h~ 2012-04-20 09:21:57.000000000 +0200
-+++ tbb40_20120408oss/include/tbb/tbb_machine.h 2012-08-28 13:20:42.150456167 +0200
-@@ -373,8 +373,8 @@ void spin_wait_until_eq( const volatile
- // - The operation assumes that the architecture consistently uses either little-endian or big-endian:
- // it does not support mixed-endian or page-specific bi-endian architectures.
- // This function is the only use of __TBB_BIG_ENDIAN.
--#if (__TBB_BIG_ENDIAN!=-1)
-- #if ( __TBB_USE_GENERIC_PART_WORD_CAS)
-+#if ( __TBB_USE_GENERIC_PART_WORD_CAS)
-+ #if (__TBB_BIG_ENDIAN==-1)
- #error generic implementation of part-word CAS was explicitly disabled for this configuration
- #endif
- template<typename T>
-
-Diff finished. Tue Aug 28 13:20:58 2012
+++ /dev/null
---- a/build/linux.gcc.inc 2014-10-31 09:08:38.000000000 -0400
-+++ b/build/linux.gcc.inc 2015-06-08 19:22:49.855807841 -0400
-@@ -32,12 +32,12 @@
- EXPORT_KEY = -Wl,--version-script,
- LIBDL = -ldl
-
--CPLUS = g++
--CONLY = gcc
-+CPLUS := $(CXX)
-+CONLY := $(CC)
- LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)
- LIBS += -lpthread -lrt
- LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
--C_FLAGS = $(CPLUS_FLAGS)
-+C_FLAGS := $(CPLUS_FLAGS)
- # gcc 4.4 and higher support -std=c++0x
- ifneq (,$(shell gcc -dumpversion | egrep "^(4\.[4-9]|[5-9])"))
- CPP11_FLAGS = -std=c++0x -D_TBB_CPP0X
-@@ -54,7 +54,7 @@
- endif
-
- ifeq ($(cfg), release)
-- CPLUS_FLAGS = $(ITT_NOTIFY) -g -O2 -DUSE_PTHREAD
-+ CPLUS_FLAGS = $(ITT_NOTIFY) -g -DUSE_PTHREAD
- endif
- ifeq ($(cfg), debug)
- CPLUS_FLAGS = -DTBB_USE_DEBUG $(ITT_NOTIFY) -g -O0 -DUSE_PTHREAD
-@@ -74,24 +74,12 @@
-
- ifeq (intel64,$(arch))
- ITT_NOTIFY = -DDO_ITT_NOTIFY
-- CPLUS_FLAGS += -m64 $(RTM_KEY)
-- LIB_LINK_FLAGS += -m64
-+ CPLUS_FLAGS += $(RTM_KEY)
- endif
-
- ifeq (ia32,$(arch))
- ITT_NOTIFY = -DDO_ITT_NOTIFY
-- CPLUS_FLAGS += -m32 -march=pentium4 $(RTM_KEY)
-- LIB_LINK_FLAGS += -m32
--endif
--
--ifeq (ppc64,$(arch))
-- CPLUS_FLAGS += -m64
-- LIB_LINK_FLAGS += -m64
--endif
--
--ifeq (ppc32,$(arch))
-- CPLUS_FLAGS += -m32
-- LIB_LINK_FLAGS += -m32
-+ CPLUS_FLAGS += $(RTM_KEY)
- endif
-
- ifeq (bg,$(arch))
-@@ -99,12 +87,6 @@
- CONLY = mpicc
- endif
-
--# for some gcc versions on Solaris, -m64 may imply V9, but perhaps not everywhere (TODO: verify)
--ifeq (sparc,$(arch))
-- CPLUS_FLAGS += -mcpu=v9 -m64
-- LIB_LINK_FLAGS += -mcpu=v9 -m64
--endif
--
- # automatically generate "IT" instructions when compiling for Thumb ISA
- ifeq (armv7,$(arch))
- CPLUS_FLAGS += -Wa,-mimplicit-it=thumb
-@@ -113,13 +95,7 @@
- #------------------------------------------------------------------------------
- # Setting assembler data.
- #------------------------------------------------------------------------------
--ASM = as
--ifeq (intel64,$(arch))
-- ASM_FLAGS += --64
--endif
--ifeq (ia32,$(arch))
-- ASM_FLAGS += --32
--endif
-+ASM := $(AS)
- ifeq ($(cfg),debug)
- ASM_FLAGS += -g
- endif
---- a/build/FreeBSD.gcc.inc 2014-10-31 09:08:37.000000000 -0400
-+++ b/build/FreeBSD.gcc.inc 2015-06-08 19:24:51.385810060 -0400
-@@ -27,14 +27,14 @@
- WARNING_KEY = -Wall
- DYLIB_KEY = -shared
-
--CPLUS = g++
--CONLY = gcc
-+CPLUS = $(CXX)
-+CONLY = $(CC)
- LIB_LINK_FLAGS = -shared
- LIBS = -lpthread
- C_FLAGS = $(CPLUS_FLAGS)
-
- ifeq ($(cfg), release)
-- CPLUS_FLAGS = -g -O2 -DUSE_PTHREAD
-+ CPLUS_FLAGS = -g -DUSE_PTHREAD
- endif
- ifeq ($(cfg), debug)
- CPLUS_FLAGS = -DTBB_USE_DEBUG -g -O0 -DUSE_PTHREAD
-@@ -51,22 +51,12 @@
- CPLUS_FLAGS += $(PIC_KEY)
- endif
-
--ifeq (intel64,$(arch))
-- CPLUS_FLAGS += -m64
-- LIB_LINK_FLAGS += -m64
--endif
--
--ifeq (ia32,$(arch))
-- CPLUS_FLAGS += -m32
-- LIB_LINK_FLAGS += -m32
--endif
--
- #------------------------------------------------------------------------------
- # Setting assembler data.
- #------------------------------------------------------------------------------
- ASSEMBLY_SOURCE=$(arch)-gas
- ifeq (ia64,$(arch))
-- ASM=as
-+ ASM=$(AS)
- TBB_ASM.OBJ = atomic_support.o lock_byte.o log2.o pause.o
- MALLOC_ASM.OBJ = atomic_support.o lock_byte.o pause.o
- endif
---- a/build/linux.clang.inc 2014-10-31 09:08:37.000000000 -0400
-+++ b/build/linux.clang.inc 2015-06-08 20:24:29.785875376 -0400
-@@ -31,15 +31,15 @@
- EXPORT_KEY = -Wl,--version-script,
- LIBDL = -ldl
-
--CPLUS = clang++
--CONLY = clang
-+CPLUS := $(CXX)
-+CONLY := $(CC)
- LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)
- LIBS += -lpthread -lrt
- LINK_FLAGS = -Wl,-rpath-link=.
- C_FLAGS = $(CPLUS_FLAGS)
-
- ifeq ($(cfg), release)
-- CPLUS_FLAGS = $(ITT_NOTIFY) -g -O2 -DUSE_PTHREAD
-+ CPLUS_FLAGS = $(ITT_NOTIFY) -g -DUSE_PTHREAD
- endif
- ifeq ($(cfg), debug)
- CPLUS_FLAGS = -DTBB_USE_DEBUG $(ITT_NOTIFY) -g -O0 -DUSE_PTHREAD
-@@ -61,24 +61,10 @@
-
- ifeq (intel64,$(arch))
- ITT_NOTIFY = -DDO_ITT_NOTIFY
-- CPLUS_FLAGS += -m64
-- LIB_LINK_FLAGS += -m64
- endif
-
- ifeq (ia32,$(arch))
- ITT_NOTIFY = -DDO_ITT_NOTIFY
-- CPLUS_FLAGS += -m32 -march=pentium4
-- LIB_LINK_FLAGS += -m32
--endif
--
--ifeq (ppc64,$(arch))
-- CPLUS_FLAGS += -m64
-- LIB_LINK_FLAGS += -m64
--endif
--
--ifeq (ppc32,$(arch))
-- CPLUS_FLAGS += -m32
-- LIB_LINK_FLAGS += -m32
- endif
-
- ifeq (bg,$(arch))
-@@ -90,12 +76,6 @@
- # Setting assembler data.
- #------------------------------------------------------------------------------
- ASM = as
--ifeq (intel64,$(arch))
-- ASM_FLAGS += --64
--endif
--ifeq (ia32,$(arch))
-- ASM_FLAGS += --32
--endif
- ifeq ($(cfg),debug)
- ASM_FLAGS += -g
- endif
+++ /dev/null
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=4
-inherit eutils flag-o-matic multilib versionator toolchain-funcs
-
-PV1="$(get_version_component_range 1)"
-PV2="$(get_version_component_range 2)"
-PV3="$(get_version_component_range 3)"
-MYP="${PN}${PV1}${PV2}_${PV3}oss"
-
-DESCRIPTION="High level abstract threading library"
-HOMEPAGE="http://www.threadingbuildingblocks.org/"
-SRC_URI="http://threadingbuildingblocks.org/sites/default/files/software_releases/source/${MYP}_src.tgz"
-LICENSE="GPL-2-with-exceptions"
-
-SLOT="0"
-KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux"
-IUSE="debug doc examples"
-
-DEPEND=""
-RDEPEND="${DEPEND}"
-S="${WORKDIR}/${MYP}"
-
-src_prepare() {
- epatch \
- "${FILESDIR}"/${PN}-4.0.297-underlinking.patch \
- "${FILESDIR}"/${PN}-4.1.20121003-ppc.patch
- # use fully qualified gcc compilers. do not force march/mcpu
- # not tested with icc
- # order in sed expressions is important
- sed -i \
- -e "s/g++/$(tc-getCXX)/g" \
- -e "s/gcc/$(tc-getCC)/g" \
- -e 's/-m\(arch\|cpu\)=*[[:space:]]//g' \
- -e 's/-\(m\|-\)\(64\|32\)//g' \
- -e 's/-O2/$(CXXFLAGS)/g' \
- -e "/^ASM/s/as/$(tc-getAS)/g" \
- build/*.gcc.inc || die
-
- # force 64bit where applicable, 32bit where applicable...
- # built-in detection is based on running kernel, which messes up
- # e.g. in a x86 chroot on amd64 kernel. Bug 462130
- # see build/linux.inc for values
- use amd64 && export arch=x86_64
- use amd64-linux && export arch=x86_64
- use x86 && export arch=ia32
- use x86-linux && export arch=ia32
- # no idea what to do with ppc but so far it seems to work
-
- find include -name \*.html -delete || die
-
- # pc files are for debian and fedora compatibility
- # some deps use them
- cat <<-EOF > ${PN}.pc.template
- prefix=${EPREFIX}/usr
- libdir=\${prefix}/$(get_libdir)
- includedir=\${prefix}/include
- Name: ${PN}
- Description: ${DESCRIPTION}
- Version: ${PV}
- URL: ${HOMEPAGE}
- Cflags: -I\${includedir}
- EOF
- cp ${PN}.pc.template ${PN}.pc
- cat <<-EOF >> ${PN}.pc
- Libs: -L\${libdir} -ltbb
- Libs.private: -lm -lrt
- EOF
- cp ${PN}.pc.template ${PN}malloc.pc
- cat <<-EOF >> ${PN}malloc.pc
- Libs: -L\${libdir} -ltbbmalloc
- Libs.private: -lm -lrt
- EOF
- cp ${PN}.pc.template ${PN}malloc_proxy.pc
- cat <<-EOF >> ${PN}malloc_proxy.pc
- Libs: -L\${libdir} -ltbbmalloc_proxy
- Libs.private: -lrt
- Requires: tbbmalloc
- EOF
- use debug || sed -i -e '/_debug/d' Makefile
-}
-
-src_compile() {
- if [[ $(tc-getCXX) == *g++* ]]; then
- comp="gcc"
- elif [[ $(tc-getCXX) == *ic*c ]]; then
- comp="icc"
- else
- die "compiler $(tc-getCXX) not supported by build system"
- fi
- emake compiler=${comp} tbb tbbmalloc
-}
-
-src_test() {
- append-cxxflags -fabi-version=4
- # avoid oversubscribing with -j1
- emake -j1 compiler=${comp} test
-}
-
-src_install(){
- local l
- for l in $(find build -name lib\*.so.\*); do
- dolib.so ${l}
- local bl=$(basename ${l})
- dosym ${bl} /usr/$(get_libdir)/${bl%.*}
- done
- insinto /usr
- doins -r include
-
- insinto /usr/$(get_libdir)/pkgconfig
- doins *.pc
-
- dodoc README CHANGES doc/Release_Notes.txt
- use doc && dohtml -r doc/html/*
-
- if use examples ; then
- insinto /usr/share/doc/${PF}/examples/build
- doins build/*.inc
- insinto /usr/share/doc/${PF}/examples
- doins -r examples
- fi
-}
+++ /dev/null
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit eutils flag-o-matic multilib-minimal toolchain-funcs versionator
-
-PV1="$(get_version_component_range 1)"
-PV2="$(get_version_component_range 2)"
-PV3="$(get_version_component_range 3)"
-MYP="${PN}${PV1}${PV2}_${PV3}oss"
-
-DESCRIPTION="High level abstract threading library"
-HOMEPAGE="http://www.threadingbuildingblocks.org/"
-SRC_URI="http://threadingbuildingblocks.org/sites/default/files/software_releases/source/${MYP}_src.tgz"
-LICENSE="GPL-2-with-exceptions"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-fbsd ~amd64-linux ~x86-linux"
-IUSE="debug doc examples"
-
-DEPEND=""
-RDEPEND="${DEPEND}"
-S="${WORKDIR}/${MYP}"
-
-src_prepare() {
- epatch \
- "${FILESDIR}"/${PN}-4.0.297-underlinking.patch \
- "${FILESDIR}"/${PN}-4.3-build.patch
-
- find include -name \*.html -delete || die
-
- # Give it a soname on FreeBSD
- echo 'LIB_LINK_FLAGS += -Wl,-soname=$(BUILDING_LIBRARY)' >> build/FreeBSD.gcc.inc
- # Set proper versionning on FreeBSD
- sed -i -e '/.DLL =/s/$/.1/' build/FreeBSD.inc || die
-
- use debug || sed -i -e '/_debug/d' Makefile
-}
-
-multilib_src_configure() {
- # pc files are for debian and fedora compatibility
- # some deps use them
- cat <<-EOF > ${PN}.pc.template
- prefix=${EPREFIX}/usr
- libdir=\${prefix}/$(get_libdir)
- includedir=\${prefix}/include
- Name: ${PN}
- Description: ${DESCRIPTION}
- Version: ${PV}
- URL: ${HOMEPAGE}
- Cflags: -I\${includedir}
- EOF
- cp ${PN}.pc.template ${PN}.pc || die
- cat <<-EOF >> ${PN}.pc
- Libs: -L\${libdir} -ltbb
- Libs.private: -lm -lrt
- EOF
- cp ${PN}.pc.template ${PN}malloc.pc || die
- cat <<-EOF >> ${PN}malloc.pc
- Libs: -L\${libdir} -ltbbmalloc
- Libs.private: -lm -lrt
- EOF
- cp ${PN}.pc.template ${PN}malloc_proxy.pc || die
- cat <<-EOF >> ${PN}malloc_proxy.pc
- Libs: -L\${libdir} -ltbbmalloc_proxy
- Libs.private: -lrt
- Requires: tbbmalloc
- EOF
-}
-
-local_src_compile() {
- cd "${S}"
-
- local comp arch
-
- case ${MULTILIB_ABI_FLAG} in
- abi_x86_64) arch=x86_64 ;;
- abi_x86_32) arch=ia32 ;;
- esac
-
- case "$(tc-getCXX)" in
- *g++*) comp="gcc" ;;
- *ic*c) comp="icc" ;;
- *clang*) comp="clang" ;;
- *) die "compiler $(tc-getCXX) not supported by build system" ;;
- esac
-
- CXX="$(tc-getCXX)" \
- CC="$(tc-getCC)" \
- AS="$(tc-getAS)" \
- arch=${arch} \
- CPLUS_FLAGS="${CXXFLAGS}" \
- emake compiler=${comp} work_dir="${BUILD_DIR}" tbb_root="${S}" $@
-}
-
-multilib_src_compile() {
- local_src_compile tbb tbbmalloc
-}
-
-multilib_src_test() {
- CXXFLAGS="${CXXFLAGS} -fabi-version=4" \
- local_src_compile -j1 test
-}
-
-multilib_src_install() {
- cd "${BUILD_DIR}_release" || die
- local l
- for l in $(find . -name lib\*.so.\*); do
- dolib.so ${l}
- local bl=$(basename ${l})
- dosym ${bl} /usr/$(get_libdir)/${bl%.*}
- done
-
- cd "${BUILD_DIR}" || die
- insinto /usr/$(get_libdir)/pkgconfig
- doins *.pc
-}
-
-multilib_src_install_all() {
- doheader -r include/*
-
- dodoc README CHANGES doc/Release_Notes.txt
- use doc && dohtml -r doc/html/*
-
- if use examples ; then
- insinto /usr/share/doc/${PF}/examples/build
- doins build/*.inc
- insinto /usr/share/doc/${PF}/examples
- doins -r examples
- fi
-}