forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Package-Manager: Portage-2.3.94, Repoman-2.3.21 Signed-off-by: Guilherme Amadio <[email protected]>
- Loading branch information
Showing
3 changed files
with
214 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
DIST tbb-2018.20180312.tar.gz 2911740 BLAKE2B 5c6dab4a892f3b61ed0b02ea36dc41bebd5b33a22bcc3d5f2960f21e134f2eb9bccf1466193a573489e12638c0bb0bccc2da83f699968ffd62417f2d0f093289 SHA512 7ac74e714122e25f7704630d3d52992dbea54d1e761b5e487251a771f401aa864f78b8ddf11d78f38758088df387abb6987f6a2db562c86cbb28ba8f33a25680 | ||
DIST tbb-2019.8.tar.gz 2580540 BLAKE2B 1cddb0c8ade6f6363811b7f9b323a2bb7739a18114acd56e1b4a13f33904ddff8cb6aec9b4b0add995cd307ff7815f0b55ce33fa64b7dd92c0062fbaa13d0833 SHA512 924a8dde011452a2c46c5152942a9835e76fe5610e08b69eb0e985de3fb46bdb49f0f628d10fa7704428f6e61ec63f7002da5399d47da6ee6004fa236d346dc8 | ||
DIST tbb-2020.1.tar.gz 2639115 BLAKE2B 058438351738eeab01c230ec10ff0a1dde77e5cc4fd77f292c31ee0320f41d079c8f90fc06f4640ffa375d5f0c0b5fbed13ac5a64a9cb9f1737cb66bc80442ea SHA512 79810c27c84bd3b3432bef471fa1c782f1f162a0d1038e88c03a77499cc7aeaa10d57317729fd23472e2d0f358395955f7570e8c679685a552a833eb45cf5f1d | ||
DIST tbb2017_20161128oss_src.tgz 2965854 BLAKE2B 8c5aed6d8477297922767803617346feebb712d1f4b2df6d71a86f039b5563afc666454985e68a528a812aaad40b5fd0562bb91d357c45156fec46e5389ec542 SHA512 3c48ce196d2d3557e86cea7ede9dea456bbaeb29dbed34210f99c6f380406403a6056ccfa3d5befe6b29c4f8a9ee58ca6da545249cf4ec4ec85b463e04e4518c |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
--- a/Makefile 2020-01-21 12:26:46.000000000 +0100 | ||
+++ b/Makefile 2020-03-18 16:21:37.589262099 +0100 | ||
@@ -26,29 +26,29 @@ | ||
all: tbb tbbmalloc tbbproxy test examples | ||
|
||
tbb: mkdir | ||
- $(MAKE) -C "$(work_dir)_release" -r -f $(tbb_root)/build/Makefile.tbb cfg=release | ||
+ $(MAKE) -C "$(work_dir)_$(cfg)" -r -f $(tbb_root)/build/Makefile.tbb cfg=$(cfg) | ||
|
||
tbbmalloc: mkdir | ||
- $(MAKE) -C "$(work_dir)_release" -r -f $(tbb_root)/build/Makefile.tbbmalloc cfg=release malloc | ||
+ $(MAKE) -C "$(work_dir)_$(cfg)" -r -f $(tbb_root)/build/Makefile.tbbmalloc cfg=$(cfg) malloc | ||
|
||
tbbproxy: mkdir | ||
- $(MAKE) -C "$(work_dir)_release" -r -f $(tbb_root)/build/Makefile.tbbproxy cfg=release tbbproxy | ||
+ $(MAKE) -C "$(work_dir)_$(cfg)" -r -f $(tbb_root)/build/Makefile.tbbproxy cfg=$(cfg) tbbproxy | ||
|
||
tbbbind: mkdir | ||
- $(MAKE) -C "$(work_dir)_release" -r -f $(tbb_root)/build/Makefile.tbbbind cfg=release tbbbind | ||
+ $(MAKE) -C "$(work_dir)_$(cfg)" -r -f $(tbb_root)/build/Makefile.tbbbind cfg=$(cfg) tbbbind | ||
|
||
test: tbb tbbmalloc $(if $(use_proxy),tbbproxy) | ||
- -$(MAKE) -C "$(work_dir)_release" -r -f $(tbb_root)/build/Makefile.tbbmalloc cfg=release malloc_test | ||
- -$(MAKE) -C "$(work_dir)_release" -r -f $(tbb_root)/build/Makefile.test cfg=release | ||
+ -$(MAKE) -C "$(work_dir)_$(cfg)" -r -f $(tbb_root)/build/Makefile.tbbmalloc cfg=$(cfg) malloc_test | ||
+ -$(MAKE) -C "$(work_dir)_$(cfg)" -r -f $(tbb_root)/build/Makefile.test cfg=$(cfg) | ||
|
||
rml: mkdir | ||
- $(MAKE) -C "$(work_dir)_release" -r -f $(tbb_root)/build/Makefile.rml cfg=release | ||
+ $(MAKE) -C "$(work_dir)_$(cfg)" -r -f $(tbb_root)/build/Makefile.rml cfg=$(cfg) | ||
|
||
examples: tbb tbbmalloc | ||
- $(MAKE) -C examples -r -f Makefile tbb_root=.. release test | ||
+ $(MAKE) -C examples -r -f Makefile tbb_root=.. $(cfg) test | ||
|
||
python: tbb | ||
- $(MAKE) -C "$(work_dir)_release" -rf $(tbb_root)/python/Makefile install | ||
+ $(MAKE) -C "$(work_dir)_$(cfg)" -rf $(tbb_root)/python/Makefile install | ||
|
||
doxygen: | ||
doxygen Doxyfile | ||
@@ -56,16 +56,16 @@ | ||
.PHONY: clean clean_examples mkdir info | ||
|
||
clean: clean_examples | ||
- $(shell $(RM) $(work_dir)_release$(SLASH)*.* >$(NUL) 2>$(NUL)) | ||
- $(shell $(RD) $(work_dir)_release >$(NUL) 2>$(NUL)) | ||
+ $(shell $(RM) $(work_dir)_$(cfg)$(SLASH)*.* >$(NUL) 2>$(NUL)) | ||
+ $(shell $(RD) $(work_dir)_$(cfg) >$(NUL) 2>$(NUL)) | ||
@echo clean done | ||
|
||
clean_examples: | ||
$(shell $(MAKE) -s -i -r -C examples -f Makefile tbb_root=.. clean >$(NUL) 2>$(NUL)) | ||
|
||
mkdir: | ||
- $(shell $(MD) "$(work_dir)_release" >$(NUL) 2>$(NUL)) | ||
- @echo Created the $(work_dir)_release directory | ||
+ $(shell $(MD) "$(work_dir)_$(cfg)" >$(NUL) 2>$(NUL)) | ||
+ @echo Created the $(work_dir)_$(cfg) directory | ||
|
||
info: | ||
@echo OS: $(tbb_os) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,151 @@ | ||
# Copyright 1999-2020 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=7 | ||
|
||
inherit eutils flag-o-matic multilib-minimal multilib toolchain-funcs | ||
|
||
PV1="$(ver_cut 1)" | ||
PV2="$(ver_cut 2)" | ||
MY_PV="${PV1}_U${PV2}" | ||
|
||
DESCRIPTION="High level abstract threading library" | ||
HOMEPAGE="https://www.threadingbuildingblocks.org" | ||
SRC_URI="https://github.com/intel/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz" | ||
LICENSE="Apache-2.0" | ||
SLOT="0" | ||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux" | ||
IUSE="debug examples" | ||
|
||
DEPEND="" | ||
RDEPEND="${DEPEND}" | ||
S="${WORKDIR}/oneTBB-${MY_PV}" | ||
|
||
DOCS=( CHANGES README README.md doc/Release_Notes.txt ) | ||
|
||
PATCHES=( "${FILESDIR}"/${P}-makefile-debug.patch ) | ||
|
||
src_prepare() { | ||
default | ||
|
||
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 | ||
local bt buildtypes | ||
|
||
case ${MULTILIB_ABI_FLAG} in | ||
abi_x86_64) arch=x86_64 ;; | ||
abi_x86_32) arch=ia32 ;; | ||
# abi_ppc_64) arch=ppc64 ;; | ||
# abi_ppc_32) arch=ppc32 ;; | ||
esac | ||
|
||
case "$(tc-getCXX)" in | ||
*clang*) comp="clang" ;; | ||
*g++*) comp="gcc" ;; | ||
*ic*c) comp="icc" ;; | ||
*) die "compiler $(tc-getCXX) not supported by build system" ;; | ||
esac | ||
|
||
if use debug ; then | ||
buildtypes="release debug" | ||
else | ||
buildtypes="release" | ||
fi | ||
|
||
for bt in ${buildtypes}; do | ||
CXX="$(tc-getCXX)" \ | ||
CC="$(tc-getCC)" \ | ||
AS="$(tc-getAS)" \ | ||
arch=${arch} \ | ||
CPLUS_FLAGS="${CXXFLAGS}" \ | ||
emake compiler=${comp} work_dir="${BUILD_DIR}" tbb_root="${S}" cfg=${bt} $@ | ||
done | ||
} | ||
|
||
multilib_src_compile() { | ||
local_src_compile tbb tbbmalloc | ||
} | ||
|
||
multilib_src_test() { | ||
local_src_compile test | ||
} | ||
|
||
multilib_src_install() { | ||
local bt | ||
local buildtypes | ||
if use debug ; then | ||
buildtypes="release debug" | ||
else | ||
buildtypes="release" | ||
fi | ||
for bt in ${buildtypes}; do | ||
cd "${BUILD_DIR}_${bt}" || die | ||
local l | ||
for l in $(find . -name lib\*$(get_libname \*)); do | ||
dolib.so ${l} | ||
local bl=$(basename ${l}) | ||
dosym ${bl} /usr/$(get_libdir)/${bl%%.*}$(get_libname) | ||
done | ||
done | ||
|
||
cd "${BUILD_DIR}" || die | ||
insinto /usr/$(get_libdir)/pkgconfig | ||
doins *.pc | ||
} | ||
|
||
multilib_src_install_all() { | ||
doheader -r include/* | ||
|
||
einstalldocs | ||
|
||
if use examples ; then | ||
insinto /usr/share/doc/${PF}/examples/build | ||
doins build/*.inc | ||
insinto /usr/share/doc/${PF}/examples | ||
doins -r examples | ||
docompress -x "/usr/share/doc/${PF}/examples" | ||
fi | ||
} |