]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | #============================================================================== |
2 | # Copyright (c) 2002 Joel de Guzman | |
3 | # Copyright (c) 2003-2004 Martin Wille | |
92f5a8d4 | 4 | # Copyright (c) 2019 Nikita Kniazev |
7c673cae FG |
5 | # http://spirit.sourceforge.net/ |
6 | # | |
7 | # Use, modification and distribution is subject to the Boost Software | |
8 | # License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at | |
9 | # http://www.boost.org/LICENSE_1_0.txt) | |
10 | #============================================================================== | |
11 | # | |
12 | # Spirit regression test boost-jam file | |
13 | # Joel de Guzman [Sept 27, 2002] | |
14 | # | |
15 | ||
92f5a8d4 TL |
16 | project spirit-classic |
17 | : requirements | |
18 | <include>. | |
19 | ; | |
7c673cae | 20 | |
92f5a8d4 | 21 | ############################################################################### |
7c673cae | 22 | |
20effc67 | 23 | cpp-pch pch : pch.hpp : : : <include>. <force-include>pch.hpp ; |
92f5a8d4 | 24 | cpp-pch pch-dbg : pch.hpp : <define>BOOST_SPIRIT_DEBUG : |
20effc67 | 25 | : <include>. <force-include>pch.hpp ; |
92f5a8d4 TL |
26 | |
27 | explicit pch pch-dbg ; | |
28 | ||
29 | ############################################################################### | |
7c673cae FG |
30 | |
31 | rule spirit-run ( sources + : args * : input-files * : requirements * : name ? : default-build * ) | |
32 | { | |
33 | name ?= $(sources[1]:D=:S=) ; | |
34 | return | |
92f5a8d4 TL |
35 | [ run $(sources) : $(args) : $(input-files) : $(requirements) |
36 | <pch>on-spirit:<source>pch : $(name) | |
7c673cae FG |
37 | : $(default-build) ] |
38 | [ run $(sources) : $(args) : $(input-files) : $(requirements) | |
92f5a8d4 | 39 | <pch>on-spirit:<source>pch-dbg <define>BOOST_SPIRIT_DEBUG : $(name)_debug |
7c673cae FG |
40 | : $(default-build) ] |
41 | ; | |
42 | } | |
43 | ||
44 | ############################################################ | |
45 | ||
46 | local opt = <toolset>vc-7.0:<optimization>speed | |
47 | <toolset>vc-7.0:<inlining>on | |
48 | <toolset>cw:<optimization>speed ; | |
49 | ||
50 | local opt-metrowerks = <toolset>cw:<optimization>speed ; | |
51 | ||
52 | ||
53 | # VP, 2005/04/14: MT is not available with Como, but this is | |
54 | # not handled yet. | |
20effc67 TL |
55 | alias boost_thread : /boost/thread//boost_thread : <warnings>off <warnings-as-errors>off ; |
56 | local multi-threading = <library>boost_thread | |
92f5a8d4 | 57 | <threading>multi <define>BOOST_ALL_NO_LIB ; |
7c673cae FG |
58 | |
59 | test-suite "spirit.classic.core.kernel" | |
60 | : [ spirit-run match_tests.cpp ] | |
61 | [ spirit-run post_skips.cpp ] | |
62 | ; | |
63 | ||
64 | test-suite "spirit.classic.core.scanner" | |
65 | : [ spirit-run scanner_tests.cpp ] | |
92f5a8d4 | 66 | [ spirit-run scanner_value_type_tests.cpp : : : <pch>off ] |
7c673cae FG |
67 | ; |
68 | ||
69 | test-suite "spirit.classic.core.primitive" | |
70 | : [ spirit-run primitives_tests.cpp ] | |
71 | [ spirit-run char_strings_test.cpp ] | |
72 | [ compile-fail char_strings_test_fail.cpp ] | |
73 | [ spirit-run numerics_tests.cpp : : : $(opt) ] | |
74 | [ spirit-run custom_real_parser.cpp ] | |
75 | ; | |
76 | ||
77 | test-suite "spirit.classic.core.composite" | |
78 | : [ spirit-run epsilon_tests.cpp ] | |
79 | [ spirit-run negated_eps_p_test.cpp ] | |
80 | [ spirit-run operators_tests.cpp ] | |
81 | [ spirit-run directives_tests.cpp ] | |
82 | [ spirit-run shortest_alternative_tests.cpp ] | |
83 | ; | |
84 | ||
85 | test-suite "spirit.classic.core.non_terminal" | |
92f5a8d4 TL |
86 | : [ spirit-run rule_tests.cpp : : : <pch>off ] |
87 | [ spirit-run owi_st_tests.cpp : : : <undef>BOOST_SPIRIT_THREADSAFE ] | |
88 | [ spirit-run grammar_tests.cpp : : : <pch>off $(opt-metrowerks) ] | |
7c673cae FG |
89 | [ spirit-run grammar_multi_instance_tst.cpp : : : $(opt-metrowerks) ] |
90 | [ spirit-run subrule_tests.cpp ] | |
91 | [ run owi_mt_tests.cpp : : : $(multi-threading) ] | |
92 | [ run grammar_mt_tests.cpp : : : $(multi-threading) ] | |
93 | [ spirit-run parser_context_test.cpp ] | |
94 | ; | |
95 | ||
96 | # traverse_tests defines SPIRIT_DEBUG, don't run the tests twice | |
97 | test-suite "spirit.classic.meta" | |
98 | : [ spirit-run fundamental_tests.cpp ] | |
99 | [ spirit-run parser_traits_tests.cpp ] | |
92f5a8d4 | 100 | [ spirit-run traverse_tests.cpp : : : <pch>off <toolset>intel:<debug-symbols>off ] |
7c673cae FG |
101 | ; |
102 | ||
103 | test-suite "spirit.classic.attribute" | |
104 | : [ spirit-run closure_tests.cpp : : : $(opt-metrowerks) ] | |
105 | [ run bug_000008.cpp : : : $(multi-threading) ] | |
106 | [ spirit-run parametric_tests.cpp ] | |
107 | ; | |
108 | ||
109 | test-suite "spirit.classic.error_handling" | |
110 | : [ spirit-run exception_tests.cpp ] | |
111 | ; | |
112 | ||
113 | test-suite "spirit.classic.tree" | |
114 | : [ spirit-run ast_calc_tests.cpp ] | |
115 | [ spirit-run group_match_bug.cpp ] | |
116 | [ spirit-run repeat_ast_tests.cpp ] | |
117 | [ spirit-run tree_to_xml.cpp ] | |
118 | [ compile mix_and_match_trees.cpp ] | |
119 | ; | |
120 | ||
121 | # temporarily removed from the test suite. tree_tests are not finished, yet. | |
122 | # [ spirit-run tree_tests.cpp ] | |
123 | ||
124 | test-suite "spirit.classic.dynamic" | |
125 | : [ compile if_p_as_parser_tests.cpp ] | |
126 | [ compile while_p_as_parser_tests.cpp ] | |
127 | [ compile for_p_as_parser_tests.cpp ] | |
128 | [ spirit-run if_tests.cpp ] | |
129 | [ spirit-run if_p_int_as_condition_test.cpp ] | |
130 | [ spirit-run for_tests.cpp ] | |
131 | [ spirit-run while_tests.cpp ] | |
132 | [ spirit-run lazy_tests.cpp ] | |
92f5a8d4 TL |
133 | [ spirit-run switch_tests_eps_default.cpp : : : <pch>off ] |
134 | [ spirit-run switch_tests_general_def.cpp : : : <pch>off ] | |
135 | [ spirit-run switch_tests_wo_default.cpp : : : <pch>off ] | |
136 | [ spirit-run switch_tests_single.cpp : : : <pch>off ] | |
7c673cae | 137 | [ spirit-run switch_problem.cpp ] |
92f5a8d4 | 138 | [ spirit-run select_p_with_rule.cpp : : : <pch>off ] |
7c673cae FG |
139 | ; |
140 | ||
141 | test-suite "spirit.classic.utility.parsers" | |
142 | : [ spirit-run chset_tests.cpp ] | |
143 | [ spirit-run confix_tests.cpp ] | |
144 | [ spirit-run loops_tests.cpp ] | |
145 | [ spirit-run symbols_tests.cpp ] | |
92f5a8d4 | 146 | [ spirit-run symbols_add_null.cpp : : : <pch>off ] |
7c673cae FG |
147 | [ spirit-run symbols_find_null.cpp ] |
148 | [ spirit-run escape_char_parser_tests.cpp : : : $(opt) ] | |
149 | [ spirit-run distinct_tests.cpp ] | |
150 | [ spirit-run grammar_def_test.cpp ] | |
151 | ; | |
152 | ||
153 | test-suite "spirit.classic.utility.support" | |
154 | # This test doesn't actually use multiple threads | |
155 | : [ spirit-run scoped_lock_tests.cpp : : : $(multi-threading) ] | |
11fdf7f2 | 156 | [ compile threads_disabled_compile.cpp ] |
7c673cae FG |
157 | ; |
158 | ||
159 | test-suite "spirit.classic.iterator" | |
160 | : [ spirit-run fixed_size_queue_tests.cpp ] | |
161 | [ compile-fail fixed_size_queue_fail_tests.cpp ] | |
92f5a8d4 | 162 | [ run file_iterator_tests.cpp : : : <toolset>msvc:<define>_CRT_SECURE_NO_WARNINGS ] |
7c673cae | 163 | [ spirit-run multi_pass_tests.cpp : : : $(opt-metrowerks) ] |
92f5a8d4 | 164 | [ spirit-run sf_bug_720917.cpp : : : <pch>off $(opt-metrowerks) ] |
7c673cae FG |
165 | [ spirit-run position_iterator_tests.cpp : : : $(opt-metrowerks) ] |
166 | [ compile multi_pass_compile_tests.cpp ] | |
167 | ; | |
168 | ||
169 | test-suite "spirit.classic.small_bug_fixes" | |
170 | : [ spirit-run bug_fixes.cpp ] | |
171 | ; | |
172 | ||
173 | actor_test_sources = | |
174 | action_tests | |
175 | assign_test | |
176 | assign_key_test | |
177 | clear_test | |
178 | decrement_test | |
179 | erase_at_test | |
180 | increment_test | |
181 | insert_key_test | |
182 | insert_at_test | |
183 | push_back_test | |
184 | push_front_test | |
185 | swap_test | |
186 | ; | |
187 | ||
188 | test-suite "spirit.classic.utility.actors" | |
92f5a8d4 | 189 | : [ spirit-run actor/$(actor_test_sources).cpp ] |
7c673cae FG |
190 | ; |
191 | ||
192 | test-suite "spirit.classic.typeof-support" | |
193 | : [ compile typeof_support/typeof_actor.cpp ] | |
194 | [ compile typeof_support/typeof_attribute.cpp ] | |
195 | [ compile typeof_support/typeof_core.cpp ] | |
196 | [ compile typeof_support/typeof_debug.cpp ] | |
197 | [ compile typeof_support/typeof_dynamic.cpp ] | |
198 | [ compile typeof_support/typeof_error_handling.cpp ] | |
199 | [ compile typeof_support/typeof_iterator.cpp ] | |
200 | [ compile typeof_support/typeof_symbols.cpp ] | |
201 | [ compile typeof_support/typeof_tree.cpp ] | |
202 | [ compile typeof_support/typeof_utility.cpp ] | |
203 | ; | |
204 | ||
205 |