Browse Source

CMakeLib: Link to system thread libraries to support std::thread

Some environments require linking to thread libraries for `std::thread`.
Express this direct dependency of CMakeLib explicitly.  Previously this
was done indirectly through our bundled libuv, but that does not work
when using a system libuv.

Fixes: #17757
Brad King 7 years ago
parent
commit
94eee5e683
2 changed files with 3 additions and 0 deletions
  1. 2 0
      CMakeLists.txt
  2. 1 0
      Source/CMakeLists.txt

+ 2 - 0
CMakeLists.txt

@@ -310,6 +310,8 @@ endmacro()
 # Simply to improve readability of the main script.
 #-----------------------------------------------------------------------
 macro (CMAKE_BUILD_UTILITIES)
+  find_package(Threads)
+
   #---------------------------------------------------------------------
   # Create the kwsys library for CMake.
   set(KWSYS_NAMESPACE cmsys)

+ 1 - 0
Source/CMakeLists.txt

@@ -765,6 +765,7 @@ target_link_libraries(CMakeLib cmsys
   ${CMAKE_LIBUV_LIBRARIES}
   ${CMAKE_LIBRHASH_LIBRARIES}
   ${CMake_KWIML_LIBRARIES}
+  ${CMAKE_THREAD_LIBS_INIT}
   )
 
 if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_SYSTEM_PROCESSOR MATCHES "sparc")