]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | # Boost System Library test Jamfile |
2 | ||
3 | # Copyright Beman Dawes 2003, 2006 | |
1e59de90 | 4 | # Copyright 2017-2021 Peter Dimov |
7c673cae FG |
5 | |
6 | # Distributed under the Boost Software License, Version 1.0. | |
7 | # See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt | |
8 | ||
9 | # See library home page at http://www.boost.org/libs/system | |
10 | ||
b32b8144 | 11 | import testing ; |
92f5a8d4 | 12 | |
1e59de90 TL |
13 | project |
14 | : default-build | |
15 | ||
16 | <warnings>extra | |
17 | ||
18 | : requirements | |
19 | ||
20 | <toolset>msvc:<warnings-as-errors>on | |
21 | <toolset>gcc:<warnings-as-errors>on | |
22 | <toolset>clang:<warnings-as-errors>on | |
23 | ||
24 | <toolset>gcc-4.4:<cxxflags>-Wno-sign-compare | |
25 | ; | |
26 | ||
92f5a8d4 | 27 | rule system-run ( sources + ) |
11fdf7f2 | 28 | { |
92f5a8d4 TL |
29 | local result ; |
30 | ||
31 | result += [ run $(sources) ] ; | |
32 | result += [ run $(sources) : : : <library>/boost/system//boost_system <link>static : $(sources[1]:B)_static ] ; | |
33 | result += [ run $(sources) : : : <library>/boost/system//boost_system <link>shared : $(sources[1]:B)_shared ] ; | |
34 | result += [ run $(sources) : : : <define>BOOST_NO_ANSI_APIS : $(sources[1]:B)_no_ansi ] ; | |
35 | result += [ run $(sources) : : : <define>BOOST_SYSTEM_USE_UTF8 : $(sources[1]:B)_utf8 ] ; | |
36 | ||
37 | return $(result) ; | |
11fdf7f2 | 38 | } |
11fdf7f2 | 39 | |
92f5a8d4 TL |
40 | system-run error_code_test.cpp ; |
41 | system-run error_code_user_test.cpp ; | |
42 | system-run system_error_test.cpp ; | |
11fdf7f2 | 43 | |
92f5a8d4 | 44 | lib throw_test : throw_test.cpp : <link>shared:<define>THROW_DYN_LINK=1 ; |
11fdf7f2 | 45 | |
92f5a8d4 TL |
46 | run dynamic_link_test.cpp throw_test : : : <link>shared : throw_test_shared ; |
47 | ||
48 | system-run initialization_test.cpp ; | |
49 | system-run header_only_test.cpp ; | |
50 | ||
51 | run config_test.cpp : : : <test-info>always_show_run_output ; | |
11fdf7f2 | 52 | |
92f5a8d4 TL |
53 | system-run std_interop_test.cpp ; |
54 | system-run std_mismatch_test.cpp ; | |
55 | ||
56 | lib single_instance_lib1 : single_instance_1.cpp : <link>shared:<define>SINGLE_INSTANCE_DYN_LINK ; | |
57 | lib single_instance_lib2 : single_instance_2.cpp : <link>shared:<define>SINGLE_INSTANCE_DYN_LINK ; | |
58 | ||
59 | system-run single_instance_test.cpp single_instance_1.cpp single_instance_2.cpp ; | |
60 | run single_instance_test.cpp single_instance_lib1 single_instance_lib2 : : : <link>static : single_instance_lib_static ; | |
61 | run single_instance_test.cpp single_instance_lib1 single_instance_lib2 : : : <link>shared : single_instance_lib_shared ; | |
62 | ||
63 | system-run before_main_test.cpp ; | |
64 | run-fail throws_assign_fail.cpp ; | |
65 | system-run constexpr_test.cpp ; | |
66 | system-run win32_hresult_test.cpp ; | |
67 | ||
68 | system-run error_category_test.cpp ; | |
69 | system-run generic_category_test.cpp ; | |
70 | system-run system_category_test.cpp ; | |
71 | system-run after_main_test.cpp ; | |
72 | system-run failed_test.cpp ; | |
73 | system-run failed_constexpr_test.cpp ; | |
b32b8144 FG |
74 | |
75 | # Quick (CI) test | |
76 | run quick.cpp ; | |
92f5a8d4 | 77 | |
1e59de90 TL |
78 | run warnings_test.cpp |
79 | : : : <warnings>pedantic | |
20effc67 TL |
80 | <toolset>msvc:<warnings-as-errors>on |
81 | <toolset>gcc:<warnings-as-errors>on | |
82 | <toolset>clang:<warnings-as-errors>on ; | |
92f5a8d4 TL |
83 | |
84 | lib std_single_instance_lib1 : std_single_instance_1.cpp : <link>shared:<define>STD_SINGLE_INSTANCE_DYN_LINK ; | |
85 | lib std_single_instance_lib2 : std_single_instance_2.cpp : <link>shared:<define>STD_SINGLE_INSTANCE_DYN_LINK ; | |
86 | ||
87 | system-run std_single_instance_test.cpp std_single_instance_1.cpp std_single_instance_2.cpp ; | |
88 | run std_single_instance_test.cpp std_single_instance_lib1 std_single_instance_lib2 : : : <link>static : std_single_instance_lib_static ; | |
89 | run std_single_instance_test.cpp std_single_instance_lib1 std_single_instance_lib2 : : : <link>shared <define>STD_SINGLE_INSTANCE_SHARED : std_single_instance_lib_shared ; | |
20effc67 TL |
90 | |
91 | run is_error_code_enum_test.cpp ; | |
92 | run is_error_condition_enum_test.cpp ; | |
93 | run errc_test.cpp ; | |
94 | run errc_test2.cpp ; | |
95 | run error_category_test2.cpp ; | |
96 | run error_condition_test.cpp ; | |
97 | run error_condition_test2.cpp ; | |
98 | run generic_category_test2.cpp ; | |
99 | run generic_category_test3.cpp ; | |
100 | run system_category_test2.cpp ; | |
101 | run system_category_test3.cpp ; | |
102 | ||
103 | run windows_error_test.cpp ; | |
104 | run cygwin_error_test.cpp ; | |
105 | run linux_error_test.cpp ; | |
1e59de90 TL |
106 | |
107 | link errc_test3.cpp ; | |
108 | ||
109 | run snprintf_test.cpp ; | |
110 | ||
111 | run std_interop_test2.cpp ; | |
112 | run std_interop_test3.cpp ; | |
113 | run std_interop_test4.cpp ; | |
114 | run std_interop_test5.cpp | |
115 | : : : | |
116 | # crash on xenial, but the real g++ 4.8 on both centos 7 and trusty works | |
117 | <toolset>gcc-4.8:<build>no | |
118 | <toolset>gcc-4.9:<build>no | |
119 | ; | |
120 | ||
121 | run std_interop_test6.cpp ; | |
122 | run std_interop_test7.cpp ; | |
123 | run std_interop_test8.cpp ; | |
124 | run std_interop_test9.cpp ; | |
125 | ||
126 | run ec_location_test.cpp ; | |
127 | ||
128 | run error_condition_test3.cpp ; | |
129 | run error_code_test2.cpp ; | |
130 | run system_error_test2.cpp ; | |
131 | run std_interop_test10.cpp ; | |
132 | ||
133 | run ec_location_test2.cpp ; | |
134 | run ec_what_test.cpp ; | |
135 | run system_error_test3.cpp ; | |
136 | ||
137 | run std_interop_test11.cpp ; | |
138 | ||
139 | run ec_wstream_test.cpp ; | |
140 | ||
141 | run std_interop_test12.cpp ; | |
142 | ||
143 | run errc_test4.cpp ; | |
144 | ||
145 | # result | |
146 | ||
147 | import ../../config/checks/config : requires ; | |
148 | ||
149 | CPP11 = [ requires cxx11_variadic_templates cxx11_template_aliases cxx11_decltype cxx11_constexpr cxx11_noexcept ] <toolset>gcc-4.7:<build>no ; | |
150 | ||
151 | run result_default_construct.cpp : : : $(CPP11) ; | |
152 | run result_value_construct.cpp : : : $(CPP11) ; | |
153 | run result_error_construct.cpp : : : $(CPP11) ; | |
154 | run result_copy_construct.cpp : : : $(CPP11) ; | |
155 | run result_move_construct.cpp : : : $(CPP11) ; | |
156 | run result_copy_assign.cpp : : : $(CPP11) ; | |
157 | run result_move_assign.cpp : : : $(CPP11) ; | |
158 | run result_value_access.cpp : : : $(CPP11) ; | |
159 | run result_error_access.cpp : : : $(CPP11) ; | |
160 | run result_swap.cpp : : : $(CPP11) <toolset>gcc-10:<cxxflags>"-Wno-maybe-uninitialized" ; | |
161 | run result_eq.cpp : : : $(CPP11) ; | |
162 | run result_range_for.cpp : : : $(CPP11) ; | |
163 | run result_value_construct2.cpp : : : $(CPP11) ; | |
164 | run result_error_construct2.cpp : : : $(CPP11) ; | |
165 | run result_errc_construct.cpp : : : $(CPP11) ; |