mirror of
https://github.com/boostorg/config.git
synced 2025-07-30 04:17:16 +02:00
Revert "Revert "Add new build-time configuration feature.""
This reverts commit 4cf1376ec2
.
Update tests to not use the run rule, but run the programs by other means instead.
This commit is contained in:
569
checks/Jamfile.v2
Normal file
569
checks/Jamfile.v2
Normal file
@ -0,0 +1,569 @@
|
||||
#
|
||||
# *** DO NOT EDIT THIS FILE BY HAND ***
|
||||
# This file was automatically generated on Thu Jun 12 13:21:03 2014
|
||||
# by libs/config/tools/generate.cpp
|
||||
# Copyright John Maddock.
|
||||
# Use, modification and distribution are subject to 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 modules ;
|
||||
import path ;
|
||||
|
||||
actions simple_run_action
|
||||
{
|
||||
$(>) > $(<)
|
||||
}
|
||||
|
||||
rule run-simple ( sources + : args * : input-files * : requirements * : target-name )
|
||||
{
|
||||
obj $(target-name)_obj : $(sources) : $(requirements) ;
|
||||
explicit $(target-name)_obj ;
|
||||
exe $(target-name)_exe : $(target-name)_obj : $(requirements) ;
|
||||
explicit $(target-name)_exe ;
|
||||
#testing.capture-output $(target-name)_output : $(target-name) : $(requirements) <name>$(target-name) ;
|
||||
make $(target-name).output : $(target-name)_exe : @simple_run_action ;
|
||||
explicit $(target-name).output ;
|
||||
}
|
||||
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TWO_ARG_USE_FACET : two_arg_use_facet ;
|
||||
alias two_arg_use_facet : two_arg_use_facet.output ;
|
||||
explicit two_arg_use_facet ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_BETHREADS : bethreads ;
|
||||
alias bethreads : bethreads.output ;
|
||||
explicit bethreads ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_CLOCK_GETTIME : clock_gettime ;
|
||||
alias clock_gettime : clock_gettime.output ;
|
||||
explicit clock_gettime ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_DIRENT_H : dirent_h ;
|
||||
alias dirent_h : dirent_h.output ;
|
||||
explicit dirent_h ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_EXPM1 : expm1 ;
|
||||
alias expm1 : expm1.output ;
|
||||
explicit expm1 ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_FTIME : ftime ;
|
||||
alias ftime : ftime.output ;
|
||||
explicit ftime ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_GETSYSTEMTIMEASFILETIME : getsystemtimeasfiletime ;
|
||||
alias getsystemtimeasfiletime : getsystemtimeasfiletime.output ;
|
||||
explicit getsystemtimeasfiletime ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_GETTIMEOFDAY : gettimeofday ;
|
||||
alias gettimeofday : gettimeofday.output ;
|
||||
explicit gettimeofday ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_HASH : hash ;
|
||||
alias hash : hash.output ;
|
||||
explicit hash ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_INT128 : int128 ;
|
||||
alias int128 : int128.output ;
|
||||
explicit int128 ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_LOG1P : log1p ;
|
||||
alias log1p : log1p.output ;
|
||||
explicit log1p ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_LONG_LONG : long_long ;
|
||||
alias long_long : long_long.output ;
|
||||
explicit long_long ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_MACRO_USE_FACET : macro_use_facet ;
|
||||
alias macro_use_facet : macro_use_facet.output ;
|
||||
explicit macro_use_facet ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_MS_INT64 : ms_int64 ;
|
||||
alias ms_int64 : ms_int64.output ;
|
||||
explicit ms_int64 ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_NANOSLEEP : nanosleep ;
|
||||
alias nanosleep : nanosleep.output ;
|
||||
explicit nanosleep ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_NL_TYPES_H : nl_types_h ;
|
||||
alias nl_types_h : nl_types_h.output ;
|
||||
explicit nl_types_h ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_NRVO : nrvo ;
|
||||
alias nrvo : nrvo.output ;
|
||||
explicit nrvo ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_PARTIAL_STD_ALLOCATOR : partial_std_allocator ;
|
||||
alias partial_std_allocator : partial_std_allocator.output ;
|
||||
explicit partial_std_allocator ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_PTHREADS : pthreads ;
|
||||
alias pthreads : pthreads.output ;
|
||||
explicit pthreads ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_PTHREAD_DELAY_NP : pthread_delay_np ;
|
||||
alias pthread_delay_np : pthread_delay_np.output ;
|
||||
explicit pthread_delay_np ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE : pthread_mutexattr_settype ;
|
||||
alias pthread_mutexattr_settype : pthread_mutexattr_settype.output ;
|
||||
explicit pthread_mutexattr_settype ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_PTHREAD_YIELD : pthread_yield ;
|
||||
alias pthread_yield : pthread_yield.output ;
|
||||
explicit pthread_yield ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_RVALUE_REFS : rvalue_refs ;
|
||||
alias rvalue_refs : rvalue_refs.output ;
|
||||
explicit rvalue_refs ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_SCHED_YIELD : sched_yield ;
|
||||
alias sched_yield : sched_yield.output ;
|
||||
explicit sched_yield ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_SGI_TYPE_TRAITS : sgi_type_traits ;
|
||||
alias sgi_type_traits : sgi_type_traits.output ;
|
||||
explicit sgi_type_traits ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_SIGACTION : sigaction ;
|
||||
alias sigaction : sigaction.output ;
|
||||
explicit sigaction ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_SLIST : slist ;
|
||||
alias slist : slist.output ;
|
||||
explicit slist ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_STATIC_ASSERT : static_assert ;
|
||||
alias static_assert : static_assert.output ;
|
||||
explicit static_assert ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_STDINT_H : stdint_h ;
|
||||
alias stdint_h : stdint_h.output ;
|
||||
explicit stdint_h ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_STLP_USE_FACET : stlp_use_facet ;
|
||||
alias stlp_use_facet : stlp_use_facet.output ;
|
||||
explicit stlp_use_facet ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_ARRAY : tr1_array ;
|
||||
alias tr1_array : tr1_array.output ;
|
||||
explicit tr1_array ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_BIND : tr1_bind ;
|
||||
alias tr1_bind : tr1_bind.output ;
|
||||
explicit tr1_bind ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_COMPLEX_OVERLOADS : tr1_complex_overloads ;
|
||||
alias tr1_complex_overloads : tr1_complex_overloads.output ;
|
||||
explicit tr1_complex_overloads ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG : tr1_complex_inverse_trig ;
|
||||
alias tr1_complex_inverse_trig : tr1_complex_inverse_trig.output ;
|
||||
explicit tr1_complex_inverse_trig ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_FUNCTION : tr1_function ;
|
||||
alias tr1_function : tr1_function.output ;
|
||||
explicit tr1_function ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_HASH : tr1_hash ;
|
||||
alias tr1_hash : tr1_hash.output ;
|
||||
explicit tr1_hash ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_MEM_FN : tr1_mem_fn ;
|
||||
alias tr1_mem_fn : tr1_mem_fn.output ;
|
||||
explicit tr1_mem_fn ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_RANDOM : tr1_random ;
|
||||
alias tr1_random : tr1_random.output ;
|
||||
explicit tr1_random ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_REFERENCE_WRAPPER : tr1_reference_wrapper ;
|
||||
alias tr1_reference_wrapper : tr1_reference_wrapper.output ;
|
||||
explicit tr1_reference_wrapper ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_REGEX : tr1_regex ;
|
||||
alias tr1_regex : tr1_regex.output ;
|
||||
explicit tr1_regex ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_RESULT_OF : tr1_result_of ;
|
||||
alias tr1_result_of : tr1_result_of.output ;
|
||||
explicit tr1_result_of ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_SHARED_PTR : tr1_shared_ptr ;
|
||||
alias tr1_shared_ptr : tr1_shared_ptr.output ;
|
||||
explicit tr1_shared_ptr ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_TUPLE : tr1_tuple ;
|
||||
alias tr1_tuple : tr1_tuple.output ;
|
||||
explicit tr1_tuple ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_TYPE_TRAITS : tr1_type_traits ;
|
||||
alias tr1_type_traits : tr1_type_traits.output ;
|
||||
explicit tr1_type_traits ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_UNORDERED_MAP : tr1_unordered_map ;
|
||||
alias tr1_unordered_map : tr1_unordered_map.output ;
|
||||
explicit tr1_unordered_map ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_UNORDERED_SET : tr1_unordered_set ;
|
||||
alias tr1_unordered_set : tr1_unordered_set.output ;
|
||||
explicit tr1_unordered_set ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_TR1_UTILITY : tr1_utility ;
|
||||
alias tr1_utility : tr1_utility.output ;
|
||||
explicit tr1_utility ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_UNISTD_H : unistd_h ;
|
||||
alias unistd_h : unistd_h.output ;
|
||||
explicit unistd_h ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_VARIADIC_TMPL : variadic_tmpl ;
|
||||
alias variadic_tmpl : variadic_tmpl.output ;
|
||||
explicit variadic_tmpl ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_MSVC6_MEMBER_TEMPLATES : boost_msvc6_member_templates ;
|
||||
alias boost_msvc6_member_templates : boost_msvc6_member_templates.output ;
|
||||
explicit boost_msvc6_member_templates ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_MSVC_STD_ITERATOR : boost_msvc_std_iterator ;
|
||||
alias boost_msvc_std_iterator : boost_msvc_std_iterator.output ;
|
||||
explicit boost_msvc_std_iterator ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_HAS_WINTHREADS : winthreads ;
|
||||
alias winthreads : winthreads.output ;
|
||||
explicit winthreads ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_ADL_BARRIER : adl_barrier ;
|
||||
alias adl_barrier : adl_barrier.output ;
|
||||
explicit adl_barrier ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP : argument_dependent_lookup ;
|
||||
alias argument_dependent_lookup : argument_dependent_lookup.output ;
|
||||
explicit argument_dependent_lookup ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS : array_type_specializations ;
|
||||
alias array_type_specializations : array_type_specializations.output ;
|
||||
explicit array_type_specializations ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_AUTO_DECLARATIONS : cxx11_auto_declarations ;
|
||||
alias cxx11_auto_declarations : cxx11_auto_declarations.output ;
|
||||
explicit cxx11_auto_declarations ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS : cxx11_auto_multideclarations ;
|
||||
alias cxx11_auto_multideclarations : cxx11_auto_multideclarations.output ;
|
||||
explicit cxx11_auto_multideclarations ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_AUTO_PTR : auto_ptr ;
|
||||
alias auto_ptr : auto_ptr.output ;
|
||||
explicit auto_ptr ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_BCB_PARTIAL_SPECIALIZATION_BUG : boost_bcb_partial_specialization_bug ;
|
||||
alias boost_bcb_partial_specialization_bug : boost_bcb_partial_specialization_bug.output ;
|
||||
explicit boost_bcb_partial_specialization_bug ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_CHAR16_T : cxx11_char16_t ;
|
||||
alias cxx11_char16_t : cxx11_char16_t.output ;
|
||||
explicit cxx11_char16_t ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_CHAR32_T : cxx11_char32_t ;
|
||||
alias cxx11_char32_t : cxx11_char32_t.output ;
|
||||
explicit cxx11_char32_t ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_COMPLETE_VALUE_INITIALIZATION : complete_value_initialization ;
|
||||
alias complete_value_initialization : complete_value_initialization.output ;
|
||||
explicit complete_value_initialization ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_CONSTEXPR : cxx11_constexpr ;
|
||||
alias cxx11_constexpr : cxx11_constexpr.output ;
|
||||
explicit cxx11_constexpr ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CTYPE_FUNCTIONS : ctype_functions ;
|
||||
alias ctype_functions : ctype_functions.output ;
|
||||
explicit ctype_functions ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CV_SPECIALIZATIONS : cv_specializations ;
|
||||
alias cv_specializations : cv_specializations.output ;
|
||||
explicit cv_specializations ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CV_VOID_SPECIALIZATIONS : cv_void_specializations ;
|
||||
alias cv_void_specializations : cv_void_specializations.output ;
|
||||
explicit cv_void_specializations ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CWCHAR : cwchar ;
|
||||
alias cwchar : cwchar.output ;
|
||||
explicit cwchar ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CWCTYPE : cwctype ;
|
||||
alias cwctype : cwctype.output ;
|
||||
explicit cwctype ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_ADDRESSOF : cxx11_addressof ;
|
||||
alias cxx11_addressof : cxx11_addressof.output ;
|
||||
explicit cxx11_addressof ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_ALIGNAS : cxx11_alignas ;
|
||||
alias cxx11_alignas : cxx11_alignas.output ;
|
||||
explicit cxx11_alignas ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_ALLOCATOR : cxx11_allocator ;
|
||||
alias cxx11_allocator : cxx11_allocator.output ;
|
||||
explicit cxx11_allocator ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_ATOMIC_SMART_PTR : cxx11_atomic_smart_ptr ;
|
||||
alias cxx11_atomic_smart_ptr : cxx11_atomic_smart_ptr.output ;
|
||||
explicit cxx11_atomic_smart_ptr ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_ARRAY : cxx11_hdr_array ;
|
||||
alias cxx11_hdr_array : cxx11_hdr_array.output ;
|
||||
explicit cxx11_hdr_array ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_ATOMIC : cxx11_hdr_atomic ;
|
||||
alias cxx11_hdr_atomic : cxx11_hdr_atomic.output ;
|
||||
explicit cxx11_hdr_atomic ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_CHRONO : cxx11_hdr_chrono ;
|
||||
alias cxx11_hdr_chrono : cxx11_hdr_chrono.output ;
|
||||
explicit cxx11_hdr_chrono ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_CODECVT : cxx11_hdr_codecvt ;
|
||||
alias cxx11_hdr_codecvt : cxx11_hdr_codecvt.output ;
|
||||
explicit cxx11_hdr_codecvt ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_CONDITION_VARIABLE : cxx11_hdr_condition_variable ;
|
||||
alias cxx11_hdr_condition_variable : cxx11_hdr_condition_variable.output ;
|
||||
explicit cxx11_hdr_condition_variable ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_FORWARD_LIST : cxx11_hdr_forward_list ;
|
||||
alias cxx11_hdr_forward_list : cxx11_hdr_forward_list.output ;
|
||||
explicit cxx11_hdr_forward_list ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_FUTURE : cxx11_hdr_future ;
|
||||
alias cxx11_hdr_future : cxx11_hdr_future.output ;
|
||||
explicit cxx11_hdr_future ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_INITIALIZER_LIST : cxx11_hdr_initializer_list ;
|
||||
alias cxx11_hdr_initializer_list : cxx11_hdr_initializer_list.output ;
|
||||
explicit cxx11_hdr_initializer_list ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_MUTEX : cxx11_hdr_mutex ;
|
||||
alias cxx11_hdr_mutex : cxx11_hdr_mutex.output ;
|
||||
explicit cxx11_hdr_mutex ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_RANDOM : cxx11_hdr_random ;
|
||||
alias cxx11_hdr_random : cxx11_hdr_random.output ;
|
||||
explicit cxx11_hdr_random ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_RATIO : cxx11_hdr_ratio ;
|
||||
alias cxx11_hdr_ratio : cxx11_hdr_ratio.output ;
|
||||
explicit cxx11_hdr_ratio ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_REGEX : cxx11_hdr_regex ;
|
||||
alias cxx11_hdr_regex : cxx11_hdr_regex.output ;
|
||||
explicit cxx11_hdr_regex ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_SYSTEM_ERROR : cxx11_hdr_system_error ;
|
||||
alias cxx11_hdr_system_error : cxx11_hdr_system_error.output ;
|
||||
explicit cxx11_hdr_system_error ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_THREAD : cxx11_hdr_thread ;
|
||||
alias cxx11_hdr_thread : cxx11_hdr_thread.output ;
|
||||
explicit cxx11_hdr_thread ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_TUPLE : cxx11_hdr_tuple ;
|
||||
alias cxx11_hdr_tuple : cxx11_hdr_tuple.output ;
|
||||
explicit cxx11_hdr_tuple ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_TYPEINDEX : cxx11_hdr_typeindex ;
|
||||
alias cxx11_hdr_typeindex : cxx11_hdr_typeindex.output ;
|
||||
explicit cxx11_hdr_typeindex ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_TYPE_TRAITS : cxx11_hdr_type_traits ;
|
||||
alias cxx11_hdr_type_traits : cxx11_hdr_type_traits.output ;
|
||||
explicit cxx11_hdr_type_traits ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_UNORDERED_MAP : cxx11_hdr_unordered_map ;
|
||||
alias cxx11_hdr_unordered_map : cxx11_hdr_unordered_map.output ;
|
||||
explicit cxx11_hdr_unordered_map ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_UNORDERED_SET : cxx11_hdr_unordered_set ;
|
||||
alias cxx11_hdr_unordered_set : cxx11_hdr_unordered_set.output ;
|
||||
explicit cxx11_hdr_unordered_set ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_INLINE_NAMESPACES : cxx11_inline_namespaces ;
|
||||
alias cxx11_inline_namespaces : cxx11_inline_namespaces.output ;
|
||||
explicit cxx11_inline_namespaces ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_NUMERIC_LIMITS : cxx11_numeric_limits ;
|
||||
alias cxx11_numeric_limits : cxx11_numeric_limits.output ;
|
||||
explicit cxx11_numeric_limits ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_REF_QUALIFIERS : cxx11_ref_qualifiers ;
|
||||
alias cxx11_ref_qualifiers : cxx11_ref_qualifiers.output ;
|
||||
explicit cxx11_ref_qualifiers ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_SMART_PTR : cxx11_smart_ptr ;
|
||||
alias cxx11_smart_ptr : cxx11_smart_ptr.output ;
|
||||
explicit cxx11_smart_ptr ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_STD_ALIGN : cxx11_std_align ;
|
||||
alias cxx11_std_align : cxx11_std_align.output ;
|
||||
explicit cxx11_std_align ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_TRAILING_RESULT_TYPES : cxx11_trailing_result_types ;
|
||||
alias cxx11_trailing_result_types : cxx11_trailing_result_types.output ;
|
||||
explicit cxx11_trailing_result_types ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_USER_DEFINED_LITERALS : cxx11_user_defined_literals ;
|
||||
alias cxx11_user_defined_literals : cxx11_user_defined_literals.output ;
|
||||
explicit cxx11_user_defined_literals ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_HDR_FUNCTIONAL : cxx11_hdr_functional ;
|
||||
alias cxx11_hdr_functional : cxx11_hdr_functional.output ;
|
||||
explicit cxx11_hdr_functional ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_DECLTYPE : cxx11_decltype ;
|
||||
alias cxx11_decltype : cxx11_decltype.output ;
|
||||
explicit cxx11_decltype ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_DECLTYPE_N3276 : cxx11_decltype_n3276 ;
|
||||
alias cxx11_decltype_n3276 : cxx11_decltype_n3276.output ;
|
||||
explicit cxx11_decltype_n3276 ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_DEDUCED_TYPENAME : boost_deduced_typename ;
|
||||
alias boost_deduced_typename : boost_deduced_typename.output ;
|
||||
explicit boost_deduced_typename ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_DEFAULTED_FUNCTIONS : cxx11_defaulted_functions ;
|
||||
alias cxx11_defaulted_functions : cxx11_defaulted_functions.output ;
|
||||
explicit cxx11_defaulted_functions ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_DELETED_FUNCTIONS : cxx11_deleted_functions ;
|
||||
alias cxx11_deleted_functions : cxx11_deleted_functions.output ;
|
||||
explicit cxx11_deleted_functions ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_DEPENDENT_NESTED_DERIVATIONS : dependent_nested_derivations ;
|
||||
alias dependent_nested_derivations : dependent_nested_derivations.output ;
|
||||
explicit dependent_nested_derivations ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS : dependent_types_in_template_value_parameters ;
|
||||
alias dependent_types_in_template_value_parameters : dependent_types_in_template_value_parameters.output ;
|
||||
explicit dependent_types_in_template_value_parameters ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_EXCEPTIONS : exceptions ;
|
||||
alias exceptions : exceptions.output ;
|
||||
explicit exceptions ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_EXCEPTION_STD_NAMESPACE : exception_std_namespace ;
|
||||
alias exception_std_namespace : exception_std_namespace.output ;
|
||||
explicit exception_std_namespace ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS : cxx11_explicit_conversion_operators ;
|
||||
alias cxx11_explicit_conversion_operators : cxx11_explicit_conversion_operators.output ;
|
||||
explicit cxx11_explicit_conversion_operators ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS : explicit_function_template_arguments ;
|
||||
alias explicit_function_template_arguments : explicit_function_template_arguments.output ;
|
||||
explicit explicit_function_template_arguments ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_EXTERN_TEMPLATE : cxx11_extern_template ;
|
||||
alias cxx11_extern_template : cxx11_extern_template.output ;
|
||||
explicit cxx11_extern_template ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_FENV_H : fenv_h ;
|
||||
alias fenv_h : fenv_h.output ;
|
||||
explicit fenv_h ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS : cxx11_function_template_default_args ;
|
||||
alias cxx11_function_template_default_args : cxx11_function_template_default_args.output ;
|
||||
explicit cxx11_function_template_default_args ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS : function_type_specializations ;
|
||||
alias function_type_specializations : function_type_specializations.output ;
|
||||
explicit function_type_specializations ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_FUNCTION_TEMPLATE_ORDERING : function_template_ordering ;
|
||||
alias function_template_ordering : function_template_ordering.output ;
|
||||
explicit function_template_ordering ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_MS_INT64_NUMERIC_LIMITS : ms_int64_numeric_limits ;
|
||||
alias ms_int64_numeric_limits : ms_int64_numeric_limits.output ;
|
||||
explicit ms_int64_numeric_limits ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_INCLASS_MEMBER_INITIALIZATION : inclass_member_initialization ;
|
||||
alias inclass_member_initialization : inclass_member_initialization.output ;
|
||||
explicit inclass_member_initialization ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_INTEGRAL_INT64_T : integral_int64_t ;
|
||||
alias integral_int64_t : integral_int64_t.output ;
|
||||
explicit integral_int64_t ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_IOSFWD : iosfwd ;
|
||||
alias iosfwd : iosfwd.output ;
|
||||
explicit iosfwd ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_IOSTREAM : iostream ;
|
||||
alias iostream : iostream.output ;
|
||||
explicit iostream ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_IS_ABSTRACT : is_abstract ;
|
||||
alias is_abstract : is_abstract.output ;
|
||||
explicit is_abstract ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS : templated_iterator_constructors ;
|
||||
alias templated_iterator_constructors : templated_iterator_constructors.output ;
|
||||
explicit templated_iterator_constructors ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_LAMBDAS : cxx11_lambdas ;
|
||||
alias cxx11_lambdas : cxx11_lambdas.output ;
|
||||
explicit cxx11_lambdas ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_LIMITS : limits ;
|
||||
alias limits : limits.output ;
|
||||
explicit limits ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS : limits_compile_time_constants ;
|
||||
alias limits_compile_time_constants : limits_compile_time_constants.output ;
|
||||
explicit limits_compile_time_constants ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_LONG_LONG_NUMERIC_LIMITS : long_long_numeric_limits ;
|
||||
alias long_long_numeric_limits : long_long_numeric_limits.output ;
|
||||
explicit long_long_numeric_limits ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_LONG_LONG : long_long ;
|
||||
alias long_long : long_long.output ;
|
||||
explicit long_long ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS : member_function_specializations ;
|
||||
alias member_function_specializations : member_function_specializations.output ;
|
||||
explicit member_function_specializations ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_MEMBER_TEMPLATES : member_templates ;
|
||||
alias member_templates : member_templates.output ;
|
||||
explicit member_templates ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_MEMBER_TEMPLATE_FRIENDS : member_template_friends ;
|
||||
alias member_template_friends : member_template_friends.output ;
|
||||
explicit member_template_friends ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_MEMBER_TEMPLATE_KEYWORD : member_template_keyword ;
|
||||
alias member_template_keyword : member_template_keyword.output ;
|
||||
explicit member_template_keyword ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS : pointer_to_member_template_parameters ;
|
||||
alias pointer_to_member_template_parameters : pointer_to_member_template_parameters.output ;
|
||||
explicit pointer_to_member_template_parameters ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_NESTED_FRIENDSHIP : nested_friendship ;
|
||||
alias nested_friendship : nested_friendship.output ;
|
||||
explicit nested_friendship ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_NOEXCEPT : cxx11_noexcept ;
|
||||
alias cxx11_noexcept : cxx11_noexcept.output ;
|
||||
explicit cxx11_noexcept ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_NULLPTR : cxx11_nullptr ;
|
||||
alias cxx11_nullptr : cxx11_nullptr.output ;
|
||||
explicit cxx11_nullptr ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_OPERATORS_IN_NAMESPACE : operators_in_namespace ;
|
||||
alias operators_in_namespace : operators_in_namespace.output ;
|
||||
explicit operators_in_namespace ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION : template_partial_specialization ;
|
||||
alias template_partial_specialization : template_partial_specialization.output ;
|
||||
explicit template_partial_specialization ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS : partial_specialization_implicit_default_args ;
|
||||
alias partial_specialization_implicit_default_args : partial_specialization_implicit_default_args.output ;
|
||||
explicit partial_specialization_implicit_default_args ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_PRIVATE_IN_AGGREGATE : private_in_aggregate ;
|
||||
alias private_in_aggregate : private_in_aggregate.output ;
|
||||
explicit private_in_aggregate ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_POINTER_TO_MEMBER_CONST : pointer_to_member_const ;
|
||||
alias pointer_to_member_const : pointer_to_member_const.output ;
|
||||
explicit pointer_to_member_const ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_RANGE_BASED_FOR : cxx11_range_based_for ;
|
||||
alias cxx11_range_based_for : cxx11_range_based_for.output ;
|
||||
explicit cxx11_range_based_for ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_RAW_LITERALS : cxx11_raw_literals ;
|
||||
alias cxx11_raw_literals : cxx11_raw_literals.output ;
|
||||
explicit cxx11_raw_literals ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_UNREACHABLE_RETURN_DETECTION : unreachable_return_detection ;
|
||||
alias unreachable_return_detection : unreachable_return_detection.output ;
|
||||
explicit unreachable_return_detection ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_RTTI : rtti ;
|
||||
alias rtti : rtti.output ;
|
||||
explicit rtti ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_RVALUE_REFERENCES : cxx11_rvalue_references ;
|
||||
alias cxx11_rvalue_references : cxx11_rvalue_references.output ;
|
||||
explicit cxx11_rvalue_references ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_SCOPED_ENUMS : cxx11_scoped_enums ;
|
||||
alias cxx11_scoped_enums : cxx11_scoped_enums.output ;
|
||||
explicit cxx11_scoped_enums ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_SFINAE : sfinae ;
|
||||
alias sfinae : sfinae.output ;
|
||||
explicit sfinae ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_SFINAE_EXPR : sfinae_expr ;
|
||||
alias sfinae_expr : sfinae_expr.output ;
|
||||
explicit sfinae_expr ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_STRINGSTREAM : stringstream ;
|
||||
alias stringstream : stringstream.output ;
|
||||
explicit stringstream ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_STATIC_ASSERT : cxx11_static_assert ;
|
||||
alias cxx11_static_assert : cxx11_static_assert.output ;
|
||||
explicit cxx11_static_assert ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_STDC_NAMESPACE : stdc_namespace ;
|
||||
alias stdc_namespace : stdc_namespace.output ;
|
||||
explicit stdc_namespace ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_STD_ALLOCATOR : std_allocator ;
|
||||
alias std_allocator : std_allocator.output ;
|
||||
explicit std_allocator ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_STD_DISTANCE : std_distance ;
|
||||
alias std_distance : std_distance.output ;
|
||||
explicit std_distance ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_STD_ITERATOR : std_iterator ;
|
||||
alias std_iterator : std_iterator.output ;
|
||||
explicit std_iterator ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_STD_ITERATOR_TRAITS : std_iterator_traits ;
|
||||
alias std_iterator_traits : std_iterator_traits.output ;
|
||||
explicit std_iterator_traits ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_STD_LOCALE : std_locale ;
|
||||
alias std_locale : std_locale.output ;
|
||||
explicit std_locale ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_STD_MESSAGES : std_messages ;
|
||||
alias std_messages : std_messages.output ;
|
||||
explicit std_messages ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_STD_MIN_MAX : std_min_max ;
|
||||
alias std_min_max : std_min_max.output ;
|
||||
explicit std_min_max ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN : std_output_iterator_assign ;
|
||||
alias std_output_iterator_assign : std_output_iterator_assign.output ;
|
||||
explicit std_output_iterator_assign ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_STD_TYPEINFO : std_typeinfo ;
|
||||
alias std_typeinfo : std_typeinfo.output ;
|
||||
explicit std_typeinfo ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_STD_USE_FACET : std_use_facet ;
|
||||
alias std_use_facet : std_use_facet.output ;
|
||||
explicit std_use_facet ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_STD_WSTREAMBUF : std_wstreambuf ;
|
||||
alias std_wstreambuf : std_wstreambuf.output ;
|
||||
explicit std_wstreambuf ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_STD_WSTRING : std_wstring ;
|
||||
alias std_wstring : std_wstring.output ;
|
||||
explicit std_wstring ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_SWPRINTF : swprintf ;
|
||||
alias swprintf : swprintf.output ;
|
||||
explicit swprintf ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_TEMPLATE_ALIASES : cxx11_template_aliases ;
|
||||
alias cxx11_template_aliases : cxx11_template_aliases.output ;
|
||||
explicit cxx11_template_aliases ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_TEMPLATED_IOSTREAMS : templated_iostreams ;
|
||||
alias templated_iostreams : templated_iostreams.output ;
|
||||
explicit templated_iostreams ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_TEMPLATE_TEMPLATES : template_templates ;
|
||||
alias template_templates : template_templates.output ;
|
||||
explicit template_templates ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS : cxx11_local_class_template_parameters ;
|
||||
alias cxx11_local_class_template_parameters : cxx11_local_class_template_parameters.output ;
|
||||
explicit cxx11_local_class_template_parameters ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_TWO_PHASE_NAME_LOOKUP : two_phase_name_lookup ;
|
||||
alias two_phase_name_lookup : two_phase_name_lookup.output ;
|
||||
explicit two_phase_name_lookup ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_TYPEID : typeid ;
|
||||
alias typeid : typeid.output ;
|
||||
explicit typeid ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_TYPENAME_WITH_CTOR : typename_with_ctor ;
|
||||
alias typename_with_ctor : typename_with_ctor.output ;
|
||||
explicit typename_with_ctor ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_UNICODE_LITERALS : cxx11_unicode_literals ;
|
||||
alias cxx11_unicode_literals : cxx11_unicode_literals.output ;
|
||||
explicit cxx11_unicode_literals ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX : cxx11_unified_initialization_syntax ;
|
||||
alias cxx11_unified_initialization_syntax : cxx11_unified_initialization_syntax.output ;
|
||||
explicit cxx11_unified_initialization_syntax ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL : boost_function_scope_using_declaration_breaks_adl ;
|
||||
alias boost_function_scope_using_declaration_breaks_adl : boost_function_scope_using_declaration_breaks_adl.output ;
|
||||
explicit boost_function_scope_using_declaration_breaks_adl ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE : using_declaration_overloads_from_typename_base ;
|
||||
alias using_declaration_overloads_from_typename_base : using_declaration_overloads_from_typename_base.output ;
|
||||
explicit using_declaration_overloads_from_typename_base ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_USING_TEMPLATE : using_template ;
|
||||
alias using_template : using_template.output ;
|
||||
explicit using_template ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_VARIADIC_MACROS : cxx11_variadic_macros ;
|
||||
alias cxx11_variadic_macros : cxx11_variadic_macros.output ;
|
||||
explicit cxx11_variadic_macros ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_CXX11_VARIADIC_TEMPLATES : cxx11_variadic_templates ;
|
||||
alias cxx11_variadic_templates : cxx11_variadic_templates.output ;
|
||||
explicit cxx11_variadic_templates ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_VOID_RETURNS : void_returns ;
|
||||
alias void_returns : void_returns.output ;
|
||||
explicit void_returns ;
|
||||
run-simple test_case.cpp : : : <define>TEST_BOOST_NO_INTRINSIC_WCHAR_T : intrinsic_wchar_t ;
|
||||
alias intrinsic_wchar_t : intrinsic_wchar_t.output ;
|
||||
explicit intrinsic_wchar_t ;
|
||||
|
17
checks/config.jam
Normal file
17
checks/config.jam
Normal file
@ -0,0 +1,17 @@
|
||||
# Copyright John Maddock.
|
||||
# Use, modification and distribution are subject to 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)
|
||||
|
||||
rule requires ( names + )
|
||||
{
|
||||
local result ;
|
||||
for name in $(names)
|
||||
{
|
||||
local msg = "Boost.Config Feature Check: " ;
|
||||
msg += $(name) ;
|
||||
result += [ check-target-builds $(__name__:D)//$(name) $(msg:J=) : : <build>no ] ;
|
||||
}
|
||||
return $(result) ;
|
||||
}
|
||||
|
737
checks/test_case.cpp
Normal file
737
checks/test_case.cpp
Normal file
@ -0,0 +1,737 @@
|
||||
// This file was automatically generated on Thu Jun 12 13:21:03 2014
|
||||
// by libs/config/tools/generate.cpp
|
||||
// Copyright John Maddock 2002-4.
|
||||
// Use, modification and distribution are subject to 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)
|
||||
|
||||
// See http://www.boost.org/libs/config for the most recent version.//
|
||||
// Revision $Id$
|
||||
//
|
||||
|
||||
#ifdef TEST_BOOST_HAS_TWO_ARG_USE_FACET
|
||||
# include "../test/boost_has_2arg_use_facet.ipp"
|
||||
namespace test = boost_has_two_arg_use_facet;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_BETHREADS
|
||||
# include "../test/boost_has_bethreads.ipp"
|
||||
namespace test = boost_has_bethreads;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_CLOCK_GETTIME
|
||||
# include "../test/boost_has_clock_gettime.ipp"
|
||||
namespace test = boost_has_clock_gettime;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_DIRENT_H
|
||||
# include "../test/boost_has_dirent_h.ipp"
|
||||
namespace test = boost_has_dirent_h;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_EXPM1
|
||||
# include "../test/boost_has_expm1.ipp"
|
||||
namespace test = boost_has_expm1;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_FTIME
|
||||
# include "../test/boost_has_ftime.ipp"
|
||||
namespace test = boost_has_ftime;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_GETSYSTEMTIMEASFILETIME
|
||||
# include "../test/boost_has_getsystemtimeasfiletime.ipp"
|
||||
namespace test = boost_has_getsystemtimeasfiletime;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_GETTIMEOFDAY
|
||||
# include "../test/boost_has_gettimeofday.ipp"
|
||||
namespace test = boost_has_gettimeofday;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_HASH
|
||||
# include "../test/boost_has_hash.ipp"
|
||||
namespace test = boost_has_hash;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_INT128
|
||||
# include "../test/boost_has_int128.ipp"
|
||||
namespace test = boost_has_int128;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_LOG1P
|
||||
# include "../test/boost_has_log1p.ipp"
|
||||
namespace test = boost_has_log1p;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_LONG_LONG
|
||||
# include "../test/boost_has_long_long.ipp"
|
||||
namespace test = boost_has_long_long;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_MACRO_USE_FACET
|
||||
# include "../test/boost_has_macro_use_facet.ipp"
|
||||
namespace test = boost_has_macro_use_facet;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_MS_INT64
|
||||
# include "../test/boost_has_ms_int64.ipp"
|
||||
namespace test = boost_has_ms_int64;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_NANOSLEEP
|
||||
# include "../test/boost_has_nanosleep.ipp"
|
||||
namespace test = boost_has_nanosleep;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_NL_TYPES_H
|
||||
# include "../test/boost_has_nl_types_h.ipp"
|
||||
namespace test = boost_has_nl_types_h;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_NRVO
|
||||
# include "../test/boost_has_nrvo.ipp"
|
||||
namespace test = boost_has_nrvo;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_PARTIAL_STD_ALLOCATOR
|
||||
# include "../test/boost_has_part_alloc.ipp"
|
||||
namespace test = boost_has_partial_std_allocator;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_PTHREADS
|
||||
# include "../test/boost_has_pthreads.ipp"
|
||||
namespace test = boost_has_pthreads;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_PTHREAD_DELAY_NP
|
||||
# include "../test/boost_has_pthread_delay_np.ipp"
|
||||
namespace test = boost_has_pthread_delay_np;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
|
||||
# include "../test/boost_has_pthread_ma_st.ipp"
|
||||
namespace test = boost_has_pthread_mutexattr_settype;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_PTHREAD_YIELD
|
||||
# include "../test/boost_has_pthread_yield.ipp"
|
||||
namespace test = boost_has_pthread_yield;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_RVALUE_REFS
|
||||
# include "../test/boost_has_rvalue_refs.ipp"
|
||||
namespace test = boost_has_rvalue_refs;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_SCHED_YIELD
|
||||
# include "../test/boost_has_sched_yield.ipp"
|
||||
namespace test = boost_has_sched_yield;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_SGI_TYPE_TRAITS
|
||||
# include "../test/boost_has_sgi_type_traits.ipp"
|
||||
namespace test = boost_has_sgi_type_traits;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_SIGACTION
|
||||
# include "../test/boost_has_sigaction.ipp"
|
||||
namespace test = boost_has_sigaction;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_SLIST
|
||||
# include "../test/boost_has_slist.ipp"
|
||||
namespace test = boost_has_slist;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_STATIC_ASSERT
|
||||
# include "../test/boost_has_static_assert.ipp"
|
||||
namespace test = boost_has_static_assert;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_STDINT_H
|
||||
# include "../test/boost_has_stdint_h.ipp"
|
||||
namespace test = boost_has_stdint_h;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_STLP_USE_FACET
|
||||
# include "../test/boost_has_stlp_use_facet.ipp"
|
||||
namespace test = boost_has_stlp_use_facet;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_ARRAY
|
||||
# include "../test/boost_has_tr1_array.ipp"
|
||||
namespace test = boost_has_tr1_array;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_BIND
|
||||
# include "../test/boost_has_tr1_bind.ipp"
|
||||
namespace test = boost_has_tr1_bind;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_COMPLEX_OVERLOADS
|
||||
# include "../test/boost_has_tr1_complex_over.ipp"
|
||||
namespace test = boost_has_tr1_complex_overloads;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG
|
||||
# include "../test/boost_has_tr1_complex_trig.ipp"
|
||||
namespace test = boost_has_tr1_complex_inverse_trig;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_FUNCTION
|
||||
# include "../test/boost_has_tr1_function.ipp"
|
||||
namespace test = boost_has_tr1_function;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_HASH
|
||||
# include "../test/boost_has_tr1_hash.ipp"
|
||||
namespace test = boost_has_tr1_hash;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_MEM_FN
|
||||
# include "../test/boost_has_tr1_mem_fn.ipp"
|
||||
namespace test = boost_has_tr1_mem_fn;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_RANDOM
|
||||
# include "../test/boost_has_tr1_random.ipp"
|
||||
namespace test = boost_has_tr1_random;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_REFERENCE_WRAPPER
|
||||
# include "../test/boost_has_tr1_ref_wrap.ipp"
|
||||
namespace test = boost_has_tr1_reference_wrapper;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_REGEX
|
||||
# include "../test/boost_has_tr1_regex.ipp"
|
||||
namespace test = boost_has_tr1_regex;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_RESULT_OF
|
||||
# include "../test/boost_has_tr1_result_of.ipp"
|
||||
namespace test = boost_has_tr1_result_of;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_SHARED_PTR
|
||||
# include "../test/boost_has_tr1_shared_ptr.ipp"
|
||||
namespace test = boost_has_tr1_shared_ptr;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_TUPLE
|
||||
# include "../test/boost_has_tr1_tuple.ipp"
|
||||
namespace test = boost_has_tr1_tuple;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_TYPE_TRAITS
|
||||
# include "../test/boost_has_tr1_type_traits.ipp"
|
||||
namespace test = boost_has_tr1_type_traits;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_UNORDERED_MAP
|
||||
# include "../test/boost_has_tr1_unordered_map.ipp"
|
||||
namespace test = boost_has_tr1_unordered_map;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_UNORDERED_SET
|
||||
# include "../test/boost_has_tr1_unordered_set.ipp"
|
||||
namespace test = boost_has_tr1_unordered_set;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_TR1_UTILITY
|
||||
# include "../test/boost_has_tr1_utility.ipp"
|
||||
namespace test = boost_has_tr1_utility;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_UNISTD_H
|
||||
# include "../test/boost_has_unistd_h.ipp"
|
||||
namespace test = boost_has_unistd_h;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_VARIADIC_TMPL
|
||||
# include "../test/boost_has_variadic_tmpl.ipp"
|
||||
namespace test = boost_has_variadic_tmpl;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_MSVC6_MEMBER_TEMPLATES
|
||||
# include "../test/boost_has_vc6_mem_templ.ipp"
|
||||
namespace test = boost_msvc6_member_templates;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_MSVC_STD_ITERATOR
|
||||
# include "../test/boost_has_vc_iterator.ipp"
|
||||
namespace test = boost_msvc_std_iterator;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_HAS_WINTHREADS
|
||||
# include "../test/boost_has_winthreads.ipp"
|
||||
namespace test = boost_has_winthreads;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_ADL_BARRIER
|
||||
# include "../test/boost_no_adl_barrier.ipp"
|
||||
namespace test = boost_no_adl_barrier;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP
|
||||
# include "../test/boost_no_arg_dep_lookup.ipp"
|
||||
namespace test = boost_no_argument_dependent_lookup;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS
|
||||
# include "../test/boost_no_array_type_spec.ipp"
|
||||
namespace test = boost_no_array_type_specializations;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_AUTO_DECLARATIONS
|
||||
# include "../test/boost_no_auto_declarations.ipp"
|
||||
namespace test = boost_no_cxx11_auto_declarations;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS
|
||||
# include "../test/boost_no_auto_multidecl.ipp"
|
||||
namespace test = boost_no_cxx11_auto_multideclarations;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_AUTO_PTR
|
||||
# include "../test/boost_no_auto_ptr.ipp"
|
||||
namespace test = boost_no_auto_ptr;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_BCB_PARTIAL_SPECIALIZATION_BUG
|
||||
# include "../test/boost_no_bcb_partial_spec.ipp"
|
||||
namespace test = boost_bcb_partial_specialization_bug;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_CHAR16_T
|
||||
# include "../test/boost_no_char16_t.ipp"
|
||||
namespace test = boost_no_cxx11_char16_t;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_CHAR32_T
|
||||
# include "../test/boost_no_char32_t.ipp"
|
||||
namespace test = boost_no_cxx11_char32_t;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_COMPLETE_VALUE_INITIALIZATION
|
||||
# include "../test/boost_no_com_value_init.ipp"
|
||||
namespace test = boost_no_complete_value_initialization;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_CONSTEXPR
|
||||
# include "../test/boost_no_constexpr.ipp"
|
||||
namespace test = boost_no_cxx11_constexpr;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CTYPE_FUNCTIONS
|
||||
# include "../test/boost_no_ctype_functions.ipp"
|
||||
namespace test = boost_no_ctype_functions;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CV_SPECIALIZATIONS
|
||||
# include "../test/boost_no_cv_spec.ipp"
|
||||
namespace test = boost_no_cv_specializations;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CV_VOID_SPECIALIZATIONS
|
||||
# include "../test/boost_no_cv_void_spec.ipp"
|
||||
namespace test = boost_no_cv_void_specializations;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CWCHAR
|
||||
# include "../test/boost_no_cwchar.ipp"
|
||||
namespace test = boost_no_cwchar;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CWCTYPE
|
||||
# include "../test/boost_no_cwctype.ipp"
|
||||
namespace test = boost_no_cwctype;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_ADDRESSOF
|
||||
# include "../test/boost_no_cxx11_addressof.ipp"
|
||||
namespace test = boost_no_cxx11_addressof;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_ALIGNAS
|
||||
# include "../test/boost_no_cxx11_alignas.ipp"
|
||||
namespace test = boost_no_cxx11_alignas;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_ALLOCATOR
|
||||
# include "../test/boost_no_cxx11_allocator.ipp"
|
||||
namespace test = boost_no_cxx11_allocator;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_ATOMIC_SMART_PTR
|
||||
# include "../test/boost_no_cxx11_atomic_sp.ipp"
|
||||
namespace test = boost_no_cxx11_atomic_smart_ptr;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_ARRAY
|
||||
# include "../test/boost_no_cxx11_hdr_array.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_array;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_ATOMIC
|
||||
# include "../test/boost_no_cxx11_hdr_atomic.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_atomic;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_CHRONO
|
||||
# include "../test/boost_no_cxx11_hdr_chrono.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_chrono;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_CODECVT
|
||||
# include "../test/boost_no_cxx11_hdr_codecvt.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_codecvt;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_CONDITION_VARIABLE
|
||||
# include "../test/boost_no_cxx11_hdr_condition_variable.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_condition_variable;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_FORWARD_LIST
|
||||
# include "../test/boost_no_cxx11_hdr_forward_list.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_forward_list;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_FUTURE
|
||||
# include "../test/boost_no_cxx11_hdr_future.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_future;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_INITIALIZER_LIST
|
||||
# include "../test/boost_no_cxx11_hdr_initializer_list.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_initializer_list;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_MUTEX
|
||||
# include "../test/boost_no_cxx11_hdr_mutex.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_mutex;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_RANDOM
|
||||
# include "../test/boost_no_cxx11_hdr_random.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_random;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_RATIO
|
||||
# include "../test/boost_no_cxx11_hdr_ratio.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_ratio;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_REGEX
|
||||
# include "../test/boost_no_cxx11_hdr_regex.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_regex;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_SYSTEM_ERROR
|
||||
# include "../test/boost_no_cxx11_hdr_system_error.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_system_error;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_THREAD
|
||||
# include "../test/boost_no_cxx11_hdr_thread.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_thread;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_TUPLE
|
||||
# include "../test/boost_no_cxx11_hdr_tuple.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_tuple;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_TYPEINDEX
|
||||
# include "../test/boost_no_cxx11_hdr_typeindex.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_typeindex;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_TYPE_TRAITS
|
||||
# include "../test/boost_no_cxx11_hdr_type_traits.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_type_traits;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_UNORDERED_MAP
|
||||
# include "../test/boost_no_cxx11_hdr_unordered_map.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_unordered_map;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_UNORDERED_SET
|
||||
# include "../test/boost_no_cxx11_hdr_unordered_set.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_unordered_set;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_INLINE_NAMESPACES
|
||||
# include "../test/boost_no_cxx11_inline_namespaces.ipp"
|
||||
namespace test = boost_no_cxx11_inline_namespaces;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_NUMERIC_LIMITS
|
||||
# include "../test/boost_no_cxx11_numeric_limits.ipp"
|
||||
namespace test = boost_no_cxx11_numeric_limits;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_REF_QUALIFIERS
|
||||
# include "../test/boost_no_cxx11_ref_qualifiers.ipp"
|
||||
namespace test = boost_no_cxx11_ref_qualifiers;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_SMART_PTR
|
||||
# include "../test/boost_no_cxx11_smart_ptr.ipp"
|
||||
namespace test = boost_no_cxx11_smart_ptr;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_STD_ALIGN
|
||||
# include "../test/boost_no_cxx11_std_align.ipp"
|
||||
namespace test = boost_no_cxx11_std_align;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_TRAILING_RESULT_TYPES
|
||||
# include "../test/boost_no_cxx11_trailing_result_types.ipp"
|
||||
namespace test = boost_no_cxx11_trailing_result_types;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_USER_DEFINED_LITERALS
|
||||
# include "../test/boost_no_cxx11_user_lit.ipp"
|
||||
namespace test = boost_no_cxx11_user_defined_literals;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_HDR_FUNCTIONAL
|
||||
# include "../test/boost_no_cxx_hdr_functional.ipp"
|
||||
namespace test = boost_no_cxx11_hdr_functional;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_DECLTYPE
|
||||
# include "../test/boost_no_decltype.ipp"
|
||||
namespace test = boost_no_cxx11_decltype;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_DECLTYPE_N3276
|
||||
# include "../test/boost_no_decltype_n3276.ipp"
|
||||
namespace test = boost_no_cxx11_decltype_n3276;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_DEDUCED_TYPENAME
|
||||
# include "../test/boost_no_ded_typename.ipp"
|
||||
namespace test = boost_deduced_typename;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_DEFAULTED_FUNCTIONS
|
||||
# include "../test/boost_no_defaulted_functions.ipp"
|
||||
namespace test = boost_no_cxx11_defaulted_functions;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_DELETED_FUNCTIONS
|
||||
# include "../test/boost_no_deleted_functions.ipp"
|
||||
namespace test = boost_no_cxx11_deleted_functions;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_DEPENDENT_NESTED_DERIVATIONS
|
||||
# include "../test/boost_no_dep_nested_class.ipp"
|
||||
namespace test = boost_no_dependent_nested_derivations;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS
|
||||
# include "../test/boost_no_dep_val_param.ipp"
|
||||
namespace test = boost_no_dependent_types_in_template_value_parameters;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_EXCEPTIONS
|
||||
# include "../test/boost_no_exceptions.ipp"
|
||||
namespace test = boost_no_exceptions;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_EXCEPTION_STD_NAMESPACE
|
||||
# include "../test/boost_no_excep_std.ipp"
|
||||
namespace test = boost_no_exception_std_namespace;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS
|
||||
# include "../test/boost_no_explicit_cvt_ops.ipp"
|
||||
namespace test = boost_no_cxx11_explicit_conversion_operators;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS
|
||||
# include "../test/boost_no_exp_func_tem_arg.ipp"
|
||||
namespace test = boost_no_explicit_function_template_arguments;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_EXTERN_TEMPLATE
|
||||
# include "../test/boost_no_extern_template.ipp"
|
||||
namespace test = boost_no_cxx11_extern_template;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_FENV_H
|
||||
# include "../test/boost_no_fenv_h.ipp"
|
||||
namespace test = boost_no_fenv_h;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS
|
||||
# include "../test/boost_no_function_template_default_args.ipp"
|
||||
namespace test = boost_no_cxx11_function_template_default_args;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS
|
||||
# include "../test/boost_no_function_type_spec.ipp"
|
||||
namespace test = boost_no_function_type_specializations;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_FUNCTION_TEMPLATE_ORDERING
|
||||
# include "../test/boost_no_func_tmp_order.ipp"
|
||||
namespace test = boost_no_function_template_ordering;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_MS_INT64_NUMERIC_LIMITS
|
||||
# include "../test/boost_no_i64_limits.ipp"
|
||||
namespace test = boost_no_ms_int64_numeric_limits;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_INCLASS_MEMBER_INITIALIZATION
|
||||
# include "../test/boost_no_inline_memb_init.ipp"
|
||||
namespace test = boost_no_inclass_member_initialization;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_INTEGRAL_INT64_T
|
||||
# include "../test/boost_no_integral_int64_t.ipp"
|
||||
namespace test = boost_no_integral_int64_t;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_IOSFWD
|
||||
# include "../test/boost_no_iosfwd.ipp"
|
||||
namespace test = boost_no_iosfwd;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_IOSTREAM
|
||||
# include "../test/boost_no_iostream.ipp"
|
||||
namespace test = boost_no_iostream;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_IS_ABSTRACT
|
||||
# include "../test/boost_no_is_abstract.ipp"
|
||||
namespace test = boost_no_is_abstract;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS
|
||||
# include "../test/boost_no_iter_construct.ipp"
|
||||
namespace test = boost_no_templated_iterator_constructors;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_LAMBDAS
|
||||
# include "../test/boost_no_lambdas.ipp"
|
||||
namespace test = boost_no_cxx11_lambdas;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_LIMITS
|
||||
# include "../test/boost_no_limits.ipp"
|
||||
namespace test = boost_no_limits;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS
|
||||
# include "../test/boost_no_limits_const_exp.ipp"
|
||||
namespace test = boost_no_limits_compile_time_constants;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_LONG_LONG_NUMERIC_LIMITS
|
||||
# include "../test/boost_no_ll_limits.ipp"
|
||||
namespace test = boost_no_long_long_numeric_limits;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_LONG_LONG
|
||||
# include "../test/boost_no_long_long.ipp"
|
||||
namespace test = boost_no_long_long;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS
|
||||
# include "../test/boost_no_mem_func_spec.ipp"
|
||||
namespace test = boost_no_member_function_specializations;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_MEMBER_TEMPLATES
|
||||
# include "../test/boost_no_mem_templates.ipp"
|
||||
namespace test = boost_no_member_templates;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_MEMBER_TEMPLATE_FRIENDS
|
||||
# include "../test/boost_no_mem_templ_frnds.ipp"
|
||||
namespace test = boost_no_member_template_friends;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_MEMBER_TEMPLATE_KEYWORD
|
||||
# include "../test/boost_no_mem_tem_keyword.ipp"
|
||||
namespace test = boost_no_member_template_keyword;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS
|
||||
# include "../test/boost_no_mem_tem_pnts.ipp"
|
||||
namespace test = boost_no_pointer_to_member_template_parameters;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_NESTED_FRIENDSHIP
|
||||
# include "../test/boost_no_nested_friendship.ipp"
|
||||
namespace test = boost_no_nested_friendship;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_NOEXCEPT
|
||||
# include "../test/boost_no_noexcept.ipp"
|
||||
namespace test = boost_no_cxx11_noexcept;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_NULLPTR
|
||||
# include "../test/boost_no_nullptr.ipp"
|
||||
namespace test = boost_no_cxx11_nullptr;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_OPERATORS_IN_NAMESPACE
|
||||
# include "../test/boost_no_ops_in_namespace.ipp"
|
||||
namespace test = boost_no_operators_in_namespace;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
|
||||
# include "../test/boost_no_partial_spec.ipp"
|
||||
namespace test = boost_no_template_partial_specialization;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS
|
||||
# include "../test/boost_no_part_spec_def_args.ipp"
|
||||
namespace test = boost_no_partial_specialization_implicit_default_args;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_PRIVATE_IN_AGGREGATE
|
||||
# include "../test/boost_no_priv_aggregate.ipp"
|
||||
namespace test = boost_no_private_in_aggregate;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_POINTER_TO_MEMBER_CONST
|
||||
# include "../test/boost_no_ptr_mem_const.ipp"
|
||||
namespace test = boost_no_pointer_to_member_const;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_RANGE_BASED_FOR
|
||||
# include "../test/boost_no_range_based_for.ipp"
|
||||
namespace test = boost_no_cxx11_range_based_for;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_RAW_LITERALS
|
||||
# include "../test/boost_no_raw_literals.ipp"
|
||||
namespace test = boost_no_cxx11_raw_literals;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_UNREACHABLE_RETURN_DETECTION
|
||||
# include "../test/boost_no_ret_det.ipp"
|
||||
namespace test = boost_no_unreachable_return_detection;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_RTTI
|
||||
# include "../test/boost_no_rtti.ipp"
|
||||
namespace test = boost_no_rtti;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_RVALUE_REFERENCES
|
||||
# include "../test/boost_no_rvalue_references.ipp"
|
||||
namespace test = boost_no_cxx11_rvalue_references;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_SCOPED_ENUMS
|
||||
# include "../test/boost_no_scoped_enums.ipp"
|
||||
namespace test = boost_no_cxx11_scoped_enums;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_SFINAE
|
||||
# include "../test/boost_no_sfinae.ipp"
|
||||
namespace test = boost_no_sfinae;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_SFINAE_EXPR
|
||||
# include "../test/boost_no_sfinae_expr.ipp"
|
||||
namespace test = boost_no_sfinae_expr;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_STRINGSTREAM
|
||||
# include "../test/boost_no_sstream.ipp"
|
||||
namespace test = boost_no_stringstream;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_STATIC_ASSERT
|
||||
# include "../test/boost_no_static_assert.ipp"
|
||||
namespace test = boost_no_cxx11_static_assert;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_STDC_NAMESPACE
|
||||
# include "../test/boost_no_stdc_namespace.ipp"
|
||||
namespace test = boost_no_stdc_namespace;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_STD_ALLOCATOR
|
||||
# include "../test/boost_no_std_allocator.ipp"
|
||||
namespace test = boost_no_std_allocator;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_STD_DISTANCE
|
||||
# include "../test/boost_no_std_distance.ipp"
|
||||
namespace test = boost_no_std_distance;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_STD_ITERATOR
|
||||
# include "../test/boost_no_std_iterator.ipp"
|
||||
namespace test = boost_no_std_iterator;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_STD_ITERATOR_TRAITS
|
||||
# include "../test/boost_no_std_iter_traits.ipp"
|
||||
namespace test = boost_no_std_iterator_traits;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_STD_LOCALE
|
||||
# include "../test/boost_no_std_locale.ipp"
|
||||
namespace test = boost_no_std_locale;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_STD_MESSAGES
|
||||
# include "../test/boost_no_std_messages.ipp"
|
||||
namespace test = boost_no_std_messages;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_STD_MIN_MAX
|
||||
# include "../test/boost_no_std_min_max.ipp"
|
||||
namespace test = boost_no_std_min_max;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN
|
||||
# include "../test/boost_no_std_oi_assign.ipp"
|
||||
namespace test = boost_no_std_output_iterator_assign;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_STD_TYPEINFO
|
||||
# include "../test/boost_no_std_typeinfo.ipp"
|
||||
namespace test = boost_no_std_typeinfo;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_STD_USE_FACET
|
||||
# include "../test/boost_no_std_use_facet.ipp"
|
||||
namespace test = boost_no_std_use_facet;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_STD_WSTREAMBUF
|
||||
# include "../test/boost_no_std_wstreambuf.ipp"
|
||||
namespace test = boost_no_std_wstreambuf;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_STD_WSTRING
|
||||
# include "../test/boost_no_std_wstring.ipp"
|
||||
namespace test = boost_no_std_wstring;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_SWPRINTF
|
||||
# include "../test/boost_no_swprintf.ipp"
|
||||
namespace test = boost_no_swprintf;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_TEMPLATE_ALIASES
|
||||
# include "../test/boost_no_template_aliases.ipp"
|
||||
namespace test = boost_no_cxx11_template_aliases;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_TEMPLATED_IOSTREAMS
|
||||
# include "../test/boost_no_template_streams.ipp"
|
||||
namespace test = boost_no_templated_iostreams;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_TEMPLATE_TEMPLATES
|
||||
# include "../test/boost_no_template_template.ipp"
|
||||
namespace test = boost_no_template_templates;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS
|
||||
# include "../test/boost_no_tem_local_classes.ipp"
|
||||
namespace test = boost_no_cxx11_local_class_template_parameters;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_TWO_PHASE_NAME_LOOKUP
|
||||
# include "../test/boost_no_two_phase_lookup.ipp"
|
||||
namespace test = boost_no_two_phase_name_lookup;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_TYPEID
|
||||
# include "../test/boost_no_typeid.ipp"
|
||||
namespace test = boost_no_typeid;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_TYPENAME_WITH_CTOR
|
||||
# include "../test/boost_no_typename_with_ctor.ipp"
|
||||
namespace test = boost_no_typename_with_ctor;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_UNICODE_LITERALS
|
||||
# include "../test/boost_no_unicode_literals.ipp"
|
||||
namespace test = boost_no_cxx11_unicode_literals;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX
|
||||
# include "../test/boost_no_unified_init.ipp"
|
||||
namespace test = boost_no_cxx11_unified_initialization_syntax;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL
|
||||
# include "../test/boost_no_using_breaks_adl.ipp"
|
||||
namespace test = boost_function_scope_using_declaration_breaks_adl;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE
|
||||
# include "../test/boost_no_using_decl_overld.ipp"
|
||||
namespace test = boost_no_using_declaration_overloads_from_typename_base;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_USING_TEMPLATE
|
||||
# include "../test/boost_no_using_template.ipp"
|
||||
namespace test = boost_no_using_template;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_VARIADIC_MACROS
|
||||
# include "../test/boost_no_variadic_macros.ipp"
|
||||
namespace test = boost_no_cxx11_variadic_macros;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_CXX11_VARIADIC_TEMPLATES
|
||||
# include "../test/boost_no_variadic_templates.ipp"
|
||||
namespace test = boost_no_cxx11_variadic_templates;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_VOID_RETURNS
|
||||
# include "../test/boost_no_void_returns.ipp"
|
||||
namespace test = boost_no_void_returns;
|
||||
#endif
|
||||
#ifdef TEST_BOOST_NO_INTRINSIC_WCHAR_T
|
||||
# include "../test/boost_no_wchar_t.ipp"
|
||||
namespace test = boost_no_intrinsic_wchar_t;
|
||||
#endif
|
||||
|
||||
int main( int, char *[] )
|
||||
{
|
||||
return test::test();
|
||||
}
|
||||
|
65
doc/build_time.qbk
Normal file
65
doc/build_time.qbk
Normal file
@ -0,0 +1,65 @@
|
||||
|
||||
[section:build_config Build Time Configuration]
|
||||
|
||||
There are times when you want to control whether a build target gets built or not, based
|
||||
on what features the compiler supports. For example, suppose you have a test file
|
||||
"test_constexpr_128.cpp" which requires three key features in order to build:
|
||||
|
||||
* The `constexpr` keyword as detected by BOOST_NO_CXX11_CONSTEXPR.
|
||||
* User defined literals, as detected by BOOST_NO_CXX11_USER_DEFINED_LITERALS.
|
||||
* The `__int128` data type, as detected by BOOST_HAS_INT128.
|
||||
|
||||
Clearly we know that if these features are not supported by the compiler, then
|
||||
there's simply no point in even trying to build the test program. The main advantages being:
|
||||
|
||||
* Faster compile times - build configuration uses lightweight tests the results of which are also cached.
|
||||
* Less noise in build output - there's no reason to be faced with pages of template
|
||||
instantiation backtrace if we know the file can never compile anyway.
|
||||
* Less noise in the online test results - the test will show up as blank, rather than as a fail
|
||||
in the online test matrix.
|
||||
* A better experience for end users building all of Boost, if those libraries which can not be built
|
||||
for the current target compiler are simply skipped, rather than generating pages of error output.
|
||||
|
||||
Returning to our example, the test case is probably executed in it's Jamfile via the "run" rule:
|
||||
|
||||
run test_constexpr_128.cpp ;
|
||||
|
||||
We now need to make this target conditional on the necessary features.
|
||||
We can do that by first importing the necessary rule at the start of the Jamfile:
|
||||
|
||||
import path-to-config-lib/checks/config : requires ;
|
||||
|
||||
Assuming that the test case is in the usual directory:
|
||||
|
||||
libs/yourlib/test
|
||||
|
||||
then the import rule will actually be:
|
||||
|
||||
import ../../config/checks/config : requires ;
|
||||
|
||||
Then add a "requires" rule invocation to the requirements section of the target:
|
||||
|
||||
run test_constexpr_128.cpp
|
||||
: : : #requirements:
|
||||
[ requires cxx11_constexpr cxx11_user_defined_literals int128 ] ;
|
||||
|
||||
Notice that multiple arguments can be added to the requires rule, and that these are
|
||||
always the same as the Boost.Config macro name, but in lower case and with the ['boost_no_]
|
||||
or ['boost_has_] prefix removed.
|
||||
|
||||
When building the above example, you will see at the start of the build process the results
|
||||
of the configuration, for example GCC in C++11 mode gives:
|
||||
|
||||
- Boost.Config Feature Check: int128 : yes
|
||||
- Boost.Config Feature Check: cxx11_constexpr : yes
|
||||
- Boost.Config Feature Check: cxx11_user_defined_literals : yes
|
||||
|
||||
That's all there is to this handy feature, should at any time you be unsure of the feature-test
|
||||
names you can pass to the "requires" rule, then search for the Boost.Config macro of interest in
|
||||
libs/config/checks/Jamfiles.v2, and the name of the feature check will follow it.
|
||||
|
||||
And finally, this feature is built around the Boost.Build built in rule ['check-target-builds]
|
||||
which can be used to perform more generalized build-time feature testing. The checks in this
|
||||
library are provided as a convenient shorthand without the need for you to write the test cases yourself.
|
||||
|
||||
[endsect]
|
@ -50,6 +50,7 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
|
||||
[include configuring_boost.qbk]
|
||||
[include macro_reference.qbk]
|
||||
[include build_time.qbk]
|
||||
[include cstdint.qbk]
|
||||
[include guidelines.qbk]
|
||||
[include rationale.qbk]
|
||||
|
@ -7,7 +7,7 @@
|
||||
<link rel="home" href="../index.html" title="Boost.Config">
|
||||
<link rel="up" href="../index.html" title="Boost.Config">
|
||||
<link rel="prev" href="../index.html" title="Boost.Config">
|
||||
<link rel="next" href="cstdint.html" title="Standard Integer Types">
|
||||
<link rel="next" href="build_config.html" title="Build Time Configuration">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%"><tr>
|
||||
@ -20,7 +20,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../index.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="cstdint.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="../index.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="build_config.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
@ -5613,7 +5613,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../index.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="cstdint.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="../index.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="build_config.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
144
doc/html/boost_config/build_config.html
Normal file
144
doc/html/boost_config/build_config.html
Normal file
@ -0,0 +1,144 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
||||
<title>Build Time Configuration</title>
|
||||
<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
|
||||
<link rel="home" href="../index.html" title="Boost.Config">
|
||||
<link rel="up" href="../index.html" title="Boost.Config">
|
||||
<link rel="prev" href="boost_macro_reference.html" title="Boost Macro Reference">
|
||||
<link rel="next" href="cstdint.html" title="Standard Integer Types">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%"><tr>
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../index.html">Home</a></td>
|
||||
<td align="center"><a href="../../../../../libs/libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
|
||||
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../more/index.htm">More</a></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="boost_macro_reference.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="cstdint.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="boost_config.build_config"></a><a class="link" href="build_config.html" title="Build Time Configuration">Build Time Configuration</a>
|
||||
</h2></div></div></div>
|
||||
<p>
|
||||
There are times when you want to control whether a build target gets built
|
||||
or not, based on what features the compiler supports. For example, suppose
|
||||
you have a test file "test_constexpr_128.cpp" which requires three
|
||||
key features in order to build:
|
||||
</p>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
<li class="listitem">
|
||||
The <code class="computeroutput"><span class="keyword">constexpr</span></code> keyword as detected
|
||||
by BOOST_NO_CXX11_CONSTEXPR.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
User defined literals, as detected by BOOST_NO_CXX11_USER_DEFINED_LITERALS.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
The <code class="computeroutput"><span class="identifier">__int128</span></code> data type,
|
||||
as detected by BOOST_HAS_INT128.
|
||||
</li>
|
||||
</ul></div>
|
||||
<p>
|
||||
Clearly we know that if these features are not supported by the compiler, then
|
||||
there's simply no point in even trying to build the test program. The main
|
||||
advantages being:
|
||||
</p>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
<li class="listitem">
|
||||
Faster compile times - build configuration uses lightweight tests the results
|
||||
of which are also cached.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Less noise in build output - there's no reason to be faced with pages of
|
||||
template instantiation backtrace if we know the file can never compile
|
||||
anyway.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Less noise in the online test results - the test will show up as blank,
|
||||
rather than as a fail in the online test matrix.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
A better experience for end users building all of Boost, if those libraries
|
||||
which can not be built for the current target compiler are simply skipped,
|
||||
rather than generating pages of error output.
|
||||
</li>
|
||||
</ul></div>
|
||||
<p>
|
||||
Returning to our example, the test case is probably executed in it's Jamfile
|
||||
via the "run" rule:
|
||||
</p>
|
||||
<pre class="programlisting"><span class="identifier">run</span> <span class="identifier">test_constexpr_128</span><span class="special">.</span><span class="identifier">cpp</span> <span class="special">;</span>
|
||||
</pre>
|
||||
<p>
|
||||
We now need to make this target conditional on the necessary features. We can
|
||||
do that by first importing the necessary rule at the start of the Jamfile:
|
||||
</p>
|
||||
<pre class="programlisting"><span class="identifier">import</span> <span class="identifier">path</span><span class="special">-</span><span class="identifier">to</span><span class="special">-</span><span class="identifier">config</span><span class="special">-</span><span class="identifier">lib</span><span class="special">/</span><span class="identifier">checks</span><span class="special">/</span><span class="identifier">config</span> <span class="special">:</span> <span class="identifier">requires</span> <span class="special">;</span>
|
||||
</pre>
|
||||
<p>
|
||||
Assuming that the test case is in the usual directory:
|
||||
</p>
|
||||
<pre class="programlisting"><span class="identifier">libs</span><span class="special">/</span><span class="identifier">yourlib</span><span class="special">/</span><span class="identifier">test</span>
|
||||
</pre>
|
||||
<p>
|
||||
then the import rule will actually be:
|
||||
</p>
|
||||
<pre class="programlisting"><span class="identifier">import</span> <span class="special">../../</span><span class="identifier">config</span><span class="special">/</span><span class="identifier">checks</span><span class="special">/</span><span class="identifier">config</span> <span class="special">:</span> <span class="identifier">requires</span> <span class="special">;</span>
|
||||
</pre>
|
||||
<p>
|
||||
Then add a "requires" rule invocation to the requirements section
|
||||
of the target:
|
||||
</p>
|
||||
<pre class="programlisting"><span class="identifier">run</span> <span class="identifier">test_constexpr_128</span><span class="special">.</span><span class="identifier">cpp</span>
|
||||
<span class="special">:</span> <span class="special">:</span> <span class="special">:</span> <span class="special">#</span><span class="identifier">requirements</span><span class="special">:</span>
|
||||
<span class="special">[</span> <span class="identifier">requires</span> <span class="identifier">cxx11_constexpr</span> <span class="identifier">cxx11_user_defined_literals</span> <span class="identifier">int128</span> <span class="special">]</span> <span class="special">;</span>
|
||||
</pre>
|
||||
<p>
|
||||
Notice that multiple arguments can be added to the requires rule, and that
|
||||
these are always the same as the Boost.Config macro name, but in lower case
|
||||
and with the <span class="emphasis"><em>boost_no_</em></span> or <span class="emphasis"><em>boost_has_</em></span>
|
||||
prefix removed.
|
||||
</p>
|
||||
<p>
|
||||
When building the above example, you will see at the start of the build process
|
||||
the results of the configuration, for example GCC in C++11 mode gives:
|
||||
</p>
|
||||
<pre class="programlisting"><span class="special">-</span> <span class="identifier">Boost</span><span class="special">.</span><span class="identifier">Config</span> <span class="identifier">Feature</span> <span class="identifier">Check</span><span class="special">:</span> <span class="identifier">int128</span> <span class="special">:</span> <span class="identifier">yes</span>
|
||||
<span class="special">-</span> <span class="identifier">Boost</span><span class="special">.</span><span class="identifier">Config</span> <span class="identifier">Feature</span> <span class="identifier">Check</span><span class="special">:</span> <span class="identifier">cxx11_constexpr</span> <span class="special">:</span> <span class="identifier">yes</span>
|
||||
<span class="special">-</span> <span class="identifier">Boost</span><span class="special">.</span><span class="identifier">Config</span> <span class="identifier">Feature</span> <span class="identifier">Check</span><span class="special">:</span> <span class="identifier">cxx11_user_defined_literals</span> <span class="special">:</span> <span class="identifier">yes</span>
|
||||
</pre>
|
||||
<p>
|
||||
That's all there is to this handy feature, should at any time you be unsure
|
||||
of the feature-test names you can pass to the "requires" rule, then
|
||||
search for the Boost.Config macro of interest in libs/config/checks/Jamfiles.v2,
|
||||
and the name of the feature check will follow it.
|
||||
</p>
|
||||
<p>
|
||||
And finally, this feature is built around the Boost.Build built in rule <span class="emphasis"><em>check-target-builds</em></span>
|
||||
which can be used to perform more generalized build-time feature testing. The
|
||||
checks in this library are provided as a convenient shorthand without the need
|
||||
for you to write the test cases yourself.
|
||||
</p>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
<td align="left"></td>
|
||||
<td align="right"><div class="copyright-footer">Copyright © 2001-2007 Beman Dawes, Vesa Karvonen, John
|
||||
Maddock<p>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
|
||||
</p>
|
||||
</div></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="boost_macro_reference.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="cstdint.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -6,7 +6,7 @@
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
|
||||
<link rel="home" href="../index.html" title="Boost.Config">
|
||||
<link rel="up" href="../index.html" title="Boost.Config">
|
||||
<link rel="prev" href="boost_macro_reference.html" title="Boost Macro Reference">
|
||||
<link rel="prev" href="build_config.html" title="Build Time Configuration">
|
||||
<link rel="next" href="guidelines_for_boost_authors.html" title="Guidelines for Boost Authors">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
@ -20,7 +20,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="boost_macro_reference.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="guidelines_for_boost_authors.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="build_config.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="guidelines_for_boost_authors.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
@ -283,7 +283,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="boost_macro_reference.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="guidelines_for_boost_authors.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="build_config.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="guidelines_for_boost_authors.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -77,6 +77,7 @@
|
||||
<dt><span class="section"><a href="boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.macros_for_libraries_with_separate_source_code">Macros
|
||||
for libraries with separate source code</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="section"><a href="boost_config/build_config.html">Build Time Configuration</a></span></dt>
|
||||
<dt><span class="section"><a href="boost_config/cstdint.html">Standard Integer Types</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="boost_config/cstdint.html#boost_config.cstdint.overview">Overview</a></span></dt>
|
||||
@ -967,7 +968,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
<td align="left"><p><small>Last revised: June 01, 2014 at 09:50:01 GMT</small></p></td>
|
||||
<td align="left"><p><small>Last revised: June 05, 2014 at 17:41:22 GMT</small></p></td>
|
||||
<td align="right"><div class="copyright-footer"></div></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
|
@ -15,6 +15,7 @@ project
|
||||
|
||||
|
||||
import modules ;
|
||||
import ../checks/config : requires ;
|
||||
|
||||
local is_unix = [ modules.peek : UNIX ] ;
|
||||
|
||||
@ -91,6 +92,7 @@ test-suite config
|
||||
[ run cstdint_test.cpp : : : <warnings>all <toolset>gcc:<cxxflags>"-Wno-long-long -Wextra" <toolset>darwin:<cxxflags>-Wno-long-long ]
|
||||
[ run cstdint_test2.cpp : : : <warnings>all <toolset>gcc:<cxxflags>"-Wno-long-long -Wextra" <toolset>darwin:<cxxflags>-Wno-long-long ]
|
||||
[ compile cstdint_include_test.cpp : <warnings>all <toolset>gcc:<cxxflags>-Wextra ]
|
||||
[ run config_build_check.cpp : : : [ requires int128 cxx11_constexpr cxx11_user_defined_literals ] ]
|
||||
;
|
||||
|
||||
obj has_clang_implicit_fallthrough : cmd_line_check.cpp :
|
||||
|
@ -1,7 +1,7 @@
|
||||
#
|
||||
# Regression test Jamfile for boost configuration setup.
|
||||
# *** DO NOT EDIT THIS FILE BY HAND ***
|
||||
# This file was automatically generated on Wed May 28 17:13:04 2014
|
||||
# This file was automatically generated on Thu Jun 12 13:21:03 2014
|
||||
# by libs/config/tools/generate.cpp
|
||||
# Copyright John Maddock.
|
||||
# Use, modification and distribution are subject to the
|
||||
|
18
test/config_build_check.cpp
Normal file
18
test/config_build_check.cpp
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright John Maddock 2014.
|
||||
// Use, modification and distribution are subject to 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)
|
||||
|
||||
// See http://www.boost.org/libs/config for the most recent version.//
|
||||
// Revision $Id$
|
||||
//
|
||||
|
||||
# include "../test/boost_has_int128.ipp"
|
||||
# include "../test/boost_no_constexpr.ipp"
|
||||
# include "../test/boost_no_cxx11_user_lit.ipp"
|
||||
|
||||
int main( int, char *[] )
|
||||
{
|
||||
return boost_has_int128::test() || boost_no_cxx11_constexpr::test() || boost_no_cxx11_user_defined_literals::test();
|
||||
}
|
||||
|
@ -1120,6 +1120,16 @@ void print_boost_macros()
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// END GENERATED BLOCK
|
||||
|
@ -1,4 +1,4 @@
|
||||
// This file was automatically generated on Wed May 28 17:13:04 2014
|
||||
// This file was automatically generated on Thu Jun 12 13:21:03 2014
|
||||
// by libs/config/tools/generate.cpp
|
||||
// Copyright John Maddock 2002-4.
|
||||
// Use, modification and distribution are subject to the
|
||||
|
@ -38,6 +38,8 @@ std::stringstream config_test1a;
|
||||
std::stringstream config_test2;
|
||||
std::stringstream jamfile;
|
||||
std::stringstream jamfile_v2;
|
||||
std::stringstream build_config_test;
|
||||
std::stringstream build_config_jamfile;
|
||||
std::set<std::string> macro_list;
|
||||
|
||||
|
||||
@ -184,6 +186,47 @@ void write_test_file(const fs::path& file,
|
||||
}
|
||||
}
|
||||
|
||||
void write_build_tests()
|
||||
{
|
||||
fs::ofstream ofs(config_path / ".." / "checks" / "test_case.cpp");
|
||||
time_t t = std::time(0);
|
||||
ofs << "// This file was automatically generated on " << std::ctime(&t);
|
||||
ofs << "// by libs/config/tools/generate.cpp\n" << copyright << std::endl;
|
||||
ofs << build_config_test.str() << std::endl;
|
||||
ofs << "int main( int, char *[] )\n{\n" << " return test::test();\n}\n\n";
|
||||
}
|
||||
|
||||
void write_build_check_jamfile()
|
||||
{
|
||||
fs::ofstream ofs(config_path / ".." / "checks" / "Jamfile.v2");
|
||||
time_t t = std::time(0);
|
||||
ofs << "#\n# *** DO NOT EDIT THIS FILE BY HAND ***\n"
|
||||
"# This file was automatically generated on " << std::ctime(&t);
|
||||
ofs << "# by libs/config/tools/generate.cpp\n"
|
||||
"# Copyright John Maddock.\n"
|
||||
"# Use, modification and distribution are subject to the \n"
|
||||
"# Boost Software License, Version 1.0. (See accompanying file \n"
|
||||
"# LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)\n\n"
|
||||
"import modules ;\nimport path ; \n\n"
|
||||
"actions simple_run_action\n"
|
||||
"{\n"
|
||||
" $(>) > $(<)\n"
|
||||
"}\n"
|
||||
"\n"
|
||||
"rule run-simple ( sources + : args * : input-files * : requirements * : target-name )\n"
|
||||
"{\n"
|
||||
" obj $(target-name)_obj : $(sources) : $(requirements) ;\n"
|
||||
" explicit $(target-name)_obj ;\n"
|
||||
" exe $(target-name)_exe : $(target-name)_obj : $(requirements) ;\n"
|
||||
" explicit $(target-name)_exe ;\n"
|
||||
" #testing.capture-output $(target-name)_output : $(target-name) : $(requirements) <name>$(target-name) ;\n"
|
||||
" make $(target-name).output : $(target-name)_exe : @simple_run_action ;\n"
|
||||
" explicit $(target-name).output ;\n"
|
||||
"}\n\n"
|
||||
;
|
||||
ofs << build_config_jamfile.str() << std::endl;
|
||||
}
|
||||
|
||||
void process_ipp_file(const fs::path& file, bool positive_test)
|
||||
{
|
||||
std::cout << "Info: Scanning file: " << file.string() << std::endl;
|
||||
@ -250,6 +293,17 @@ void process_ipp_file(const fs::path& file, bool positive_test)
|
||||
"[ run ../" << positive_file.leaf().string() << " ]\n"
|
||||
"[ compile-fail ../" << negative_file.leaf().string() << " ] ;\n";
|
||||
|
||||
// Generate data for the Build-checks test file:
|
||||
build_config_test << "#ifdef TEST_" << macro_name << std::endl;
|
||||
build_config_test << "# include \"../test/" << file.leaf().string() << "\"\n";
|
||||
build_config_test << "namespace test = " << namespace_name << ";\n#endif\n";
|
||||
|
||||
// Generate data for the build-checks Jamfile:
|
||||
static const boost::regex feature_regex("boost_(?:no|has)_(.*)");
|
||||
std::string feature_name = boost::regex_replace(namespace_name, feature_regex, "\\1");
|
||||
build_config_jamfile << "run-simple test_case.cpp : : : <define>TEST_" << macro_name << " : " << feature_name << " ;\n";
|
||||
build_config_jamfile << "alias " << feature_name << " : " << feature_name << ".output ;\n";
|
||||
build_config_jamfile << "explicit " << feature_name << " ;\n";
|
||||
}
|
||||
|
||||
int cpp_main(int argc, char* argv[])
|
||||
@ -285,6 +339,8 @@ int cpp_main(int argc, char* argv[])
|
||||
write_config_test();
|
||||
write_jamfile_v2();
|
||||
write_config_info();
|
||||
write_build_tests();
|
||||
write_build_check_jamfile();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user