summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-cpp/tbb')
-rw-r--r--dev-cpp/tbb/ChangeLog7
-rw-r--r--dev-cpp/tbb/tbb-3.0.131.ebuild96
2 files changed, 102 insertions, 1 deletions
diff --git a/dev-cpp/tbb/ChangeLog b/dev-cpp/tbb/ChangeLog
index 42f7d0ef08b0..e0bdefc6d4df 100644
--- a/dev-cpp/tbb/ChangeLog
+++ b/dev-cpp/tbb/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for dev-cpp/tbb
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-cpp/tbb/ChangeLog,v 1.9 2010/11/19 06:11:07 bicatali Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-cpp/tbb/ChangeLog,v 1.10 2010/12/25 18:44:49 bicatali Exp $
+
+*tbb-3.0.131 (25 Dec 2010)
+
+ 25 Dec 2010; Sébastien Fabbro <bicatali@gentoo.org> +tbb-3.0.131.ebuild:
+ Version bump
19 Nov 2010; Sébastien Fabbro <bicatali@gentoo.org> -tbb-3.0.056.ebuild,
tbb-3.0.104.ebuild:
diff --git a/dev-cpp/tbb/tbb-3.0.131.ebuild b/dev-cpp/tbb/tbb-3.0.131.ebuild
new file mode 100644
index 000000000000..539aeb244b4b
--- /dev/null
+++ b/dev-cpp/tbb/tbb-3.0.131.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-cpp/tbb/tbb-3.0.131.ebuild,v 1.1 2010/12/25 18:44:49 bicatali Exp $
+
+EAPI=3
+inherit eutils versionator toolchain-funcs
+
+# those 2 below change pretty much every release
+# url number
+MYU="78/165"
+# release update
+MYR="%20Update%20"5
+
+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://www.threadingbuildingblocks.org/uploads/${MYU}/${PV1}.${PV2}${MYR}/${MYP}_src.tgz"
+LICENSE="GPL-2-with-exceptions"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug doc examples"
+
+DEPEND="!<=dev-cpp/tbb-2.1.016"
+RDEPEND="${DEPEND}"
+S="${WORKDIR}/${MYP}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-3.0.104-tests.patch
+ # use fully qualified compilers. do not force pentium4 for x86 users
+ local CC="$(tc-getCC)"
+ sed -i \
+ -e "s/-O2/${CXXFLAGS}/g" \
+ -e 's/^\(CPLUS = \)g++ $/\1'"$(tc-getCXX)/" \
+ -e 's/^\(CONLY = \)gcc$/\1'"${CC}/" \
+ -e 's/\(shell \)gcc\( --version\)/\1'"${CC}"'\2/' \
+ -e '/CPLUS_FLAGS +=/s/-march=pentium4//' \
+ build/*.inc || die
+ # - Strip the $(shell ... >$(NUL) 2>$(NUL)) wrapping, leaving just the
+ # actual command.
+ # - Force generation of version_string.tmp immediately after the directory
+ # is created. This avoids a race when the user builds tbb and tbbmalloc
+ # concurrently. The choice of Makefile.tbb (instead of
+ # Makefile.tbbmalloc) is arbitrary.
+ sed -i \
+ -e 's/^\t\$(shell \(.*\) >\$(NUL) 2>\$(NUL))\s*/\t\1/' \
+ -e 's!^\t@echo Created \$(work_dir)_\(debug\|release\).*$!&\n\t$(MAKE) -C "$(work_dir)_\1" -r -f $(tbb_root)/build/Makefile.tbb cfg=\1 tbb_root=$(tbb_root) version_string.tmp!' \
+ src/Makefile || die
+}
+
+src_compile() {
+ if [[ $(tc-getCXX) == *g++ ]]; then
+ myconf="compiler=gcc"
+ elif [[ $(tc-getCXX) == *ic*c ]]; then
+ myconf="compiler=icc"
+ fi
+ local ccconf="${myconf}"
+ if use debug || use examples; then
+ ccconf="${ccconf} tbb_debug tbbmalloc_debug"
+ fi
+ emake -C src ${ccconf} tbb_release tbbmalloc_release || die "emake failed"
+}
+
+src_test() {
+ local ccconf="${myconf}"
+ if use debug || use examples; then
+ ${ccconf}="${myconf} test_debug tbbmalloc_test_debug"
+ fi
+ emake -C src ${ccconf} test_release || die "emake test failed"
+}
+
+src_install(){
+ for l in $(find build -name lib\*.so.\*); do
+ dolib.so ${l} || die
+ local bl=$(basename ${l})
+ dosym ${bl} /usr/$(get_libdir)/${bl%.*}
+ done
+ insinto /usr
+ doins -r include || die
+
+ dodoc README CHANGES doc/Release_Notes.txt
+ if use doc ; then
+ insinto /usr/share/doc/${PF}
+ doins -r doc/html || die
+ fi
+ if use examples ; then
+ insinto /usr/share/doc/${PF}/examples/build
+ doins build/*.inc || die
+ insinto /usr/share/doc/${PF}/examples
+ doins -r examples || die
+ fi
+}