diff options
author | Bertram <bertram@cegetel.net> | 2010-01-29 00:14:29 +0100 |
---|---|---|
committer | Bertram <bertram@cegetel.net> | 2010-01-29 00:14:29 +0100 |
commit | 9b6377b7d34805535b810a54c5b09c3fd23b3ca8 (patch) | |
tree | caab37efa17d72d1205e929a9886070edeb356cb /CMake | |
parent | f7f0f36c3fec7786e15ee79c7aa184c50caa3cd7 (diff) | |
download | manaserv-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.cmake | 46 | ||||
-rw-r--r-- | CMake/Modules/FindMySQL.cmake | 44 | ||||
-rw-r--r-- | CMake/Modules/FindPostgreSQL.cmake | 53 | ||||
-rw-r--r-- | CMake/Modules/FindSqlite.cmake | 49 |
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) |