Index: libcxx/include/__threading_support
===================================================================
--- libcxx/include/__threading_support
+++ libcxx/include/__threading_support
@@ -282,7 +282,7 @@
   bool operator()(chrono::nanoseconds __elapsed) const;
 };
 
-inline _LIBCPP_INLINE_VISIBILITY
+inline _LIBCPP_THREAD_ABI_VISIBILITY
 bool __libcpp_timed_backoff_policy::operator()(chrono::nanoseconds __elapsed) const
 {
     if(__elapsed > chrono::milliseconds(128))
Index: libcxx/src/CMakeLists.txt
===================================================================
--- libcxx/src/CMakeLists.txt
+++ libcxx/src/CMakeLists.txt
@@ -323,7 +323,10 @@
 
 
 if (LIBCXX_BUILD_EXTERNAL_THREAD_LIBRARY)
-  file(GLOB LIBCXX_EXTERNAL_THREADING_SUPPORT_SOURCES ../test/support/external_threads.cpp)
+  set(LIBCXX_EXTERNAL_THREADING_SUPPORT_SOURCES
+      "${CMAKE_CURRENT_SOURCE_DIR}/../test/support/external_threads.cpp")
+  set(LIBCXX_INCLUDE_DIR
+      "${CMAKE_CURRENT_SOURCE_DIR}/../include")
 
   if (LIBCXX_ENABLE_SHARED)
     add_library(cxx_external_threads SHARED ${LIBCXX_EXTERNAL_THREADING_SUPPORT_SOURCES})
@@ -337,6 +340,8 @@
       COMPILE_FLAGS "${LIBCXX_COMPILE_FLAGS}"
       OUTPUT_NAME   "c++external_threads"
   )
+
+  target_include_directories(cxx_external_threads PRIVATE ${LIBCXX_INCLUDE_DIR})
 endif()
 
 if (LIBCXX_INSTALL_LIBRARY)