Files
boost_preprocessor/test/Jamfile.v2
2020-05-29 21:35:40 -04:00

475 lines
15 KiB
Plaintext

#~ Copyright Rene Rivera 2008
#~ Distributed under 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)
import testing ;
import cast ;
project preprocessor_tests : requirements <warnings>on
<toolset>gcc-4.3.0:<warnings>all
<toolset>gcc-4.3.0:<cxxflags>-Wno-variadic-macros
<toolset>gcc-4.4.0:<warnings>all
<toolset>gcc-4.4.0:<cxxflags>-Wno-variadic-macros
<toolset>gcc-4.5.0:<warnings>all
<toolset>gcc-4.5.0:<cxxflags>-Wno-variadic-macros
<toolset>gcc-4.5.0:<linkflags>"-Wl,--enable-auto-import"
<toolset>gcc-4.5.2:<warnings>all
<toolset>gcc-4.5.2:<cxxflags>-Wno-variadic-macros
<toolset>msvc:<warnings>all
;
alias preprocessor : :
<toolset>gcc
<toolset-gcc:version>3.4
;
alias preprocessor : :
<toolset>gcc
<toolset-gcc:version>4.1
;
alias preprocessor : :
<toolset>gcc
<toolset-gcc:version>4.2
;
alias preprocessor
:
[ compile arithmetic.cpp ]
[ compile array.cpp ]
[ compile comparison.cpp ]
[ compile control.cpp ]
[ compile debug.cpp ]
[ compile facilities.cpp ]
[ compile iteration.cpp ]
[ compile list.cpp ]
[ compile logical.cpp ]
[ compile punctuation.cpp ]
[ compile repetition.cpp ]
[ compile selection.cpp ]
[ compile seq.cpp ]
[ compile slot.cpp ]
[ compile stringize.cpp ]
[ compile tuple.cpp ]
[ compile variadic.cpp ]
;
alias preprocessor_nvm
:
[ compile arithmetic.cpp : <define>BOOST_PP_VARIADICS=0 : arithmetic_nvm ]
[ compile array.cpp : <define>BOOST_PP_VARIADICS=0 : array_nvm ]
[ compile comparison.cpp : <define>BOOST_PP_VARIADICS=0 : comparison_nvm ]
[ compile control.cpp : <define>BOOST_PP_VARIADICS=0 : control_nvm ]
[ compile debug.cpp : <define>BOOST_PP_VARIADICS=0 : debug_nvm ]
[ compile facilities.cpp : <define>BOOST_PP_VARIADICS=0 : facilities_nvm ]
[ compile iteration.cpp : <define>BOOST_PP_VARIADICS=0 : iteration_nvm ]
[ compile list.cpp : <define>BOOST_PP_VARIADICS=0 : list_nvm ]
[ compile logical.cpp : <define>BOOST_PP_VARIADICS=0 : logical_nvm ]
[ compile repetition.cpp : <define>BOOST_PP_VARIADICS=0 : repetition_nvm ]
[ compile selection.cpp : <define>BOOST_PP_VARIADICS=0 : selection_nvm ]
[ compile seq.cpp : <define>BOOST_PP_VARIADICS=0 : seq_nvm ]
[ compile slot.cpp : <define>BOOST_PP_VARIADICS=0 : slot_nvm ]
[ compile stringize.cpp : <define>BOOST_PP_VARIADICS=0 : stringize_nvm ]
[ compile tuple.cpp : <define>BOOST_PP_VARIADICS=0 : tuple_nvm ]
;
alias preprocessor_number_512
:
[ compile arithmetic.cpp : <define>BOOST_PP_LIMIT_MAG=512 : arithmetic_num ]
[ compile array.cpp : <define>BOOST_PP_LIMIT_MAG=512 : array_num ]
[ compile comparison.cpp : <define>BOOST_PP_LIMIT_MAG=512 : comparison_num ]
[ compile control.cpp : <define>BOOST_PP_LIMIT_MAG=512 : control_num ]
[ compile debug.cpp : <define>BOOST_PP_LIMIT_MAG=512 : debug_num ]
[ compile facilities.cpp : <define>BOOST_PP_LIMIT_MAG=512 : facilities_num ]
[ compile iteration.cpp : <define>BOOST_PP_LIMIT_MAG=512 : iteration_num ]
[ compile list.cpp : <define>BOOST_PP_LIMIT_MAG=512 : list_num ]
[ compile logical.cpp : <define>BOOST_PP_LIMIT_MAG=512 : logical_num ]
[ compile repetition.cpp : <define>BOOST_PP_LIMIT_MAG=512 : repetition_num ]
[ compile selection.cpp : <define>BOOST_PP_LIMIT_MAG=512 : selection_num ]
[ compile seq.cpp : <define>BOOST_PP_LIMIT_MAG=512 : seq_num ]
[ compile slot.cpp : <define>BOOST_PP_LIMIT_MAG=512 : slot_num ]
[ compile stringize.cpp : <define>BOOST_PP_LIMIT_MAG=512 : stringize_num ]
[ compile tuple.cpp : <define>BOOST_PP_LIMIT_MAG=512 : tuple_num ]
[ compile variadic.cpp : <define>BOOST_PP_LIMIT_MAG=512 : variadic_num ]
;
alias preprocessor_v_128
:
[ compile array.cpp : <define>BOOST_PP_LIMIT_TUPLE=128 : array_v_128 ]
[ compile tuple.cpp : <define>BOOST_PP_LIMIT_TUPLE=128 : tuple_v_128 ]
[ compile variadic.cpp : <define>BOOST_PP_LIMIT_VARIADIC=128 : variadic_v_128 ]
;
alias preprocessor_v_256
:
[ compile array.cpp : <define>BOOST_PP_LIMIT_TUPLE=256 : array_v_256 ]
[ compile tuple.cpp : <define>BOOST_PP_LIMIT_TUPLE=256 : tuple_v_256 ]
[ compile variadic.cpp : <define>BOOST_PP_LIMIT_VARIADIC=256 : variadic_v_256 ]
;
alias preprocessor_v_128_c
:
[ compile array.c : <define>BOOST_PP_LIMIT_TUPLE=128 : array_v_128_c ]
[ compile tuple.c : <define>BOOST_PP_LIMIT_TUPLE=128 : tuple_v_128_c ]
[ compile variadic.c : <define>BOOST_PP_LIMIT_VARIADIC=128 : variadic_v_128_c ]
;
alias preprocessor_v_256_c
:
[ compile array.c : <define>BOOST_PP_LIMIT_TUPLE=256 : array_v_256_c ]
[ compile tuple.c : <define>BOOST_PP_LIMIT_TUPLE=256 : tuple_v_256_c ]
[ compile variadic.c : <define>BOOST_PP_LIMIT_VARIADIC=256 : variadic_v_256_c ]
;
alias preprocessor_number_nvm_512
:
[ compile arithmetic.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : arithmetic_nvm_num ]
[ compile array.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : array_nvm_num ]
[ compile comparison.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : comparison_nvm_num ]
[ compile control.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : control_nvm_num ]
[ compile debug.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : debug_nvm_num ]
[ compile facilities.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : facilities_nvm_num ]
[ compile iteration.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : iteration_nvm_num ]
[ compile list.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : list_nvm_num ]
[ compile logical.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : logical_nvm_num ]
[ compile repetition.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : repetition_nvm_num ]
[ compile selection.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : selection_nvm_num ]
[ compile seq.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : seq_nvm_num ]
[ compile slot.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : slot_nvm_num ]
[ compile stringize.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : stringize_nvm_num ]
[ compile tuple.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_VARIADICS=0 : tuple_nvm_num ]
;
alias preprocessor_c
:
[ compile arithmetic.c
:
: arithmetic_c
]
[ compile array.c
:
: array_c
]
[ compile comparison.c
:
: comparison_c
]
[ compile control.c
:
: control_c
]
[ compile debug.c
:
: debug_c
]
[ compile facilities.c
:
: facilities_c
]
[ compile list.c
:
: list_c
]
[ compile logical.c
:
: logical_c
]
[ compile punctuation.c
:
: punctuation_c
]
[ compile selection.c
:
: selection_c
]
[ compile seq.c
:
: seq_c
]
[ compile slot.c
:
: slot_c
]
[ compile stringize.c
:
: stringize_c
]
[ compile tuple.c
:
: tuple_c
]
[ compile variadic.c
:
: variadic_c
]
;
alias preprocessor_c_number_512
:
[ compile arithmetic.c
: <define>BOOST_PP_LIMIT_MAG=512
: arithmetic_c_num
]
[ compile array.c
: <define>BOOST_PP_LIMIT_MAG=512
: array_c_num
]
[ compile comparison.c
: <define>BOOST_PP_LIMIT_MAG=512
: comparison_c_num
]
[ compile control.c
: <define>BOOST_PP_LIMIT_MAG=512
: control_c_num
]
[ compile debug.c
: <define>BOOST_PP_LIMIT_MAG=512
: debug_c_num
]
[ compile facilities.c
: <define>BOOST_PP_LIMIT_MAG=512
: facilities_c_num
]
[ compile list.c
: <define>BOOST_PP_LIMIT_MAG=512
: list_c_num
]
[ compile logical.c
: <define>BOOST_PP_LIMIT_MAG=512
: logical_c_num
]
[ compile punctuation.c
: <define>BOOST_PP_LIMIT_MAG=512
: punctuation_c_num
]
[ compile selection.c
: <define>BOOST_PP_LIMIT_MAG=512
: selection_c_num
]
[ compile seq.c
: <define>BOOST_PP_LIMIT_MAG=512
: seq_c_num
]
[ compile slot.c
: <define>BOOST_PP_LIMIT_MAG=512
: slot_c_num
]
[ compile stringize.c
: <define>BOOST_PP_LIMIT_MAG=512
: stringize_c_num
]
[ compile tuple.c
: <define>BOOST_PP_LIMIT_MAG=512
: tuple_c_num
]
[ compile variadic.c
: <define>BOOST_PP_LIMIT_MAG=512
: variadic_c_num
]
;
alias preprocessor_c_nvm
:
[ compile arithmetic.c
: <define>BOOST_PP_VARIADICS=0
: arithmetic_c_nvm
]
[ compile array.c
: <define>BOOST_PP_VARIADICS=0
: array_c_nvm
]
[ compile comparison.c
: <define>BOOST_PP_VARIADICS=0
: comparison_c_nvm
]
[ compile control.c
: <define>BOOST_PP_VARIADICS=0
: control_c_nvm
]
[ compile debug.c
: <define>BOOST_PP_VARIADICS=0
: debug_c_nvm
]
[ compile facilities.c
: <define>BOOST_PP_VARIADICS=0
: facilities_c_nvm
]
[ compile list.c
: <define>BOOST_PP_VARIADICS=0
: list_c_nvm
]
[ compile logical.c
: <define>BOOST_PP_VARIADICS=0
: logical_c_nvm
]
[ compile selection.c
: <define>BOOST_PP_VARIADICS=0
: selection_c_nvm
]
[ compile seq.c
: <define>BOOST_PP_VARIADICS=0
: seq_c_nvm
]
[ compile slot.c
: <define>BOOST_PP_VARIADICS=0
: slot_c_nvm
]
[ compile stringize.c
: <define>BOOST_PP_VARIADICS=0
: stringize_c_nvm
]
[ compile tuple.c
: <define>BOOST_PP_VARIADICS=0
: tuple_c_nvm
]
;
alias preprocessor_c_nvm_num
:
[ compile arithmetic.c
: <define>BOOST_PP_VARIADICS=0
<define>BOOST_PP_LIMIT_MAG=512
: arithmetic_c_nvm_num
]
[ compile array.c
: <define>BOOST_PP_VARIADICS=0
<define>BOOST_PP_LIMIT_MAG=512
: array_c_nvm_num
]
[ compile comparison.c
: <define>BOOST_PP_VARIADICS=0
<define>BOOST_PP_LIMIT_MAG=512
: comparison_c_nvm_num
]
[ compile control.c
: <define>BOOST_PP_VARIADICS=0
<define>BOOST_PP_LIMIT_MAG=512
: control_c_nvm_num
]
[ compile debug.c
: <define>BOOST_PP_VARIADICS=0
<define>BOOST_PP_LIMIT_MAG=512
: debug_c_nvm_num
]
[ compile facilities.c
: <define>BOOST_PP_VARIADICS=0
<define>BOOST_PP_LIMIT_MAG=512
: facilities_c_nvm_num
]
[ compile list.c
: <define>BOOST_PP_VARIADICS=0
<define>BOOST_PP_LIMIT_MAG=512
: list_c_nvm_num
]
[ compile logical.c
: <define>BOOST_PP_VARIADICS=0
<define>BOOST_PP_LIMIT_MAG=512
: logical_c_nvm_num
]
[ compile selection.c
: <define>BOOST_PP_VARIADICS=0
<define>BOOST_PP_LIMIT_MAG=512
: selection_c_nvm_num
]
[ compile seq.c
: <define>BOOST_PP_VARIADICS=0
<define>BOOST_PP_LIMIT_MAG=512
: seq_c_nvm_num
]
[ compile slot.c
: <define>BOOST_PP_VARIADICS=0
<define>BOOST_PP_LIMIT_MAG=512
: slot_c_nvm_num
]
[ compile stringize.c
: <define>BOOST_PP_VARIADICS=0
<define>BOOST_PP_LIMIT_MAG=512
: stringize_c_nvm_num
]
[ compile tuple.c
: <define>BOOST_PP_VARIADICS=0
<define>BOOST_PP_LIMIT_MAG=512
: tuple_c_nvm_num
]
;
alias preprocessor_isempty : :
<toolset>gcc
<toolset-gcc:version>3.4
;
alias preprocessor_isempty : :
<toolset>gcc
<toolset-gcc:version>4.1
;
alias preprocessor_isempty : :
<toolset>gcc
<toolset-gcc:version>4.2
;
alias preprocessor_isempty
:
[ compile isempty.cpp ]
[ compile checkempty.cpp ]
[ compile-fail isempty_variadic_standard_failure.cpp : <define>BOOST_PP_VARIADICS=1 ]
[ compile-fail isempty_variadic_standard_failure2.cpp : <define>BOOST_PP_VARIADICS=1 ]
[ compile vaopt.cpp ]
;
alias preprocessor_isempty_nvm
:
[ compile isempty.cpp : <define>BOOST_PP_VARIADICS=0 : isempty_nvm ]
;
alias preprocessor_isempty_c
:
[ compile isempty.c
:
: isempty_c
]
[ compile-fail isempty_variadic_standard_failure.c
: <define>BOOST_PP_VARIADICS=1
: isempty_variadic_standard_failure_c
]
[ compile-fail isempty_variadic_standard_failure2.c
: <define>BOOST_PP_VARIADICS=1
: isempty_variadic_standard_failure2_c
]
;
alias preprocessor_isempty_c_nvm
:
[ compile isempty.c
: <define>BOOST_PP_VARIADICS=0
: isempty_c_nvm
]
;
alias preprocessor_config
:
[ run config_info.cpp ]
;
alias test_clang_cuda
:
[ compile [ cast _ cpp : clang_cuda.cu ]
: <cxxflags>-nocudalib
<cxxflags>-nocudainc
<cxxflags>"-x cuda"
: clang_cuda_cu
]
;
explicit test_clang_cuda ;
alias test_iso
:
[ run cpp_standard.cpp ]
;
explicit test_iso ;
explicit compile quick.cpp ; # "Quick" test (for CI)