From 9d3cef6dba2a199ba45f579d9c84c298e85c327c Mon Sep 17 00:00:00 2001 From: Peter Dimov Date: Thu, 18 Jan 2018 21:45:06 +0200 Subject: [PATCH] Define BOOST_NO_CXX11_THREAD_LOCAL for libc++ on Linux --- include/boost/config/stdlib/libcpp.hpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/include/boost/config/stdlib/libcpp.hpp b/include/boost/config/stdlib/libcpp.hpp index 3d3f4ae4..1e77dca3 100644 --- a/include/boost/config/stdlib/libcpp.hpp +++ b/include/boost/config/stdlib/libcpp.hpp @@ -113,6 +113,13 @@ # define BOOST_NO_CXX11_THREAD_LOCAL #endif +#if defined(__linux__) && !defined(BOOST_NO_CXX11_THREAD_LOCAL) +// After libc++-dev is installed on Trusty, clang++-libc++ almost works, +// except uses of `thread_local` fail with undefined reference to +// `__cxa_thread_atexit`. +# define BOOST_NO_CXX11_THREAD_LOCAL +#endif + #if defined(__has_include) #if !__has_include() # define BOOST_NO_CXX14_HDR_SHARED_MUTEX