Jamfile.v2 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  1. #~ Copyright Rene Rivera 2008
  2. #~ Distributed under the Boost Software License, Version 1.0.
  3. #~ (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  4. import testing ;
  5. import cast ;
  6. project preprocessor_tests : requirements <warnings>on
  7. <toolset>gcc-4.3.0:<warnings>all
  8. <toolset>gcc-4.3.0:<cxxflags>-Wno-variadic-macros
  9. <toolset>gcc-4.4.0:<warnings>all
  10. <toolset>gcc-4.4.0:<cxxflags>-Wno-variadic-macros
  11. <toolset>gcc-4.5.0:<warnings>all
  12. <toolset>gcc-4.5.0:<cxxflags>-Wno-variadic-macros
  13. <toolset>gcc-4.5.0:<linkflags>"-Wl,--enable-auto-import"
  14. <toolset>gcc-4.5.2:<warnings>all
  15. <toolset>gcc-4.5.2:<cxxflags>-Wno-variadic-macros
  16. <toolset>msvc:<warnings>all
  17. ;
  18. alias preprocessor : :
  19. <toolset>gcc
  20. <toolset-gcc:version>3.4
  21. ;
  22. alias preprocessor : :
  23. <toolset>gcc
  24. <toolset-gcc:version>4.1
  25. ;
  26. alias preprocessor : :
  27. <toolset>gcc
  28. <toolset-gcc:version>4.2
  29. ;
  30. alias preprocessor
  31. :
  32. [ compile arithmetic.cpp ]
  33. [ compile array.cpp ]
  34. [ compile comparison.cpp ]
  35. [ compile control.cpp ]
  36. [ compile debug.cpp ]
  37. [ compile facilities.cpp ]
  38. [ compile iteration.cpp ]
  39. [ compile list.cpp ]
  40. [ compile logical.cpp ]
  41. [ compile punctuation.cpp ]
  42. [ compile repetition.cpp ]
  43. [ compile selection.cpp ]
  44. [ compile seq.cpp ]
  45. [ compile slot.cpp ]
  46. [ compile stringize.cpp ]
  47. [ compile tuple.cpp ]
  48. [ compile variadic.cpp ]
  49. ;
  50. alias preprocessor_nvm
  51. :
  52. [ compile arithmetic.cpp : <define>BOOST_PP_VARIADICS=0 : arithmetic_nvm ]
  53. [ compile array.cpp : <define>BOOST_PP_VARIADICS=0 : array_nvm ]
  54. [ compile comparison.cpp : <define>BOOST_PP_VARIADICS=0 : comparison_nvm ]
  55. [ compile control.cpp : <define>BOOST_PP_VARIADICS=0 : control_nvm ]
  56. [ compile debug.cpp : <define>BOOST_PP_VARIADICS=0 : debug_nvm ]
  57. [ compile facilities.cpp : <define>BOOST_PP_VARIADICS=0 : facilities_nvm ]
  58. [ compile iteration.cpp : <define>BOOST_PP_VARIADICS=0 : iteration_nvm ]
  59. [ compile list.cpp : <define>BOOST_PP_VARIADICS=0 : list_nvm ]
  60. [ compile logical.cpp : <define>BOOST_PP_VARIADICS=0 : logical_nvm ]
  61. [ compile repetition.cpp : <define>BOOST_PP_VARIADICS=0 : repetition_nvm ]
  62. [ compile selection.cpp : <define>BOOST_PP_VARIADICS=0 : selection_nvm ]
  63. [ compile seq.cpp : <define>BOOST_PP_VARIADICS=0 : seq_nvm ]
  64. [ compile slot.cpp : <define>BOOST_PP_VARIADICS=0 : slot_nvm ]
  65. [ compile stringize.cpp : <define>BOOST_PP_VARIADICS=0 : stringize_nvm ]
  66. [ compile tuple.cpp : <define>BOOST_PP_VARIADICS=0 : tuple_nvm ]
  67. ;
  68. alias preprocessor_c
  69. :
  70. [ compile arithmetic.c
  71. :
  72. : arithmetic_c
  73. ]
  74. [ compile array.c
  75. :
  76. : array_c
  77. ]
  78. [ compile comparison.c
  79. :
  80. : comparison_c
  81. ]
  82. [ compile control.c
  83. :
  84. : control_c
  85. ]
  86. [ compile debug.c
  87. :
  88. : debug_c
  89. ]
  90. [ compile facilities.c
  91. :
  92. : facilities_c
  93. ]
  94. [ compile list.c
  95. :
  96. : list_c
  97. ]
  98. [ compile logical.c
  99. :
  100. : logical_c
  101. ]
  102. [ compile punctuation.c
  103. :
  104. : punctuation_c
  105. ]
  106. [ compile selection.c
  107. :
  108. : selection_c
  109. ]
  110. [ compile seq.c
  111. :
  112. : seq_c
  113. ]
  114. [ compile slot.c
  115. :
  116. : slot_c
  117. ]
  118. [ compile stringize.c
  119. :
  120. : stringize_c
  121. ]
  122. [ compile tuple.c
  123. :
  124. : tuple_c
  125. ]
  126. [ compile variadic.c
  127. :
  128. : variadic_c
  129. ]
  130. ;
  131. alias preprocessor_c_nvm
  132. :
  133. [ compile arithmetic.c
  134. : <define>BOOST_PP_VARIADICS=0
  135. : arithmetic_c_nvm
  136. ]
  137. [ compile array.c
  138. : <define>BOOST_PP_VARIADICS=0
  139. : array_c_nvm
  140. ]
  141. [ compile comparison.c
  142. : <define>BOOST_PP_VARIADICS=0
  143. : comparison_c_nvm
  144. ]
  145. [ compile control.c
  146. : <define>BOOST_PP_VARIADICS=0
  147. : control_c_nvm
  148. ]
  149. [ compile debug.c
  150. : <define>BOOST_PP_VARIADICS=0
  151. : debug_c_nvm
  152. ]
  153. [ compile facilities.c
  154. : <define>BOOST_PP_VARIADICS=0
  155. : facilities_c_nvm
  156. ]
  157. [ compile list.c
  158. : <define>BOOST_PP_VARIADICS=0
  159. : list_c_nvm
  160. ]
  161. [ compile logical.c
  162. : <define>BOOST_PP_VARIADICS=0
  163. : logical_c_nvm
  164. ]
  165. [ compile selection.c
  166. : <define>BOOST_PP_VARIADICS=0
  167. : selection_c_nvm
  168. ]
  169. [ compile seq.c
  170. : <define>BOOST_PP_VARIADICS=0
  171. : seq_c_nvm
  172. ]
  173. [ compile slot.c
  174. : <define>BOOST_PP_VARIADICS=0
  175. : slot_c_nvm
  176. ]
  177. [ compile stringize.c
  178. : <define>BOOST_PP_VARIADICS=0
  179. : stringize_c_nvm
  180. ]
  181. [ compile tuple.c
  182. : <define>BOOST_PP_VARIADICS=0
  183. : tuple_c_nvm
  184. ]
  185. ;
  186. alias preprocessor_isempty : :
  187. <toolset>gcc
  188. <toolset-gcc:version>3.4
  189. ;
  190. alias preprocessor_isempty : :
  191. <toolset>gcc
  192. <toolset-gcc:version>4.1
  193. ;
  194. alias preprocessor_isempty : :
  195. <toolset>gcc
  196. <toolset-gcc:version>4.2
  197. ;
  198. alias preprocessor_isempty
  199. :
  200. [ compile isempty.cpp ]
  201. [ compile checkempty.cpp ]
  202. [ compile-fail isempty_variadic_standard_failure.cpp : <define>BOOST_PP_VARIADICS=1 ]
  203. [ compile-fail isempty_variadic_standard_failure2.cpp : <define>BOOST_PP_VARIADICS=1 ]
  204. [ compile vaopt.cpp ]
  205. ;
  206. alias preprocessor_isempty_nvm
  207. :
  208. [ compile isempty.cpp : <define>BOOST_PP_VARIADICS=0 : isempty_nvm ]
  209. ;
  210. alias preprocessor_isempty_c
  211. :
  212. [ compile isempty.c
  213. :
  214. : isempty_c
  215. ]
  216. [ compile-fail isempty_variadic_standard_failure.c
  217. : <define>BOOST_PP_VARIADICS=1
  218. : isempty_variadic_standard_failure_c
  219. ]
  220. [ compile-fail isempty_variadic_standard_failure2.c
  221. : <define>BOOST_PP_VARIADICS=1
  222. : isempty_variadic_standard_failure2_c
  223. ]
  224. ;
  225. alias preprocessor_isempty_c_nvm
  226. :
  227. [ compile isempty.c
  228. : <define>BOOST_PP_VARIADICS=0
  229. : isempty_c_nvm
  230. ]
  231. ;
  232. alias preprocessor_config
  233. :
  234. [ run config_info.cpp ]
  235. ;
  236. alias test_clang_cuda
  237. :
  238. [ compile [ cast _ cpp : clang_cuda.cu ]
  239. : <cxxflags>-nocudalib
  240. <cxxflags>-nocudainc
  241. <cxxflags>"-x cuda"
  242. : clang_cuda_cu
  243. ]
  244. ;
  245. explicit test_clang_cuda ;