summaryrefslogtreecommitdiff
path: root/CMake
diff options
context:
space:
mode:
authorBertram <bertram@cegetel.net>2010-01-29 00:14:29 +0100
committerBertram <bertram@cegetel.net>2010-01-29 00:14:29 +0100
commit9b6377b7d34805535b810a54c5b09c3fd23b3ca8 (patch)
treecaab37efa17d72d1205e929a9886070edeb356cb /CMake
parentf7f0f36c3fec7786e15ee79c7aa184c50caa3cd7 (diff)
downloadmanaserv-9b6377b7d34805535b810a54c5b09c3fd23b3ca8.tar.gz
manaserv-9b6377b7d34805535b810a54c5b09c3fd23b3ca8.tar.bz2
manaserv-9b6377b7d34805535b810a54c5b09c3fd23b3ca8.tar.xz
manaserv-9b6377b7d34805535b810a54c5b09c3fd23b3ca8.zip
Upgraded CMakeLists.txt files to deal with compile option. I have still one problem with Lua...
There must be something wrong in the FindLua.cmake module because the FIND_PACKAGE(Lua) doesn't work and is currently commented out.
Diffstat (limited to 'CMake')
-rw-r--r--CMake/Modules/FindLua.cmake46
-rw-r--r--CMake/Modules/FindMySQL.cmake44
-rw-r--r--CMake/Modules/FindPostgreSQL.cmake53
-rw-r--r--CMake/Modules/FindSqlite.cmake49
4 files changed, 192 insertions, 0 deletions
diff --git a/CMake/Modules/FindLua.cmake b/CMake/Modules/FindLua.cmake
new file mode 100644
index 00000000..6a2f8e42
--- /dev/null
+++ b/CMake/Modules/FindLua.cmake
@@ -0,0 +1,46 @@
+# Find the Lua 5.1 includes and library
+#
+# LUA_INCLUDE_DIR - where to find lua.h
+# LUA_LIBRARIES - List of fully qualified libraries to link against
+# LUA_FOUND - Set to TRUE if found
+
+IF(LUA_INCLUDE_DIR AND LUA_LIBRARIES)
+ SET(LUA_FIND_QUIETLY TRUE)
+ENDIF(LUA_INCLUDE_DIR AND LUA_LIBRARIES)
+
+# for Windows we rely on the environement variables
+# %INCLUDE% and %LIB%; FIND_LIBRARY checks %LIB%
+# automatically on Windows
+IF(WIN32)
+ FIND_PATH(LUA_INCLUDE_DIR lua/lua.h
+ $ENV{INCLUDE}
+ )
+ FIND_LIBRARY(LUA_LIBRARIES
+ NAMES lua
+ )
+ELSE()
+ FIND_PATH(LUA_INCLUDE_DIR lua.h )
+
+ FIND_LIBRARY(LUA_LIBRARIES NAMES lua )
+ENDIF()
+
+IF(LUA_INCLUDE_DIR AND LUA_LIBRARIES)
+ SET(LUA_FOUND TRUE)
+ INCLUDE(CheckLibraryExists)
+ CHECK_LIBRARY_EXISTS(${LUA_LIBRARIES} lua_close "" LUA_NEED_PREFIX)
+ELSE(LUA_INCLUDE_DIR AND LUA_LIBRARIES)
+ SET(LUA_FOUND FALSE)
+ENDIF (LUA_INCLUDE_DIR AND LUA_LIBRARIES)
+
+IF(LUA_FOUND)
+ IF (NOT LUA_FIND_QUIETLY)
+ MESSAGE(STATUS "Found Lua library: ${LUA_LIBRARIES}")
+ MESSAGE(STATUS "Found Lua headers: ${LUA_INCLUDE_DIR}")
+ ENDIF (NOT LUA_FIND_QUIETLY)
+ELSE(LUA_FOUND)
+ IF(LUA_FIND_REQUIRED)
+ MESSAGE(FATAL_ERROR "Could NOT find Lua")
+ ENDIF(LUA_FIND_REQUIRED)
+ENDIF(LUA_FOUND)
+
+MARK_AS_ADVANCED(LUA_INCLUDE_DIR LUA_LIBRARIES)
diff --git a/CMake/Modules/FindMySQL.cmake b/CMake/Modules/FindMySQL.cmake
new file mode 100644
index 00000000..7464cfb8
--- /dev/null
+++ b/CMake/Modules/FindMySQL.cmake
@@ -0,0 +1,44 @@
+# - Find MySQL
+# Find the MySQL includes and client library
+# This module defines
+# MYSQL_INCLUDE_DIR, where to find mysql.h
+# MYSQL_LIBRARIES, the libraries needed to use MySQL.
+# MYSQL_FOUND, If false, do not try to use MySQL.
+
+IF(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES)
+ SET(MYSQL_FOUND TRUE)
+
+ELSE(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES)
+
+ FIND_PATH(MYSQL_INCLUDE_DIR mysql.h
+ /usr/include/mysql
+ /usr/local/include/mysql
+ $ENV{ProgramFiles}/MySQL/*/include
+ $ENV{SystemDrive}/MySQL/*/include
+ )
+
+ IF(WIN32 AND MSVC)
+ FIND_LIBRARY(MYSQL_LIBRARIES NAMES libmysql
+ PATHS
+ $ENV{ProgramFiles}/MySQL/*/lib/opt
+ $ENV{SystemDrive}/MySQL/*/lib/opt
+ )
+ ELSE(WIN32 AND MSVC)
+ FIND_LIBRARY(MYSQL_LIBRARIES NAMES mysqlclient
+ PATHS
+ /usr/lib/mysql
+ /usr/local/lib/mysql
+ )
+ ENDIF(WIN32 AND MSVC)
+
+ IF(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES)
+ SET(MYSQL_FOUND TRUE)
+ MESSAGE(STATUS "Found MySQL: ${MYSQL_INCLUDE_DIR}, ${MYSQL_LIBRARIES}")
+ ELSE(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES)
+ SET(MYSQL_FOUND FALSE)
+ MESSAGE(STATUS "MySQL not found.")
+ ENDIF(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES)
+
+ MARK_AS_ADVANCED(MYSQL_INCLUDE_DIR MYSQL_LIBRARIES)
+
+ENDIF(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES)
diff --git a/CMake/Modules/FindPostgreSQL.cmake b/CMake/Modules/FindPostgreSQL.cmake
new file mode 100644
index 00000000..1052440f
--- /dev/null
+++ b/CMake/Modules/FindPostgreSQL.cmake
@@ -0,0 +1,53 @@
+# - Find PostgreSQL
+# Find the PostgreSQL includes and client library
+# This module defines
+# POSTGRESQL_INCLUDE_DIR, where to find POSTGRESQL.h
+# POSTGRESQL_LIBRARIES, the libraries needed to use POSTGRESQL.
+# POSTGRESQL_FOUND, If false, do not try to use PostgreSQL.
+
+# Eventually add the postgresql include paths here
+
+if(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES)
+ set(POSTGRESQL_FOUND TRUE)
+
+else(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES)
+
+# When using libpqfe, use this:
+# find_path(POSTGRESQL_INCLUDE_DIR libpq-fe.h
+
+ FIND_PATH(POSTGRESQL_INCLUDE_DIR postgres.h
+ /usr/include/server
+ /usr/include/pgsql/server
+ /usr/local/include/pgsql/server
+ /usr/include/postgresql/server
+ /usr/include/postgresql/*/server
+ /usr/local/include/postgresql/server
+ /usr/local/include/postgresql/*/server
+ $ENV{ProgramFiles}/PostgreSQL/*/include/server
+ $ENV{SystemDrive}/PostgreSQL/*/include/server
+ )
+
+ find_library(POSTGRESQL_LIBRARIES NAMES pq libpq
+ PATHS
+ /usr/lib
+ /usr/local/lib
+ /usr/lib/postgresql
+ /usr/lib64
+ /usr/local/lib64
+ /usr/lib64/postgresql
+ $ENV{ProgramFiles}/PostgreSQL/*/lib/ms
+ $ENV{SystemDrive}/PostgreSQL/*/lib/ms
+ )
+
+ if(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES)
+ set(POSTGRESQL_FOUND TRUE)
+ message(STATUS "Found PostgreSQL: ${POSTGRESQL_INCLUDE_DIR}, ${POSTGRESQL_LIBRARIES}")
+ INCLUDE_DIRECTORIES(${POSTGRESQL_INCLUDE_DIR})
+ else(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES)
+ set(POSTGRESQL_FOUND FALSE)
+ message(STATUS "PostgreSQL not found.")
+ endif(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES)
+
+ mark_as_advanced(POSTGRESQL_INCLUDE_DIR POSTGRESQL_LIBRARIES)
+
+endif(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES)
diff --git a/CMake/Modules/FindSqlite.cmake b/CMake/Modules/FindSqlite.cmake
new file mode 100644
index 00000000..725098d8
--- /dev/null
+++ b/CMake/Modules/FindSqlite.cmake
@@ -0,0 +1,49 @@
+# Find Sqlite 3 libraries
+# SQLITE3_INCLUDE_DIR - Where to find Sqlite 3 header files (directory)
+# SQLITE3_LIBRARIES - Sqlite 3 libraries
+# SQLITE3_LIBRARY_RELEASE - Where the release library is
+# SQLITE3_LIBRARY_DEBUG - Where the debug library is
+# SQLITE3_FOUND - Set to TRUE if we found everything (library, includes and executable)
+
+IF( SQLITE3_INCLUDE_DIR AND SQLITE3_LIBRARY_RELEASE AND SQLITE3_LIBRARY_DEBUG )
+ SET(SQLITE3_FIND_QUIETLY TRUE)
+ENDIF( SQLITE3_INCLUDE_DIR AND SQLITE3_LIBRARY_RELEASE AND SQLITE3_LIBRARY_DEBUG )
+
+FIND_PATH( SQLITE3_INCLUDE_DIR sqlite3.h )
+
+FIND_LIBRARY(SQLITE3_LIBRARY_RELEASE NAMES sqlite3 )
+
+FIND_LIBRARY(SQLITE3_LIBRARY_DEBUG NAMES sqlite3 sqlite3d HINTS /usr/lib/debug/usr/lib/ )
+
+IF( SQLITE3_LIBRARY_RELEASE OR SQLITE3_LIBRARY_DEBUG AND SQLITE3_INCLUDE_DIR )
+ SET( SQLITE3_FOUND TRUE )
+ENDIF( SQLITE3_LIBRARY_RELEASE OR SQLITE3_LIBRARY_DEBUG AND SQLITE3_INCLUDE_DIR )
+
+IF( SQLITE3_LIBRARY_DEBUG AND SQLITE3_LIBRARY_RELEASE )
+ # if the generator supports configuration types then set
+ # optimized and debug libraries, or if the CMAKE_BUILD_TYPE has a value
+ IF( CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE )
+ SET( SQLITE3_LIBRARIES optimized ${SQLITE3_LIBRARY_RELEASE} debug ${SQLITE3_LIBRARY_DEBUG} )
+ ELSE( CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE )
+ # if there are no configuration types and CMAKE_BUILD_TYPE has no value
+ # then just use the release libraries
+ SET( SQLITE3_LIBRARIES ${SQLITE3_LIBRARY_RELEASE} )
+ ENDIF( CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE )
+ELSEIF( SQLITE3_LIBRARY_RELEASE )
+ SET( SQLITE3_LIBRARIES ${SQLITE3_LIBRARY_RELEASE} )
+ELSE( SQLITE3_LIBRARY_DEBUG AND SQLITE3_LIBRARY_RELEASE )
+ SET( SQLITE3_LIBRARIES ${SQLITE3_LIBRARY_DEBUG} )
+ENDIF( SQLITE3_LIBRARY_DEBUG AND SQLITE3_LIBRARY_RELEASE )
+
+IF( SQLITE3_FOUND )
+ IF( NOT SQLITE3_FIND_QUIETLY )
+ MESSAGE( STATUS "Found Sqlite3 header file in ${SQLITE3_INCLUDE_DIR}")
+ MESSAGE( STATUS "Found Sqlite3 libraries: ${SQLITE3_LIBRARIES}")
+ ENDIF( NOT SQLITE3_FIND_QUIETLY )
+ELSE(SQLITE3_FOUND)
+ IF( SQLITE3_FIND_REQUIRED)
+ MESSAGE( FATAL_ERROR "Could not find Sqlite3" )
+ ELSE( SQLITE3_FIND_REQUIRED)
+ MESSAGE( STATUS "Optional package Sqlite3 was not found" )
+ ENDIF( SQLITE3_FIND_REQUIRED)
+ENDIF(SQLITE3_FOUND)