283 lines
9.3 KiB
Plaintext
Executable File
283 lines
9.3 KiB
Plaintext
Executable File
#~ 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_number_512
|
|
:
|
|
[ compile arithmetic.cpp : <define>BOOST_PP_LIMIT_MAG=512 : arithmetic_num_512 ]
|
|
[ compile array.cpp : <define>BOOST_PP_LIMIT_MAG=512 : array_num_512 ]
|
|
[ compile comparison.cpp : <define>BOOST_PP_LIMIT_MAG=512 : comparison_num_512 ]
|
|
[ compile control.cpp : <define>BOOST_PP_LIMIT_MAG=512 : control_num_512 ]
|
|
[ compile debug.cpp : <define>BOOST_PP_LIMIT_MAG=512 : debug_num_512 ]
|
|
[ compile facilities.cpp : <define>BOOST_PP_LIMIT_MAG=512 : facilities_num_512 ]
|
|
[ compile iteration.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_LIMIT_ITERATION=512 : iteration_num_512 ]
|
|
[ compile list.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_LIMIT_FOR=512 : list_num_512 ]
|
|
[ compile logical.cpp : <define>BOOST_PP_LIMIT_MAG=512 : logical_num_512 ]
|
|
[ compile repetition.cpp : <define>BOOST_PP_LIMIT_MAG=512 : repetition_num_512 ]
|
|
[ compile selection.cpp : <define>BOOST_PP_LIMIT_MAG=512 : selection_num_512 ]
|
|
[ compile seq.cpp : <define>BOOST_PP_LIMIT_MAG=512 <define>BOOST_PP_LIMIT_SEQ=512 : seq_num_512 ]
|
|
[ compile slot.cpp : <define>BOOST_PP_LIMIT_MAG=512 : slot_num_512 ]
|
|
[ compile stringize.cpp : <define>BOOST_PP_LIMIT_MAG=512 : stringize_num_512 ]
|
|
[ compile tuple.cpp : <define>BOOST_PP_LIMIT_MAG=512 : tuple_num_512 ]
|
|
[ compile variadic.cpp : <define>BOOST_PP_LIMIT_MAG=512 : variadic_num_512 ]
|
|
;
|
|
|
|
alias preprocessor_number_1024
|
|
:
|
|
[ compile arithmetic.cpp : <define>BOOST_PP_LIMIT_MAG=1024 : arithmetic_num_1024 ]
|
|
[ compile array.cpp : <define>BOOST_PP_LIMIT_MAG=1024 : array_num_1024 ]
|
|
[ compile comparison.cpp : <define>BOOST_PP_LIMIT_MAG=1024 : comparison_num_1024 ]
|
|
[ compile control.cpp : <define>BOOST_PP_LIMIT_MAG=1024 : control_num_1024 ]
|
|
[ compile debug.cpp : <define>BOOST_PP_LIMIT_MAG=1024 : debug_num_1024 ]
|
|
[ compile facilities.cpp : <define>BOOST_PP_LIMIT_MAG=1024 : facilities_num_1024 ]
|
|
[ compile iteration.cpp : <define>BOOST_PP_LIMIT_MAG=1024 <define>BOOST_PP_LIMIT_ITERATION=1024 : iteration_num_1024 ]
|
|
[ compile list.cpp : <define>BOOST_PP_LIMIT_MAG=1024 <define>BOOST_PP_LIMIT_FOR=1024 : list_num_1024 ]
|
|
[ compile logical.cpp : <define>BOOST_PP_LIMIT_MAG=1024 : logical_num_1024 ]
|
|
[ compile repetition.cpp : <define>BOOST_PP_LIMIT_MAG=1024 : repetition_num_1024 ]
|
|
[ compile selection.cpp : <define>BOOST_PP_LIMIT_MAG=1024 : selection_num_1024 ]
|
|
[ compile seq.cpp : <define>BOOST_PP_LIMIT_MAG=1024 <define>BOOST_PP_LIMIT_SEQ=1024 : seq_num_1024 ]
|
|
[ compile slot.cpp : <define>BOOST_PP_LIMIT_MAG=1024 : slot_num_1024 ]
|
|
[ compile stringize.cpp : <define>BOOST_PP_LIMIT_MAG=1024 : stringize_num_1024 ]
|
|
[ compile tuple.cpp : <define>BOOST_PP_LIMIT_MAG=1024 : tuple_num_1024 ]
|
|
[ compile variadic.cpp : <define>BOOST_PP_LIMIT_MAG=1024 : variadic_num_1024 ]
|
|
;
|
|
|
|
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 <define>BOOST_PP_LIMIT_TUPLE=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 <define>BOOST_PP_LIMIT_TUPLE=256 : variadic_v_256 ]
|
|
;
|
|
|
|
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_number_rep_512
|
|
:
|
|
[ compile repetition.cpp :
|
|
<define>BOOST_PP_LIMIT_MAG=512
|
|
<define>BOOST_PP_LIMIT_REPEAT=512
|
|
<define>BOOST_PP_LIMIT_FOR=512
|
|
: repetition_rep_num_512
|
|
]
|
|
;
|
|
|
|
alias preprocessor_number_rep_1024
|
|
:
|
|
[ compile repetition.cpp :
|
|
<define>BOOST_PP_LIMIT_MAG=1024
|
|
<define>BOOST_PP_LIMIT_REPEAT=1024
|
|
<define>BOOST_PP_LIMIT_FOR=1024
|
|
: repetition_rep_num_1024
|
|
]
|
|
;
|
|
|
|
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 ]
|
|
[ compile-fail isempty_variadic_standard_failure2.cpp ]
|
|
[ compile vaopt.cpp ]
|
|
;
|
|
|
|
alias preprocessor_isempty_c
|
|
:
|
|
[ compile isempty.c
|
|
:
|
|
: isempty_c
|
|
]
|
|
[ compile-fail isempty_variadic_standard_failure.c
|
|
:
|
|
: isempty_variadic_standard_failure_c
|
|
]
|
|
[ compile-fail isempty_variadic_standard_failure2.c
|
|
:
|
|
: isempty_variadic_standard_failure2_c
|
|
]
|
|
;
|
|
|
|
alias preprocessor_config
|
|
:
|
|
[ run config_info.cpp ]
|
|
;
|
|
|
|
explicit preprocessor_number_512 ;
|
|
explicit preprocessor_number_1024 ;
|
|
explicit preprocessor_v_128 ;
|
|
explicit preprocessor_v_256 ;
|
|
explicit preprocessor_number_rep_512 ;
|
|
explicit preprocessor_number_rep_1024 ;
|
|
|
|
alias preprocessor_128 : preprocessor_v_128 ;
|
|
alias preprocessor_256 : preprocessor_v_256 ;
|
|
alias preprocessor_512 : preprocessor_number_512 preprocessor_number_rep_512 ;
|
|
alias preprocessor_1024 : preprocessor_number_1024 preprocessor_number_rep_1024 ;
|
|
alias preprocessor_tup : preprocessor_128 preprocessor_256 ;
|
|
alias preprocessor_num : preprocessor_512 preprocessor_1024 ;
|
|
alias preprocessor_limits : preprocessor_tup preprocessor_num ;
|
|
|
|
explicit preprocessor_128 ;
|
|
explicit preprocessor_256 ;
|
|
explicit preprocessor_512 ;
|
|
explicit preprocessor_1024 ;
|
|
explicit preprocessor_tup ;
|
|
explicit preprocessor_num ;
|
|
explicit preprocessor_limits ;
|
|
|
|
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)
|