diff options
| author | raczman <none@none> | 2009-01-17 09:23:33 -0500 |
|---|---|---|
| committer | raczman <none@none> | 2009-01-17 09:23:33 -0500 |
| commit | 09ddc711f4355bb04717a2092b4dc4149f495491 (patch) | |
| tree | 1be6b369f563027c71842ecc83314de626da5793 /cmake | |
| parent | 87d9f3261e85587e9be1121bc2d62c034443f00f (diff) | |
Cmake build system for trinity
--HG--
branch : trunk
Diffstat (limited to 'cmake')
| -rw-r--r-- | cmake/FindAce.cmake | 31 | ||||
| -rw-r--r-- | cmake/FindMySql.cmake | 102 | ||||
| -rw-r--r-- | cmake/cmake_uninstall.cmake.in | 23 |
3 files changed, 156 insertions, 0 deletions
diff --git a/cmake/FindAce.cmake b/cmake/FindAce.cmake new file mode 100644 index 00000000000..b7be34784a9 --- /dev/null +++ b/cmake/FindAce.cmake @@ -0,0 +1,31 @@ +# This script is taken from BFilter project, thanks to original authors. +# - Locate the ACE library +# This module defines +# ACE_FOUND -- true if ACE was found +# ACE_LIBRARY -- the library to link against +# ACE_INCLUDE_DIR -- path to ace/ACE.h +MACRO(FIND_ACE LIBNAME) + GET_FILENAME_COMPONENT(parent_dir_ "${PROJECT_SOURCE_DIR}/.." ABSOLUTE) + FIND_PATH( + ACE_INCLUDE_DIR ace/ACE.h + PATHS /usr/include /usr/local/include + "${CMAKE_INSTALL_PREFIX}/include" "${parent_dir_}/ACE_wrappers" + DOC "Path to ace/ACE.h" + ) + + # This prevents it being taken from cache. + SET(ACE_LIBRARY ACE_LIBRARY-NOTFOUND) + + FIND_LIBRARY( + ACE_LIBRARY "${LIBNAME}" + PATHS /usr/lib /usr/local/lib + "${CMAKE_INSTALL_PREFIX}/lib" "${parent_dir_}/ACE_wrappers/ace" + DOC "Path to ACE library file" + ) + IF(ACE_INCLUDE_DIR AND ACE_LIBRARY) + SET(ACE_FOUND TRUE) + ELSE(ACE_INCLUDE_DIR AND ACE_LIBRARY) + SET(ACE_FOUND FALSE) + ENDIF(ACE_INCLUDE_DIR AND ACE_LIBRARY) +ENDMACRO(FIND_ACE) + diff --git a/cmake/FindMySql.cmake b/cmake/FindMySql.cmake new file mode 100644 index 00000000000..e149cd4eaf0 --- /dev/null +++ b/cmake/FindMySql.cmake @@ -0,0 +1,102 @@ +# - 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. +# +# Copyright (c) 2006, Jaroslaw Staniek, <js@iidea.pl> +# Lot of adustmens by Michal Cihar <michal@cihar.com> +# +# vim: expandtab sw=4 ts=4 sts=4: +# +# Redistribution and use is allowed according to the terms of the BSD license. + +MACRO(FIND_MYSQL) +if(UNIX) + set(MYSQL_CONFIG_PREFER_PATH "$ENV{MYSQL_HOME}/bin" CACHE FILEPATH + "preferred path to MySQL (mysql_config)") + find_program(MYSQL_CONFIG mysql_config + ${MYSQL_CONFIG_PREFER_PATH} + /usr/local/mysql/bin/ + /usr/local/bin/ + /usr/bin/ + ) + + if(MYSQL_CONFIG) + message(STATUS "Using mysql-config: ${MYSQL_CONFIG}") + # set INCLUDE_DIR + exec_program(${MYSQL_CONFIG} + ARGS --include + OUTPUT_VARIABLE MY_TMP) + + string(REGEX REPLACE "-I([^ ]*)( .*)?" "\\1" MY_TMP "${MY_TMP}") + + set(MYSQL_ADD_INCLUDE_DIR ${MY_TMP} CACHE FILEPATH INTERNAL) + + # set LIBRARY_DIR + exec_program(${MYSQL_CONFIG} + ARGS --libs_r + OUTPUT_VARIABLE MY_TMP) + + set(MYSQL_ADD_LIBRARIES "") + + string(REGEX MATCHALL "-l[^ ]*" MYSQL_LIB_LIST "${MY_TMP}") + foreach(LIB ${MYSQL_LIB_LIST}) + string(REGEX REPLACE "[ ]*-l([^ ]*)" "\\1" LIB "${LIB}") + list(APPEND MYSQL_ADD_LIBRARIES "${LIB}") + endforeach(LIB ${MYSQL_LIBS}) + + set(MYSQL_ADD_LIBRARY_PATH "") + + string(REGEX MATCHALL "-L[^ ]*" MYSQL_LIBDIR_LIST "${MY_TMP}") + foreach(LIB ${MYSQL_LIBDIR_LIST}) + string(REGEX REPLACE "[ ]*-L([^ ]*)" "\\1" LIB "${LIB}") + list(APPEND MYSQL_ADD_LIBRARY_PATH "${LIB}") + endforeach(LIB ${MYSQL_LIBS}) + + else(MYSQL_CONFIG) + set(MYSQL_ADD_LIBRARIES "") + list(APPEND MYSQL_ADD_LIBRARIES "mysqlclient") + endif(MYSQL_CONFIG) +else(UNIX) + set(MYSQL_ADD_INCLUDE_DIR "c:/msys/local/include" CACHE FILEPATH INTERNAL) + set(MYSQL_ADD_LIBRARY_PATH "c:/msys/local/lib" CACHE FILEPATH INTERNAL) +ENDIF(UNIX) + +find_path(MYSQL_INCLUDE_DIR mysql.h + /usr/local/include + /usr/local/include/mysql + /usr/local/mysql/include + /usr/local/mysql/include/mysql + /usr/include + /usr/include/mysql + ${MYSQL_ADD_INCLUDE_DIR} +) + +set(TMP_MYSQL_LIBRARIES "") + +foreach(LIB ${MYSQL_ADD_LIBRARIES}) + find_library("MYSQL_LIBRARIES_${LIB}" NAMES ${LIB} + PATHS + ${MYSQL_ADD_LIBRARY_PATH} + /usr/lib/mysql + /usr/local/lib + /usr/local/lib/mysql + /usr/local/mysql/lib + ) + list(APPEND TMP_MYSQL_LIBRARIES "${MYSQL_LIBRARIES_${LIB}}") +endforeach(LIB ${MYSQL_ADD_LIBRARIES}) + +set(MYSQL_LIBRARIES ${TMP_MYSQL_LIBRARIES} CACHE FILEPATH INTERNAL) + +if(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) + set(MYSQL_FOUND TRUE CACHE INTERNAL "MySQL found") + message(STATUS "Found MySQL: ${MYSQL_INCLUDE_DIR}, ${MYSQL_LIBRARIES}") +else(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) + set(MYSQL_FOUND FALSE CACHE INTERNAL "MySQL found") + message(STATUS "MySQL not found.") +endif(MYSQL_INCLUDE_DIR AND MYSQL_LIBRARIES) + +mark_as_advanced(MYSQL_INCLUDE_DIR MYSQL_LIBRARIES) +ENDMACRO(FIND_MYSQL)
\ No newline at end of file diff --git a/cmake/cmake_uninstall.cmake.in b/cmake/cmake_uninstall.cmake.in new file mode 100644 index 00000000000..06f9c8263a8 --- /dev/null +++ b/cmake/cmake_uninstall.cmake.in @@ -0,0 +1,23 @@ +# from cmake wiki +IF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") + MESSAGE(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"") +ENDIF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt") + +FILE(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files) +STRING(REGEX REPLACE "\n" ";" files "${files}") +FOREACH(file ${files}) + MESSAGE(STATUS "Uninstalling \"${file}\"") + IF(EXISTS "${file}") + EXEC_PROGRAM( + "@CMAKE_COMMAND@" ARGS "-E remove \"${file}\"" + OUTPUT_VARIABLE rm_out + RETURN_VALUE rm_retval + ) + IF("${rm_retval}" STREQUAL 0) + ELSE("${rm_retval}" STREQUAL 0) + MESSAGE(FATAL_ERROR "Problem when removing \"${file}\"") + ENDIF("${rm_retval}" STREQUAL 0) + ELSE(EXISTS "${file}") + MESSAGE(STATUS "File \"${file}\" does not exist.") + ENDIF(EXISTS "${file}") +ENDFOREACH(file) |
