Fix:core:Fix CMake build of support/ code on Ubuntu | Problem with --as-needed, see...
authorsleske <sleske@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Sun, 20 May 2012 16:32:09 +0000 (16:32 +0000)
committersleske <sleske@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Sun, 20 May 2012 16:32:09 +0000 (16:32 +0000)
git-svn-id: https://navit.svn.sourceforge.net/svnroot/navit/trunk@5110 ffa7fe5e-494d-0410-b361-a75ebd5db220

navit/CMakeLists.txt

index 5a5077d..1f2768e 100755 (executable)
@@ -2,6 +2,7 @@ set(MACOSX_BUNDLE_GUI_IDENTIFIER "org.navitproject.navit")
 set(MACOSX_BUNDLE_BUNDLE_NAME "Navit")
 project(navit C)
 
+# Workaround for CMake issue 8345 / 9220, see http://trac.navit-project.org/ticket/1041
 if(DEFINED CMAKE_CXX_COMPILER AND CMAKE_CXX_COMPILER MATCHES "^$")
   set(CMAKE_CXX_COMPILER CMAKE_CXX_COMPILER-NOTFOUND)
 endif(DEFINED CMAKE_CXX_COMPILER AND CMAKE_CXX_COMPILER MATCHES "^$") 
@@ -115,6 +116,12 @@ find_package(PNG)
 find_package(DBusGLib)
 find_package(OpenSSL)
 find_package(Threads)
+if (NOT CMAKE_USE_PTHREADS_INIT)
+   # We use Pthreads in several places, no point in continuing without.
+   MESSAGE(FATAL_ERROR "PThreads not found. Navit cannot be built without Pthreads.")
+endif(NOT CMAKE_USE_PTHREADS_INIT)
+list(APPEND NAVIT_LIBS "pthread")
+
 libfind_pkg_check_modules(FONTCONFIG fontconfig)
 #Qt detection
 if (NOT DISABLE_QT)
@@ -169,12 +176,6 @@ else()
    endif(NEEDS_LIBINTL)
 endif(NOT HAVE_LIBINTL)
 
-
-if (CMAKE_USE_PTHREADS_INIT)
-   set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${CMAKE_THREAD_LIBS_INIT}")
-   set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${CMAKE_THREAD_LIBS_INIT}")
-   set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${CMAKE_THREAD_LIBS_INIT}")
-endif(CMAKE_USE_PTHREADS_INIT)
 if (Glib_FOUND)
    set(HAVE_GLIB 1)
    include_directories(${Glib_INCLUDE_DIRS})