Jamfile.v2 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. # Copyright Oliver Kowalke 2014.
  2. # Distributed under the Boost Software License, Version 1.0.
  3. # (See accompanying file LICENSE_1_0.txt or copy at
  4. # http://www.boost.org/LICENSE_1_0.txt)
  5. import common ;
  6. import feature ;
  7. import indirect ;
  8. import modules ;
  9. import os ;
  10. import path ;
  11. import testing ;
  12. import toolset ;
  13. import ../../config/checks/config : requires ;
  14. project boost/coroutine2/test
  15. : requirements
  16. <library>../../test/build//boost_unit_test_framework
  17. <library>/boost/context//boost_context
  18. <toolset>gcc,<segmented-stacks>on:<cxxflags>-fsplit-stack
  19. <toolset>gcc,<segmented-stacks>on:<cxxflags>-DBOOST_USE_SEGMENTED_STACKS
  20. <toolset>clang,<segmented-stacks>on:<cxxflags>-fsplit-stack
  21. <toolset>clang,<segmented-stacks>on:<cxxflags>-DBOOST_USE_SEGMENTED_STACKS
  22. <link>static
  23. <threading>multi
  24. <optimization>speed
  25. <variant>release
  26. ;
  27. rule native-impl ( properties * )
  28. {
  29. local result ;
  30. if ( <target-os>darwin in $(properties) || <target-os>android in $(properties) )
  31. {
  32. result = <build>no ;
  33. }
  34. else if ( ! ( <target-os>windows in $(properties) ) )
  35. {
  36. result = <context-impl>ucontext ;
  37. }
  38. else
  39. {
  40. result = <context-impl>winfib ;
  41. }
  42. return $(result) ;
  43. }
  44. test-suite minimal :
  45. [ run test_coroutine.cpp :
  46. : :
  47. <context-impl>fcontext
  48. [ requires cxx11_auto_declarations
  49. cxx11_constexpr
  50. cxx11_defaulted_functions
  51. cxx11_final
  52. cxx11_hdr_tuple
  53. cxx11_lambdas
  54. cxx11_noexcept
  55. cxx11_nullptr
  56. cxx11_rvalue_references
  57. cxx11_template_aliases
  58. cxx11_variadic_templates ]
  59. : test_coroutine_asm ]
  60. [ run test_coroutine.cpp :
  61. : :
  62. <conditional>@native-impl
  63. [ requires cxx11_auto_declarations
  64. cxx11_constexpr
  65. cxx11_defaulted_functions
  66. cxx11_final
  67. cxx11_hdr_tuple
  68. cxx11_lambdas
  69. cxx11_noexcept
  70. cxx11_nullptr
  71. cxx11_rvalue_references
  72. cxx11_template_aliases
  73. cxx11_variadic_templates ]
  74. : test_coroutine_native ] ;
  75. test-suite full :
  76. minimal ;
  77. test-suite extra ;
  78. explicit minimal ;
  79. explicit extra ;