File: Jamfile

package info (click to toggle)
boost1.90 1.90.0-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 593,156 kB
  • sloc: cpp: 4,190,642; xml: 196,648; python: 34,618; ansic: 23,145; asm: 5,468; sh: 3,776; makefile: 1,161; perl: 1,020; sql: 728; ruby: 676; yacc: 478; java: 77; lisp: 24; csh: 6
file content (431 lines) | stat: -rw-r--r-- 12,746 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
#  Boost.SmartPtr Library test Jamfile
#
#  Copyright (c) 2003-2018 Peter Dimov
#  Copyright (c) 2003 Dave Abrahams
#
#  Distributed under the Boost Software License, Version 1.0. (See
#  accompanying file LICENSE_1_0.txt or copy at
#  http://www.boost.org/LICENSE_1_0.txt)

require-b2 5.0.1 ;
import-search /boost/config/checks ;
import config : requires ;
import testing ;

project
    : requirements

      <library>/boost/smart_ptr//boost_smart_ptr
      <library>/boost/core//boost_core
      <library>/boost/align//boost_align
      <library>/boost/atomic//boost_atomic
      <library>/boost/container_hash//boost_container_hash
      <library>/boost/bind//boost_bind
      <library>/boost/move//boost_move

      <toolset>gcc:<cxxflags>-Wno-non-virtual-dtor
      <toolset>gcc:<cxxflags>-Wno-deprecated-declarations
      <toolset>gcc:<cxxflags>-Wno-delete-non-virtual-dtor
    ;

# quick test (for CI)
run quick.cpp ;

# full test suite
run smart_ptr_test.cpp ;
run shared_ptr_basic_test.cpp ;
run shared_ptr_test.cpp ;
run weak_ptr_test.cpp ;
run weak_ptr_move_test.cpp ;
run shared_from_this_test.cpp ;
run get_deleter_test.cpp ;
run intrusive_ptr_test.cpp ;
run intrusive_ptr_move_test.cpp ;
run intrusive_ref_counter_test.cpp ;
run atomic_count_test.cpp ;
run lw_mutex_test.cpp ;
run lw_mutex_test.cpp : : : <define>BOOST_USE_WINDOWS_H : lw_mutex_test.win_h ;
compile-fail shared_ptr_assign_fail.cpp ;
compile-fail shared_ptr_delete_fail.cpp ;
compile-fail shared_ptr_compare_fail.cpp ;
run shared_ptr_alloc2_test.cpp ;
run pointer_cast_test.cpp ;
run cpp11_pointer_cast_test.cpp ;
compile pointer_to_other_test.cpp ;
run auto_ptr_rv_test.cpp ;
run shared_ptr_alias_test.cpp ;
run shared_ptr_rv_test.cpp ;
run shared_ptr_rv_pointer_cast_test.cpp ;
run shared_ptr_move_test.cpp ;
run shared_ptr_alias_move_test.cpp ;
run shared_ptr_reinterpret_pointer_cast_test.cpp ;
compile-fail shared_ptr_pv_fail.cpp ;
run sp_unary_addr_test.cpp ;
compile-fail scoped_ptr_eq_fail.cpp ;
compile-fail scoped_array_eq_fail.cpp ;
run esft_regtest.cpp ;
run yield_k_test.cpp ;
run yield_k_test.cpp : : : <threading>multi : yield_k_test.mt ;
run spinlock_test.cpp ;
run spinlock_try_test.cpp ;
run spinlock_try_test.cpp : : : <threading>multi : spinlock_try_test.mt ;
run spinlock_pool_test.cpp ;

run make_shared_test.cpp ;
run make_shared_move_emulation_test.cpp
  : : :
  <toolset>clang-3.5,<cxxstd>03:<build>no
  <toolset>clang-3.6,<cxxstd>03:<build>no
  <toolset>clang-3.7,<cxxstd>03:<build>no
  ;

run make_shared_perfect_forwarding_test.cpp ;
run shared_ptr_convertible_test.cpp ;
run wp_convertible_test.cpp ;
run ip_convertible_test.cpp ;
run allocate_shared_test.cpp ;
run sp_atomic_test.cpp ;
run esft_void_test.cpp ;
run esft_second_ptr_test.cpp ;
run make_shared_esft_test.cpp ;
run allocate_shared_esft_test.cpp ;
run sp_recursive_assign_test.cpp ;
run sp_recursive_assign2_test.cpp ;
run sp_recursive_assign_rv_test.cpp ;
run sp_recursive_assign2_rv_test.cpp ;

compile-fail auto_ptr_lv_fail.cpp ;

