141 lines
5.6 KiB
Plaintext
141 lines
5.6 KiB
Plaintext
#
|
|
# Copyright John Maddock 2008.
|
|
# Use, modification and distribution are subject to the
|
|
# Boost Software License, Version 1.0. (See accompanying file
|
|
# LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
#
|
|
# If you need to alter build preferences then set them in
|
|
# the template defined in options_v2.jam.
|
|
#
|
|
|
|
import feature ;
|
|
import testing ;
|
|
|
|
project
|
|
: requirements
|
|
<toolset>gcc:<cxxflags>-Wno-deprecated-declarations
|
|
;
|
|
|
|
|
|
import modules ;
|
|
import ../checks/config : requires ;
|
|
|
|
local is_unix = [ modules.peek : UNIX ] ;
|
|
|
|
lib atomic ;
|
|
lib pthread ;
|
|
lib rt ;
|
|
|
|
exe has_atomic_lib : config_info.cpp atomic ;
|
|
explicit has_atomic_lib ;
|
|
exe has_pthread_lib : config_info.cpp pthread ;
|
|
explicit has_pthread_lib ;
|
|
exe has_rt_lib : config_info.cpp rt ;
|
|
explicit has_rt_lib ;
|
|
|
|
test-suite config
|
|
:
|
|
[ compile config_test_c.c ]
|
|
[ run config_test.cpp
|
|
: #args
|
|
: #input-files
|
|
: #requirements
|
|
<threading>multi
|
|
[ check-target-builds has_atomic_lib : <source>atomic ]
|
|
[ check-target-builds has_pthread_lib : <source>pthread ]
|
|
[ check-target-builds has_rt_lib : <source>rt ]
|
|
: config_test_threaded
|
|
]
|
|
[ run config_test.cpp
|
|
: #args
|
|
: #input-files
|
|
: #requirements
|
|
<threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static
|
|
[ check-target-builds has_atomic_lib : <source>atomic ]
|
|
[ check-target-builds has_pthread_lib : <source>pthread ]
|
|
[ check-target-builds has_rt_lib : <source>rt ]
|
|
]
|
|
[ run config_test.cpp
|
|
: #args
|
|
: #input-files
|
|
: #requirements
|
|
<rtti>off
|
|
<toolset>gcc-4.4.7,<cxxstd>0x:<build>no # <memory> does not compile with -fno-rtti
|
|
[ check-target-builds has_atomic_lib : <source>atomic ]
|
|
[ check-target-builds has_pthread_lib : <source>pthread ]
|
|
[ check-target-builds has_rt_lib : <source>rt ]
|
|
: config_test_no_rtti
|
|
]
|
|
[ run config_test.cpp
|
|
: #args
|
|
: #input-files
|
|
: #requirements
|
|
<exception-handling>off
|
|
<target-os>vxworks:<build>no # vx requires complete library rebuild to turn off exceptions
|
|
[ check-target-builds has_atomic_lib : <source>atomic ]
|
|
[ check-target-builds has_pthread_lib : <source>pthread ]
|
|
[ check-target-builds has_rt_lib : <source>rt ]
|
|
: config_test_no_except
|
|
]
|
|
[ run config_info.cpp : : : <test-info>always_show_run_output <threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static <toolset>msvc:<warnings-as-errors>on <toolset>gcc:<warnings-as-errors>on <toolset>clang:<warnings-as-errors>on ]
|
|
[ run config_info.cpp : : : <test-info>always_show_run_output <threading>multi <toolset>msvc:<warnings-as-errors>on <toolset>gcc:<warnings-as-errors>on <toolset>clang:<warnings-as-errors>on : config_info_threaded ]
|
|
[ run config_info.cpp : : : <test-info>always_show_run_output <rtti>off <toolset>msvc:<warnings-as-errors>on <toolset>gcc:<warnings-as-errors>on <toolset>clang:<warnings-as-errors>on : config_info_no_rtti ]
|
|
[ run config_info.cpp : : : <test-info>always_show_run_output <exception-handling>off
|
|
<target-os>vxworks:<build>no
|
|
: config_info_no_except ]
|
|
[ run math_info.cpp : : : <test-info>always_show_run_output <toolset>borland:<runtime-link>static <toolset>borland:<link>static ]
|
|
[ run abi/abi_test.cpp abi/main.cpp ]
|
|
[ run limits_test.cpp ]
|
|
[ run link/main.cpp link//link_test
|
|
: #args
|
|
: #input-files
|
|
: #requirements
|
|
<runtime-link>shared
|
|
<define>BOOST_DYN_LINK=1
|
|
<define>BOOST_CONFIG_NO_LIB=1
|
|
<target-os>vxworks:<link>shared
|
|
:
|
|
config_link_test
|
|
]
|
|
[ compile-fail threads/test_thread_fail1.cpp ]
|
|
[ compile-fail threads/test_thread_fail2.cpp ]
|
|
[ compile boost_fallthrough_test.cpp : [ check-target-builds has_clang_implicit_fallthrough "Clang implicit fallthrough" : <toolset>clang:<cxxflags>"-std=c++11 -Wimplicit-fallthrough" <warnings-as-errors>on <warnings>all ] ]
|
|
[ compile helper_macro_test.cpp ]
|
|
[ run cstdint_test.cpp : : : <warnings>all <toolset>gcc:<cxxflags>"-Wno-long-long -Wextra" <toolset>darwin:<cxxflags>-Wno-long-long ]
|
|
[ run cstdint_test2.cpp : : : <warnings>all <toolset>gcc:<cxxflags>"-Wno-long-long -Wextra" <toolset>darwin:<cxxflags>-Wno-long-long ]
|
|
[ compile cstdint_include_test.cpp : <warnings>all <toolset>gcc:<cxxflags>-Wextra ]
|
|
[ run config_build_check.cpp : : : [ requires int128 cxx11_constexpr cxx11_user_defined_literals cpp_lib_complex_udls cpp_range_based_for_17 ] ]
|
|
[ run helper_macros_test.cpp ]
|
|
[ compile pragma_message_test.cpp ]
|
|
[ compile header_deprecated_test.cpp ]
|
|
;
|
|
|
|
obj has_clang_implicit_fallthrough : cmd_line_check.cpp :
|
|
<toolset>clang:<cxxflags>"-std=c++11 -Wimplicit-fallthrough" <warnings-as-errors>on <warnings>all ;
|
|
|
|
explicit has_clang_implicit_fallthrough ;
|
|
|
|
exe config_info_printer : config_info.cpp ;
|
|
explicit config_info_printer ;
|
|
|
|
actions print-run
|
|
{
|
|
echo With Standard Version $(STANDARD:E=default)
|
|
echo =====================================================================
|
|
$(>)
|
|
}
|
|
|
|
rule print-run ( target : sources * : properties * )
|
|
{
|
|
STANDARD on $(target) = [ feature.get-values <cxxstd> : $(properties) ] ;
|
|
}
|
|
|
|
notfile print_config_info : @print-run : config_info_printer ;
|
|
explicit print_config_info ;
|
|
|
|
# Backwards compatibility:
|
|
exe config_info_travis : config_info.cpp ;
|
|
install config_info_travis_install : config_info_travis : <location>. ;
|
|
explicit config_info_travis_install ;
|
|
|