# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
PortGroup compiler_blacklist_versions 1.0
github.setup 01org tbb 2018_U5
description Intel Threading Building Blocks offers a rich and complete approach to parallelism in C++
long_description ${description} \
It represents a higher-level, task-based parallelism that abstracts \
platform details and threading mechanisms for scalability and performance
homepage https://www.threadingbuildingblocks.org/
checksums rmd160 de3c0f507cc647190c21656d7770cf0b9ab4fb12 \
sha256 67dc4359d3cadd905e76490e8c2aaa24982dc062c3d9091e692d68ee8b24d80e \
github.livecheck.regex {(\d+(?:\_U)+(?:\d+)*)}
# Force a compatible compiler
compiler.blacklist-append *gcc* {clang < 602} macports-clang-3.3 macports-clang-3.4 \
macports-clang-3.5 macports-clang-3.6 macports-clang-3.7
compiler.whitelist clang macports-clang-3.9 macports-clang-3.8
set tbb_arch(x86_64) intel64
if {![info exists tbb_arch(${configure.build_arch})]} {
set tbb_arch(${configure.build_arch}) ${configure.build_arch}
if {[string match *clang* ${configure.compiler}]} {
set tbb_build_prefix macports
patchfiles patch-tbb-older-malloc.diff
reinplace "/^CONLY *=/s|=.*$|= ${configure.cc}|g" ${worksrcpath}/build/macos.${tbb_compiler}.inc
reinplace "/^CPLUS *=/s|=.*$|= ${configure.cxx}|g" ${worksrcpath}/build/macos.${tbb_compiler}.inc
# http://software.intel.com/en-us/forums/topic/505370
reinplace "/ -dynamiclib/s|$| -install_name ${prefix}/lib/\$@|g" ${worksrcpath}/build/macos.${tbb_compiler}.inc
build.target tbb tbbmalloc tbbproxy
build.args-append compiler=${tbb_compiler} \
tbb_build_prefix=${tbb_build_prefix} \