run atomic_count_test2.cpp ;
run sp_typeinfo_test.cpp ;
compile make_shared_fp_test.cpp ;
run sp_hash_test.cpp ;
run get_deleter_array_test.cpp ;
run ip_hash_test.cpp ;
run owner_less_test.cpp ;
run sp_unique_ptr_test.cpp ;
run sp_array_test.cpp ;
compile sp_array_cv_test.cpp ;
run sp_convertible_test.cpp ;
run sp_array_n_test.cpp ;
run sp_array_cast_test.cpp ;
run sp_zero_compare_test.cpp ;
run sp_nullptr_test.cpp ;
run sa_nullptr_test.cpp ;
run shared_ptr_alloc3_test.cpp ;
run shared_ptr_alloc11_test.cpp ;
run shared_ptr_alloc_construct11_test.cpp ;
run allocate_shared_alloc11_test.cpp ;
run allocate_shared_construct11_test.cpp ;

compile-fail array_fail_spa_sp_c.cpp ;
compile-fail array_fail_sp_spa_c.cpp ;
compile-fail array_fail_spa_spa_c.cpp ;
compile-fail array_fail_spa_wp_c.cpp ;
compile-fail array_fail_sp_wpa_c.cpp ;
compile-fail array_fail_spa_wpa_c.cpp ;
compile-fail array_fail_wpa_wp_c.cpp ;
compile-fail array_fail_wp_wpa_c.cpp ;
compile-fail array_fail_wpa_wpa_c.cpp ;
compile-fail array_fail_ap_spa_c.cpp ;
compile-fail array_fail_upa_sp_c.cpp ;
compile-fail array_fail_up_spa_c.cpp ;

compile-fail array_fail_spa_sp_mc.cpp ;
compile-fail array_fail_sp_spa_mc.cpp ;
compile-fail array_fail_spa_spa_mc.cpp ;
compile-fail array_fail_spa_wp_mc.cpp ;
compile-fail array_fail_sp_wpa_mc.cpp ;
compile-fail array_fail_spa_wpa_mc.cpp ;
compile-fail array_fail_wpa_wp_mc.cpp ;
compile-fail array_fail_wp_wpa_mc.cpp ;
compile-fail array_fail_wpa_wpa_mc.cpp ;
compile-fail array_fail_ap_spa_mc.cpp ;
compile-fail array_fail_upa_sp_mc.cpp ;
compile-fail array_fail_up_spa_mc.cpp ;

compile-fail array_fail_spa_sp_a.cpp ;
compile-fail array_fail_sp_spa_a.cpp ;
compile-fail array_fail_spa_spa_a.cpp ;
compile-fail array_fail_spa_wp_a.cpp ;
compile-fail array_fail_sp_wpa_a.cpp ;
compile-fail array_fail_spa_wpa_a.cpp ;
compile-fail array_fail_wpa_wp_a.cpp ;
compile-fail array_fail_wp_wpa_a.cpp ;
compile-fail array_fail_wpa_wpa_a.cpp ;
compile-fail array_fail_ap_spa_a.cpp ;
compile-fail array_fail_upa_sp_a.cpp ;
compile-fail array_fail_up_spa_a.cpp ;

compile-fail array_fail_spa_sp_ma.cpp ;
compile-fail array_fail_sp_spa_ma.cpp ;
compile-fail array_fail_spa_spa_ma.cpp ;
compile-fail array_fail_spa_wp_ma.cpp ;
compile-fail array_fail_sp_wpa_ma.cpp ;
compile-fail array_fail_spa_wpa_ma.cpp ;
compile-fail array_fail_wpa_wp_ma.cpp ;
compile-fail array_fail_wp_wpa_ma.cpp ;
compile-fail array_fail_wpa_wpa_ma.cpp ;
compile-fail array_fail_ap_spa_ma.cpp ;
compile-fail array_fail_upa_sp_ma.cpp ;
compile-fail array_fail_up_spa_ma.cpp ;

compile-fail array_fail_dereference.cpp ;
compile-fail array_fail_member_access.cpp ;
compile-fail array_fail_array_access.cpp ;

run make_shared_array_test.cpp ;
run make_shared_arrays_test.cpp ;
run make_shared_array_throws_test.cpp ;
run make_shared_array_esft_test.cpp ;
run make_shared_array_noinit_test.cpp ;
run make_shared_array_value_test.cpp ;
run allocate_shared_array_test.cpp ;
run allocate_shared_arrays_test.cpp ;
run allocate_shared_array_throws_test.cpp ;
run allocate_shared_array_esft_test.cpp ;
run allocate_shared_array_noinit_test.cpp ;
run allocate_shared_array_value_test.cpp ;
run allocate_shared_array_construct_test.cpp ;

