]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/libs/histogram/test/Jamfile
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / boost / libs / histogram / test / Jamfile
CommitLineData
92f5a8d4
TL
1# Copyright 2016-2017 Klemens David Morgenstern
2# Copyright 2018 Mateusz Loskot <mateusz@loskot.net>
1e59de90 3# Copyright 2018-2021 Hans Dembinski
92f5a8d4
TL
4#
5# Use, modification and distribution is subject to the Boost Software License,
6# Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
7# http://www.boost.org/LICENSE_1_0.txt)
8
9import python ;
10import os ;
11import regex ;
12import testing ;
13import ../../config/checks/config : requires ;
14
15if ! [ python.configured ]
16{
17 using python ;
18}
19
20path-constant THIS_PATH : . ;
21
22project
23 : requirements
24 [ requires
25 cxx14_constexpr cxx14_decltype_auto cxx14_generic_lambdas cxx14_return_type_deduction cxx11_user_defined_literals
26 # list could go on...
27 ]
28 ;
29
30# Check consistency of build systems
31testing.make-test run-pyd : check_build_system.py :
32 <dependency>Jamfile <dependency>CMakeLists.txt ;
33
34# Verify One Definition Rule by linking two object files which include everything
35testing.make-test run-pyd : check_odr_test.py : <dependency>odr_test.cpp ;
36alias odr :
37 [ link odr_main_test.cpp odr_test.cpp ]
20effc67 38 : <warnings>off
92f5a8d4
TL
39 ;
40
41alias cxx14 :
f67539c2
TL
42 [ run accumulators_count_test.cpp ]
43 [ run accumulators_mean_test.cpp ]
44 [ run accumulators_sum_test.cpp : : :
45 # make sure sum accumulator works even with -ffast-math and optimizations
46 <toolset>gcc:<cxxflags>"-O3 -ffast-math"
47 <toolset>clang:<cxxflags>"-O3 -ffast-math" ]
f67539c2
TL
48 [ run accumulators_weighted_mean_test.cpp ]
49 [ run accumulators_weighted_sum_test.cpp ]
92f5a8d4
TL
50 [ run algorithm_project_test.cpp ]
51 [ run algorithm_reduce_test.cpp ]
52 [ run algorithm_sum_test.cpp ]
53 [ run algorithm_empty_test.cpp ]
20effc67 54 [ run axis_boolean_test.cpp ]
92f5a8d4
TL
55 [ run axis_category_test.cpp ]
56 [ run axis_integer_test.cpp ]
57 [ run axis_option_test.cpp ]
58 [ run axis_regular_test.cpp ]
92f5a8d4
TL
59 [ run axis_traits_test.cpp ]
60 [ run axis_variable_test.cpp ]
61 [ run axis_variant_test.cpp ]
62 [ run detail_accumulator_traits_test.cpp ]
63 [ run detail_argument_traits_test.cpp ]
64 [ run detail_args_type_test.cpp ]
65 [ run detail_axes_test.cpp ]
66 [ run detail_convert_integer_test.cpp ]
67 [ run detail_detect_test.cpp ]
68 [ run detail_limits_test.cpp ]
69 [ run detail_make_default_test.cpp ]
70 [ run detail_misc_test.cpp ]
71 [ run detail_iterator_adaptor_test.cpp ]
72 [ run detail_large_int_test.cpp ]
73 [ run detail_operators_test.cpp ]
74 [ run detail_relaxed_equal_test.cpp ]
75 [ run detail_replace_type_test.cpp ]
76 [ run detail_safe_comparison_test.cpp ]
77 [ run detail_static_if_test.cpp ]
78 [ run detail_tuple_slice_test.cpp ]
79 [ run histogram_custom_axis_test.cpp ]
80 [ run histogram_dynamic_test.cpp ]
81 [ run histogram_fill_test.cpp ]
82 [ run histogram_growing_test.cpp ]
83 [ run histogram_mixed_test.cpp ]
84 [ run histogram_operators_test.cpp ]
92f5a8d4
TL
85 [ run histogram_test.cpp ]
86 [ run indexed_test.cpp ]
87 [ run storage_adaptor_test.cpp ]
88 [ run unlimited_storage_test.cpp ]
89 [ run utility_test.cpp ]
1e59de90 90 [ run issue_327_test.cpp ]
92f5a8d4
TL
91 ;
92
93alias cxx17 :
20effc67
TL
94 [ run deduction_guides_test.cpp ]
95 [ compile issue_290_test.cpp ]
96 : [ requires cpp_deduction_guides ]
92f5a8d4
TL
97 ;
98
99# check that useful error messages are produced when library is used incorrectly
100alias failure :
101 [ compile-fail axis_category_fail0.cpp ]
102 [ compile-fail axis_category_fail1.cpp ]
103 [ compile-fail axis_category_fail2.cpp ]
104 [ compile-fail axis_integer_fail0.cpp ]
105 [ compile-fail axis_integer_fail1.cpp ]
106 [ compile-fail axis_integer_fail2.cpp ]
107 [ compile-fail axis_integer_fail3.cpp ]
108 [ compile-fail axis_integer_fail4.cpp ]
109 [ compile-fail axis_regular_fail0.cpp ]
110 [ compile-fail axis_regular_fail1.cpp ]
111 [ compile-fail axis_variable_fail0.cpp ]
112 [ compile-fail axis_variable_fail1.cpp ]
113 [ compile-fail make_histogram_fail0.cpp ]
114 [ compile-fail make_histogram_fail1.cpp ]
115 [ compile-fail histogram_fail0.cpp ]
116 [ compile-fail histogram_fail1.cpp ]
117 [ compile-fail histogram_fail2.cpp ]
118 [ compile-fail histogram_fail3.cpp ]
119 [ compile-fail histogram_fail4.cpp ]
120 ;
121
122alias threading :
123 [ run histogram_threaded_test.cpp ]
124 [ run storage_adaptor_threaded_test.cpp ]
1e59de90
TL
125 [ run accumulators_count_thread_safe_test.cpp ]
126 [ run accumulators_thread_safe_test.cpp ]
92f5a8d4
TL
127 :
128 <threading>multi
129 ;
130
1e59de90
TL
131# tests do not work on windows, because environment variables cannot be set
132alias not_windows :
133 [ run histogram_ostream_test.cpp : : : <testing.launcher>"LANG=UTF" ]
134 [ run histogram_ostream_ascii_test.cpp : : : <testing.launcher>"LANG=FOO COLUMNS=20" ]
135 ;
136
92f5a8d4
TL
137# warnings are off for these other boost libraries, which tend to be not warning-free
138alias accumulators : [ run boost_accumulators_support_test.cpp ] : <warnings>off ;
139alias range : [ run boost_range_support_test.cpp ] : <warnings>off ;
140alias units : [ run boost_units_support_test.cpp ] : <warnings>off ;
141alias serialization :
142 [ run accumulators_serialization_test.cpp libserial : $(THIS_PATH) ]
143 [ run detail_array_wrapper_serialization_test.cpp libserial ]
144 [ run axis_variant_serialization_test.cpp libserial : $(THIS_PATH) ]
145 [ run histogram_serialization_test.cpp libserial : $(THIS_PATH) ]
146 [ run storage_adaptor_serialization_test.cpp libserial : $(THIS_PATH) ]
147 [ run unlimited_storage_serialization_test.cpp libserial : $(THIS_PATH) ]
20effc67 148 : <warnings>off
92f5a8d4
TL
149 ;
150
151alias libserial :
152 /boost/serialization//boost_serialization
153 :
154 <link>static <warnings>off <rtti>on
155 ;
156
157# for builds without optional boost dependencies
f67539c2 158alias minimal : cxx14 cxx17 failure threading ;
92f5a8d4 159
1e59de90
TL
160# for builds with optional boost dependencies
161alias optional_boost : accumulators range units serialization ;
162
92f5a8d4 163# all tests
1e59de90 164alias all : minimal not_windows odr optional_boost ;
92f5a8d4
TL
165
166# all except "failure", because it is distracting during development
1e59de90 167alias develop : odr cxx14 cxx17 threading not_windows optional_boost ;
92f5a8d4
TL
168
169explicit minimal ;
170explicit all ;
171explicit odr ;
172explicit cxx14 ;
173explicit cxx17 ;
174explicit failure ;
175explicit threading ;
1e59de90 176explicit not_windows ;
92f5a8d4
TL
177explicit accumulators ;
178explicit range ;
179explicit units ;
180explicit serialization ;
181explicit libserial ;
1e59de90 182explicit optional_boost ;