aboutsummaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorraczman <none@none>2009-01-17 09:23:33 -0500
committerraczman <none@none>2009-01-17 09:23:33 -0500
commit09ddc711f4355bb04717a2092b4dc4149f495491 (patch)
tree1be6b369f563027c71842ecc83314de626da5793 /cmake
parent87d9f3261e85587e9be1121bc2d62c034443f00f (diff)
Cmake build system for trinity
--HG-- branch : trunk
Diffstat (limited to 'cmake')
-rw-r--r--cmake/FindAce.cmake31
-rw-r--r--cmake/FindMySql.cmake102
-rw-r--r--cmake/cmake_uninstall.cmake.in23
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)