# Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
+import python ;
import os ;
import regex ;
import testing ;
import ../../config/checks/config : requires ;
+if ! [ python.configured ]
+{
+ using python ;
+}
+
path-constant THIS_PATH : . ;
project
]
;
+# Check consistency of build systems
+testing.make-test run-pyd : check_build_system.py :
+ <dependency>Jamfile <dependency>CMakeLists.txt ;
+
+# Verify One Definition Rule by linking two object files which include everything
+testing.make-test run-pyd : check_odr_test.py : <dependency>odr_test.cpp ;
+alias odr :
+ [ link odr_main_test.cpp odr_test.cpp ]
+ ;
+
alias cxx14 :
+ [ run accumulators_test.cpp ]
[ run algorithm_project_test.cpp ]
[ run algorithm_reduce_test.cpp ]
[ run algorithm_sum_test.cpp ]
+ [ run algorithm_empty_test.cpp ]
[ run axis_category_test.cpp ]
[ run axis_integer_test.cpp ]
[ run axis_option_test.cpp ]
[ run axis_traits_test.cpp ]
[ run axis_variable_test.cpp ]
[ run axis_variant_test.cpp ]
+ [ run detail_accumulator_traits_test.cpp ]
+ [ run detail_argument_traits_test.cpp ]
[ run detail_args_type_test.cpp ]
[ run detail_axes_test.cpp ]
[ run detail_convert_integer_test.cpp ]
- [ run detail_compressed_pair_test.cpp ]
[ run detail_detect_test.cpp ]
[ run detail_limits_test.cpp ]
[ run detail_make_default_test.cpp ]
- [ run detail_meta_test.cpp ]
[ run detail_misc_test.cpp ]
[ run detail_iterator_adaptor_test.cpp ]
[ run detail_large_int_test.cpp ]
- [ run detail_linearize_test.cpp ]
[ run detail_operators_test.cpp ]
[ run detail_relaxed_equal_test.cpp ]
- [ run detail_replace_default_test.cpp ]
+ [ run detail_replace_type_test.cpp ]
[ run detail_safe_comparison_test.cpp ]
+ [ run detail_static_if_test.cpp ]
[ run detail_tuple_slice_test.cpp ]
+ [ run histogram_custom_axis_test.cpp ]
[ run histogram_dynamic_test.cpp ]
+ [ run histogram_fill_test.cpp ]
[ run histogram_growing_test.cpp ]
[ run histogram_mixed_test.cpp ]
[ run histogram_operators_test.cpp ]
+ [ run histogram_ostream_test.cpp ]
[ run histogram_test.cpp ]
[ run indexed_test.cpp ]
- [ run internal_accumulators_test.cpp ]
[ run storage_adaptor_test.cpp ]
[ run unlimited_storage_test.cpp ]
[ run utility_test.cpp ]
# check that useful error messages are produced when library is used incorrectly
alias failure :
+ [ compile-fail axis_category_fail0.cpp ]
+ [ compile-fail axis_category_fail1.cpp ]
+ [ compile-fail axis_category_fail2.cpp ]
+ [ compile-fail axis_integer_fail0.cpp ]
+ [ compile-fail axis_integer_fail1.cpp ]
+ [ compile-fail axis_integer_fail2.cpp ]
+ [ compile-fail axis_integer_fail3.cpp ]
+ [ compile-fail axis_integer_fail4.cpp ]
+ [ compile-fail axis_regular_fail0.cpp ]
+ [ compile-fail axis_regular_fail1.cpp ]
+ [ compile-fail axis_variable_fail0.cpp ]
+ [ compile-fail axis_variable_fail1.cpp ]
[ compile-fail make_histogram_fail0.cpp ]
[ compile-fail make_histogram_fail1.cpp ]
+ [ compile-fail histogram_fail0.cpp ]
+ [ compile-fail histogram_fail1.cpp ]
+ [ compile-fail histogram_fail2.cpp ]
+ [ compile-fail histogram_fail3.cpp ]
+ [ compile-fail histogram_fail4.cpp ]
;
alias threading :
alias range : [ run boost_range_support_test.cpp ] : <warnings>off ;
alias units : [ run boost_units_support_test.cpp ] : <warnings>off ;
alias serialization :
+ [ run accumulators_serialization_test.cpp libserial : $(THIS_PATH) ]
+ [ run detail_array_wrapper_serialization_test.cpp libserial ]
[ run axis_variant_serialization_test.cpp libserial : $(THIS_PATH) ]
[ run histogram_serialization_test.cpp libserial : $(THIS_PATH) ]
[ run storage_adaptor_serialization_test.cpp libserial : $(THIS_PATH) ]
<link>static <warnings>off <rtti>on
;
-# "failure" not included in "all", because it is distracting
-alias all : cxx14 cxx17 threading accumulators range units serialization ;
-alias minimal : cxx14 cxx17 threading ;
+# for builds without optional boost dependencies
+alias minimal : odr cxx14 cxx17 failure threading ;
+
+# all tests
+alias all : minimal accumulators range units serialization ;
+
+# all except "failure", because it is distracting during development
+alias develop : odr cxx14 cxx17 threading accumulators range units serialization ;
+explicit minimal ;
+explicit all ;
+explicit odr ;
explicit cxx14 ;
explicit cxx17 ;
explicit failure ;