Jamfile 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338
  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. That program is
  12. # pretty stupid and needs help, including test names (if supplied)
  13. # which are unambiguous, not the same as a .cpp file name, and
  14. # preceded and followed by a space.
  15. {
  16. # look in BOOST_ROOT for sources first, just in this Jamfile
  17. local SEARCH_SOURCE = $(BOOST_ROOT) $(SEARCH_SOURCE) ;
  18. test-suite "bind"
  19. : [ run libs/bind/bind_test.cpp ]
  20. [ run libs/bind/bind_test.cpp ]
  21. [ run libs/bind/mem_fn_test.cpp ]
  22. [ run libs/bind/mem_fn_void_test.cpp ]
  23. ;
  24. test-suite config
  25. : [ run libs/config/test/config_test.cpp
  26. : #args
  27. : #input-files
  28. : #requirements
  29. <threading>multi
  30. ]
  31. [ run libs/config/test/config_info.cpp ]
  32. [ run libs/config/test/limits_test.cpp ]
  33. ;
  34. run libs/any/any_test.cpp ;
  35. run libs/array/array1.cpp ;
  36. test-suite concept_check
  37. : [ compile libs/concept_check/concept_check_test.cpp ]
  38. [ compile libs/concept_check/class_concept_check_test.cpp ]
  39. [ link-fail libs/concept_check/concept_check_fail_expected.cpp ]
  40. [ link-fail libs/concept_check/class_concept_fail_expected.cpp ]
  41. ;
  42. test-suite conversion
  43. : [ run libs/conversion/cast_test.cpp ]
  44. [ run libs/conversion/lexical_cast_test.cpp ]
  45. ;
  46. run libs/crc/crc_test.cpp ;
  47. run libs/function/test/function_test.cpp ;
  48. run libs/functional/function_test.cpp ;
  49. run libs/graph/test/graph.cpp ;
  50. test-suite integer
  51. : [ run libs/integer/cstdint_test.cpp ]
  52. [ run libs/integer/integer_test.cpp ]
  53. [ run libs/integer/integer_traits_test.cpp ]
  54. ;
  55. run
  56. libs/io/test/ios_state_test.cpp # sources
  57. : # args
  58. : # input-files
  59. : <runtime-link>static # requirements (static runtime required by Metrowerks)
  60. ;
  61. test-suite lambda
  62. : [ run libs/lambda/test/bind_tests_simple.cpp ]
  63. [ run libs/lambda/test/bind_tests_advanced.cpp ]
  64. [ run libs/lambda/test/bind_tests_simple_f_refs.cpp ]
  65. [ run libs/lambda/test/bll_and_function.cpp ]
  66. [ run libs/lambda/test/cast_test.cpp ]
  67. [ run libs/lambda/test/constructor_tests.cpp ]
  68. [ run libs/lambda/test/control_structures.cpp ]
  69. [ run libs/lambda/test/exception_test.cpp ]
  70. [ run libs/lambda/test/extending_rt_traits.cpp ]
  71. [ run libs/lambda/test/is_instance_of_test.cpp ]
  72. [ run libs/lambda/test/member_pointer_test.cpp ]
  73. [ run libs/lambda/test/operator_tests_simple.cpp ]
  74. [ run libs/lambda/test/phoenix_control_structures.cpp ]
  75. [ run libs/lambda/test/switch_construct.cpp ]
  76. ;
  77. test-suite math
  78. : [ run libs/math/test/common_factor_test.cpp ]
  79. [ run libs/math/octonion/octonion_test.cpp ]
  80. [ run libs/math/quaternion/quaternion_test.cpp ]
  81. [ run libs/math/special_functions/special_functions_test.cpp ]
  82. ;
  83. run libs/pool/test/test_pool_alloc.cpp ;
  84. test-suite rational
  85. : [ run libs/rational/rational_example.cpp ]
  86. [ run libs/rational/rational_test.cpp ]
  87. ;
  88. test-suite random
  89. : [ run libs/random/random_test.cpp ]
  90. [ run libs/random/random_demo.cpp ]
  91. ;
  92. run libs/utility/ref_test.cpp ;
  93. {
  94. local test-dir = $(BOOST_ROOT)$(SLASH)libs$(SLASH)regex$(SLASH)test$(SLASH)regress$(SLASH) ;
  95. local test-files = $(test-dir)tests.txt
  96. # dwa -- not sure if this is generally applicable
  97. # $(test-dir)test1252.txt
  98. ;
  99. test-suite regex
  100. : [ run libs/regex/test/regress/parse.cpp libs/regex/test/regress/regress.cpp libs/regex/test/regress/tests.cpp
  101. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  102. :
  103. $(test-files)
  104. :
  105. :
  106. <define>BOOST_REGEX_NO_LIB=1
  107. <define>BOOST_REGEX_STATIC_LINK=1
  108. :
  109. regress ]
  110. [ run libs/regex/test/regress/parse.cpp libs/regex/test/regress/regress.cpp libs/regex/test/regress/tests.cpp
  111. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  112. :
  113. $(test-files)
  114. :
  115. :
  116. <define>BOOST_REGEX_NO_LIB=1
  117. <define>TEST_UNICODE=1
  118. <define>BOOST_REGEX_STATIC_LINK=1
  119. :
  120. wregress ]
  121. [ run libs/regex/test/c_compiler_checks/posix_api_check.c
  122. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  123. :
  124. :
  125. :
  126. <define>BOOST_REGEX_NO_LIB=1
  127. <define>BOOST_REGEX_STATIC_LINK=1
  128. :
  129. posix_api_check_c ]
  130. [ run libs/regex/test/c_compiler_checks/wide_posix_api_check.c
  131. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  132. :
  133. :
  134. :
  135. <define>BOOST_REGEX_NO_LIB=1
  136. <define>BOOST_REGEX_STATIC_LINK=1
  137. :
  138. wide_posix_api_check_c ]
  139. [ run libs/regex/test/c_compiler_checks/posix_api_check.cpp
  140. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  141. :
  142. :
  143. :
  144. <define>BOOST_REGEX_NO_LIB=1
  145. <define>BOOST_REGEX_STATIC_LINK=1
  146. ]
  147. [ run libs/regex/test/c_compiler_checks/wide_posix_api_check.cpp
  148. <lib>../libs/regex/build/boost_regex$(SUFLIB)
  149. :
  150. :
  151. :
  152. <define>BOOST_REGEX_NO_LIB=1
  153. <define>BOOST_REGEX_STATIC_LINK=1
  154. ]
  155. ;
  156. }
  157. run libs/smart_ptr/smart_ptr_test.cpp ;
  158. test-suite static_assert
  159. : [ compile libs/static_assert/static_assert_test.cpp ]
  160. [ compile-fail libs/static_assert/static_assert_test_fail_1.cpp ]
  161. [ compile-fail libs/static_assert/static_assert_test_fail_2.cpp ]
  162. [ compile-fail libs/static_assert/static_assert_test_fail_3.cpp ]
  163. [ compile-fail libs/static_assert/static_assert_test_fail_4.cpp ]
  164. [ compile-fail libs/static_assert/static_assert_test_fail_5.cpp ]
  165. [ compile-fail libs/static_assert/static_assert_test_fail_6.cpp ]
  166. [ compile-fail libs/static_assert/static_assert_test_fail_7.cpp ]
  167. [ link-fail libs/static_assert/static_assert_test_fail_8.cpp ]
  168. ;
  169. run libs/test/example/test_tools_example.cpp ;
  170. run-fail libs/test/test/test_tools_fail2.cpp ;
  171. {
  172. local threadmon ;
  173. if $(NT)
  174. {
  175. threadmon = <dll>../libs/thread/build/boost_threadmon ;
  176. }
  177. test-suite threads
  178. : [
  179. run libs/thread/test/test_thread.cpp
  180. <lib>../libs/thread/build/boost_thread
  181. $(threadmon)
  182. : #args
  183. : #input-files
  184. : #requirements
  185. <threading>multi
  186. ]
  187. ;
  188. }
  189. compile libs/timer/timer_test.cpp ;
  190. test-suite tokenizer
  191. : [ run libs/tokenizer/examples.cpp ]
  192. [ run libs/tokenizer/simple_example_1.cpp ]
  193. [ run libs/tokenizer/simple_example_2.cpp ]
  194. [ run libs/tokenizer/simple_example_3.cpp ]
  195. [ run libs/tokenizer/simple_example_4.cpp ]
  196. [ run libs/tokenizer/simple_example_5.cpp ]
  197. ;
  198. test-suite type_traits
  199. : [ run libs/type_traits/tests/alignment_test.cpp ]
  200. [ run libs/type_traits/tests/arithmetic_traits_test.cpp ]
  201. [ run libs/type_traits/tests/composite_traits_test.cpp ]
  202. [ run libs/type_traits/tests/cv_traits_test.cpp ]
  203. [ run libs/type_traits/tests/is_function_test.cpp ]
  204. [ run libs/type_traits/tests/is_convertible_test.cpp ]
  205. [ run libs/type_traits/tests/is_same_test.cpp ]
  206. [ run libs/type_traits/tests/object_type_traits_test.cpp ]
  207. [ run libs/type_traits/tests/transform_traits_test.cpp ]
  208. ;
  209. run libs/utility/call_traits_test.cpp : -u ;
  210. compile-fail libs/utility/checked_delete_test.cpp ;
  211. run libs/utility/compressed_pair_test.cpp : -u ;
  212. test-suite iterator_adaptors
  213. : [ run libs/utility/counting_iterator_test.cpp : # args
  214. : # input files
  215. : # requirements
  216. # borland warns incorrectly in this case, so often that
  217. # successful compilation is prevented.
  218. <borland><*><cxxflags>"-w-8091 -w-8092"
  219. ]
  220. [ run libs/utility/iterator_adaptor_test.cpp ]
  221. [ compile-fail libs/utility/iter_adaptor_fail_expected1.cpp ]
  222. [ compile-fail libs/utility/iter_adaptor_fail_expected2.cpp ]
  223. [ run libs/utility/transform_iterator_test.cpp ]
  224. [ run libs/utility/indirect_iterator_test.cpp ]
  225. [ run libs/utility/iter_traits_gen_test.cpp ]
  226. [ run libs/utility/iterator_adaptor_examples.cpp ]
  227. [ run libs/utility/counting_iterator_example.cpp ]
  228. [ run libs/utility/filter_iterator_example.cpp ]
  229. [ run libs/utility/fun_out_iter_example.cpp ]
  230. [ run libs/utility/indirect_iterator_example.cpp ]
  231. [ run libs/utility/projection_iterator_example.cpp ]
  232. [ run libs/utility/reverse_iterator_example.cpp ]
  233. [ run libs/utility/transform_iterator_example.cpp ]
  234. ;
  235. run libs/utility/iterator_traits_test.cpp ;
  236. run libs/utility/iterators_test.cpp ;
  237. compile-fail libs/utility/noncopyable_test.cpp ;
  238. run libs/utility/numeric_traits_test.cpp ;
  239. run libs/utility/operators_test.cpp ;
  240. run libs/utility/tie_example.cpp ;
  241. run libs/utility/binary_search_test.cpp ;
  242. test-suite multi_array
  243. : [ run libs/multi_array/test/constructors.cpp ]
  244. [ run libs/multi_array/test/access.cpp ]
  245. [ run libs/multi_array/test/compare.cpp ]
  246. [ run libs/multi_array/test/iterators.cpp ]
  247. [ run libs/multi_array/test/slice.cpp ]
  248. [ run libs/multi_array/test/assign.cpp ]
  249. [ run libs/multi_array/test/index_bases.cpp ]
  250. [ run libs/multi_array/test/storage_order.cpp ]
  251. [ run libs/multi_array/test/reshape.cpp ]
  252. [ run libs/multi_array/test/range1.cpp ]
  253. [ run libs/multi_array/test/idxgen1.cpp ]
  254. [ run libs/multi_array/test/stl_interaction.cpp ]
  255. [ compile libs/multi_array/test/concept_checks.cpp ]
  256. [ compile-fail libs/multi_array/test/fail_cbracket.cpp ]
  257. [ compile-fail libs/multi_array/test/fail_cdata.cpp ]
  258. [ compile-fail libs/multi_array/test/fail_citerator.cpp ]
  259. [ compile-fail libs/multi_array/test/fail_cparen.cpp ]
  260. [ compile-fail libs/multi_array/test/fail_criterator.cpp ]
  261. [ compile-fail libs/multi_array/test/fail_csubarray.cpp ]
  262. [ compile-fail libs/multi_array/test/fail_csubarray2.cpp ]
  263. [ compile-fail libs/multi_array/test/fail_csubarray3.cpp ]
  264. [ compile-fail libs/multi_array/test/fail_cview.cpp ]
  265. [ compile-fail libs/multi_array/test/fail_cview2.cpp ]
  266. [ compile-fail libs/multi_array/test/fail_cview3.cpp ]
  267. [ compile-fail libs/multi_array/test/fail_ref_cbracket.cpp ]
  268. [ compile-fail libs/multi_array/test/fail_ref_cdata.cpp ]
  269. [ compile-fail libs/multi_array/test/fail_ref_citerator.cpp ]
  270. [ compile-fail libs/multi_array/test/fail_ref_cparen.cpp ]
  271. [ compile-fail libs/multi_array/test/fail_ref_criterator.cpp ]
  272. [ compile-fail libs/multi_array/test/fail_ref_csubarray.cpp ]
  273. [ compile-fail libs/multi_array/test/fail_ref_csubarray2.cpp ]
  274. [ compile-fail libs/multi_array/test/fail_ref_csubarray3.cpp ]
  275. [ compile-fail libs/multi_array/test/fail_ref_cview.cpp ]
  276. [ compile-fail libs/multi_array/test/fail_ref_cview2.cpp ]
  277. [ compile-fail libs/multi_array/test/fail_ref_cview3.cpp ]
  278. ;
  279. }
粤ICP备19079148号