summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastien Fabbro <bicatali@gentoo.org>2012-11-30 20:37:31 +0000
committerSebastien Fabbro <bicatali@gentoo.org>2012-11-30 20:37:31 +0000
commit13048f2011a2e01256342419dbd9a15aeb90df2c (patch)
treedd944f7ebe7c9b86cd76d3a1b36f8bebdd6aecd8 /dev-cpp
parentunmasked cuda for sci-chemistry/gromacs (diff)
downloadgentoo-2-13048f2011a2e01256342419dbd9a15aeb90df2c.tar.gz
gentoo-2-13048f2011a2e01256342419dbd9a15aeb90df2c.tar.bz2
gentoo-2-13048f2011a2e01256342419dbd9a15aeb90df2c.zip
Version bump. Now installs tbbmalloc_proxy library. Simplified the ebuild for better maintainability and better propagation of toolchain
(Portage version: 2.2.01.21313-prefix/cvs/Linux x86_64, signed Manifest commit with key 0x13CB1360)
Diffstat (limited to 'dev-cpp')
-rw-r--r--dev-cpp/tbb/ChangeLog9
-rw-r--r--dev-cpp/tbb/metadata.xml3
-rw-r--r--dev-cpp/tbb/tbb-4.1.20121003.ebuild112
3 files changed, 120 insertions, 4 deletions
diff --git a/dev-cpp/tbb/ChangeLog b/dev-cpp/tbb/ChangeLog
index d05b143aa143..c26e1512f564 100644
--- a/dev-cpp/tbb/ChangeLog
+++ b/dev-cpp/tbb/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-cpp/tbb
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-cpp/tbb/ChangeLog,v 1.26 2012/09/13 22:37:22 bicatali Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-cpp/tbb/ChangeLog,v 1.27 2012/11/30 20:37:31 bicatali Exp $
+
+*tbb-4.1.20121003 (30 Nov 2012)
+
+ 30 Nov 2012; Sébastien Fabbro <bicatali@gentoo.org> +tbb-4.1.20121003.ebuild,
+ metadata.xml:
+ Version bump. Now installs tbbmalloc_proxy library. Simplified the ebuild for
+ better maintainability and better propagation of toolchain
*tbb-4.1.20120718 (13 Sep 2012)
diff --git a/dev-cpp/tbb/metadata.xml b/dev-cpp/tbb/metadata.xml
index def46e699cb3..1c722594b71b 100644
--- a/dev-cpp/tbb/metadata.xml
+++ b/dev-cpp/tbb/metadata.xml
@@ -10,8 +10,5 @@
threading expert. It represents a higher-level, task-based
parallelism that abstracts platform details and threading mechanism
for performance and scalability.
- The Gentoo package installs the commercially aligned release since
- it seemed to be more stable and with as many features as the stable
- one.
</longdescription>
</pkgmetadata>
diff --git a/dev-cpp/tbb/tbb-4.1.20121003.ebuild b/dev-cpp/tbb/tbb-4.1.20121003.ebuild
new file mode 100644
index 000000000000..0cb6753431d6
--- /dev/null
+++ b/dev-cpp/tbb/tbb-4.1.20121003.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-cpp/tbb/tbb-4.1.20121003.ebuild,v 1.1 2012/11/30 20:37:31 bicatali Exp $
+
+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 ~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
+ # 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
+
+ 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
+}