run make_unique_test.cpp ;
run make_unique_args_test.cpp ;
run make_unique_value_test.cpp ;
run make_unique_noinit_test.cpp ;
run make_unique_throws_test.cpp ;
run make_unique_array_test.cpp ;
run make_unique_array_noinit_test.cpp ;
run make_unique_array_throws_test.cpp ;

run shared_from_raw_test.cpp ;
run shared_from_raw_test2.cpp ;
run shared_from_raw_test3.cpp ;
run shared_from_raw_test4.cpp ;
run shared_from_raw_test5.cpp ;
run shared_from_raw_test6.cpp ;

run weak_from_raw_test.cpp ;
run weak_from_raw_test2.cpp ;
run weak_from_raw_test3.cpp ;
run weak_from_raw_test4.cpp ;
run weak_from_raw_test5.cpp ;

compile sp_explicit_inst_test.cpp ;

run weak_from_this_test.cpp ;
run weak_from_this_test2.cpp ;

run sp_bml_unique_ptr_test.cpp ;

run sp_hash_test2.cpp ;
run sp_hash_test3.cpp ;

run pointer_cast_test2.cpp ;

compile-fail pointer_cast_st_fail.cpp ;
compile-fail pointer_cast_st_fail2.cpp ;
compile-fail pointer_cast_st_fail3.cpp ;

compile-fail pointer_cast_co_fail.cpp ;
compile-fail pointer_cast_co_fail2.cpp ;
compile-fail pointer_cast_co_fail3.cpp ;

compile-fail pointer_cast_dy_fail.cpp ;
compile-fail pointer_cast_dy_fail2.cpp ;
compile-fail pointer_cast_dy_fail3.cpp ;

run sp_nothrow_test.cpp ;

compile make_shared_msvc_test.cpp ;

run atomic_sp_test.cpp ;

run sp_constexpr_test.cpp ;
run sp_constexpr_test2.cpp ;
compile ip_constexpr_test.cpp ;

run atomic_sp_constexpr_test.cpp ;

run shared_ptr_fn_test.cpp ;

run get_deleter_test2.cpp ;
run get_deleter_test3.cpp ;
run get_deleter_array_test2.cpp ;
run get_deleter_array_test3.cpp ;

run sp_convertible_test2.cpp ;

run local_sp_test.cpp ;
run lsp_array_test.cpp ;
run lsp_array_n_test.cpp ;
run lsp_array_cv_test.cpp ;
run lsp_array_cast_test.cpp ;

run get_local_deleter_test.cpp ;
run get_local_deleter_test2.cpp ;
run get_local_deleter_test3.cpp ;
run get_local_deleter_array_test.cpp ;
run get_local_deleter_array_test2.cpp ;

run make_local_shared_test.cpp ;
run make_local_shared_esft_test.cpp ;
run allocate_local_shared_test.cpp ;
run allocate_local_shared_esft_test.cpp ;

run make_local_shared_array_test.cpp ;
run make_local_shared_arrays_test.cpp ;
run make_local_shared_array_throws_test.cpp ;
run make_local_shared_array_esft_test.cpp ;
run make_local_shared_array_noinit_test.cpp ;
run make_local_shared_array_value_test.cpp ;
run allocate_local_shared_array_test.cpp ;
run allocate_local_shared_arrays_test.cpp ;
run allocate_local_shared_array_throws_test.cpp ;
run allocate_local_shared_array_esft_test.cpp ;
run allocate_local_shared_array_noinit_test.cpp ;
run allocate_local_shared_array_value_test.cpp ;
run allocate_local_shared_array_construct_test.cpp ;

run local_sp_fn_test.cpp ;
run lsp_convertible_test.cpp ;
run lsp_convertible_test2.cpp ;

run make_shared_array_tmp_test.cpp ;

run lw_thread_test.cpp
  : : : <threading>multi ;

compile sp_windows_h_test.cpp ;
compile spinlock_windows_h_test.cpp ;
compile yield_k_windows_h_test.cpp ;

lib dll_test : dll_test_lib.cpp : <link>shared:<define>DLL_TEST_DYN_LINK=1 ;
explicit dll_test ;

run dll_test_main.cpp dll_test : : : <link>static : dll_test_static ;
run dll_test_main.cpp dll_test : : : <link>shared <undefined-sanitizer>norecover:<build>no : dll_test_shared ;

run make_shared_const_test.cpp ;
run make_local_shared_const_test.cpp ;

