void-packages/srcpkgs/tbb/template
2020-01-28 10:42:47 +01:00

67 lines
1.6 KiB
Bash

# Template file for 'tbb'
pkgname=tbb
version=2019.U9
revision=1
archs="i686* x86_64* armv7l* aarch64* ppc*"
# version rewrite: 2017_U7 (upstream) => 2017.7 (xbps)
_ver=${version/./_}
wrksrc="${pkgname}-${_ver}"
build_style=gnu-makefile
hostmakedepends="cmake"
short_desc="Intel Threading Building Blocks"
maintainer="Andrea Brancaleoni <abc@pompel.me>"
license="Apache-2.0"
homepage="https://www.threadingbuildingblocks.org"
distfiles="https://github.com/intel/tbb/archive/${_ver}.tar.gz"
checksum=15652f5328cf00c576f065e5cd3eaf3317422fe82afb67a9bcec0dc065bd2abe
case "$XBPS_TARGET_MACHINE" in
armv7l*)
make_build_args="arch=armv7"
;;
aarch64*)
make_build_args="arch=arm64"
;;
ppc64*)
make_build_args="arch=ppc64"
;;
ppc*)
make_build_args="arch=ppc"
;;
esac
post_extract() {
sed -i 's|CPLUS = g..|CPLUS = $(CXX)|g' build/linux.gcc.inc
sed -i 's|CONLY = gcc|CONLY = $(CC)|g' build/linux.gcc.inc
# alternative might be:
# https://git.alpinelinux.org/cgit/aports/tree/testing/libtbb/glibc-struct-mallinfo.patch
if [ "$XBPS_TARGET_LIBC" = "musl" ]; then
vsed -e "s@#define MALLOC_UNIXLIKE_OVERLOAD_ENABLED __linux__@@" \
-i src/tbbmalloc/proxy.h
fi
}
do_install() {
vmkdir usr/lib
vcopy build/linux_*/*.so* usr/lib
vmkdir usr/include/tbb
vcopy include/tbb/* usr/include/tbb
cmake \
-DINSTALL_DIR=$DESTDIR/usr/lib/cmake/TBB \
-DSYSTEM_NAME=Linux \
-DLIB_REL_PATH=../.. \
-DINC_REL_PATH=../../../include \
-P cmake/tbb_config_installer.cmake
}
tbb-devel_package() {
depends="${sourcepkg}>=${version}_${revision}"
short_desc+=" - development files"
pkg_install() {
vmove usr/include
vmove "usr/lib/*.so"
vmove usr/lib/cmake
}
}