[manifest]
name = boost

[download.not(os=windows)]
url = https://boostorg.jfrog.io/artifactory/main/release/1.78.0/source/boost_1_78_0.tar.gz
sha256 = 94ced8b72956591c4775ae2207a9763d3600b30d9d7446562c552f0a14a63be7

[download.os=windows]
url = https://boostorg.jfrog.io/artifactory/main/release/1.78.0/source/boost_1_78_0.zip
sha256 = f22143b5528e081123c3c5ed437e92f648fe69748e95fa6e2bd41484e2986cc3

[preinstalled.env]
# Here we list the acceptable versions that cmake needs a hint to find
BOOST_ROOT_1_69_0
BOOST_ROOT_1_78_0

[debs]
libboost-all-dev

[homebrew]
boost
# Boost cmake detection on homebrew adds this as requirement: https://github.com/Homebrew/homebrew-core/issues/67427#issuecomment-754187345
icu4c

[rpms.all(distro=centos_stream,distro_vers=8)]
boost169
boost169-math
boost169-test
boost169-fiber
boost169-graph
boost169-log
boost169-openmpi
boost169-timer
boost169-chrono
boost169-locale
boost169-thread
boost169-atomic
boost169-random
boost169-static
boost169-contract
boost169-date-time
boost169-iostreams
boost169-container
boost169-coroutine
boost169-filesystem
boost169-system
boost169-stacktrace
boost169-regex
boost169-devel
boost169-context
boost169-python3-devel
boost169-type_erasure
boost169-wave
boost169-python3
boost169-serialization
boost169-program-options

[rpms.not(all(distro=centos_stream,distro_vers=8))]
boost-devel
boost-static

[build]
builder = boost
job_weight_mib = 512

[b2.args]
--with-atomic
--with-chrono
--with-container
--with-context
--with-contract
--with-coroutine
--with-date_time
--with-exception
--with-fiber
--with-filesystem
--with-graph
--with-graph_parallel
--with-iostreams
--with-locale
--with-log
--with-math
--with-mpi
--with-program_options
--with-python
--with-random
--with-regex
--with-serialization
--with-stacktrace
--with-system
--with-test
--with-thread
--with-timer
--with-type_erasure
--with-wave

[bootstrap.args.os=darwin]
# Not really gcc, but CI puts a broken clang in the PATH, and saying gcc
# here selects the correct one from Xcode.
--with-toolset=gcc

[b2.args.os=linux]
# RHEL hardened gcc is not compatible with PCH
# https://bugzilla.redhat.com/show_bug.cgi?id=1806545
pch=off

[b2.args.os=darwin]
toolset=clang

[b2.args.all(os=windows,fb=on)]
toolset=msvc-14.2
