[Cmake-commits] CMake branch, next, updated. v3.0.2-5585-gfbc9536

Rolf Eike Beer eike at sf-mail.de
Fri Oct 3 17:20:20 EDT 2014


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, next has been updated
       via  fbc9536d138c79473b428badd75d09607420a2d9 (commit)
       via  94a061d3729e203ba59e537470e230b9b493639d (commit)
      from  a8a5bbc3e305c360ed03b691de745dee42e8af0e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fbc9536d138c79473b428badd75d09607420a2d9
commit fbc9536d138c79473b428badd75d09607420a2d9
Merge: a8a5bbc 94a061d
Author:     Rolf Eike Beer <eike at sf-mail.de>
AuthorDate: Fri Oct 3 17:20:20 2014 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Fri Oct 3 17:20:20 2014 -0400

    Merge topic 'FindThreads-macro' into next
    
    94a061d3 FindThreads: use a macro for the repetitive thread library checks


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=94a061d3729e203ba59e537470e230b9b493639d
commit 94a061d3729e203ba59e537470e230b9b493639d
Author:     Rolf Eike Beer <eike at sf-mail.de>
AuthorDate: Thu Oct 2 22:23:20 2014 +0200
Commit:     Rolf Eike Beer <eike at sf-mail.de>
CommitDate: Fri Oct 3 23:20:07 2014 +0200

    FindThreads: use a macro for the repetitive thread library checks

diff --git a/Modules/FindThreads.cmake b/Modules/FindThreads.cmake
index 6050dcd..41444f5 100644
--- a/Modules/FindThreads.cmake
+++ b/Modules/FindThreads.cmake
@@ -45,6 +45,19 @@ if(CMAKE_SYSTEM_NAME MATCHES IRIX AND NOT CMAKE_THREAD_PREFER_PTHREAD)
   CHECK_INCLUDE_FILES("sys/types.h;sys/prctl.h"  CMAKE_HAVE_SPROC_H)
 endif()
 
+# Internal helper macro.
+# Do NOT even think about using it outside of this file!
+macro(_check_threads_lib LIBNAME FUNCNAME VARNAME)
+  if(NOT CMAKE_HAVE_THREADS_LIBRARY)
+     CHECK_LIBRARY_EXISTS(${LIBNAME} ${FUNCNAME} "" ${VARNAME})
+     if(${VARNAME})
+       set(CMAKE_THREAD_LIBS_INIT "-l${LIBNAME}")
+       set(CMAKE_HAVE_THREADS_LIBRARY 1)
+       set(Threads_FOUND TRUE)
+     endif()
+  endif ()
+endmacro()
+
 if(CMAKE_HAVE_SPROC_H AND NOT CMAKE_THREAD_PREFER_PTHREAD)
   # We have sproc
   set(CMAKE_USE_SPROC_INIT 1)
@@ -67,30 +80,11 @@ else()
         set(Threads_FOUND TRUE)
       else()
 
-        # Do we have -lpthreads
-        CHECK_LIBRARY_EXISTS(pthreads pthread_create "" CMAKE_HAVE_PTHREADS_CREATE)
-        if(CMAKE_HAVE_PTHREADS_CREATE)
-          set(CMAKE_THREAD_LIBS_INIT "-lpthreads")
-          set(CMAKE_HAVE_THREADS_LIBRARY 1)
-          set(Threads_FOUND TRUE)
-        else()
-
-          # Ok, how about -lpthread
-          CHECK_LIBRARY_EXISTS(pthread pthread_create "" CMAKE_HAVE_PTHREAD_CREATE)
-          if(CMAKE_HAVE_PTHREAD_CREATE)
-            set(CMAKE_THREAD_LIBS_INIT "-lpthread")
-            set(CMAKE_HAVE_THREADS_LIBRARY 1)
-            set(Threads_FOUND TRUE)
-
-          elseif(CMAKE_SYSTEM_NAME MATCHES "SunOS")
+        _check_threads_lib(pthreads pthread_create CMAKE_HAVE_PTHREADS_CREATE)
+        _check_threads_lib(pthread  pthread_create CMAKE_HAVE_PTHREAD_CREATE)
+        if(CMAKE_SYSTEM_NAME MATCHES "SunOS")
             # On sun also check for -lthread
-            CHECK_LIBRARY_EXISTS(thread thr_create "" CMAKE_HAVE_THR_CREATE)
-            if(CMAKE_HAVE_THR_CREATE)
-              set(CMAKE_THREAD_LIBS_INIT "-lthread")
-              set(CMAKE_HAVE_THREADS_LIBRARY 1)
-              set(Threads_FOUND TRUE)
-            endif()
-          endif()
+            _check_threads_lib(thread thr_create CMAKE_HAVE_THR_CREATE)
         endif()
       endif()
     endif()

-----------------------------------------------------------------------

Summary of changes:


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list