]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/spirit/test/Jamfile
update sources to v12.2.3
[ceph.git] / ceph / src / boost / libs / spirit / test / Jamfile
1 #==============================================================================
2 # Copyright (c) 2001-2011 Joel de Guzman
3 # Copyright (c) 2001-2012 Hartmut Kaiser
4 # Copyright (c) 2011 Bryce Lelbach
5 #
6 # Use, modification and distribution is subject to the Boost Software
7 # License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
8 # http://www.boost.org/LICENSE_1_0.txt)
9 #==============================================================================
10
11 # bring in rules for testing
12 import testing ;
13 import modules ;
14 import feature ;
15
16 ###############################################################################
17 project spirit_v2x/test
18 : requirements
19 <include>.
20 <toolset>gcc:<cxxflags>-ftemplate-depth-512
21 <toolset>darwin:<cxxflags>-ftemplate-depth-512
22 <toolset>clang:<cxxflags>-ftemplate-depth=512
23 :
24 :
25 ;
26
27 v3_tests = ;
28
29 rule run ( sources + : args * : input-files * : requirements * : target-name ? : default-build * )
30 {
31 target-name ?= $(sources[1]:D=:S=) ;
32 v3_tests += [ testing.run $(sources) : $(args) : $(input-files) : $(requirements) : $(target-name)-p3 : $(default-build) ] ;
33 }
34
35 rule compile ( sources + : requirements * : target-name ? )
36 {
37 target-name ?= $(sources[1]:D=:S=) ;
38 v3_tests += [ testing.compile $(sources) : $(requirements) : $(target-name)-p3 ] ;
39 }
40
41 rule compile-fail ( sources + : requirements * : target-name ? )
42 {
43 target-name ?= $(sources[1]:D=:S=) ;
44 v3_tests += [ testing.compile-fail $(sources) : $(requirements) : $(target-name)-p3 ] ;
45 }
46
47 ###############################################################################
48 path-constant LEX_DIR : $(BOOST_ROOT)/libs/spirit/test/lex ;
49
50 {
51 ###########################################################################
52 test-suite spirit_v2/qi :
53
54 [ run qi/actions.cpp : : : : qi_actions ]
55 [ run qi/actions2.cpp : : : : qi_actions2 ]
56 [ run qi/alternative.cpp : : : : qi_alternative ]
57 [ run qi/attr.cpp : : : : qi_attr ]
58 [ run qi/attribute1.cpp : : : : qi_attribute1 ]
59 [ run qi/attribute2.cpp : : : : qi_attribute2 ]
60 [ run qi/and_predicate.cpp : : : : qi_and_predicate ]
61 [ run qi/auto.cpp : : : : qi_auto ]
62 [ run qi/binary.cpp : : : : qi_binary ]
63 [ run qi/bool1.cpp : : : : qi_bool1 ]
64 [ run qi/bool2.cpp : : : : qi_bool2 ]
65 [ run qi/char1.cpp : : : : qi_char1 ]
66 [ run qi/char2.cpp : : : : qi_char2 ]
67 [ run qi/char_class.cpp : : : : qi_char_class ]
68 [ run qi/debug.cpp : : : : qi_debug ]
69 [ run qi/difference.cpp : : : : qi_difference ]
70 [ run qi/encoding.cpp : : : : qi_encoding ]
71 [ run qi/end.cpp : : : : qi_end ]
72 [ run qi/eps.cpp : : : : qi_eps ]
73 [ run qi/expect.cpp : : : : qi_expect ]
74 [ run qi/expectd.cpp : : : : qi_expectd ]
75 [ run qi/grammar.cpp : : : : qi_grammar ]
76 [ run qi/int1.cpp : : : : qi_int1 ]
77 [ run qi/int2.cpp : : : : qi_int2 ]
78 [ run qi/int3.cpp : : : : qi_int3 ]
79 [ run qi/kleene.cpp : : : : qi_kleene ]
80 [ run qi/lazy.cpp : : : : qi_lazy ]
81 [ run qi/lexeme.cpp : : : : qi_lexeme ]
82 [ run qi/lit1.cpp : : : : qi_lit1 ]
83 [ run qi/lit2.cpp : : : : qi_lit2 ]
84 [ run qi/list.cpp : : : : qi_list ]
85 [ run qi/hold.cpp : : : : qi_hold ]
86 [ run qi/match_manip1.cpp : : : : qi_match_manip1 ]
87 [ run qi/match_manip2.cpp : : : : qi_match_manip2 ]
88 [ run qi/match_manip3.cpp : : : : qi_match_manip3 ]
89 [ run qi/match_manip_attr.cpp : : : : qi_match_manip_attr ]
90 [ run qi/matches.cpp : : : : qi_matches ]
91 [ run qi/no_case.cpp : : : : qi_no_case ]
92 [ run qi/no_skip.cpp : : : : qi_no_skip ]
93 [ run qi/not_predicate.cpp : : : : qi_not_predicate ]
94 [ run qi/optional.cpp : : : : qi_optional ]
95 [ run qi/parse_attr.cpp : : : : qi_parse_attr ]
96 [ run qi/pass_container1.cpp : : : : qi_pass_container1 ]
97 [ run qi/pass_container2.cpp : : : : qi_pass_container2 ]
98 [ run qi/permutation.cpp : : : : qi_permutation ]
99 [ run qi/plus.cpp : : : : qi_plus ]
100 [ run qi/range_run.cpp : : : : qi_range_run ]
101 [ run qi/raw.cpp : : : : qi_raw ]
102 [ run qi/real1.cpp : : : : qi_real1 ]
103 [ run qi/real2.cpp : : : : qi_real2 ]
104 [ run qi/real3.cpp : : : : qi_real3 ]
105 [ run qi/real4.cpp : : : : qi_real4 ]
106 [ run qi/real5.cpp : : : : qi_real5 ]
107 [ run qi/repeat.cpp : : : : qi_repeat ]
108 [ run qi/rule1.cpp : : : : qi_rule1 ]
109 [ run qi/rule2.cpp : : : : qi_rule2 ]
110 [ run qi/rule3.cpp : : : : qi_rule3 ]
111 [ run qi/rule4.cpp : : : : qi_rule4 ]
112 [ run qi/sequence.cpp : : : : qi_sequence ]
113 [ run qi/sequential_or.cpp : : : : qi_sequential_or ]
114 [ run qi/skip.cpp : : : : qi_skip ]
115 [ run qi/stream.cpp : : : : qi_stream ]
116 [ run qi/symbols1.cpp : : : : qi_symbols1 ]
117 [ run qi/symbols2.cpp : : : : qi_symbols2 ]
118 [ run qi/terminal_ex.cpp : : : : qi_terminal_ex ]
119 [
120 run qi/tst.cpp
121 /boost//system
122 : : : : qi_tst
123 ]
124 [ run qi/uint1.cpp : : : : qi_uint1 ]
125 [ run qi/uint2.cpp : : : : qi_uint2 ]
126 [ run qi/uint3.cpp : : : : qi_uint3 ]
127 [ run qi/uint_radix.cpp : : : : qi_uint_radix ]
128 [ run qi/utree1.cpp : : : : qi_utree1 ]
129 [ run qi/utree2.cpp : : : : qi_utree2 ]
130 [ run qi/utree3.cpp : : : : qi_utree3 ]
131 [ run qi/utree4.cpp : : : : qi_utree4 ]
132
133 ;
134
135 ###########################################################################
136 test-suite spirit_v2/qi_regressions :
137
138 [ compile qi/pass_container3.cpp : : qi_pass_container3 ]
139 [ compile qi/regression_attr_with_action.cpp : : qi_regression_attr_with_action ]
140 [ compile qi/regression_container_attribute.cpp : : qi_regression_container_attribute ]
141 [ compile qi/regression_debug_optional.cpp : : qi_regression_debug_optional ]
142 [ compile qi/regression_fusion_proto_spirit.cpp : : qi_regression_fusion_proto_spirit ]
143 [ compile qi/regression_one_element_fusion_sequence.cpp : : qi_regression_one_element_fusion_sequence ]
144 [ compile qi/regression_one_element_sequence_attribute.cpp : : qi_regression_one_element_sequence_attribute ]
145
146 [ run qi/regression_adapt_adt.cpp : : : : qi_regression_adapt_adt ]
147 [ run qi/regression_clear.cpp : : : : qi_regression_clear ]
148 #[ run qi/regression_float_fraction.cpp : : : : qi_regression_float_fraction ]
149 [ run qi/regression_lazy_repeat.cpp : : : : qi_regression_lazy_repeat ]
150 [ run qi/regression_numeric_alternatives.cpp : : : : qi_regression_numeric_alternatives ]
151 [ run qi/regression_reorder.cpp : : : : qi_regression_reorder ]
152 [ run qi/regression_repeat.cpp : : : : qi_regression_repeat ]
153 [ run qi/regression_transform_assignment.cpp : : : : qi_regression_transform_assignment ]
154 [ run qi/regression_binary_action.cpp : : : : qi_regression_binary_action ]
155 [ run qi/regression_stream_eof.cpp : : : : qi_regression_stream_eof ]
156 ;
157
158 ###########################################################################
159 test-suite spirit_v2/karma :
160
161 [ compile-fail karma/grammar_fail.cpp : : karma_grammar_fail ]
162 [ compile-fail karma/rule_fail.cpp : : karma_rule_fail ]
163 [ run karma/actions.cpp : : : : karma_actions ]
164 [ run karma/alternative1.cpp : : : : karma_alternative1 ]
165 [ run karma/alternative2.cpp : : : : karma_alternative2 ]
166 [ run karma/and_predicate.cpp : : : : karma_and_predicate ]
167 [ run karma/attribute.cpp : : : : karma_attribute ]
168 [ run karma/auto1.cpp : : : : karma_auto1 ]
169 [ run karma/auto2.cpp : : : : karma_auto2 ]
170 [ run karma/auto3.cpp : : : : karma_auto3 ]
171 [ run karma/binary1.cpp : : : : karma_binary1 ]
172 [ run karma/binary2.cpp : : : : karma_binary2 ]
173 [ run karma/binary3.cpp : : : : karma_binary3 ]
174 [ run karma/bool.cpp : : : : karma_bool ]
175 [ run karma/buffer.cpp : : : : karma_buffer ]
176 [ run karma/case_handling1.cpp : : : : karma_case_handling1 ]
177 [ run karma/case_handling2.cpp : : : : karma_case_handling2 ]
178 [ run karma/case_handling3.cpp : : : : karma_case_handling3 ]
179 [ run karma/center_alignment.cpp : : : : karma_center_alignment ]
180 [ run karma/char1.cpp : : : : karma_char1 ]
181 [ run karma/char2.cpp : : : : karma_char2 ]
182 [ run karma/char3.cpp : : : : karma_char3 ]
183 [ run karma/char_class.cpp : : : : karma_char_class ]
184 [ run karma/columns.cpp : : : : karma_columns ]
185 [ run karma/debug.cpp : : : : karma_debug ]
186 [ run karma/delimiter.cpp : : : : karma_delimiter ]
187 [ run karma/duplicate.cpp : : : : karma_duplicate ]
188 [ run karma/encoding.cpp : : : : karma_encoding ]
189 [ run karma/eol.cpp : : : : karma_eol ]
190 [ run karma/eps.cpp : : : : karma_eps ]
191 [ run karma/format_manip.cpp : : : : karma_format_manip ]
192 [ run karma/format_manip_attr.cpp : : : : karma_format_manip_attr ]
193 [ run karma/format_pointer_container.cpp : : : : karma_format_pointer_container ]
194 [ run karma/generate_attr.cpp : : : : karma_generate_attr ]
195 [ run karma/grammar.cpp : : : : karma_grammar ]
196 [ run karma/int1.cpp : : : : karma_int1 ]
197 [ run karma/int2.cpp : : : : karma_int2 ]
198 [ run karma/int3.cpp : : : : karma_int3 ]
199 [ run karma/kleene.cpp : : : : karma_kleene ]
200 [ run karma/lazy.cpp : : : : karma_lazy ]
201 [ run karma/left_alignment.cpp : : : : karma_left_alignment ]
202 [ run karma/list.cpp : : : : karma_list ]
203 [ run karma/lit.cpp : : : : karma_lit ]
204 [ run karma/maxwidth.cpp : : : : karma_maxwidth ]
205 [ run karma/not_predicate.cpp : : : : karma_not_predicate ]
206 [ run karma/omit.cpp : : : : karma_omit ]
207 [ run karma/optional.cpp : : : : karma_optional ]
208 [ run karma/pattern1.cpp : : : : karma_pattern1 ]
209 [ run karma/pattern2.cpp : : : : karma_pattern2 ]
210 [ run karma/pattern3.cpp : : : : karma_pattern3 ]
211 [ run karma/pattern4.cpp : : : : karma_pattern4 ]
212 [ run karma/plus.cpp : : : : karma_plus ]
213 [ run karma/real1.cpp : : : : karma_real1 ]
214 [ run karma/real2.cpp : : : : karma_real2 ]
215 [ run karma/real3.cpp : : : : karma_real3 ]
216 [ run karma/repeat1.cpp : : : : karma_repeat1 ]
217 [ run karma/repeat2.cpp : : : : karma_repeat2 ]
218 [ run karma/right_alignment.cpp : : : : karma_right_alignment ]
219 [ run karma/sequence1.cpp : : : : karma_sequence1 ]
220 [ run karma/sequence2.cpp : : : : karma_sequence2 ]
221 [ run karma/stream.cpp : : : : karma_stream ]
222 [ run karma/symbols1.cpp : : : : karma_symbols1 ]
223 [ run karma/symbols2.cpp : : : : karma_symbols2 ]
224 [ run karma/symbols3.cpp : : : : karma_symbols3 ]
225 [ run karma/tricky_alignment.cpp : : : : karma_tricky_alignment ]
226 [ run karma/uint_radix.cpp : : : : karma_uint_radix ]
227 [ run karma/utree1.cpp : : : : karma_utree1 ]
228 [ run karma/utree2.cpp : : : : karma_utree2 ]
229 [ run karma/utree3.cpp : : : : karma_utree3 ]
230 [ run karma/wstream.cpp : : : : karma_wstream ]
231
232 ;
233
234 ###########################################################################
235 test-suite spirit_v2/karma_regressions :
236
237 [ compile karma/regression_const_real_policies.cpp : : regression_const_real_policies ]
238
239 [ run karma/regression_adapt_adt.cpp : : : : karma_regression_adapt_adt ]
240 [ run karma/regression_optional_double.cpp : : : : karma_regression_optional_double ]
241 [ run karma/regression_semantic_action_attribute.cpp : : : : karma_regression_semantic_action_attribute ]
242 [ run karma/regression_real_scientific.cpp : : : : karma_regression_real_scientific ]
243 [ run karma/regression_center_alignment.cpp : : : : karma_regression_center_alignment ]
244 [ run karma/regression_container_variant_sequence.cpp : : : : karma_regression_container_variant_sequence ]
245 [ run karma/regression_real_0.cpp : : : : karma_regression_real_0 ]
246 [ run karma/regression_unicode_char.cpp : : : : karma_regression_unicode_char ]
247 [ run karma/regression_iterator.cpp : : : : karma_regression_iterator ]
248
249 ;
250
251 ###########################################################################
252 test-suite spirit_v2/lex :
253
254 [ run lex/auto_switch_lexerstate.cpp : : : : lex_auto_switch_lexerstate ]
255 [ run lex/dedent_handling_phoenix.cpp : : : : lex_dedent_handling_phoenix ]
256 [ run lex/id_type_enum.cpp : : : : lex_id_type_enum ]
257 [ run lex/lexertl1.cpp : : : : lex_lexertl1 ]
258 [ run lex/lexertl2.cpp : : : : lex_lexertl2 ]
259 [ run lex/lexertl3.cpp : : : : lex_lexertl3 ]
260 [ run lex/lexertl4.cpp : : : : lex_lexertl4 ]
261 [ run lex/lexertl5.cpp : : : : lex_lexertl5 ]
262 [ run lex/lexer_state_switcher.cpp : : : : lex_lexer_state_switcher ]
263 [ run lex/semantic_actions.cpp : : : : lex_semantic_actions ]
264 [ run lex/set_token_value.cpp : : : : lex_set_token_value ]
265 [ run lex/set_token_value_phoenix.cpp : : : : lex_set_token_value_phoenix ]
266 [ run lex/state_switcher.cpp : : : : lex_state_switcher ]
267 [ run lex/string_token_id.cpp : : : : lex_string_token_id ]
268 [ run lex/token_iterpair.cpp : : : : lex_token_iterpair ]
269 [ run lex/token_moretypes.cpp : : : : lex_token_moretypes ]
270 [ run lex/token_omit.cpp : : : : lex_token_omit ]
271 [ run lex/token_onetype.cpp : : : : lex_token_onetype ]
272 [ run lex/plain_token.cpp : : : : plain_token ]
273
274 ;
275
276 ###########################################################################
277 test-suite spirit_v2/lex_regressions :
278
279 [ run lex/regression_basic_lexer.cpp : : : : lex_regression_basic_lexer ]
280 [ run lex/regression_matlib_dynamic.cpp : : : : lex_regression_matlib_dynamic ]
281 [ run lex/regression_matlib_generate.cpp : $(LEX_DIR)/matlib_static.h : : : lex_regression_matlib_generate ]
282 # [ run lex/regression_matlib_static.cpp : : :
283 # <phoenix_v3>on:<dependency>.//lex_regression_matlib_generate-p3
284 # <phoenix_v3>off:<dependency>.//lex_regression_matlib_generate-p2
285 # : lex_regression_matlib_static ]
286 [ run lex/regression_matlib_generate_switch.cpp : $(LEX_DIR)/matlib_static_switch.h : : : lex_regression_matlib_generate_switch ]
287 # [ run lex/regression_matlib_switch.cpp : : :
288 # <phoenix_v3>on:<dependency>.//lex_regression_matlib_generate_switch-p3
289 # <phoenix_v3>off:<dependency>.//lex_regression_matlib_generate_switch-p2
290 # : lex_regression_matlib_switch ]
291 [ run lex/regression_word_count.cpp : : : : lex_regression_word_count ]
292 [ run lex/regression_syntax_error.cpp : : : : lex_regression_syntax_error ]
293 [ run lex/regression_wide.cpp : : : : lex_regression_wide ]
294 [ run lex/regression_file_iterator1.cpp : : : : lex_regression_file_iterator1 ]
295 [ run lex/regression_file_iterator2.cpp : : : : lex_regression_file_iterator2 ]
296 [ run lex/regression_file_iterator3.cpp : : : : lex_regression_file_iterator3 ]
297 [ run lex/regression_file_iterator4.cpp : : : : lex_regression_file_iterator4 ]
298 [ run lex/regression_static_wide_6253.cpp : : : : regression_static_wide_6253 ]
299 [ run lex/regression_less_8563.cpp : : : : regression_less_8563 ]
300
301 ;
302
303 ###########################################################################
304 test-suite spirit_v2/support :
305
306 [ run support/utree.cpp : : : : support_utree ]
307 [ run support/utree_debug.cpp : : : : support_utree_debug ]
308 [ run support/istream_iterator_basic.cpp : : : : istream_iterator_basic ]
309
310 ;
311
312 ###########################################################################
313 test-suite spirit_v2/support_regressions :
314
315 [ compile support/regression_multi_pass_position_iterator.cpp : : support_regression_multi_pass_position_iterator ]
316 [ compile support/regression_multi_pass_functor.cpp : : support_regression_multi_pass_functor ]
317 [ compile support/regression_multi_pass_parse.cpp : : support_regression_multi_pass_parse ]
318 [ run support/regression_multi_pass_error_handler.cpp : : : : regression_multi_pass_error_handler ]
319
320 ;
321 }
322
323 # use this alias to build Spirit against Phoenix V3
324 alias test_using_phoenix_v3 : $(v3_tests) ;
325
326 explicit test_using_phoenix_v3 ;