Jamfile 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851
  1. # Boost regression-testing Jamfile
  2. # (C) Copyright David Abrahams 2002. Permission to copy, use, modify, sell and
  3. # distribute this software is granted provided this copyright notice appears in
  4. # all copies. This software is provided "as is" without express or implied
  5. # warranty, and with no claim as to its suitability for any purpose.
  6. subproject status ;
  7. # bring in the rules for testing
  8. SEARCH on testing.jam = $(BOOST_BUILD_PATH) ;
  9. include testing.jam ;
  10. # Note that the Compiler Status Report HTML generator scans
  11. # these rule invocations to find test type (compile, run, etc.)
  12. # That program is quite stupid and needs help, including test names
  13. # (if supplied) which are unambiguous, not the same as a .cpp file
  14. # name, and preceded and followed by a space. The .cpp file name must
  15. # be given on the same line as the test type.
  16. #
  17. # If the line with the test type includes the comment
  18. # "# compiler_status<always_show_run_output>" then
  19. # run output will be displayed even if the test passes.
  20. {
  21. # look in BOOST_ROOT for sources first, just in this Jamfile
  22. local SEARCH_SOURCE = $(BOOST_ROOT) $(SEARCH_SOURCE) ;
  23. test-suite "bind"
  24. : [ run libs/bind/bind_test.cpp ]
  25. [ run libs/bind/mem_fn_test.cpp ]
  26. [ run libs/bind/mem_fn_void_test.cpp ]
  27. [ run libs/bind/mem_fn_derived_test.cpp ]
  28. ;
  29. test-suite config
  30. : [ run libs/config/test/config_test.cpp <lib>../libs/test/build/test_exec_monitor
  31. : #args
  32. : #input-files
  33. : #requirements
  34. <threading>multi
  35. ]
  36. [ run libs/config/test/config_info.cpp ] # compiler_status<always_show_run_output>
  37. [ run libs/config/test/limits_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  38. ;
  39. run libs/any/any_test.cpp ;
  40. test-suite array
  41. : [ run libs/array/array1.cpp ]
  42. [ run libs/array/array2.cpp ]
  43. [ run libs/array/array3.cpp ]
  44. [ run libs/array/array4.cpp ]
  45. [ run libs/array/array5.cpp ]
  46. ;
  47. test-suite concept_check
  48. : [ compile libs/concept_check/concept_check_test.cpp ]
  49. [ compile libs/concept_check/class_concept_check_test.cpp ]
  50. [ compile-fail libs/concept_check/concept_check_fail_expected.cpp ]
  51. [ compile-fail libs/concept_check/class_concept_fail_expected.cpp ]
  52. ;
  53. test-suite conversion
  54. : [ run libs/conversion/cast_test.cpp ]
  55. [ run libs/conversion/lexical_cast_test.cpp ]
  56. ;
  57. run libs/crc/crc_test.cpp <lib>../libs/test/build/test_exec_monitor ;
  58. test-suite date_time
  59. : [ run libs/date_time/test/testgregorian_calendar.cpp
  60. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  61. [ run libs/date_time/test/gregorian/testdate.cpp
  62. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  63. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  64. [ run libs/date_time/test/gregorian/testdate_duration.cpp
  65. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  66. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  67. [ run libs/date_time/test/gregorian/testdate_iterator.cpp
  68. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  69. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  70. [ run libs/date_time/test/gregorian/testfacet.cpp
  71. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  72. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  73. [ run libs/date_time/test/gregorian/testformatters.cpp
  74. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  75. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  76. [ run libs/date_time/test/gregorian/testgenerators.cpp
  77. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  78. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  79. [ run libs/date_time/test/gregorian/testgreg_cal.cpp
  80. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  81. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  82. [ run libs/date_time/test/gregorian/testgreg_day.cpp
  83. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  84. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  85. [ run libs/date_time/test/gregorian/testgreg_month.cpp
  86. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  87. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  88. [ run libs/date_time/test/gregorian/testparse_date.cpp
  89. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  90. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  91. [ run libs/date_time/test/posix_time/testc_local_adjustor.cpp
  92. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  93. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  94. [ run libs/date_time/test/posix_time/testclock.cpp
  95. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  96. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  97. [ run libs/date_time/test/posix_time/testdst_rules.cpp
  98. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  99. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  100. [ run libs/date_time/test/posix_time/testduration.cpp
  101. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  102. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  103. [ run libs/date_time/test/posix_time/testiterator.cpp
  104. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  105. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  106. [ run libs/date_time/test/posix_time/testparse_time.cpp
  107. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  108. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  109. [ run libs/date_time/test/posix_time/testperiod.cpp
  110. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  111. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  112. [ run libs/date_time/test/posix_time/testtime.cpp
  113. <lib>../libs/date_time/build/boost_date_time$(SUFLIB)
  114. : : : <define>DATE_TIME_INLINE <define>BOOST_DATE_TIME_POSIX_TIME_STD_CONFIG ]
  115. [ run libs/date_time/test/testint_adapter.cpp ]
  116. [ run libs/date_time/test/testtime_resolution_traits.cpp ]
  117. [ run libs/date_time/test/testwrapping_int.cpp ]
  118. [ run libs/date_time/test/testconstrained_value.cpp ]
  119. ;
  120. test-suite disjoint_sets
  121. : [ run libs/disjoint_sets/disjoint_set_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  122. ;
  123. test-suite dynamic_bitset
  124. : [ run libs/dynamic_bitset/dyn_bitset_unit_tests1.cpp <lib>../libs/test/build/test_exec_monitor ]
  125. [ run libs/dynamic_bitset/dyn_bitset_unit_tests2.cpp <lib>../libs/test/build/test_exec_monitor ]
  126. [ run libs/dynamic_bitset/dyn_bitset_unit_tests3.cpp <lib>../libs/test/build/test_exec_monitor ]
  127. ;
  128. test-suite format
  129. : [ run libs/format/test/format_test1.cpp <lib>../libs/test/build/test_exec_monitor
  130. : # args
  131. : # input files
  132. : <runtime-link>static # uses locale; metrowerks toolsets don't have a locale in the dynamic library
  133. ]
  134. [ run libs/format/test/format_test2.cpp <lib>../libs/test/build/test_exec_monitor
  135. : # args
  136. : # input files
  137. : <runtime-link>static # uses locale; metrowerks toolsets don't have a locale in the dynamic library
  138. ]
  139. [ run libs/format/test/format_test_wstring.cpp <lib>../libs/test/build/test_exec_monitor
  140. : # args
  141. : # input files
  142. : <runtime-link>static # uses locale; metrowerks toolsets don't have a locale in the dynamic library
  143. ]
  144. ;
  145. test-suite function
  146. : [ run libs/function/test/function_test.cpp ]
  147. [ run libs/function/test/function_n_test.cpp ]
  148. [ run libs/function/test/allocator_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  149. [ run libs/function/test/stateless_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  150. [ run libs/function/test/lambda_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  151. [ compile-fail libs/function/test/function_test_fail1.cpp <lib>../libs/test/build/test_exec_monitor ]
  152. [ compile-fail libs/function/test/function_test_fail2.cpp <lib>../libs/test/build/test_exec_monitor ]
  153. [ compile libs/function/test/function_30.cpp ]
  154. ;
  155. run libs/functional/function_test.cpp ;
  156. run libs/graph/test/graph.cpp ;
  157. test-suite integer
  158. : [ run libs/integer/cstdint_test.cpp ]
  159. [ run libs/integer/integer_test.cpp ]
  160. [ run libs/integer/integer_traits_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  161. ;
  162. run
  163. libs/io/test/ios_state_test.cpp <lib>../libs/test/build/test_exec_monitor # sources
  164. : # args
  165. : # input-files
  166. : <runtime-link>static # requirements (static runtime required by Metrowerks)
  167. ;
  168. test-suite lambda
  169. : [ run libs/lambda/test/bind_tests_simple.cpp <lib>../libs/test/build/test_exec_monitor ]
  170. [ run libs/lambda/test/bind_tests_advanced.cpp <lib>../libs/test/build/test_exec_monitor ]
  171. [ run libs/lambda/test/bind_tests_simple_f_refs.cpp <lib>../libs/test/build/test_exec_monitor ]
  172. [ run libs/lambda/test/bll_and_function.cpp <lib>../libs/test/build/test_exec_monitor ]
  173. [ run libs/lambda/test/cast_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  174. [ run libs/lambda/test/constructor_tests.cpp <lib>../libs/test/build/test_exec_monitor ]
  175. [ run libs/lambda/test/control_structures.cpp <lib>../libs/test/build/test_exec_monitor ]
  176. [ run libs/lambda/test/exception_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  177. [ run libs/lambda/test/extending_rt_traits.cpp <lib>../libs/test/build/test_exec_monitor ]
  178. [ run libs/lambda/test/is_instance_of_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  179. [ run libs/lambda/test/member_pointer_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  180. [ run libs/lambda/test/operator_tests_simple.cpp <lib>../libs/test/build/test_exec_monitor ]
  181. [ run libs/lambda/test/phoenix_control_structures.cpp <lib>../libs/test/build/test_exec_monitor ]
  182. [ run libs/lambda/test/switch_construct.cpp <lib>../libs/test/build/test_exec_monitor ]
  183. ;
  184. test-suite math
  185. : [ run libs/math/test/common_factor_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  186. [ run libs/math/octonion/octonion_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  187. [ run libs/math/quaternion/quaternion_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  188. [ run libs/math/special_functions/special_functions_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  189. ;
  190. run libs/pool/test/test_pool_alloc.cpp <lib>../libs/test/build/test_exec_monitor ;
  191. test-suite preprocessor
  192. : [ compile libs/preprocessor/test/arithmetic.cpp ]
  193. [ compile libs/preprocessor/test/array.cpp ]
  194. [ compile libs/preprocessor/test/comparison.cpp ]
  195. [ compile libs/preprocessor/test/control.cpp ]
  196. [ compile libs/preprocessor/test/debug.cpp ]
  197. [ compile libs/preprocessor/test/facilities.cpp ]
  198. [ compile libs/preprocessor/test/iteration.cpp ]
  199. [ compile libs/preprocessor/test/list.cpp ]
  200. [ compile libs/preprocessor/test/logical.cpp ]
  201. [ compile libs/preprocessor/test/repetition.cpp ]
  202. [ compile libs/preprocessor/test/selection.cpp ]
  203. [ compile libs/preprocessor/test/slot.cpp ]
  204. [ compile libs/preprocessor/test/tuple.cpp ]
  205. ;
  206. test-suite property_map
  207. : [ compile libs/property_map/property_map_cc.cpp ]
  208. ;
  209. test-suite rational
  210. : [ run libs/rational/rational_example.cpp ]
  211. [ run libs/rational/rational_test.cpp ]
  212. ;
  213. test-suite random
  214. : [ run libs/random/random_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  215. [ run libs/random/random_demo.cpp ]
  216. ;
  217. {
  218. local test-dir = $(BOOST_ROOT)$(SLASH)libs$(SLASH)regex$(SLASH)test$(SLASH)regress$(SLASH) ;
  219. local test-files = $(test-dir)tests.txt
  220. # dwa -- not sure if this is generally applicable
  221. # $(test-dir)test1252.txt
  222. ;
  223. test-suite regex
  224. : [ run libs/regex/test/regress/parse.cpp libs/regex/test/regress/regress.cpp libs/regex/test/regress/tests.cpp
  225. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  226. <lib>../libs/test/build/prg_exec_monitor
  227. :
  228. $(test-files)
  229. :
  230. :
  231. <define>BOOST_REGEX_NO_LIB=1
  232. <define>BOOST_REGEX_STATIC_LINK=1
  233. :
  234. regress ]
  235. [ run libs/regex/test/regress/parse.cpp libs/regex/test/regress/regress.cpp libs/regex/test/regress/tests.cpp
  236. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  237. <lib>../libs/test/build/prg_exec_monitor
  238. :
  239. $(test-files)
  240. :
  241. :
  242. <define>BOOST_REGEX_NO_LIB=1
  243. <define>TEST_UNICODE=1
  244. <define>BOOST_REGEX_STATIC_LINK=1
  245. :
  246. wregress ]
  247. [ run libs/regex/test/c_compiler_checks/posix_api_check.c
  248. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  249. <lib>../libs/test/build/prg_exec_monitor
  250. :
  251. :
  252. :
  253. <define>BOOST_REGEX_NO_LIB=1
  254. <define>BOOST_REGEX_STATIC_LINK=1
  255. :
  256. posix_api_check_c ]
  257. [ run libs/regex/test/c_compiler_checks/wide_posix_api_check.c
  258. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  259. :
  260. :
  261. :
  262. <define>BOOST_REGEX_NO_LIB=1
  263. <define>BOOST_REGEX_STATIC_LINK=1
  264. :
  265. wide_posix_api_check_c ]
  266. [ run libs/regex/test/c_compiler_checks/posix_api_check.cpp
  267. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  268. :
  269. :
  270. :
  271. <define>BOOST_REGEX_NO_LIB=1
  272. <define>BOOST_REGEX_STATIC_LINK=1
  273. ]
  274. [ run libs/regex/test/c_compiler_checks/wide_posix_api_check.cpp
  275. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  276. :
  277. :
  278. :
  279. <define>BOOST_REGEX_NO_LIB=1
  280. <define>BOOST_REGEX_STATIC_LINK=1
  281. ]
  282. [ run libs/regex/example/timer/regex_timer.cpp
  283. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  284. :
  285. $(BOOST_ROOT)$(SLASH)libs$(SLASH)regex$(SLASH)example$(SLASH)timer$(SLASH)input_script.txt
  286. :
  287. :
  288. <define>BOOST_REGEX_NO_LIB=1
  289. <define>BOOST_REGEX_STATIC_LINK=1
  290. :
  291. regex_timer
  292. ]
  293. [ run libs/regex/example/jgrep/jgrep.cpp libs/regex/example/jgrep/main.cpp
  294. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  295. :
  296. -n boost/ $(BOOST_ROOT)$(SLASH)boost$(SLASH)regex.hpp
  297. :
  298. :
  299. <define>BOOST_REGEX_NO_LIB=1
  300. <define>BOOST_REGEX_STATIC_LINK=1
  301. :
  302. jgrep
  303. ]
  304. [ run libs/regex/example/snippets/credit_card_example.cpp
  305. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  306. :
  307. :
  308. :
  309. <define>BOOST_REGEX_NO_LIB=1
  310. <define>BOOST_REGEX_STATIC_LINK=1
  311. :
  312. credit_card_example
  313. ]
  314. [ run libs/regex/example/snippets/partial_regex_grep.cpp
  315. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  316. :
  317. $(BOOST_ROOT)$(SLASH)libs$(SLASH)regex$(SLASH)index.htm
  318. :
  319. :
  320. <define>BOOST_REGEX_NO_LIB=1
  321. <define>BOOST_REGEX_STATIC_LINK=1
  322. :
  323. partial_regex_grep
  324. ]
  325. [ run libs/regex/example/snippets/partial_regex_match.cpp
  326. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  327. :
  328. 1234-5678-8765-4
  329. :
  330. :
  331. <define>BOOST_REGEX_NO_LIB=1
  332. <define>BOOST_REGEX_STATIC_LINK=1
  333. :
  334. partial_regex_match
  335. ]
  336. [ run libs/regex/example/snippets/regex_grep_example_1.cpp
  337. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  338. :
  339. $(BOOST_ROOT)$(SLASH)boost$(SLASH)rational.hpp
  340. :
  341. :
  342. <define>BOOST_REGEX_NO_LIB=1
  343. <define>BOOST_REGEX_STATIC_LINK=1
  344. :
  345. regex_grep_example_1
  346. ]
  347. [ run libs/regex/example/snippets/regex_grep_example_2.cpp
  348. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  349. :
  350. $(BOOST_ROOT)$(SLASH)boost$(SLASH)rational.hpp
  351. :
  352. :
  353. <define>BOOST_REGEX_NO_LIB=1
  354. <define>BOOST_REGEX_STATIC_LINK=1
  355. :
  356. regex_grep_example_2
  357. ]
  358. [ run libs/regex/example/snippets/regex_grep_example_3.cpp
  359. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  360. :
  361. $(BOOST_ROOT)$(SLASH)boost$(SLASH)rational.hpp
  362. :
  363. :
  364. <define>BOOST_REGEX_NO_LIB=1
  365. <define>BOOST_REGEX_STATIC_LINK=1
  366. :
  367. regex_grep_example_3
  368. ]
  369. [ run libs/regex/example/snippets/regex_grep_example_4.cpp
  370. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  371. :
  372. $(BOOST_ROOT)$(SLASH)boost$(SLASH)rational.hpp
  373. :
  374. :
  375. <define>BOOST_REGEX_NO_LIB=1
  376. <define>BOOST_REGEX_STATIC_LINK=1
  377. :
  378. regex_grep_example_4
  379. ]
  380. [ run libs/regex/example/snippets/regex_match_example.cpp
  381. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  382. :
  383. -auto
  384. :
  385. :
  386. <define>BOOST_REGEX_NO_LIB=1
  387. <define>BOOST_REGEX_STATIC_LINK=1
  388. :
  389. regex_match_example
  390. ]
  391. [ run libs/regex/example/snippets/regex_merge_example.cpp
  392. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  393. :
  394. $(BOOST_ROOT)$(SLASH)boost$(SLASH)rational.hpp
  395. :
  396. :
  397. <define>BOOST_REGEX_NO_LIB=1
  398. <define>BOOST_REGEX_STATIC_LINK=1
  399. :
  400. regex_merge_example
  401. ]
  402. [ run libs/regex/example/snippets/regex_search_example.cpp
  403. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  404. :
  405. $(BOOST_ROOT)$(SLASH)boost$(SLASH)rational.hpp
  406. :
  407. :
  408. <define>BOOST_REGEX_NO_LIB=1
  409. <define>BOOST_REGEX_STATIC_LINK=1
  410. :
  411. regex_search_example
  412. ]
  413. [ run libs/regex/example/snippets/regex_split_example_1.cpp
  414. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  415. :
  416. -auto
  417. :
  418. :
  419. <define>BOOST_REGEX_NO_LIB=1
  420. <define>BOOST_REGEX_STATIC_LINK=1
  421. :
  422. regex_split_example_1
  423. ]
  424. [ run libs/regex/example/snippets/regex_split_example_2.cpp
  425. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  426. :
  427. $(BOOST_ROOT)$(SLASH)libs$(SLASH)regex$(SLASH)index.htm
  428. :
  429. :
  430. <define>BOOST_REGEX_NO_LIB=1
  431. <define>BOOST_REGEX_STATIC_LINK=1
  432. :
  433. regex_split_example_2
  434. ]
  435. ;
  436. }
  437. test-suite signals
  438. : [ run libs/signals/test/dead_slot_test.cpp
  439. <lib>../libs/test/build/test_exec_monitor
  440. <lib>../libs/signals/build/boost_signals$(SUFLIB) ]
  441. [ run libs/signals/test/deletion_test.cpp
  442. <lib>../libs/test/build/test_exec_monitor
  443. <lib>../libs/signals/build/boost_signals$(SUFLIB) ]
  444. [ run libs/signals/test/ordering_test.cpp
  445. <lib>../libs/test/build/test_exec_monitor
  446. <lib>../libs/signals/build/boost_signals$(SUFLIB) ]
  447. [ run libs/signals/test/signal_n_test.cpp
  448. <lib>../libs/test/build/test_exec_monitor
  449. <lib>../libs/signals/build/boost_signals$(SUFLIB) ]
  450. [ run libs/signals/test/signal_test.cpp
  451. <lib>../libs/test/build/test_exec_monitor
  452. <lib>../libs/signals/build/boost_signals$(SUFLIB) ]
  453. [ run libs/signals/test/trackable_test.cpp
  454. <lib>../libs/test/build/test_exec_monitor
  455. <lib>../libs/signals/build/boost_signals$(SUFLIB) ]
  456. ;
  457. test-suite smart_ptr
  458. : [ run libs/smart_ptr/smart_ptr_test.cpp ]
  459. [ run libs/smart_ptr/shared_ptr_basic_test.cpp : : : <gcc><*><cxxflags>-Wno-non-virtual-dtor ]
  460. [ run libs/smart_ptr/shared_ptr_test.cpp : : : <gcc><*><cxxflags>-Wno-non-virtual-dtor ]
  461. [ run libs/smart_ptr/weak_ptr_test.cpp ]
  462. [ run libs/smart_ptr/enable_shared_from_this_test.cpp : : : <gcc><*><cxxflags>-Wno-non-virtual-dtor ]
  463. [ run libs/smart_ptr/get_deleter_test.cpp ]
  464. [ compile-fail libs/smart_ptr/shared_ptr_assign_fail.cpp ]
  465. ;
  466. test-suite static_assert
  467. : [ compile libs/static_assert/static_assert_test.cpp ]
  468. [ compile-fail libs/static_assert/static_assert_test_fail_1.cpp ]
  469. [ compile-fail libs/static_assert/static_assert_test_fail_2.cpp ]
  470. [ compile-fail libs/static_assert/static_assert_test_fail_3.cpp ]
  471. [ compile-fail libs/static_assert/static_assert_test_fail_4.cpp ]
  472. [ compile-fail libs/static_assert/static_assert_test_fail_5.cpp ]
  473. [ compile-fail libs/static_assert/static_assert_test_fail_6.cpp ]
  474. [ compile-fail libs/static_assert/static_assert_test_fail_7.cpp ]
  475. [ link-fail libs/static_assert/static_assert_test_fail_8.cpp ]
  476. ;
  477. subinclude libs/test/test ;
  478. {
  479. local threadmon ;
  480. local thread-sources ;
  481. local thread-requirements ;
  482. if $(NT)
  483. {
  484. threadmon = <dll>../libs/thread/build/boost_threadmon ;
  485. }
  486. thread-sources = <lib>../libs/thread/build/boost_thread
  487. <lib>../libs/test/build/unit_test_framework
  488. $(threadmon)
  489. ;
  490. thread-requirements = <threading>multi ;
  491. test-suite threads
  492. : [ run libs/thread/test/test_thread.cpp $(thread-sources)
  493. : #args
  494. : #input-files
  495. : $(thread-requirements)
  496. ]
  497. [ run libs/thread/test/test_mutex.cpp $(thread-sources)
  498. : #args
  499. : #input-files
  500. : $(thread-requirements)
  501. ]
  502. # 11/1/02 test_condition is hanging, requiring manual intervention
  503. # [ run libs/thread/test/test_condition.cpp $(thread-sources)
  504. # : #args
  505. # : #input-files
  506. # : $(thread-requirements)
  507. # ]
  508. [ run libs/thread/test/test_tss.cpp $(thread-sources)
  509. : #args
  510. : #input-files
  511. : $(thread-requirements)
  512. ]
  513. [ run libs/thread/test/test_once.cpp $(thread-sources)
  514. : #args
  515. : #input-files
  516. : $(thread-requirements)
  517. ]
  518. [ run libs/thread/test/test_xtime.cpp $(thread-sources)
  519. : #args
  520. : #input-files
  521. : $(thread-requirements)
  522. ]
  523. ;
  524. }
  525. compile libs/timer/timer_test.cpp ;
  526. test-suite tokenizer
  527. : [ run libs/tokenizer/examples.cpp <lib>../libs/test/build/test_exec_monitor ]
  528. [ run libs/tokenizer/simple_example_1.cpp ]
  529. [ run libs/tokenizer/simple_example_2.cpp ]
  530. [ run libs/tokenizer/simple_example_3.cpp ]
  531. [ run libs/tokenizer/simple_example_4.cpp ]
  532. [ run libs/tokenizer/simple_example_5.cpp ]
  533. ;
  534. test-suite tuple
  535. : [ run libs/tuple/test/tuple_test_bench.cpp <lib>../libs/test/build/test_exec_monitor ]
  536. [ run libs/tuple/test/io_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  537. ;
  538. test-suite iterator_adaptors
  539. : [ run libs/utility/counting_iterator_test.cpp : # args
  540. : # input files
  541. : # requirements
  542. # borland warns incorrectly in this case, so often that
  543. # successful compilation is prevented.
  544. <borland><*><cxxflags>"-w-8091 -w-8092"
  545. ]
  546. [ run libs/utility/iterator_adaptor_test.cpp ]
  547. [ compile-fail libs/utility/iter_adaptor_fail_expected1.cpp ]
  548. [ compile-fail libs/utility/iter_adaptor_fail_expected2.cpp ]
  549. [ run libs/utility/transform_iterator_test.cpp ]
  550. [ run libs/utility/indirect_iterator_test.cpp ]
  551. [ run libs/utility/iter_traits_gen_test.cpp ]
  552. [ run libs/utility/iterator_adaptor_examples.cpp ]
  553. [ run libs/utility/counting_iterator_example.cpp ]
  554. [ run libs/utility/filter_iterator_example.cpp ]
  555. [ run libs/utility/fun_out_iter_example.cpp ]
  556. [ run libs/utility/indirect_iterator_example.cpp ]
  557. [ run libs/utility/projection_iterator_example.cpp ]
  558. [ run libs/utility/reverse_iterator_example.cpp ]
  559. [ run libs/utility/transform_iterator_example.cpp ]
  560. ;
  561. test-suite ublas
  562. : [ run libs/numeric/ublas/test1/test1.cpp
  563. libs/numeric/ublas/test1/test11.cpp
  564. libs/numeric/ublas/test1/test12.cpp
  565. libs/numeric/ublas/test1/test13.cpp
  566. : # args
  567. : # input files
  568. : # requirements
  569. # borland warns so often that successful compilation is prevented.
  570. <borland><*><cxxflags>"-w-8026 -w-8027 -w-8057 -w-8084 -w-8092"
  571. ]
  572. [ run libs/numeric/ublas/test2/test2.cpp
  573. libs/numeric/ublas/test2/test21.cpp
  574. libs/numeric/ublas/test2/test22.cpp
  575. libs/numeric/ublas/test2/test23.cpp
  576. : # args
  577. : # input files
  578. : # requirements
  579. # borland warns so often that successful compilation is prevented.
  580. <borland><*><cxxflags>"-w-8026 -w-8027 -w-8057 -w-8084 -w-8092"
  581. ]
  582. [ run libs/numeric/ublas/test3/test3.cpp
  583. libs/numeric/ublas/test3/test31.cpp
  584. libs/numeric/ublas/test3/test32.cpp
  585. libs/numeric/ublas/test3/test33.cpp
  586. : # args
  587. : # input files
  588. : # requirements
  589. # borland warns so often that successful compilation is prevented.
  590. <borland><*><cxxflags>"-w-8026 -w-8027 -w-8057 -w-8084 -w-8092"
  591. ]
  592. [ run libs/numeric/ublas/test4/test4.cpp
  593. libs/numeric/ublas/test4/test41.cpp
  594. libs/numeric/ublas/test4/test42.cpp
  595. libs/numeric/ublas/test4/test43.cpp
  596. : # args
  597. : # input files
  598. : # requirements
  599. # borland warns so often that successful compilation is prevented.
  600. <borland><*><cxxflags>"-w-8026 -w-8027 -w-8057 -w-8084 -w-8092"
  601. ]
  602. [ run libs/numeric/ublas/test5/test5.cpp
  603. libs/numeric/ublas/test5/test51.cpp
  604. libs/numeric/ublas/test5/test52.cpp
  605. libs/numeric/ublas/test5/test53.cpp
  606. : # args
  607. : # input files
  608. : # requirements
  609. # borland warns so often that successful compilation is prevented.
  610. <borland><*><cxxflags>"-w-8026 -w-8027 -w-8057 -w-8084 -w-8092"
  611. ]
  612. [ run libs/numeric/ublas/test6/test6.cpp
  613. libs/numeric/ublas/test6/test61.cpp
  614. libs/numeric/ublas/test6/test62.cpp
  615. libs/numeric/ublas/test6/test63.cpp
  616. : # args
  617. : # input files
  618. : # requirements
  619. # borland warns so often that successful compilation is prevented.
  620. <borland><*><cxxflags>"-w-8026 -w-8027 -w-8057 -w-8084 -w-8092"
  621. ]
  622. [ run libs/numeric/ublas/concepts.cpp
  623. : # args
  624. : # input files
  625. : # requirements
  626. # borland warns so often that successful compilation is prevented.
  627. <borland><*><cxxflags>"-w-8026 -w-8027 -w-8057 -w-8084 -w-8092"
  628. ]
  629. ;
  630. test-suite multi_array
  631. : [ run libs/multi_array/test/constructors.cpp <lib>../libs/test/build/test_exec_monitor ]
  632. [ run libs/multi_array/test/access.cpp <lib>../libs/test/build/test_exec_monitor ]
  633. [ run libs/multi_array/test/compare.cpp <lib>../libs/test/build/test_exec_monitor ]
  634. [ run libs/multi_array/test/iterators.cpp <lib>../libs/test/build/test_exec_monitor ]
  635. [ run libs/multi_array/test/slice.cpp <lib>../libs/test/build/test_exec_monitor ]
  636. [ run libs/multi_array/test/assign.cpp <lib>../libs/test/build/test_exec_monitor ]
  637. [ run libs/multi_array/test/index_bases.cpp <lib>../libs/test/build/test_exec_monitor ]
  638. [ run libs/multi_array/test/storage_order.cpp <lib>../libs/test/build/test_exec_monitor ]
  639. [ run libs/multi_array/test/reshape.cpp <lib>../libs/test/build/test_exec_monitor ]
  640. [ run libs/multi_array/test/range1.cpp <lib>../libs/test/build/test_exec_monitor ]
  641. [ run libs/multi_array/test/idxgen1.cpp <lib>../libs/test/build/test_exec_monitor ]
  642. [ run libs/multi_array/test/stl_interaction.cpp <lib>../libs/test/build/test_exec_monitor ]
  643. [ compile libs/multi_array/test/concept_checks.cpp ]
  644. [ compile-fail libs/multi_array/test/fail_cbracket.cpp ]
  645. [ compile-fail libs/multi_array/test/fail_cdata.cpp ]
  646. [ compile-fail libs/multi_array/test/fail_citerator.cpp ]
  647. [ compile-fail libs/multi_array/test/fail_cparen.cpp ]
  648. [ compile-fail libs/multi_array/test/fail_criterator.cpp ]
  649. [ compile-fail libs/multi_array/test/fail_csubarray.cpp ]
  650. [ compile-fail libs/multi_array/test/fail_csubarray2.cpp ]
  651. [ compile-fail libs/multi_array/test/fail_csubarray3.cpp ]
  652. [ compile-fail libs/multi_array/test/fail_cview.cpp ]
  653. [ compile-fail libs/multi_array/test/fail_cview2.cpp ]
  654. [ compile-fail libs/multi_array/test/fail_cview3.cpp ]
  655. [ compile-fail libs/multi_array/test/fail_ref_cbracket.cpp ]
  656. [ compile-fail libs/multi_array/test/fail_ref_cdata.cpp ]
  657. [ compile-fail libs/multi_array/test/fail_ref_citerator.cpp ]
  658. [ compile-fail libs/multi_array/test/fail_ref_cparen.cpp ]
  659. [ compile-fail libs/multi_array/test/fail_ref_criterator.cpp ]
  660. [ compile-fail libs/multi_array/test/fail_ref_csubarray.cpp ]
  661. [ compile-fail libs/multi_array/test/fail_ref_csubarray2.cpp ]
  662. [ compile-fail libs/multi_array/test/fail_ref_csubarray3.cpp ]
  663. [ compile-fail libs/multi_array/test/fail_ref_cview.cpp ]
  664. [ compile-fail libs/multi_array/test/fail_ref_cview2.cpp ]
  665. [ compile-fail libs/multi_array/test/fail_ref_cview3.cpp ]
  666. ;
  667. test-suite utility
  668. :
  669. [ run libs/utility/iterator_traits_test.cpp ]
  670. [ run libs/utility/iterators_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  671. [ compile-fail libs/utility/noncopyable_test.cpp ]
  672. [ run libs/utility/numeric_traits_test.cpp ]
  673. [ run libs/utility/operators_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  674. [ run libs/utility/tie_example.cpp ]
  675. [ run libs/utility/binary_search_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  676. [ run libs/utility/call_traits_test.cpp : -u ]
  677. [ compile-fail libs/utility/checked_delete_test.cpp ]
  678. [ run libs/utility/compressed_pair_test.cpp <lib>../libs/test/build/test_exec_monitor : -u ]
  679. [ run libs/utility/addressof_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  680. [ run libs/utility/ref_test.cpp <lib>../libs/test/build/test_exec_monitor ]
  681. ;
  682. {
  683. rule type-traits-run ( sources + )
  684. {
  685. return [
  686. run
  687. # sources
  688. $(sources)
  689. # dependencies
  690. <lib>../libs/type_traits/test/type_traits_init
  691. <lib>../libs/test/build/unit_test_framework
  692. : # additional args
  693. --report_level=detailed --build_info=yes --log_level=messages
  694. : # test-files
  695. : # requirements
  696. <sysinclude>$(BOOST_ROOT)
  697. : # test name
  698. ] ;
  699. }
  700. test-suite type_traits :
  701. [ type-traits-run ../libs/type_traits/test/add_const_test.cpp ]
  702. [ type-traits-run ../libs/type_traits/test/add_pointer_test.cpp ]
  703. [ type-traits-run ../libs/type_traits/test/add_reference_test.cpp ]
  704. [ type-traits-run ../libs/type_traits/test/add_volatile_test.cpp ]
  705. [ type-traits-run ../libs/type_traits/test/alignment_of_test.cpp ]
  706. [ type-traits-run ../libs/type_traits/test/function_traits_test.cpp ]
  707. [ type-traits-run ../libs/type_traits/test/has_nothrow_assign_test.cpp ]
  708. [ type-traits-run ../libs/type_traits/test/has_nothrow_constructor_test.cpp ]
  709. [ type-traits-run ../libs/type_traits/test/has_nothrow_copy_test.cpp ]
  710. [ type-traits-run ../libs/type_traits/test/has_trivial_assign_test.cpp ]
  711. [ type-traits-run ../libs/type_traits/test/has_trivial_constructor_test.cpp ]
  712. [ type-traits-run ../libs/type_traits/test/has_trivial_copy_test.cpp ]
  713. [ type-traits-run ../libs/type_traits/test/has_trivial_destructor_test.cpp ]
  714. [ type-traits-run ../libs/type_traits/test/is_arithmetic_test.cpp ]
  715. [ type-traits-run ../libs/type_traits/test/is_array_test.cpp ]
  716. [ type-traits-run ../libs/type_traits/test/is_base_and_derived_test.cpp ]
  717. [ type-traits-run ../libs/type_traits/test/is_class_test.cpp ]
  718. [ type-traits-run ../libs/type_traits/test/is_compound_test.cpp ]
  719. [ type-traits-run ../libs/type_traits/test/is_const_test.cpp ]
  720. [ type-traits-run ../libs/type_traits/test/is_convertible_test.cpp ]
  721. [ type-traits-run ../libs/type_traits/test/is_empty_test.cpp ]
  722. [ type-traits-run ../libs/type_traits/test/is_enum_test.cpp ]
  723. [ type-traits-run ../libs/type_traits/test/is_float_test.cpp ]
  724. [ type-traits-run ../libs/type_traits/test/is_function_test.cpp ]
  725. [ type-traits-run ../libs/type_traits/test/is_fundamental_test.cpp ]
  726. [ type-traits-run ../libs/type_traits/test/is_integral_test.cpp ]
  727. [ type-traits-run ../libs/type_traits/test/is_member_function_pointer_test.cpp ]
  728. [ type-traits-run ../libs/type_traits/test/is_member_pointer_test.cpp ]
  729. [ type-traits-run ../libs/type_traits/test/is_object_test.cpp ]
  730. [ type-traits-run ../libs/type_traits/test/is_pod_test.cpp ]
  731. [ type-traits-run ../libs/type_traits/test/is_pointer_test.cpp ]
  732. [ type-traits-run ../libs/type_traits/test/is_polymorphic_test.cpp ]
  733. [ type-traits-run ../libs/type_traits/test/is_reference_test.cpp ]
  734. [ type-traits-run ../libs/type_traits/test/is_same_test.cpp ]
  735. [ type-traits-run ../libs/type_traits/test/is_scalar_test.cpp ]
  736. [ type-traits-run ../libs/type_traits/test/is_stateless_test.cpp ]
  737. [ type-traits-run ../libs/type_traits/test/is_union_test.cpp ]
  738. [ type-traits-run ../libs/type_traits/test/is_void_test.cpp ]
  739. [ type-traits-run ../libs/type_traits/test/is_volatile_test.cpp ]
  740. [ type-traits-run ../libs/type_traits/test/remove_bounds_test.cpp ]
  741. [ type-traits-run ../libs/type_traits/test/remove_const_test.cpp ]
  742. [ type-traits-run ../libs/type_traits/test/remove_cv_test.cpp ]
  743. [ type-traits-run ../libs/type_traits/test/remove_pointer_test.cpp ]
  744. [ type-traits-run ../libs/type_traits/test/remove_reference_test.cpp ]
  745. [ type-traits-run ../libs/type_traits/test/remove_volatile_test.cpp ]
  746. [ type-traits-run ../libs/type_traits/test/tricky_abstract_type_test.cpp ]
  747. [ type-traits-run ../libs/type_traits/test/tricky_add_pointer_test.cpp ]
  748. [ type-traits-run ../libs/type_traits/test/tricky_function_type_test.cpp ]
  749. [ type-traits-run ../libs/type_traits/test/tricky_incomplete_type_test.cpp ]
  750. [ type-traits-run ../libs/type_traits/test/tricky_partial_specialization_test.cpp ]
  751. [ type-traits-run ../libs/type_traits/test/type_with_alignment_test.cpp ]
  752. ; # type traits suite
  753. } # type traits sub rules...
  754. }
粤ICP备19079148号