177 lines
6.4 KiB
Bash
177 lines
6.4 KiB
Bash
SUMMARY="A set of libraries for the C++ programming language"
|
||
DESCRIPTION="
|
||
Boost is a set of libraries for the C++ programming language that provide \
|
||
support for tasks and structures such as linear algebra, pseudorandom number \
|
||
generation, multithreading, image processing, regular expressions, and unit \
|
||
testing. It contains over eighty individual libraries.
|
||
"
|
||
HOMEPAGE="https://www.boost.org/"
|
||
SOURCE_URI="https://dl.bintray.com/boostorg/release/$portVersion/source/boost_${portVersion//./_}.tar.bz2"
|
||
CHECKSUM_SHA256="5721818253e6a0989583192f96782c4a98eb6204965316df9f5ad75819225ca9"
|
||
REVISION="3"
|
||
LICENSE="Boost v1.0"
|
||
COPYRIGHT="1998-2017 Beman Dawes, David Abrahams, Rene Rivera, et al."
|
||
SOURCE_DIR="boost_${portVersion//./_}"
|
||
PATCHES="boost-$portVersion.patchset"
|
||
|
||
ARCHITECTURES="all !x86_gcc2"
|
||
SECONDARY_ARCHITECTURES="x86"
|
||
|
||
libVersion="$portVersion compat >= 1.66.0"
|
||
|
||
PROVIDES="
|
||
boost166$secondaryArchSuffix = $portVersion
|
||
lib:libboost_atomic$secondaryArchSuffix = $libVersion
|
||
lib:libboost_chrono$secondaryArchSuffix = $libVersion
|
||
lib:libboost_container$secondaryArchSuffix = $libVersion
|
||
lib:libboost_context$secondaryArchSuffix = $libVersion
|
||
lib:libboost_coroutine$secondaryArchSuffix = $libVersion
|
||
lib:libboost_date_time$secondaryArchSuffix = $libVersion
|
||
lib:libboost_filesystem$secondaryArchSuffix = $libVersion
|
||
lib:libboost_graph$secondaryArchSuffix = $libVersion
|
||
lib:libboost_iostreams$secondaryArchSuffix = $libVersion
|
||
lib:libboost_locale$secondaryArchSuffix = $libVersion
|
||
lib:libboost_log$secondaryArchSuffix = $libVersion
|
||
lib:libboost_log_setup$secondaryArchSuffix = $libVersion
|
||
lib:libboost_math_c99$secondaryArchSuffix = $libVersion
|
||
lib:libboost_math_c99f$secondaryArchSuffix = $libVersion
|
||
lib:libboost_math_tr1$secondaryArchSuffix = $libVersion
|
||
lib:libboost_math_tr1f$secondaryArchSuffix = $libVersion
|
||
lib:libboost_prg_exec_monitor$secondaryArchSuffix = $libVersion
|
||
lib:libboost_program_options$secondaryArchSuffix = $libVersion
|
||
lib:libboost_random$secondaryArchSuffix = $libVersion
|
||
lib:libboost_regex$secondaryArchSuffix = $libVersion
|
||
lib:libboost_serialization$secondaryArchSuffix = $libVersion
|
||
lib:libboost_signals$secondaryArchSuffix = $libVersion
|
||
lib:libboost_stacktrace_basic$secondaryArchSuffix = $libVersion
|
||
lib:libboost_stacktrace_noop$secondaryArchSuffix = $libVersion
|
||
lib:libboost_system$secondaryArchSuffix = $libVersion
|
||
lib:libboost_thread$secondaryArchSuffix = $libVersion
|
||
lib:libboost_timer$secondaryArchSuffix = $libVersion
|
||
lib:libboost_type_erasure$secondaryArchSuffix = $libVersion
|
||
lib:libboost_unit_test_framework$secondaryArchSuffix = $libVersion
|
||
lib:libboost_wave$secondaryArchSuffix = $libVersion
|
||
lib:libboost_wserialization$secondaryArchSuffix = $libVersion
|
||
"
|
||
REQUIRES="
|
||
haiku$secondaryArchSuffix
|
||
lib:libbz2$secondaryArchSuffix
|
||
lib:libicuuc$secondaryArchSuffix
|
||
lib:libicui18n$secondaryArchSuffix
|
||
lib:libicudata$secondaryArchSuffix
|
||
lib:libz$secondaryArchSuffix
|
||
"
|
||
|
||
# List of devel entries matching an actual library (for use in prepareInstalledDevelLibs)
|
||
# Boost also provides header-only libraries (because templates)
|
||
devel_libs="
|
||
devel:libboost_atomic$secondaryArchSuffix = $portVersion
|
||
devel:libboost_chrono$secondaryArchSuffix = $portVersion
|
||
devel:libboost_container$secondaryArchSuffix = $portVersion
|
||
devel:libboost_context$secondaryArchSuffix = $portVersion
|
||
devel:libboost_coroutine$secondaryArchSuffix = $portVersion
|
||
devel:libboost_date_time$secondaryArchSuffix = $portVersion
|
||
devel:libboost_exception$secondaryArchSuffix = $portVersion
|
||
devel:libboost_filesystem$secondaryArchSuffix = $portVersion
|
||
devel:libboost_graph$secondaryArchSuffix = $portVersion
|
||
devel:libboost_iostreams$secondaryArchSuffix = $portVersion
|
||
devel:libboost_locale$secondaryArchSuffix = $portVersion
|
||
devel:libboost_log$secondaryArchSuffix = $portVersion
|
||
devel:libboost_log_setup$secondaryArchSuffix = $portVersion
|
||
devel:libboost_math_c99$secondaryArchSuffix = $portVersion
|
||
devel:libboost_math_c99f$secondaryArchSuffix = $portVersion
|
||
devel:libboost_math_tr1$secondaryArchSuffix = $portVersion
|
||
devel:libboost_math_tr1f$secondaryArchSuffix = $portVersion
|
||
devel:libboost_prg_exec_monitor$secondaryArchSuffix = $portVersion
|
||
devel:libboost_program_options$secondaryArchSuffix = $portVersion
|
||
devel:libboost_random$secondaryArchSuffix = $portVersion
|
||
devel:libboost_regex$secondaryArchSuffix = $portVersion
|
||
devel:libboost_serialization$secondaryArchSuffix = $portVersion
|
||
devel:libboost_signals$secondaryArchSuffix = $portVersion
|
||
devel:libboost_stacktrace_basic$secondaryArchSuffix = $portVersion
|
||
devel:libboost_stacktrace_noop$secondaryArchSuffix = $portVersion
|
||
devel:libboost_system$secondaryArchSuffix = $portVersion
|
||
devel:libboost_test_exec_monitor$secondaryArchSuffix = $portVersion
|
||
devel:libboost_thread$secondaryArchSuffix = $portVersion
|
||
devel:libboost_timer$secondaryArchSuffix = $portVersion
|
||
devel:libboost_type_erasure$secondaryArchSuffix = $portVersion
|
||
devel:libboost_unit_test_framework$secondaryArchSuffix = $portVersion
|
||
devel:libboost_wave$secondaryArchSuffix = $portVersion
|
||
devel:libboost_wserialization$secondaryArchSuffix = $portVersion
|
||
"
|
||
|
||
PROVIDES_devel="
|
||
boost166${secondaryArchSuffix}_devel = $portVersion
|
||
$devel_libs
|
||
devel:libboost_config$secondaryArchSuffix = $portVersion
|
||
"
|
||
|
||
REQUIRES_devel="
|
||
haiku$secondaryArchSuffix >= r1~alpha4_pm_hrev51470
|
||
boost166$secondaryArchSuffix == $portVersion
|
||
"
|
||
|
||
BUILD_REQUIRES="
|
||
haiku${secondaryArchSuffix}_devel
|
||
devel:libbz2$secondaryArchSuffix
|
||
devel:libz$secondaryArchSuffix
|
||
devel:libicuuc$secondaryArchSuffix
|
||
devel:libicui18n$secondaryArchSuffix
|
||
devel:libicudata$secondaryArchSuffix
|
||
"
|
||
|
||
BUILD_PREREQUIRES="
|
||
cmd:gcc$secondaryArchSuffix
|
||
cmd:ld$secondaryArchSuffix
|
||
cmd:sed
|
||
cmd:which
|
||
"
|
||
|
||
BUILD()
|
||
{
|
||
./bootstrap.sh \
|
||
--prefix=$prefix \
|
||
--exec-prefix=$binDir \
|
||
--libdir=$libDir \
|
||
--includedir=$includeDir
|
||
|
||
./b2 -q $jobArgs \
|
||
--without-mpi \
|
||
--enable-threads=posix \
|
||
--enable-thread-local-alloc \
|
||
--enable-parallel-mark \
|
||
inlining=on \
|
||
threading=multi \
|
||
variant=release \
|
||
link=static,shared \
|
||
runtime-link=shared \
|
||
--without-python
|
||
}
|
||
|
||
INSTALL()
|
||
{
|
||
./b2 -q $jobArgs \
|
||
--without-mpi \
|
||
--enable-threads=posix \
|
||
--enable-thread-local-alloc \
|
||
--enable-parallel-mark \
|
||
inlining=on \
|
||
threading=multi \
|
||
variant=release \
|
||
link=static,shared \
|
||
runtime-link=shared \
|
||
--without-python \
|
||
install
|
||
|
||
prepareInstalledDevelLibs `echo "$devel_libs" | sed -n \
|
||
-e "s/devel:\(.*\)$secondaryArchSuffix =.*/\1/p"`
|
||
|
||
packageEntries devel $developDir
|
||
}
|
||
|
||
TEST()
|
||
{
|
||
cd status
|
||
../bjam $jobArgs
|
||
}
|