On 2015-09-06 22:19 (+0200), David Evans wrote: > In any case, this patch sets BOOST_APPLE_CLANG_NO_LIBCXX which > apparently doesn't translate into BOOST_NO_CXX11_RVALUE_REFERENCES > and there's a whole lot of other BOOST_NO_CXX11_* macros as well. In > the current version, BOOST_APPLE_CLANG_NO_LIBCXX is used only in > boost/multi_index/detail/vartempl_support.hpp, which I think was the > previous problem. > > After looking at the Boost.Config documentation, I'm wondering now if > using a custom user.hpp might not be a better approach than patching > clang.hpp. Running their configure util (libs/config/configure) > should run all the necessary tests and generate a recommended > user.hpp (in the cwd). Unfortunately, I don't have a Lion system > handy to see the results myself. Could you do this and publish the > results? I'm curious to see if BOOST_NO_CXX11_RVALUE_REFERENCES is > included. Or whatever else is included for that matter.
OS X 10.7.5 / Xcode 4.6.3 compiler versions: $ g++ --version i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00) Copyright (C) 2007 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ c++ --version Apple LLVM version 4.2 (clang-425.0.28) (based on LLVM 3.2svn) Target: x86_64-apple-darwin11.4.2 Thread model: posix $ clang++ --version Apple LLVM version 4.2 (clang-425.0.28) (based on LLVM 3.2svn) Target: x86_64-apple-darwin11.4.2 Thread model: posix $ The boost configure script prefers g++ unless CXX is explicitly set to clang++ or c++. Attached are both user.hpp files (for llvm-gcc-4.2++ and for clang++). Just to be sure, I ran the configure script twice - on the extracted source, and after applying MacPorts' patches: the result was the same. The one for clang++ does not set BOOST_NO_CXX11_RVALUE_REFERENCES. Regards, V
// (C) Copyright Boost.org 2001. // Do not check in modified versions of this file, // This file may be customised by the end user, but not by boost. // // Use this file to define a site and compiler specific // configuration policy, this version was auto-generated by // configure on Sun Sep 6 22:34:54 CEST 2015 // With the following options: // CXX = g++ // CXXFLAGS = -I./../.. -I./../../libs/config/test -g -O2 -DBOOST_NO_CONFIG // LDFLAGS = // LIBS = -lm -lpthread // // define this to disable all config options, // excluding the user config. Use if your // setup is fully ISO complient, and has no // useful extentions, or for autoconf generated // setups: #ifndef BOOST_NO_CONFIG # define BOOST_NO_CONFIG #endif // define if you want to disable threading support, even // when available: // #define BOOST_DISABLE_THREADS // define if you want the regex library to use the C locale // even on Win32: // #define BOOST_REGEX_USE_C_LOCALE // define this is you want the regex library to use the C++ // locale: // #define BOOST_REGEX_USE_CPP_LOCALE // // options added by configure: // #define BOOST_MSVC6_MEMBER_TEMPLATES #define BOOST_HAS_UNISTD_H #define BOOST_HAS_STDINT_H #define BOOST_HAS_SIGACTION #define BOOST_HAS_SCHED_YIELD #define BOOST_HAS_PTHREADS #define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE #define BOOST_HAS_PARTIAL_STD_ALLOCATOR #define BOOST_HAS_NRVO #define BOOST_HAS_NL_TYPES_H #define BOOST_HAS_NANOSLEEP #define BOOST_HAS_LONG_LONG #define BOOST_HAS_LOG1P #define BOOST_HAS_GETTIMEOFDAY #define BOOST_HAS_EXPM1 #define BOOST_HAS_DIRENT_H #define BOOST_NO_CXX11_VARIADIC_TEMPLATES #define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX #define BOOST_NO_CXX11_UNICODE_LITERALS #define BOOST_NO_CXX11_TEMPLATE_ALIASES #define BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS #define BOOST_NO_CXX11_STATIC_ASSERT #define BOOST_NO_SFINAE_EXPR #define BOOST_NO_CXX11_SCOPED_ENUMS #define BOOST_NO_CXX11_RVALUE_REFERENCES #define BOOST_NO_CXX11_RAW_LITERALS #define BOOST_NO_CXX11_RANGE_BASED_FOR #define BOOST_NO_CXX11_NULLPTR #define BOOST_NO_CXX11_NOEXCEPT #define BOOST_NO_CXX11_LAMBDAS #define BOOST_NO_MS_INT64_NUMERIC_LIMITS #define BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS #define BOOST_NO_CXX11_FIXED_LENGTH_VARIADIC_TEMPLATE_EXPANSION_PACKS #define BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS #define BOOST_NO_CXX11_DELETED_FUNCTIONS #define BOOST_NO_CXX11_DEFAULTED_FUNCTIONS #define BOOST_NO_CXX11_DECLTYPE_N3276 #define BOOST_NO_CXX11_DECLTYPE #define BOOST_NO_CXX11_HDR_FUNCTIONAL #define BOOST_NO_CXX14_VARIABLE_TEMPLATES #define BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION #define BOOST_NO_CXX14_AGGREGATE_NSDMI #define BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES #define BOOST_NO_CXX14_HDR_SHARED_MUTEX #define BOOST_NO_CXX14_GENERIC_LAMBDAS #define BOOST_NO_CXX14_DIGIT_SEPARATORS #define BOOST_NO_CXX14_DECLTYPE_AUTO #define BOOST_NO_CXX14_CONSTEXPR #define BOOST_NO_CXX14_BINARY_LITERALS #define BOOST_NO_CXX11_USER_DEFINED_LITERALS #define BOOST_NO_CXX11_TRAILING_RESULT_TYPES #define BOOST_NO_CXX11_STD_ALIGN #define BOOST_NO_CXX11_SMART_PTR #define BOOST_NO_CXX11_REF_QUALIFIERS #define BOOST_NO_CXX11_NUMERIC_LIMITS #define BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS #define BOOST_NO_CXX11_INLINE_NAMESPACES #define BOOST_NO_CXX11_HDR_UNORDERED_SET #define BOOST_NO_CXX11_HDR_UNORDERED_MAP #define BOOST_NO_CXX11_HDR_TYPEINDEX #define BOOST_NO_CXX11_HDR_TYPE_TRAITS #define BOOST_NO_CXX11_HDR_TUPLE #define BOOST_NO_CXX11_HDR_THREAD #define BOOST_NO_CXX11_HDR_SYSTEM_ERROR #define BOOST_NO_CXX11_HDR_REGEX #define BOOST_NO_CXX11_HDR_RATIO #define BOOST_NO_CXX11_HDR_RANDOM #define BOOST_NO_CXX11_HDR_MUTEX #define BOOST_NO_CXX11_HDR_INITIALIZER_LIST #define BOOST_NO_CXX11_HDR_FUTURE #define BOOST_NO_CXX11_HDR_FORWARD_LIST #define BOOST_NO_CXX11_HDR_CONDITION_VARIABLE #define BOOST_NO_CXX11_HDR_CODECVT #define BOOST_NO_CXX11_HDR_CHRONO #define BOOST_NO_CXX11_HDR_ATOMIC #define BOOST_NO_CXX11_HDR_ARRAY #define BOOST_NO_CXX11_FINAL #define BOOST_NO_CXX11_ATOMIC_SMART_PTR #define BOOST_NO_CXX11_ALLOCATOR #define BOOST_NO_CXX11_ALIGNAS #define BOOST_NO_CXX11_ADDRESSOF #define BOOST_NO_CXX11_CONSTEXPR #define BOOST_NO_COMPLETE_VALUE_INITIALIZATION #define BOOST_NO_CXX11_CHAR32_T #define BOOST_NO_CXX11_CHAR16_T #define BOOST_NO_CXX11_AUTO_MULTIDECLARATIONS #define BOOST_NO_CXX11_AUTO_DECLARATIONS
// (C) Copyright Boost.org 2001. // Do not check in modified versions of this file, // This file may be customised by the end user, but not by boost. // // Use this file to define a site and compiler specific // configuration policy, this version was auto-generated by // configure on Sun Sep 6 22:42:41 CEST 2015 // With the following options: // CXX = clang++ // CXXFLAGS = -I./../.. -I./../../libs/config/test -g -O2 -DBOOST_NO_CONFIG // LDFLAGS = // LIBS = -lm -lpthread // // define this to disable all config options, // excluding the user config. Use if your // setup is fully ISO complient, and has no // useful extentions, or for autoconf generated // setups: #ifndef BOOST_NO_CONFIG # define BOOST_NO_CONFIG #endif // define if you want to disable threading support, even // when available: // #define BOOST_DISABLE_THREADS // define if you want the regex library to use the C locale // even on Win32: // #define BOOST_REGEX_USE_C_LOCALE // define this is you want the regex library to use the C++ // locale: // #define BOOST_REGEX_USE_CPP_LOCALE // // options added by configure: // #define BOOST_MSVC6_MEMBER_TEMPLATES #define BOOST_HAS_VARIADIC_TMPL #define BOOST_HAS_UNISTD_H #define BOOST_HAS_STDINT_H #define BOOST_HAS_SIGACTION #define BOOST_HAS_SCHED_YIELD #define BOOST_HAS_RVALUE_REFS #define BOOST_HAS_PTHREADS #define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE #define BOOST_HAS_PARTIAL_STD_ALLOCATOR #define BOOST_HAS_NRVO #define BOOST_HAS_NL_TYPES_H #define BOOST_HAS_NANOSLEEP #define BOOST_HAS_LONG_LONG #define BOOST_HAS_LOG1P #define BOOST_HAS_INT128 #define BOOST_HAS_GETTIMEOFDAY #define BOOST_HAS_EXPM1 #define BOOST_HAS_DIRENT_H #define BOOST_NO_CXX11_UNIFIED_INITIALIZATION_SYNTAX #define BOOST_NO_CXX11_UNICODE_LITERALS #define BOOST_NO_CXX11_STATIC_ASSERT #define BOOST_NO_CXX11_SCOPED_ENUMS #define BOOST_NO_CXX11_RAW_LITERALS #define BOOST_NO_CXX11_NULLPTR #define BOOST_NO_CXX11_NOEXCEPT #define BOOST_NO_CXX11_LAMBDAS #define BOOST_NO_MS_INT64_NUMERIC_LIMITS #define BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS #define BOOST_NO_CXX11_DELETED_FUNCTIONS #define BOOST_NO_CXX11_DEFAULTED_FUNCTIONS #define BOOST_NO_CXX11_DECLTYPE_N3276 #define BOOST_NO_CXX11_DECLTYPE #define BOOST_NO_CXX11_HDR_FUNCTIONAL #define BOOST_NO_CXX14_VARIABLE_TEMPLATES #define BOOST_NO_CXX14_RETURN_TYPE_DEDUCTION #define BOOST_NO_CXX14_AGGREGATE_NSDMI #define BOOST_NO_CXX14_INITIALIZED_LAMBDA_CAPTURES #define BOOST_NO_CXX14_HDR_SHARED_MUTEX #define BOOST_NO_CXX14_GENERIC_LAMBDAS #define BOOST_NO_CXX14_DIGIT_SEPARATORS #define BOOST_NO_CXX14_DECLTYPE_AUTO #define BOOST_NO_CXX14_CONSTEXPR #define BOOST_NO_CXX11_USER_DEFINED_LITERALS #define BOOST_NO_CXX11_TRAILING_RESULT_TYPES #define BOOST_NO_CXX11_STD_ALIGN #define BOOST_NO_CXX11_SMART_PTR #define BOOST_NO_CXX11_NUMERIC_LIMITS #define BOOST_NO_CXX11_NON_PUBLIC_DEFAULTED_FUNCTIONS #define BOOST_NO_CXX11_HDR_UNORDERED_SET #define BOOST_NO_CXX11_HDR_UNORDERED_MAP #define BOOST_NO_CXX11_HDR_TYPEINDEX #define BOOST_NO_CXX11_HDR_TYPE_TRAITS #define BOOST_NO_CXX11_HDR_TUPLE #define BOOST_NO_CXX11_HDR_THREAD #define BOOST_NO_CXX11_HDR_SYSTEM_ERROR #define BOOST_NO_CXX11_HDR_REGEX #define BOOST_NO_CXX11_HDR_RATIO #define BOOST_NO_CXX11_HDR_RANDOM #define BOOST_NO_CXX11_HDR_MUTEX #define BOOST_NO_CXX11_HDR_INITIALIZER_LIST #define BOOST_NO_CXX11_HDR_FUTURE #define BOOST_NO_CXX11_HDR_FORWARD_LIST #define BOOST_NO_CXX11_HDR_CONDITION_VARIABLE #define BOOST_NO_CXX11_HDR_CODECVT #define BOOST_NO_CXX11_HDR_CHRONO #define BOOST_NO_CXX11_HDR_ATOMIC #define BOOST_NO_CXX11_HDR_ARRAY #define BOOST_NO_CXX11_ATOMIC_SMART_PTR #define BOOST_NO_CXX11_ALLOCATOR #define BOOST_NO_CXX11_ALIGNAS #define BOOST_NO_CXX11_ADDRESSOF #define BOOST_NO_CXX11_CONSTEXPR #define BOOST_NO_CXX11_CHAR32_T #define BOOST_NO_CXX11_CHAR16_T
_______________________________________________ macports-users mailing list [email protected] https://lists.macosforge.org/mailman/listinfo/macports-users
