Simplify build-time config checks.

These now simply reflect whatever config.hpp reports, and are therefore always in synch with the headers.
They are also now compile-time tests only, which means they function with cross compilers.
Fixes: https://svn.boost.org/trac/boost/ticket/12805.
This commit is contained in:
jzmaddock
2017-04-17 13:19:19 +01:00
parent 8acd1c464d
commit 79bd4b8acf
6 changed files with 826 additions and 625 deletions

View File

@@ -1,6 +1,6 @@
# #
# *** DO NOT EDIT THIS FILE BY HAND *** # *** DO NOT EDIT THIS FILE BY HAND ***
# This file was automatically generated on Sun Feb 5 19:09:22 2017 # This file was automatically generated on Mon Apr 17 12:45:44 2017
# by libs/config/tools/generate.cpp # by libs/config/tools/generate.cpp
# Copyright John Maddock. # Copyright John Maddock.
# Use, modification and distribution are subject to the # Use, modification and distribution are subject to the
@@ -11,212 +11,203 @@ import modules ;
import path ; import path ;
rule run-simple ( requirements * : target-name ) obj two_arg_use_facet : test_case.cpp : <define>TEST_BOOST_HAS_TWO_ARG_USE_FACET ;
{ obj bethreads : test_case.cpp : <define>TEST_BOOST_HAS_BETHREADS ;
obj $(target-name)_obj : test_case.cpp : $(requirements) ; obj clock_gettime : test_case.cpp : <define>TEST_BOOST_HAS_CLOCK_GETTIME ;
explicit $(target-name)_obj ; obj dirent_h : test_case.cpp : <define>TEST_BOOST_HAS_DIRENT_H ;
unit-test $(target-name) : $(target-name)_obj : $(requirements) ; obj expm1 : test_case.cpp : <define>TEST_BOOST_HAS_EXPM1 ;
explicit $(target-name) ; obj float128 : test_case.cpp : <define>TEST_BOOST_HAS_FLOAT128 ;
} obj ftime : test_case.cpp : <define>TEST_BOOST_HAS_FTIME ;
obj getsystemtimeasfiletime : test_case.cpp : <define>TEST_BOOST_HAS_GETSYSTEMTIMEASFILETIME ;
run-simple <define>TEST_BOOST_HAS_TWO_ARG_USE_FACET : two_arg_use_facet ; obj gettimeofday : test_case.cpp : <define>TEST_BOOST_HAS_GETTIMEOFDAY ;
run-simple <define>TEST_BOOST_HAS_BETHREADS : bethreads ; obj hash : test_case.cpp : <define>TEST_BOOST_HAS_HASH ;
run-simple <define>TEST_BOOST_HAS_CLOCK_GETTIME : clock_gettime ; obj int128 : test_case.cpp : <define>TEST_BOOST_HAS_INT128 ;
run-simple <define>TEST_BOOST_HAS_DIRENT_H : dirent_h ; obj log1p : test_case.cpp : <define>TEST_BOOST_HAS_LOG1P ;
run-simple <define>TEST_BOOST_HAS_EXPM1 : expm1 ; obj long_long : test_case.cpp : <define>TEST_BOOST_HAS_LONG_LONG ;
run-simple <define>TEST_BOOST_HAS_FLOAT128 : float128 ; obj macro_use_facet : test_case.cpp : <define>TEST_BOOST_HAS_MACRO_USE_FACET ;
run-simple <define>TEST_BOOST_HAS_FTIME : ftime ; obj ms_int64 : test_case.cpp : <define>TEST_BOOST_HAS_MS_INT64 ;
run-simple <define>TEST_BOOST_HAS_GETSYSTEMTIMEASFILETIME : getsystemtimeasfiletime ; obj nanosleep : test_case.cpp : <define>TEST_BOOST_HAS_NANOSLEEP ;
run-simple <define>TEST_BOOST_HAS_GETTIMEOFDAY : gettimeofday ; obj nl_types_h : test_case.cpp : <define>TEST_BOOST_HAS_NL_TYPES_H ;
run-simple <define>TEST_BOOST_HAS_HASH : hash ; obj nrvo : test_case.cpp : <define>TEST_BOOST_HAS_NRVO ;
run-simple <define>TEST_BOOST_HAS_INT128 : int128 ; obj partial_std_allocator : test_case.cpp : <define>TEST_BOOST_HAS_PARTIAL_STD_ALLOCATOR ;
run-simple <define>TEST_BOOST_HAS_LOG1P : log1p ; obj pthread_delay_np : test_case.cpp : <define>TEST_BOOST_HAS_PTHREAD_DELAY_NP ;
run-simple <define>TEST_BOOST_HAS_LONG_LONG : long_long ; obj pthread_mutexattr_settype : test_case.cpp : <define>TEST_BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE ;
run-simple <define>TEST_BOOST_HAS_MACRO_USE_FACET : macro_use_facet ; obj pthread_yield : test_case.cpp : <define>TEST_BOOST_HAS_PTHREAD_YIELD ;
run-simple <define>TEST_BOOST_HAS_MS_INT64 : ms_int64 ; obj pthreads : test_case.cpp : <define>TEST_BOOST_HAS_PTHREADS ;
run-simple <define>TEST_BOOST_HAS_NANOSLEEP : nanosleep ; obj rvalue_refs : test_case.cpp : <define>TEST_BOOST_HAS_RVALUE_REFS ;
run-simple <define>TEST_BOOST_HAS_NL_TYPES_H : nl_types_h ; obj sched_yield : test_case.cpp : <define>TEST_BOOST_HAS_SCHED_YIELD ;
run-simple <define>TEST_BOOST_HAS_NRVO : nrvo ; obj sgi_type_traits : test_case.cpp : <define>TEST_BOOST_HAS_SGI_TYPE_TRAITS ;
run-simple <define>TEST_BOOST_HAS_PARTIAL_STD_ALLOCATOR : partial_std_allocator ; obj sigaction : test_case.cpp : <define>TEST_BOOST_HAS_SIGACTION ;
run-simple <define>TEST_BOOST_HAS_PTHREAD_DELAY_NP : pthread_delay_np ; obj slist : test_case.cpp : <define>TEST_BOOST_HAS_SLIST ;
run-simple <define>TEST_BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE : pthread_mutexattr_settype ; obj static_assert : test_case.cpp : <define>TEST_BOOST_HAS_STATIC_ASSERT ;
run-simple <define>TEST_BOOST_HAS_PTHREAD_YIELD : pthread_yield ; obj stdint_h : test_case.cpp : <define>TEST_BOOST_HAS_STDINT_H ;
run-simple <define>TEST_BOOST_HAS_PTHREADS : pthreads ; obj stlp_use_facet : test_case.cpp : <define>TEST_BOOST_HAS_STLP_USE_FACET ;
run-simple <define>TEST_BOOST_HAS_RVALUE_REFS : rvalue_refs ; obj tr1_array : test_case.cpp : <define>TEST_BOOST_HAS_TR1_ARRAY ;
run-simple <define>TEST_BOOST_HAS_SCHED_YIELD : sched_yield ; obj tr1_bind : test_case.cpp : <define>TEST_BOOST_HAS_TR1_BIND ;
run-simple <define>TEST_BOOST_HAS_SGI_TYPE_TRAITS : sgi_type_traits ; obj tr1_complex_overloads : test_case.cpp : <define>TEST_BOOST_HAS_TR1_COMPLEX_OVERLOADS ;
run-simple <define>TEST_BOOST_HAS_SIGACTION : sigaction ; obj tr1_complex_inverse_trig : test_case.cpp : <define>TEST_BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG ;
run-simple <define>TEST_BOOST_HAS_SLIST : slist ; obj tr1_function : test_case.cpp : <define>TEST_BOOST_HAS_TR1_FUNCTION ;
run-simple <define>TEST_BOOST_HAS_STATIC_ASSERT : static_assert ; obj tr1_hash : test_case.cpp : <define>TEST_BOOST_HAS_TR1_HASH ;
run-simple <define>TEST_BOOST_HAS_STDINT_H : stdint_h ; obj tr1_mem_fn : test_case.cpp : <define>TEST_BOOST_HAS_TR1_MEM_FN ;
run-simple <define>TEST_BOOST_HAS_STLP_USE_FACET : stlp_use_facet ; obj tr1_random : test_case.cpp : <define>TEST_BOOST_HAS_TR1_RANDOM ;
run-simple <define>TEST_BOOST_HAS_TR1_ARRAY : tr1_array ; obj tr1_reference_wrapper : test_case.cpp : <define>TEST_BOOST_HAS_TR1_REFERENCE_WRAPPER ;
run-simple <define>TEST_BOOST_HAS_TR1_BIND : tr1_bind ; obj tr1_regex : test_case.cpp : <define>TEST_BOOST_HAS_TR1_REGEX ;
run-simple <define>TEST_BOOST_HAS_TR1_COMPLEX_OVERLOADS : tr1_complex_overloads ; obj tr1_result_of : test_case.cpp : <define>TEST_BOOST_HAS_TR1_RESULT_OF ;
run-simple <define>TEST_BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG : tr1_complex_inverse_trig ; obj tr1_shared_ptr : test_case.cpp : <define>TEST_BOOST_HAS_TR1_SHARED_PTR ;
run-simple <define>TEST_BOOST_HAS_TR1_FUNCTION : tr1_function ; obj tr1_tuple : test_case.cpp : <define>TEST_BOOST_HAS_TR1_TUPLE ;
run-simple <define>TEST_BOOST_HAS_TR1_HASH : tr1_hash ; obj tr1_type_traits : test_case.cpp : <define>TEST_BOOST_HAS_TR1_TYPE_TRAITS ;
run-simple <define>TEST_BOOST_HAS_TR1_MEM_FN : tr1_mem_fn ; obj tr1_unordered_map : test_case.cpp : <define>TEST_BOOST_HAS_TR1_UNORDERED_MAP ;
run-simple <define>TEST_BOOST_HAS_TR1_RANDOM : tr1_random ; obj tr1_unordered_set : test_case.cpp : <define>TEST_BOOST_HAS_TR1_UNORDERED_SET ;
run-simple <define>TEST_BOOST_HAS_TR1_REFERENCE_WRAPPER : tr1_reference_wrapper ; obj tr1_utility : test_case.cpp : <define>TEST_BOOST_HAS_TR1_UTILITY ;
run-simple <define>TEST_BOOST_HAS_TR1_REGEX : tr1_regex ; obj unistd_h : test_case.cpp : <define>TEST_BOOST_HAS_UNISTD_H ;
run-simple <define>TEST_BOOST_HAS_TR1_RESULT_OF : tr1_result_of ; obj variadic_tmpl : test_case.cpp : <define>TEST_BOOST_HAS_VARIADIC_TMPL ;
run-simple <define>TEST_BOOST_HAS_TR1_SHARED_PTR : tr1_shared_ptr ; obj boost_msvc6_member_templates : test_case.cpp : <define>TEST_BOOST_MSVC6_MEMBER_TEMPLATES ;
run-simple <define>TEST_BOOST_HAS_TR1_TUPLE : tr1_tuple ; obj boost_msvc_std_iterator : test_case.cpp : <define>TEST_BOOST_MSVC_STD_ITERATOR ;
run-simple <define>TEST_BOOST_HAS_TR1_TYPE_TRAITS : tr1_type_traits ; obj winthreads : test_case.cpp : <define>TEST_BOOST_HAS_WINTHREADS ;
run-simple <define>TEST_BOOST_HAS_TR1_UNORDERED_MAP : tr1_unordered_map ; obj adl_barrier : test_case.cpp : <define>TEST_BOOST_NO_ADL_BARRIER ;
run-simple <define>TEST_BOOST_HAS_TR1_UNORDERED_SET : tr1_unordered_set ; obj argument_dependent_lookup : test_case.cpp : <define>TEST_BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP ;
run-simple <define>TEST_BOOST_HAS_TR1_UTILITY : tr1_utility ; obj array_type_specializations : test_case.cpp : <define>TEST_BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS ;
run-simple <define>TEST_BOOST_HAS_UNISTD_H : unistd_h ; obj cxx11_auto_declarations : test_case.cpp : <define>TEST_BOOST_NO_CXX11_AUTO_DECLARATIONS ;
run-simple <define>TEST_BOOST_HAS_VARIADIC_TMPL : variadic_tmpl ; obj cxx11_auto_multideclarations : test_case.cpp : <define>TEST_BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS ;
run-simple <define>TEST_BOOST_MSVC6_MEMBER_TEMPLATES : boost_msvc6_member_templates ; obj auto_ptr : test_case.cpp : <define>TEST_BOOST_NO_AUTO_PTR ;
run-simple <define>TEST_BOOST_MSVC_STD_ITERATOR : boost_msvc_std_iterator ; obj boost_bcb_partial_specialization_bug : test_case.cpp : <define>TEST_BOOST_BCB_PARTIAL_SPECIALIZATION_BUG ;
run-simple <define>TEST_BOOST_HAS_WINTHREADS : winthreads ; obj cxx11_char16_t : test_case.cpp : <define>TEST_BOOST_NO_CXX11_CHAR16_T ;
run-simple <define>TEST_BOOST_NO_ADL_BARRIER : adl_barrier ; obj cxx11_char32_t : test_case.cpp : <define>TEST_BOOST_NO_CXX11_CHAR32_T ;
run-simple <define>TEST_BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP : argument_dependent_lookup ; obj complete_value_initialization : test_case.cpp : <define>TEST_BOOST_NO_COMPLETE_VALUE_INITIALIZATION ;
run-simple <define>TEST_BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS : array_type_specializations ; obj cxx11_constexpr : test_case.cpp : <define>TEST_BOOST_NO_CXX11_CONSTEXPR ;
run-simple <define>TEST_BOOST_NO_CXX11_AUTO_DECLARATIONS : cxx11_auto_declarations ; obj ctype_functions : test_case.cpp : <define>TEST_BOOST_NO_CTYPE_FUNCTIONS ;
run-simple <define>TEST_BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS : cxx11_auto_multideclarations ; obj cv_specializations : test_case.cpp : <define>TEST_BOOST_NO_CV_SPECIALIZATIONS ;
run-simple <define>TEST_BOOST_NO_AUTO_PTR : auto_ptr ; obj cv_void_specializations : test_case.cpp : <define>TEST_BOOST_NO_CV_VOID_SPECIALIZATIONS ;
run-simple <define>TEST_BOOST_BCB_PARTIAL_SPECIALIZATION_BUG : boost_bcb_partial_specialization_bug ; obj cwchar : test_case.cpp : <define>TEST_BOOST_NO_CWCHAR ;
run-simple <define>TEST_BOOST_NO_CXX11_CHAR16_T : cxx11_char16_t ; obj cwctype : test_case.cpp : <define>TEST_BOOST_NO_CWCTYPE ;
run-simple <define>TEST_BOOST_NO_CXX11_CHAR32_T : cxx11_char32_t ; obj cxx11_addressof : test_case.cpp : <define>TEST_BOOST_NO_CXX11_ADDRESSOF ;
run-simple <define>TEST_BOOST_NO_COMPLETE_VALUE_INITIALIZATION : complete_value_initialization ; obj cxx11_alignas : test_case.cpp : <define>TEST_BOOST_NO_CXX11_ALIGNAS ;
run-simple <define>TEST_BOOST_NO_CXX11_CONSTEXPR : cxx11_constexpr ; obj cxx11_allocator : test_case.cpp : <define>TEST_BOOST_NO_CXX11_ALLOCATOR ;
run-simple <define>TEST_BOOST_NO_CTYPE_FUNCTIONS : ctype_functions ; obj cxx11_atomic_smart_ptr : test_case.cpp : <define>TEST_BOOST_NO_CXX11_ATOMIC_SMART_PTR ;
run-simple <define>TEST_BOOST_NO_CV_SPECIALIZATIONS : cv_specializations ; obj cxx11_final : test_case.cpp : <define>TEST_BOOST_NO_CXX11_FINAL ;
run-simple <define>TEST_BOOST_NO_CV_VOID_SPECIALIZATIONS : cv_void_specializations ; obj cxx11_hdr_array : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_ARRAY ;
run-simple <define>TEST_BOOST_NO_CWCHAR : cwchar ; obj cxx11_hdr_atomic : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_ATOMIC ;
run-simple <define>TEST_BOOST_NO_CWCTYPE : cwctype ; obj cxx11_hdr_chrono : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_CHRONO ;
run-simple <define>TEST_BOOST_NO_CXX11_ADDRESSOF : cxx11_addressof ; obj cxx11_hdr_codecvt : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_CODECVT ;
run-simple <define>TEST_BOOST_NO_CXX11_ALIGNAS : cxx11_alignas ; obj cxx11_hdr_condition_variable : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_CONDITION_VARIABLE ;
run-simple <define>TEST_BOOST_NO_CXX11_ALLOCATOR : cxx11_allocator ; obj cxx11_hdr_forward_list : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_FORWARD_LIST ;
run-simple <define>TEST_BOOST_NO_CXX11_ATOMIC_SMART_PTR : cxx11_atomic_smart_ptr ; obj cxx11_hdr_future : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_FUTURE ;
run-simple <define>TEST_BOOST_NO_CXX11_FINAL : cxx11_final ; obj cxx11_hdr_initializer_list : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_INITIALIZER_LIST ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_ARRAY : cxx11_hdr_array ; obj cxx11_hdr_mutex : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_MUTEX ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_ATOMIC : cxx11_hdr_atomic ; obj cxx11_hdr_random : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_RANDOM ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_CHRONO : cxx11_hdr_chrono ; obj cxx11_hdr_ratio : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_RATIO ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_CODECVT : cxx11_hdr_codecvt ; obj cxx11_hdr_regex : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_REGEX ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_CONDITION_VARIABLE : cxx11_hdr_condition_variable ; obj cxx11_hdr_system_error : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_SYSTEM_ERROR ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_FORWARD_LIST : cxx11_hdr_forward_list ; obj cxx11_hdr_thread : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_THREAD ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_FUTURE : cxx11_hdr_future ; obj cxx11_hdr_tuple : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_TUPLE ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_INITIALIZER_LIST : cxx11_hdr_initializer_list ; obj cxx11_hdr_type_traits : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_TYPE_TRAITS ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_MUTEX : cxx11_hdr_mutex ; obj cxx11_hdr_typeindex : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_TYPEINDEX ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_RANDOM : cxx11_hdr_random ; obj cxx11_hdr_unordered_map : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_UNORDERED_MAP ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_RATIO : cxx11_hdr_ratio ; obj cxx11_hdr_unordered_set : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_UNORDERED_SET ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_REGEX : cxx11_hdr_regex ; obj cxx11_inline_namespaces : test_case.cpp : <define>TEST_BOOST_NO_CXX11_INLINE_NAMESPACES ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_SYSTEM_ERROR : cxx11_hdr_system_error ; obj cxx11_non_public_defaulted_functions : test_case.cpp : <define>TEST_BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_THREAD : cxx11_hdr_thread ; obj cxx11_numeric_limits : test_case.cpp : <define>TEST_BOOST_NO_CXX11_NUMERIC_LIMITS ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_TUPLE : cxx11_hdr_tuple ; obj cxx11_ref_qualifiers : test_case.cpp : <define>TEST_BOOST_NO_CXX11_REF_QUALIFIERS ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_TYPE_TRAITS : cxx11_hdr_type_traits ; obj cxx11_sfinae_expr : test_case.cpp : <define>TEST_BOOST_NO_CXX11_SFINAE_EXPR ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_TYPEINDEX : cxx11_hdr_typeindex ; obj cxx11_smart_ptr : test_case.cpp : <define>TEST_BOOST_NO_CXX11_SMART_PTR ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_UNORDERED_MAP : cxx11_hdr_unordered_map ; obj cxx11_std_align : test_case.cpp : <define>TEST_BOOST_NO_CXX11_STD_ALIGN ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_UNORDERED_SET : cxx11_hdr_unordered_set ; obj cxx11_thread_local : test_case.cpp : <define>TEST_BOOST_NO_CXX11_THREAD_LOCAL ;
run-simple <define>TEST_BOOST_NO_CXX11_INLINE_NAMESPACES : cxx11_inline_namespaces ; obj cxx11_trailing_result_types : test_case.cpp : <define>TEST_BOOST_NO_CXX11_TRAILING_RESULT_TYPES ;
run-simple <define>TEST_BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS : cxx11_non_public_defaulted_functions ; obj cxx11_user_defined_literals : test_case.cpp : <define>TEST_BOOST_NO_CXX11_USER_DEFINED_LITERALS ;
run-simple <define>TEST_BOOST_NO_CXX11_NUMERIC_LIMITS : cxx11_numeric_limits ; obj cxx14_binary_literals : test_case.cpp : <define>TEST_BOOST_NO_CXX14_BINARY_LITERALS ;
run-simple <define>TEST_BOOST_NO_CXX11_REF_QUALIFIERS : cxx11_ref_qualifiers ; obj cxx14_constexpr : test_case.cpp : <define>TEST_BOOST_NO_CXX14_CONSTEXPR ;
run-simple <define>TEST_BOOST_NO_CXX11_SFINAE_EXPR : cxx11_sfinae_expr ; obj cxx14_decltype_auto : test_case.cpp : <define>TEST_BOOST_NO_CXX14_DECLTYPE_AUTO ;
run-simple <define>TEST_BOOST_NO_CXX11_SMART_PTR : cxx11_smart_ptr ; obj cxx14_digit_separators : test_case.cpp : <define>TEST_BOOST_NO_CXX14_DIGIT_SEPARATORS ;
run-simple <define>TEST_BOOST_NO_CXX11_STD_ALIGN : cxx11_std_align ; obj cxx14_generic_lambdas : test_case.cpp : <define>TEST_BOOST_NO_CXX14_GENERIC_LAMBDAS ;
run-simple <define>TEST_BOOST_NO_CXX11_THREAD_LOCAL : cxx11_thread_local ; obj cxx14_hdr_shared_mutex : test_case.cpp : <define>TEST_BOOST_NO_CXX14_HDR_SHARED_MUTEX ;
run-simple <define>TEST_BOOST_NO_CXX11_TRAILING_RESULT_TYPES : cxx11_trailing_result_types ; obj cxx14_initialized_lambda_captures : test_case.cpp : <define>TEST_BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES ;
run-simple <define>TEST_BOOST_NO_CXX11_USER_DEFINED_LITERALS : cxx11_user_defined_literals ; obj cxx14_aggregate_nsdmi : test_case.cpp : <define>TEST_BOOST_NO_CXX14_AGGREGATE_NSDMI ;
run-simple <define>TEST_BOOST_NO_CXX14_BINARY_LITERALS : cxx14_binary_literals ; obj cxx14_return_type_deduction : test_case.cpp : <define>TEST_BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION ;
run-simple <define>TEST_BOOST_NO_CXX14_CONSTEXPR : cxx14_constexpr ; obj cxx14_std_exchange : test_case.cpp : <define>TEST_BOOST_NO_CXX14_STD_EXCHANGE ;
run-simple <define>TEST_BOOST_NO_CXX14_DECLTYPE_AUTO : cxx14_decltype_auto ; obj cxx14_variable_templates : test_case.cpp : <define>TEST_BOOST_NO_CXX14_VARIABLE_TEMPLATES ;
run-simple <define>TEST_BOOST_NO_CXX14_DIGIT_SEPARATORS : cxx14_digit_separators ; obj cxx17_std_apply : test_case.cpp : <define>TEST_BOOST_NO_CXX17_STD_APPLY ;
run-simple <define>TEST_BOOST_NO_CXX14_GENERIC_LAMBDAS : cxx14_generic_lambdas ; obj cxx17_std_invoke : test_case.cpp : <define>TEST_BOOST_NO_CXX17_STD_INVOKE ;
run-simple <define>TEST_BOOST_NO_CXX14_HDR_SHARED_MUTEX : cxx14_hdr_shared_mutex ; obj cxx11_hdr_functional : test_case.cpp : <define>TEST_BOOST_NO_CXX11_HDR_FUNCTIONAL ;
run-simple <define>TEST_BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES : cxx14_initialized_lambda_captures ; obj cxx11_decltype : test_case.cpp : <define>TEST_BOOST_NO_CXX11_DECLTYPE ;
run-simple <define>TEST_BOOST_NO_CXX14_AGGREGATE_NSDMI : cxx14_aggregate_nsdmi ; obj cxx11_decltype_n3276 : test_case.cpp : <define>TEST_BOOST_NO_CXX11_DECLTYPE_N3276 ;
run-simple <define>TEST_BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION : cxx14_return_type_deduction ; obj boost_deduced_typename : test_case.cpp : <define>TEST_BOOST_DEDUCED_TYPENAME ;
run-simple <define>TEST_BOOST_NO_CXX14_STD_EXCHANGE : cxx14_std_exchange ; obj cxx11_defaulted_functions : test_case.cpp : <define>TEST_BOOST_NO_CXX11_DEFAULTED_FUNCTIONS ;
run-simple <define>TEST_BOOST_NO_CXX14_VARIABLE_TEMPLATES : cxx14_variable_templates ; obj cxx11_deleted_functions : test_case.cpp : <define>TEST_BOOST_NO_CXX11_DELETED_FUNCTIONS ;
run-simple <define>TEST_BOOST_NO_CXX17_STD_APPLY : cxx17_std_apply ; obj dependent_nested_derivations : test_case.cpp : <define>TEST_BOOST_NO_DEPENDENT_NESTED_DERIVATIONS ;
run-simple <define>TEST_BOOST_NO_CXX17_STD_INVOKE : cxx17_std_invoke ; obj dependent_types_in_template_value_parameters : test_case.cpp : <define>TEST_BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS ;
run-simple <define>TEST_BOOST_NO_CXX11_HDR_FUNCTIONAL : cxx11_hdr_functional ; obj exception_std_namespace : test_case.cpp : <define>TEST_BOOST_NO_EXCEPTION_STD_NAMESPACE ;
run-simple <define>TEST_BOOST_NO_CXX11_DECLTYPE : cxx11_decltype ; obj exceptions : test_case.cpp : <define>TEST_BOOST_NO_EXCEPTIONS ;
run-simple <define>TEST_BOOST_NO_CXX11_DECLTYPE_N3276 : cxx11_decltype_n3276 ; obj explicit_function_template_arguments : test_case.cpp : <define>TEST_BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS ;
run-simple <define>TEST_BOOST_DEDUCED_TYPENAME : boost_deduced_typename ; obj cxx11_explicit_conversion_operators : test_case.cpp : <define>TEST_BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS ;
run-simple <define>TEST_BOOST_NO_CXX11_DEFAULTED_FUNCTIONS : cxx11_defaulted_functions ; obj cxx11_extern_template : test_case.cpp : <define>TEST_BOOST_NO_CXX11_EXTERN_TEMPLATE ;
run-simple <define>TEST_BOOST_NO_CXX11_DELETED_FUNCTIONS : cxx11_deleted_functions ; obj fenv_h : test_case.cpp : <define>TEST_BOOST_NO_FENV_H ;
run-simple <define>TEST_BOOST_NO_DEPENDENT_NESTED_DERIVATIONS : dependent_nested_derivations ; obj cxx11_fixed_length_variadic_template_expansion_packs : test_case.cpp : <define>TEST_BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS ;
run-simple <define>TEST_BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS : dependent_types_in_template_value_parameters ; obj function_template_ordering : test_case.cpp : <define>TEST_BOOST_NO_FUNCTION_TEMPLATE_ORDERING ;
run-simple <define>TEST_BOOST_NO_EXCEPTION_STD_NAMESPACE : exception_std_namespace ; obj cxx11_function_template_default_args : test_case.cpp : <define>TEST_BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS ;
run-simple <define>TEST_BOOST_NO_EXCEPTIONS : exceptions ; obj function_type_specializations : test_case.cpp : <define>TEST_BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS ;
run-simple <define>TEST_BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS : explicit_function_template_arguments ; obj ms_int64_numeric_limits : test_case.cpp : <define>TEST_BOOST_NO_MS_INT64_NUMERIC_LIMITS ;
run-simple <define>TEST_BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS : cxx11_explicit_conversion_operators ; obj inclass_member_initialization : test_case.cpp : <define>TEST_BOOST_NO_INCLASS_MEMBER_INITIALIZATION ;
run-simple <define>TEST_BOOST_NO_CXX11_EXTERN_TEMPLATE : cxx11_extern_template ; obj integral_int64_t : test_case.cpp : <define>TEST_BOOST_NO_INTEGRAL_INT64_T ;
run-simple <define>TEST_BOOST_NO_FENV_H : fenv_h ; obj iosfwd : test_case.cpp : <define>TEST_BOOST_NO_IOSFWD ;
run-simple <define>TEST_BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS : cxx11_fixed_length_variadic_template_expansion_packs ; obj iostream : test_case.cpp : <define>TEST_BOOST_NO_IOSTREAM ;
run-simple <define>TEST_BOOST_NO_FUNCTION_TEMPLATE_ORDERING : function_template_ordering ; obj is_abstract : test_case.cpp : <define>TEST_BOOST_NO_IS_ABSTRACT ;
run-simple <define>TEST_BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS : cxx11_function_template_default_args ; obj templated_iterator_constructors : test_case.cpp : <define>TEST_BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS ;
run-simple <define>TEST_BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS : function_type_specializations ; obj cxx11_lambdas : test_case.cpp : <define>TEST_BOOST_NO_CXX11_LAMBDAS ;
run-simple <define>TEST_BOOST_NO_MS_INT64_NUMERIC_LIMITS : ms_int64_numeric_limits ; obj limits : test_case.cpp : <define>TEST_BOOST_NO_LIMITS ;
run-simple <define>TEST_BOOST_NO_INCLASS_MEMBER_INITIALIZATION : inclass_member_initialization ; obj limits_compile_time_constants : test_case.cpp : <define>TEST_BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS ;
run-simple <define>TEST_BOOST_NO_INTEGRAL_INT64_T : integral_int64_t ; obj long_long_numeric_limits : test_case.cpp : <define>TEST_BOOST_NO_LONG_LONG_NUMERIC_LIMITS ;
run-simple <define>TEST_BOOST_NO_IOSFWD : iosfwd ; obj member_function_specializations : test_case.cpp : <define>TEST_BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS ;
run-simple <define>TEST_BOOST_NO_IOSTREAM : iostream ; obj member_template_keyword : test_case.cpp : <define>TEST_BOOST_NO_MEMBER_TEMPLATE_KEYWORD ;
run-simple <define>TEST_BOOST_NO_IS_ABSTRACT : is_abstract ; obj pointer_to_member_template_parameters : test_case.cpp : <define>TEST_BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS ;
run-simple <define>TEST_BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS : templated_iterator_constructors ; obj member_template_friends : test_case.cpp : <define>TEST_BOOST_NO_MEMBER_TEMPLATE_FRIENDS ;
run-simple <define>TEST_BOOST_NO_CXX11_LAMBDAS : cxx11_lambdas ; obj member_templates : test_case.cpp : <define>TEST_BOOST_NO_MEMBER_TEMPLATES ;
run-simple <define>TEST_BOOST_NO_LIMITS : limits ; obj nested_friendship : test_case.cpp : <define>TEST_BOOST_NO_NESTED_FRIENDSHIP ;
run-simple <define>TEST_BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS : limits_compile_time_constants ; obj cxx11_noexcept : test_case.cpp : <define>TEST_BOOST_NO_CXX11_NOEXCEPT ;
run-simple <define>TEST_BOOST_NO_LONG_LONG_NUMERIC_LIMITS : long_long_numeric_limits ; obj cxx11_nullptr : test_case.cpp : <define>TEST_BOOST_NO_CXX11_NULLPTR ;
run-simple <define>TEST_BOOST_NO_LONG_LONG : long_long ; obj operators_in_namespace : test_case.cpp : <define>TEST_BOOST_NO_OPERATORS_IN_NAMESPACE ;
run-simple <define>TEST_BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS : member_function_specializations ; obj partial_specialization_implicit_default_args : test_case.cpp : <define>TEST_BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS ;
run-simple <define>TEST_BOOST_NO_MEMBER_TEMPLATE_KEYWORD : member_template_keyword ; obj template_partial_specialization : test_case.cpp : <define>TEST_BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION ;
run-simple <define>TEST_BOOST_NO_POINTER_TO_MEMBER_TEMPLATE_PARAMETERS : pointer_to_member_template_parameters ; obj private_in_aggregate : test_case.cpp : <define>TEST_BOOST_NO_PRIVATE_IN_AGGREGATE ;
run-simple <define>TEST_BOOST_NO_MEMBER_TEMPLATE_FRIENDS : member_template_friends ; obj pointer_to_member_const : test_case.cpp : <define>TEST_BOOST_NO_POINTER_TO_MEMBER_CONST ;
run-simple <define>TEST_BOOST_NO_MEMBER_TEMPLATES : member_templates ; obj cxx11_range_based_for : test_case.cpp : <define>TEST_BOOST_NO_CXX11_RANGE_BASED_FOR ;
run-simple <define>TEST_BOOST_NO_NESTED_FRIENDSHIP : nested_friendship ; obj cxx11_raw_literals : test_case.cpp : <define>TEST_BOOST_NO_CXX11_RAW_LITERALS ;
run-simple <define>TEST_BOOST_NO_CXX11_NOEXCEPT : cxx11_noexcept ; obj restrict_references : test_case.cpp : <define>TEST_BOOST_NO_RESTRICT_REFERENCES ;
run-simple <define>TEST_BOOST_NO_CXX11_NULLPTR : cxx11_nullptr ; obj unreachable_return_detection : test_case.cpp : <define>TEST_BOOST_NO_UNREACHABLE_RETURN_DETECTION ;
run-simple <define>TEST_BOOST_NO_OPERATORS_IN_NAMESPACE : operators_in_namespace ; obj rtti : test_case.cpp : <define>TEST_BOOST_NO_RTTI ;
run-simple <define>TEST_BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS : partial_specialization_implicit_default_args ; obj cxx11_rvalue_references : test_case.cpp : <define>TEST_BOOST_NO_CXX11_RVALUE_REFERENCES ;
run-simple <define>TEST_BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION : template_partial_specialization ; obj cxx11_scoped_enums : test_case.cpp : <define>TEST_BOOST_NO_CXX11_SCOPED_ENUMS ;
run-simple <define>TEST_BOOST_NO_PRIVATE_IN_AGGREGATE : private_in_aggregate ; obj sfinae : test_case.cpp : <define>TEST_BOOST_NO_SFINAE ;
run-simple <define>TEST_BOOST_NO_POINTER_TO_MEMBER_CONST : pointer_to_member_const ; obj sfinae_expr : test_case.cpp : <define>TEST_BOOST_NO_SFINAE_EXPR ;
run-simple <define>TEST_BOOST_NO_CXX11_RANGE_BASED_FOR : cxx11_range_based_for ; obj stringstream : test_case.cpp : <define>TEST_BOOST_NO_STRINGSTREAM ;
run-simple <define>TEST_BOOST_NO_CXX11_RAW_LITERALS : cxx11_raw_literals ; obj cxx11_static_assert : test_case.cpp : <define>TEST_BOOST_NO_CXX11_STATIC_ASSERT ;
run-simple <define>TEST_BOOST_NO_RESTRICT_REFERENCES : restrict_references ; obj std_allocator : test_case.cpp : <define>TEST_BOOST_NO_STD_ALLOCATOR ;
run-simple <define>TEST_BOOST_NO_UNREACHABLE_RETURN_DETECTION : unreachable_return_detection ; obj std_distance : test_case.cpp : <define>TEST_BOOST_NO_STD_DISTANCE ;
run-simple <define>TEST_BOOST_NO_RTTI : rtti ; obj std_iterator_traits : test_case.cpp : <define>TEST_BOOST_NO_STD_ITERATOR_TRAITS ;
run-simple <define>TEST_BOOST_NO_CXX11_RVALUE_REFERENCES : cxx11_rvalue_references ; obj std_iterator : test_case.cpp : <define>TEST_BOOST_NO_STD_ITERATOR ;
run-simple <define>TEST_BOOST_NO_CXX11_SCOPED_ENUMS : cxx11_scoped_enums ; obj std_locale : test_case.cpp : <define>TEST_BOOST_NO_STD_LOCALE ;
run-simple <define>TEST_BOOST_NO_SFINAE : sfinae ; obj std_messages : test_case.cpp : <define>TEST_BOOST_NO_STD_MESSAGES ;
run-simple <define>TEST_BOOST_NO_SFINAE_EXPR : sfinae_expr ; obj std_min_max : test_case.cpp : <define>TEST_BOOST_NO_STD_MIN_MAX ;
run-simple <define>TEST_BOOST_NO_STRINGSTREAM : stringstream ; obj std_output_iterator_assign : test_case.cpp : <define>TEST_BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN ;
run-simple <define>TEST_BOOST_NO_CXX11_STATIC_ASSERT : cxx11_static_assert ; obj std_typeinfo : test_case.cpp : <define>TEST_BOOST_NO_STD_TYPEINFO ;
run-simple <define>TEST_BOOST_NO_STD_ALLOCATOR : std_allocator ; obj std_use_facet : test_case.cpp : <define>TEST_BOOST_NO_STD_USE_FACET ;
run-simple <define>TEST_BOOST_NO_STD_DISTANCE : std_distance ; obj std_wstreambuf : test_case.cpp : <define>TEST_BOOST_NO_STD_WSTREAMBUF ;
run-simple <define>TEST_BOOST_NO_STD_ITERATOR_TRAITS : std_iterator_traits ; obj std_wstring : test_case.cpp : <define>TEST_BOOST_NO_STD_WSTRING ;
run-simple <define>TEST_BOOST_NO_STD_ITERATOR : std_iterator ; obj stdc_namespace : test_case.cpp : <define>TEST_BOOST_NO_STDC_NAMESPACE ;
run-simple <define>TEST_BOOST_NO_STD_LOCALE : std_locale ; obj swprintf : test_case.cpp : <define>TEST_BOOST_NO_SWPRINTF ;
run-simple <define>TEST_BOOST_NO_STD_MESSAGES : std_messages ; obj cxx11_local_class_template_parameters : test_case.cpp : <define>TEST_BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS ;
run-simple <define>TEST_BOOST_NO_STD_MIN_MAX : std_min_max ; obj cxx11_template_aliases : test_case.cpp : <define>TEST_BOOST_NO_CXX11_TEMPLATE_ALIASES ;
run-simple <define>TEST_BOOST_NO_STD_OUTPUT_ITERATOR_ASSIGN : std_output_iterator_assign ; obj templated_iostreams : test_case.cpp : <define>TEST_BOOST_NO_TEMPLATED_IOSTREAMS ;
run-simple <define>TEST_BOOST_NO_STD_TYPEINFO : std_typeinfo ; obj template_templates : test_case.cpp : <define>TEST_BOOST_NO_TEMPLATE_TEMPLATES ;
run-simple <define>TEST_BOOST_NO_STD_USE_FACET : std_use_facet ; obj two_phase_name_lookup : test_case.cpp : <define>TEST_BOOST_NO_TWO_PHASE_NAME_LOOKUP ;
run-simple <define>TEST_BOOST_NO_STD_WSTREAMBUF : std_wstreambuf ; obj typeid : test_case.cpp : <define>TEST_BOOST_NO_TYPEID ;
run-simple <define>TEST_BOOST_NO_STD_WSTRING : std_wstring ; obj typename_with_ctor : test_case.cpp : <define>TEST_BOOST_NO_TYPENAME_WITH_CTOR ;
run-simple <define>TEST_BOOST_NO_STDC_NAMESPACE : stdc_namespace ; obj cxx11_unicode_literals : test_case.cpp : <define>TEST_BOOST_NO_CXX11_UNICODE_LITERALS ;
run-simple <define>TEST_BOOST_NO_SWPRINTF : swprintf ; obj cxx11_unified_initialization_syntax : test_case.cpp : <define>TEST_BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX ;
run-simple <define>TEST_BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS : cxx11_local_class_template_parameters ; obj boost_function_scope_using_declaration_breaks_adl : test_case.cpp : <define>TEST_BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL ;
run-simple <define>TEST_BOOST_NO_CXX11_TEMPLATE_ALIASES : cxx11_template_aliases ; obj using_declaration_overloads_from_typename_base : test_case.cpp : <define>TEST_BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE ;
run-simple <define>TEST_BOOST_NO_TEMPLATED_IOSTREAMS : templated_iostreams ; obj using_template : test_case.cpp : <define>TEST_BOOST_NO_USING_TEMPLATE ;
run-simple <define>TEST_BOOST_NO_TEMPLATE_TEMPLATES : template_templates ; obj cxx11_variadic_macros : test_case.cpp : <define>TEST_BOOST_NO_CXX11_VARIADIC_MACROS ;
run-simple <define>TEST_BOOST_NO_TWO_PHASE_NAME_LOOKUP : two_phase_name_lookup ; obj cxx11_variadic_templates : test_case.cpp : <define>TEST_BOOST_NO_CXX11_VARIADIC_TEMPLATES ;
run-simple <define>TEST_BOOST_NO_TYPEID : typeid ; obj void_returns : test_case.cpp : <define>TEST_BOOST_NO_VOID_RETURNS ;
run-simple <define>TEST_BOOST_NO_TYPENAME_WITH_CTOR : typename_with_ctor ; obj intrinsic_wchar_t : test_case.cpp : <define>TEST_BOOST_NO_INTRINSIC_WCHAR_T ;
run-simple <define>TEST_BOOST_NO_CXX11_UNICODE_LITERALS : cxx11_unicode_literals ;
run-simple <define>TEST_BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX : cxx11_unified_initialization_syntax ;
run-simple <define>TEST_BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL : boost_function_scope_using_declaration_breaks_adl ;
run-simple <define>TEST_BOOST_NO_USING_DECLARATION_OVERLOADS_FROM_TYPENAME_BASE : using_declaration_overloads_from_typename_base ;
run-simple <define>TEST_BOOST_NO_USING_TEMPLATE : using_template ;
run-simple <define>TEST_BOOST_NO_CXX11_VARIADIC_MACROS : cxx11_variadic_macros ;
run-simple <define>TEST_BOOST_NO_CXX11_VARIADIC_TEMPLATES : cxx11_variadic_templates ;
run-simple <define>TEST_BOOST_NO_VOID_RETURNS : void_returns ;
run-simple <define>TEST_BOOST_NO_INTRINSIC_WCHAR_T : intrinsic_wchar_t ;

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
# #
# Regression test Jamfile for boost configuration setup. # Regression test Jamfile for boost configuration setup.
# *** DO NOT EDIT THIS FILE BY HAND *** # *** DO NOT EDIT THIS FILE BY HAND ***
# This file was automatically generated on Sun Feb 5 19:09:22 2017 # This file was automatically generated on Mon Apr 17 12:45:44 2017
# by libs/config/tools/generate.cpp # by libs/config/tools/generate.cpp
# Copyright John Maddock. # Copyright John Maddock.
# Use, modification and distribution are subject to the # Use, modification and distribution are subject to the

