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

View File

@ -1152,6 +1152,11 @@ void print_boost_macros()
// 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
// Copyright John Maddock 2002-4.
// 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_jamfile;
std::set<std::string> macro_list;
std::set<std::string> feature_list;
void write_config_info()
{
@ -192,8 +192,9 @@ void write_build_tests()
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 << "#include <boost/config.hpp>\n\n";
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()
@ -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"
"import modules ;\nimport path ; \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;
}
@ -288,13 +282,22 @@ void process_ipp_file(const fs::path& file, bool positive_test)
// 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";
if (positive_test)
{
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:
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 <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[])