From 52a7a2debe9a884acca7d594859c9e113f0f475e Mon Sep 17 00:00:00 2001
From: Andrew Wong <andrew.kw.w@gmail.com>
Date: Thu, 13 Mar 2014 23:26:11 -0400
Subject: [PATCH] cmake: Use find_package to find pthreads

---
 src/libbacktrace_test/CMakeLists.txt | 6 +++++-
 src/voglcmd/CMakeLists.txt           | 6 +++++-
 src/voglcore/CMakeLists.txt          | 6 +++++-
 src/voglreplay/CMakeLists.txt        | 6 +++++-
 src/voglserver/CMakeLists.txt        | 6 +++++-
 src/vogltrace/CMakeLists.txt         | 6 +++++-
 6 files changed, 30 insertions(+), 6 deletions(-)

diff --git a/src/libbacktrace_test/CMakeLists.txt b/src/libbacktrace_test/CMakeLists.txt
index a42f35d..ffda4e9 100644
--- a/src/libbacktrace_test/CMakeLists.txt
+++ b/src/libbacktrace_test/CMakeLists.txt
@@ -2,6 +2,10 @@ project(libbacktrace_test)
 cmake_minimum_required(VERSION 2.8)
 
 include("${SRC_DIR}/build_options.cmake")
+find_package(Threads)
+if (NOT CMAKE_USE_PTHREADS_INIT)
+    message(ERROR "pthread not found")
+endif ()
 
 # remove -rdynamic from our shared library (for testing realistic backtraces).
 set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS )
@@ -21,7 +25,7 @@ set(SRC_LIST
 add_executable(${PROJECT_NAME} ${SRC_LIST})
 target_link_libraries(${PROJECT_NAME}
     backtrace
-    pthread
+    ${CMAKE_THREAD_LIBS_INIT}
     voglcore
     mainlib
     ${CMAKE_DL_LIBS}
diff --git a/src/voglcmd/CMakeLists.txt b/src/voglcmd/CMakeLists.txt
index 487cc7f..c612b05 100644
--- a/src/voglcmd/CMakeLists.txt
+++ b/src/voglcmd/CMakeLists.txt
@@ -3,6 +3,10 @@ include("${SRC_DIR}/build_options.cmake")
 project(vogl)
 
 include_directories(${CMAKE_CURRENT_BINARY_DIR})
+find_package(Threads)
+if (NOT CMAKE_USE_PTHREADS_INIT)
+    message(ERROR "pthread not found")
+endif ()
 
 set(MySources 
     voglcmd.cpp 
@@ -28,7 +32,7 @@ add_executable(
 )
 
 target_link_libraries(${PROJECT_NAME}
-    pthread
+    ${CMAKE_THREAD_LIBS_INIT}
     rt
     voglcore)
 
diff --git a/src/voglcore/CMakeLists.txt b/src/voglcore/CMakeLists.txt
index 9b6dda1..476cb3a 100644
--- a/src/voglcore/CMakeLists.txt
+++ b/src/voglcore/CMakeLists.txt
@@ -2,6 +2,10 @@ project(voglcore)
 cmake_minimum_required(VERSION 2.8)
 
 option(VOGL_ENABLE_ASSERTS "Enable assertions in all builds (including release)" FALSE)
+find_package(Threads)
+if (NOT CMAKE_USE_PTHREADS_INIT)
+    message(ERROR "pthread not found")
+endif ()
 
 include("${SRC_DIR}/build_options.cmake")
 
@@ -106,7 +110,7 @@ endif()
 
 add_library(${PROJECT_NAME} ${SRC_LIST})
 target_link_libraries(${PROJECT_NAME}
-    pthread
+    ${CMAKE_THREAD_LIBS_INIT}
     rt
     )
 
diff --git a/src/voglreplay/CMakeLists.txt b/src/voglreplay/CMakeLists.txt
index 6a19603..be7ed89 100644
--- a/src/voglreplay/CMakeLists.txt
+++ b/src/voglreplay/CMakeLists.txt
@@ -2,6 +2,10 @@ project(voglreplay)
 cmake_minimum_required(VERSION 2.8)
 
 include("${SRC_DIR}/build_options.cmake")
+find_package(Threads)
+if (NOT CMAKE_USE_PTHREADS_INIT)
+    message(ERROR "pthread not found")
+endif ()
 find_package(X11 REQUIRED)
 
 
@@ -35,7 +39,7 @@ target_link_libraries(${PROJECT_NAME}
     voglcommon
     ${CMAKE_DL_LIBS}
     ${X11_X11_LIB}
-    pthread
+    ${CMAKE_THREAD_LIBS_INIT}
     voglcore
     rt
     )
diff --git a/src/voglserver/CMakeLists.txt b/src/voglserver/CMakeLists.txt
index 84aebc2..b977851 100644
--- a/src/voglserver/CMakeLists.txt
+++ b/src/voglserver/CMakeLists.txt
@@ -3,6 +3,10 @@ include("${SRC_DIR}/build_options.cmake")
 project(voglserver)
 
 include_directories(${CMAKE_CURRENT_BINARY_DIR})
+find_package(Threads)
+if (NOT CMAKE_USE_PTHREADS_INIT)
+    message(ERROR "pthread not found")
+endif ()
 
 set(MySources 
     server.cpp 
@@ -26,7 +30,7 @@ add_executable(
 )
 
 target_link_libraries(${PROJECT_NAME}
-    pthread
+    ${CMAKE_THREAD_LIBS_INIT}
     rt
     voglcore)
 
diff --git a/src/vogltrace/CMakeLists.txt b/src/vogltrace/CMakeLists.txt
index d15fcc0..dbf66ce 100644
--- a/src/vogltrace/CMakeLists.txt
+++ b/src/vogltrace/CMakeLists.txt
@@ -3,6 +3,10 @@ cmake_minimum_required(VERSION 2.8)
 option(VOGLTRACE_NO_PUBLIC_EXPORTS "Don't define any public GL exports in libvogltraceXX.so, this .so will only be useful for manual loading" FALSE)
 
 include("${SRC_DIR}/build_options.cmake")
+find_package(Threads)
+if (NOT CMAKE_USE_PTHREADS_INIT)
+    message(ERROR "pthread not found")
+endif ()
 find_package(X11 REQUIRED)
 
 project(vogltrace)
@@ -51,7 +55,7 @@ target_link_libraries(${PROJECT_NAME}
     backtrace
     voglcommon
     voglcore
-    pthread
+    ${CMAKE_THREAD_LIBS_INIT}
     ${CMAKE_DL_LIBS}
     ${X11_X11_LIB}
     libturbojpeg.a
-- 
2.45.2