2
0
mirror of https://github.com/boostorg/context.git synced 2026-02-02 20:52:18 +00:00
Files
context/test/Jamfile.v2
2024-05-04 23:28:40 -05:00

217 lines
6.0 KiB
Plaintext

# Boost.Context Library Tests Jamfile
# Copyright Oliver Kowalke 2009.
# 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)
import common ;
import feature ;
import indirect ;
import modules ;
import os ;
import testing ;
import toolset ;
import-search /boost/config/checks ;
import config : requires ;
using flags ;
project boost/context/test
: requirements
<library>/boost/array//boost_array
<library>/boost/lexical_cast//boost_lexical_cast
<library>/boost/context//boost_context
<library>/boost/variant//boost_variant
<target-os>linux,<toolset>gcc,<segmented-stacks>on:<cxxflags>-fsplit-stack
<target-os>linux,<toolset>gcc,<segmented-stacks>on:<cxxflags>-DBOOST_USE_SEGMENTED_STACKS
<toolset>clang,<segmented-stacks>on:<cxxflags>-fsplit-stack
<toolset>clang,<segmented-stacks>on:<cxxflags>-DBOOST_USE_SEGMENTED_STACKS
<link>static
<threading>multi
<variant>release
;
rule native-impl ( properties * )
{
local result ;
if ( <target-os>android in $(properties) ||
<target-os>darwin in $(properties) ||
<target-os>openbsd in $(properties) )
{
result = <build>no ;
}
else if ( ! ( <target-os>windows in $(properties) ) )
{
result = <context-impl>ucontext ;
}
else
{
result = <context-impl>winfib ;
}
return $(result) ;
}
obj is_libstdcxx : is_libstdcxx.cpp ;
explicit is_libstdcxx ;
local only-when-segmented-stack-is-available =
[ check-has-flag <cxxflags>-fsplit-stack : <segmented-stacks>on : <build>no ]
[ check-target-builds is_libstdcxx "is libstdc++" : : <build>no ]
;
test-suite minimal :
[ run test_invoke.cpp :
: :
[ requires cxx11_auto_declarations
cxx11_constexpr
cxx11_defaulted_functions
cxx11_final
cxx11_hdr_thread
cxx11_hdr_tuple
cxx11_lambdas
cxx11_noexcept
cxx11_nullptr
cxx11_rvalue_references
cxx11_template_aliases
cxx11_thread_local
cxx11_variadic_templates ] ]
[ run test_apply.cpp :
: :
[ requires cxx11_auto_declarations
cxx11_constexpr
cxx11_defaulted_functions
cxx11_final
cxx11_hdr_thread
cxx11_hdr_tuple
cxx11_lambdas
cxx11_noexcept
cxx11_nullptr
cxx11_rvalue_references
cxx11_template_aliases
cxx11_thread_local
cxx11_variadic_templates ] ]
[ run test_fiber.cpp :
: :
<context-impl>fcontext
[ requires cxx11_auto_declarations
cxx11_constexpr
cxx11_defaulted_functions
cxx11_final
cxx11_hdr_thread
cxx11_hdr_tuple
cxx11_lambdas
cxx11_noexcept
cxx11_nullptr
cxx11_rvalue_references
cxx11_template_aliases
cxx11_thread_local
cxx11_variadic_templates ]
: test_fiber_asm ]
[ run test_fiber.cpp :
: :
<conditional>@native-impl
[ requires cxx11_auto_declarations
cxx11_constexpr
cxx11_defaulted_functions
cxx11_final
cxx11_hdr_thread
cxx11_hdr_tuple
cxx11_lambdas
cxx11_noexcept
cxx11_nullptr
cxx11_rvalue_references
cxx11_template_aliases
cxx11_thread_local
cxx11_variadic_templates ]
: test_fiber_native ]
[ run test_fiber.cpp :
: :
<context-impl>ucontext
$(only-when-segmented-stack-is-available)
[ requires cxx11_auto_declarations
cxx11_constexpr
cxx11_defaulted_functions
cxx11_final
cxx11_hdr_thread
cxx11_hdr_tuple
cxx11_lambdas
cxx11_noexcept
cxx11_nullptr
cxx11_rvalue_references
cxx11_template_aliases
cxx11_thread_local
cxx11_variadic_templates ]
: test_fiber_segmented ]
[ run test_callcc.cpp :
: :
<context-impl>fcontext
[ requires cxx11_auto_declarations
cxx11_constexpr
cxx11_defaulted_functions
cxx11_final
cxx11_hdr_thread
cxx11_hdr_tuple
cxx11_lambdas
cxx11_noexcept
cxx11_nullptr
cxx11_rvalue_references
cxx11_template_aliases
cxx11_thread_local
cxx11_variadic_templates ]
: test_callcc_asm ]
[ run test_callcc.cpp :
: :
<conditional>@native-impl
[ requires cxx11_auto_declarations
cxx11_constexpr
cxx11_defaulted_functions
cxx11_final
cxx11_hdr_thread
cxx11_hdr_tuple
cxx11_lambdas
cxx11_noexcept
cxx11_nullptr
cxx11_rvalue_references
cxx11_template_aliases
cxx11_thread_local
cxx11_variadic_templates ]
: test_callcc_native ]
[ run test_callcc.cpp :
: :
<context-impl>ucontext
$(only-when-segmented-stack-is-available)
[ requires cxx11_auto_declarations
cxx11_constexpr
cxx11_defaulted_functions
cxx11_final
cxx11_hdr_thread
cxx11_hdr_tuple
cxx11_lambdas
cxx11_noexcept
cxx11_nullptr
cxx11_rvalue_references
cxx11_template_aliases
cxx11_thread_local
cxx11_variadic_templates ]
: test_callcc_segmented ] ;
test-suite full :
minimal ;
test-suite fc :
[ run test_fcontext.cpp :
: :
] ;
explicit minimal ;
explicit fc ;