Use system sqlite3/jthread libs if available
authorGiuseppe Bilotta <giuseppe.bilotta@gmail.com>
Tue, 19 Jul 2011 18:02:31 +0000 (20:02 +0200)
committerGiuseppe Bilotta <giuseppe.bilotta@gmail.com>
Wed, 20 Jul 2011 15:59:48 +0000 (17:59 +0200)
cmake/Modules/FindJthread.cmake [new file with mode: 0644]
cmake/Modules/FindSqlite3.cmake [new file with mode: 0644]
src/CMakeLists.txt

diff --git a/cmake/Modules/FindJthread.cmake b/cmake/Modules/FindJthread.cmake
new file mode 100644 (file)
index 0000000..302a3c2
--- /dev/null
@@ -0,0 +1,18 @@
+# Look for jthread, use our own if not found
+
+FIND_PATH(JTHREAD_INCLUDE_DIR jthread.h)
+
+FIND_LIBRARY(JTHREAD_LIBRARY NAMES jthread)
+
+IF(JTHREAD_LIBRARY AND JTHREAD_INCLUDE_DIR)
+       SET( JTHREAD_FOUND TRUE )
+ENDIF(JTHREAD_LIBRARY AND JTHREAD_INCLUDE_DIR)
+
+IF(JTHREAD_FOUND)
+       MESSAGE(STATUS "Found system jthread header file in ${JTHREAD_INCLUDE_DIR}")
+       MESSAGE(STATUS "Found system jthread library ${JTHREAD_LIBRARY}")
+ELSE(JTHREAD_FOUND)
+       SET(JTHREAD_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/jthread)
+       SET(JTHREAD_LIBRARY jthread)
+       MESSAGE(STATUS "Using project jthread library")
+ENDIF(JTHREAD_FOUND)
diff --git a/cmake/Modules/FindSqlite3.cmake b/cmake/Modules/FindSqlite3.cmake
new file mode 100644 (file)
index 0000000..ecce6e3
--- /dev/null
@@ -0,0 +1,18 @@
+# Look for sqlite3, use our own if not found
+
+FIND_PATH(SQLITE3_INCLUDE_DIR sqlite3.h)
+
+FIND_LIBRARY(SQLITE3_LIBRARY NAMES sqlite3)
+
+IF(SQLITE3_LIBRARY AND SQLITE3_INCLUDE_DIR)
+       SET( SQLITE3_FOUND TRUE )
+ENDIF(SQLITE3_LIBRARY AND SQLITE3_INCLUDE_DIR)
+
+IF(SQLITE3_FOUND)
+       MESSAGE(STATUS "Found system sqlite3 header file in ${SQLITE3_INCLUDE_DIR}")
+       MESSAGE(STATUS "Found system sqlite3 library ${SQLITE3_LIBRARY}")
+ELSE(SQLITE3_FOUND)
+       SET(SQLITE3_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/sqlite)
+       SET(SQLITE3_LIBRARY sqlite3)
+       MESSAGE(STATUS "Using project sqlite3 library")
+ENDIF(SQLITE3_FOUND)
index fd15914236ca7257bd336de33da4bb13d522ac51..e1de23663618ad6bddb22127ae706e3e713575c7 100644 (file)
@@ -43,6 +43,8 @@ else()
                find_package(JPEG REQUIRED)
                find_package(BZip2 REQUIRED)
                find_package(PNG REQUIRED)
+               find_package(Jthread REQUIRED)
+               find_package(Sqlite3 REQUIRED)
                if(APPLE)
                        FIND_LIBRARY(CARBON_LIB Carbon)
                        FIND_LIBRARY(COCOA_LIB Cocoa)
@@ -143,8 +145,8 @@ include_directories(
        ${CMAKE_BUILD_TYPE}
        ${PNG_INCLUDE_DIR}
        ${GETTEXT_INCLUDE_DIR}
-       "${PROJECT_SOURCE_DIR}/jthread"
-       "${PROJECT_SOURCE_DIR}/sqlite"
+       ${JTHREAD_INCLUDE_DIR}
+       ${SQLITE3_INCLUDE_DIR}
 )
 
 set(EXECUTABLE_OUTPUT_PATH ../bin)
@@ -163,8 +165,8 @@ if(BUILD_CLIENT)
                ${GETTEXT_LIBRARIES}
                ${PLATFORM_LIBS}
                ${CLIENT_PLATFORM_LIBS}
-               jthread
-               sqlite3
+               ${JTHREAD_LIBRARY}
+               ${SQLITE3_LIBRARY}
        )
 endif(BUILD_CLIENT)
 
@@ -174,8 +176,8 @@ if(BUILD_SERVER)
                minetestserver
                ${ZLIB_LIBRARIES}
                ${PLATFORM_LIBS}
-               jthread
-               sqlite3
+               ${JTHREAD_LIBRARY}
+               ${SQLITE3_LIBRARY}
        )
 endif(BUILD_SERVER)
 
@@ -296,7 +298,14 @@ add_custom_target(translation_de ALL COMMENT "mo update [de]" DEPENDS ${CMAKE_BI
 
 # Subdirectories
 
-add_subdirectory(jthread)
+if (JTHREAD_FOUND)
+else (JTHREAD_FOUND)
+       add_subdirectory(jthread)
+endif (JTHREAD_FOUND)
+
+if (SQLITE3_FOUND)
+else (SQLITE3_FOUND)
 add_subdirectory(sqlite)
+endif (SQLITE3_FOUND)
 
 #end