lib abi_test_mt : abi_test_lib.cpp : <link>static ;
explicit abi_test_mt ;

obj abi_test_lib_nt : abi_test_lib.cpp : <define>BOOST_DISABLE_THREADS ;
explicit abi_test_lib_nt ;

lib abi_test_nt : abi_test_lib_nt : <link>static ;
explicit abi_test_nt ;

run abi_test_main.cpp abi_test_mt : : : <define>BOOST_DISABLE_THREADS : abi_test_nt_mt ;
run abi_test_main.cpp abi_test_nt : : : : abi_test_mt_nt ;

# run abi_test_main.cpp abi_test_mt/<cxxstd>0x : : : <cxxstd>98 : abi_test_03_11 ;
# run abi_test_main.cpp abi_test_mt/<cxxstd>98 : : : <cxxstd>0x : abi_test_11_03 ;

run weak_ptr_alias_test.cpp ;
run weak_ptr_alias_move_test.cpp ;

run sp_typeinfo_test.cpp : : : <rtti>off : sp_typeinfo_test_no_rtti ;

run get_deleter_test.cpp  : : : <rtti>off : get_deleter_test_no_rtti ;
run get_deleter_test2.cpp : : : <rtti>off : get_deleter_test2_no_rtti ;
run get_deleter_test3.cpp : : : <rtti>off : get_deleter_test3_no_rtti ;

run shared_from_test.cpp ;
run weak_from_test.cpp ;
run weak_from_test2.cpp ;

run allocate_unique_aggregate_test.cpp ;
run allocate_unique_args_test.cpp ;
run allocate_unique_array_construct_test.cpp ;
run allocate_unique_array_noinit_test.cpp ;
run allocate_unique_arrays_test.cpp ;
run allocate_unique_array_test.cpp ;
run allocate_unique_array_throws_test.cpp ;
run allocate_unique_array_value_test.cpp ;
run allocate_unique_construct_test.cpp ;
run allocate_unique_noinit_test.cpp ;
run allocate_unique_test.cpp ;
run allocate_unique_throws_test.cpp ;
run allocate_unique_value_test.cpp ;
run get_allocator_pointer_test.cpp ;

run sp_guides_test.cpp ;
run sp_guides_test2.cpp ;
run wp_guides_test.cpp ;

compile-fail shared_from_fail.cpp ;
compile-fail weak_from_fail.cpp ;

compile sp_override_test.cpp ;

local gcc-flags = -Wundef ;

compile sp_pedantic_test.cpp
  : <warnings>pedantic
    <toolset>msvc:<warnings-as-errors>on
    <toolset>gcc:<warnings-as-errors>on
    <toolset>gcc:<cxxflags>$(gcc-flags)
    <toolset>clang:<warnings-as-errors>on
    <toolset>clang:<cxxflags>$(gcc-flags)
    <toolset>clang-15:<cxxflags>-Wno-deprecated-builtins
    ;

run sp_owner_before_test.cpp ;
run sp_owner_equals_test.cpp ;
run lsp_owner_before_test.cpp ;
run lsp_owner_equals_test.cpp ;

run owner_equal_to_test.cpp ;
run owner_equal_to_test2.cpp ;

run owner_less_test2.cpp ;

run ip_hash_test2.cpp ;
run sp_hash_test4.cpp ;

run lsp_hash_test.cpp ;
run lsp_hash_test2.cpp ;

run atomic_count_mt_test.cpp
  : : : <threading>multi ;

run spinlock_mt_test.cpp
  : : : <threading>multi ;

run spinlock_pool_mt_test.cpp
  : : : <threading>multi ;

run shared_ptr_mt_test.cpp
  : : : <threading>multi ;

run weak_ptr_mt_test.cpp
  : : : <threading>multi ;

compile sp_report_implementation.cpp ;

run sp_owner_hash_value_test.cpp ;

run wp_hash_test.cpp ;
run wp_hash_test2.cpp ;

run wp_unordered_test.cpp ;

run owner_hash_test.cpp ;
run sp_unordered_test.cpp ;

run sp_unique_ptr_test2.cpp ;
run sp_move_only_deleter.cpp ;

run sp_is_bounded_array_test.cpp ;
run sp_is_unbounded_array_test.cpp ;
run sp_type_identity_test.cpp ;
run sp_type_with_alignment_test.cpp ;

run sp_ostream_test.cpp ;
run ip_ostream_test.cpp ;
run lsp_ostream_test.cpp ;

run shared_ptr_alloc_test.cpp ;
run quick_allocator_test.cpp ;