diff --git a/include/boost/config/platform/macos.hpp b/include/boost/config/platform/macos.hpp index c19a6e6e..51d03012 100644 --- a/include/boost/config/platform/macos.hpp +++ b/include/boost/config/platform/macos.hpp @@ -39,5 +39,21 @@ # define BOOST_NO_STDC_NAMESPACE # endif -#endif +#else +// We will eventually support threads in non-Carbon builds, but we do +// not support this yet. +# if TARGET_CARBON + +# define BOOST_HAS_MPTASKS + +// The MP task implementation of Boost Threads aims to replace MP-unsafe +// parts of the MSL, so we turn on threads unconditionally. +# define BOOST_HAS_THREADS + +// The remote call manager depends on this. +# define BOOST_BIND_ENABLE_PASCAL + +# endif + +#endif diff --git a/include/boost/config/suffix.hpp b/include/boost/config/suffix.hpp index 56a15120..d0a94451 100644 --- a/include/boost/config/suffix.hpp +++ b/include/boost/config/suffix.hpp @@ -144,7 +144,8 @@ // Turn threading support off if we don't recognise the threading API: // #if defined(BOOST_HAS_THREADS) && !defined(BOOST_HAS_PTHREADS)\ - && !defined(BOOST_HAS_WINTHREADS) && !defined(BOOST_HAS_BETHREADS) + && !defined(BOOST_HAS_WINTHREADS) && !defined(BOOST_HAS_BETHREADS)\ + && !defined(BOOST_HAS_MPTASKS) # undef BOOST_HAS_THREADS #endif