View File

@@ -1152,6 +1152,11 @@ void print_boost_macros()
// END GENERATED BLOCK // END GENERATED BLOCK

View File

@@ -1,4 +1,4 @@
// This file was automatically generated on Sun Feb 5 19:09:22 2017 // This file was automatically generated on Mon Apr 17 12:45:44 2017
// by libs/config/tools/generate.cpp // by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-4. // Copyright John Maddock 2002-4.
// Use, modification and distribution are subject to the // Use, modification and distribution are subject to the

View File

@@ -41,7 +41,7 @@ std::stringstream jamfile_v2;
std::stringstream build_config_test; std::stringstream build_config_test;
std::stringstream build_config_jamfile; std::stringstream build_config_jamfile;
std::set<std::string> macro_list; std::set<std::string> macro_list;
std::set<std::string> feature_list;
void write_config_info() void write_config_info()
{ {
@@ -192,8 +192,9 @@ void write_build_tests()
time_t t = std::time(0); time_t t = std::time(0);
ofs << "// This file was automatically generated on " << std::ctime(&t); ofs << "// This file was automatically generated on " << std::ctime(&t);
ofs << "// by libs/config/tools/generate.cpp\n" << copyright << std::endl; ofs << "// by libs/config/tools/generate.cpp\n" << copyright << std::endl;
ofs << "#include <boost/config.hpp>\n\n";
ofs << build_config_test.str() << std::endl; ofs << build_config_test.str() << std::endl;
ofs << "int main( int, char *[] )\n{\n" << " return test::test();\n}\n\n"; ofs << "int main( int, char *[] )\n{\n" << " return 0;\n}\n\n";
} }
void write_build_check_jamfile() void write_build_check_jamfile()
@@ -209,13 +210,6 @@ void write_build_check_jamfile()
"# LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)\n\n" "# LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)\n\n"
"import modules ;\nimport path ; \n\n" "import modules ;\nimport path ; \n\n"
"\n" "\n"
"rule run-simple ( requirements * : target-name )\n"
"{\n"
" obj $(target-name)_obj : test_case.cpp : $(requirements) ;\n"
" explicit $(target-name)_obj ;\n"
" unit-test $(target-name) : $(target-name)_obj : $(requirements) ;\n"
" explicit $(target-name) ;\n"
"}\n\n"
; ;
ofs << build_config_jamfile.str() << std::endl; ofs << build_config_jamfile.str() << std::endl;
} }
@@ -288,13 +282,22 @@ void process_ipp_file(const fs::path& file, bool positive_test)
// Generate data for the Build-checks test file: // Generate data for the Build-checks test file:
build_config_test << "#ifdef TEST_" << macro_name << std::endl; build_config_test << "#ifdef TEST_" << macro_name << std::endl;
build_config_test << "# include \"../test/" << file.leaf().string() << "\"\n"; if (positive_test)
build_config_test << "namespace test = " << namespace_name << ";\n#endif\n"; {
build_config_test << "# ifndef " << macro_name << "\n# error \"Feature macro " << macro_name << " is not defined.\"\n# endif\n";
}
else
{
build_config_test << "# ifdef " << macro_name << "\n# error \"Defect macro " << macro_name << " is defined.\"\n# endif\n";
}
build_config_test << "#endif\n";
// Generate data for the build-checks Jamfile: // Generate data for the build-checks Jamfile:
static const boost::regex feature_regex("boost_(?:no|has)_(.*)"); static const boost::regex feature_regex("boost_(?:no|has)_(.*)");
std::string feature_name = boost::regex_replace(namespace_name, feature_regex, "\\1"); std::string feature_name = boost::regex_replace(namespace_name, feature_regex, "\\1");
build_config_jamfile << "run-simple <define>TEST_" << macro_name << " : " << feature_name << " ;\n"; if(feature_list.find(feature_name) == feature_list.end())
build_config_jamfile << "obj " << feature_name << " : test_case.cpp : <define>TEST_" << macro_name << " ;\n";
feature_list.insert(feature_name);
} }
int cpp_main(int argc, char* argv[]) int cpp_main(int argc, char* argv[])