1# Copyright Mateusz Loskot 2018 <mateusz@loskot.net> 2# Copyright Klemens David Morgenstern, Hans P. Dembinski 2016-2017 3# 4# Use, modification and distribution is subject to the Boost Software License, 5# Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 6# http://www.boost.org/LICENSE_1_0.txt) 7 8# Special builds for Boost Histogram: 9# 10# Generate coverage data: b2 cxxstd=latest coverage=on test//all 11# Test without exceptions and rtti: b2 cxxstd=latest exception-handling=off rtti=off test//minimal 12# Test with sanitizers: b2 toolset=clang cxxstd=latest histogram_ubasan test 13 14import common ; 15 16project 17 : requirements 18 <implicit-dependency>/boost//headers 19 <include>$(BOOST_ROOT) 20 <toolset>clang:<cxxflags>"-pedantic -Wextra -Wsign-compare -Wstrict-aliasing -fstrict-aliasing" 21 <toolset>gcc:<cxxflags>"-pedantic -Wextra -Wsign-compare -Wstrict-aliasing -fstrict-aliasing" 22 <toolset>msvc:<cxxflags>"/bigobj" 23 <toolset>intel-win:<cxxflags>"/bigobj" 24 : default-build 25 <warnings>all 26 ; 27 28path-constant THIS_PATH : . ; 29 30# only works with clang because of -fsanitize-blacklist 31variant histogram_ubasan : debug : 32 <cxxflags>"-fno-omit-frame-pointer -O0 -fno-inline -fsanitize=address,leak,undefined -fno-sanitize-recover=all -fsanitize-blacklist=$(THIS_PATH)/tools/blacklist.supp" 33 <linkflags>"-fsanitize=address,leak,undefined" 34 ; 35 36build-project test ; 37build-project examples ; 38