aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorclick <none@none>2010-09-08 14:40:45 +0200
committerclick <none@none>2010-09-08 14:40:45 +0200
commit4faf53881fb6c43422c67590b9fceacc160503bc (patch)
tree9a1514168b7687bce4878709d8a764d8a0ef67a7
parent47bead14d7fe66c14ccc201e1e4bd8e88da18df4 (diff)
BuildSystem/Macros: Revert FindMySQL.cmake changes from ea96a5d888 - handled with simple if-tests instead
BuildSystem: Adjust buildfiles so that they reflect their proper parameters (will change when we've cleaned it up even more) --HG-- branch : trunk
-rw-r--r--CMakeLists.txt5
-rw-r--r--cmake/macros/FindMySQL.cmake143
-rw-r--r--cmake/options.cmake5
-rw-r--r--cmake/platform/settings.win32.cmake10
-rw-r--r--cmake/showoptions.cmake17
5 files changed, 87 insertions, 93 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f93a5d64578..406b503808f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -46,8 +46,11 @@ include(CheckPlatform)
# basic packagesearching and setup (further support will be needed, this is a preliminary release!)
find_package(PCHSupport)
find_package(ACE REQUIRED)
-find_package(MySQL REQUIRED)
find_package(OpenSSL REQUIRED)
+if(NOT EXTERNAL_MYSQL)
+ find_package(MySQL REQUIRED)
+endif()
+
if( UNIX )
find_package(Readline)
find_package(ZLIB)
diff --git a/cmake/macros/FindMySQL.cmake b/cmake/macros/FindMySQL.cmake
index 120fe19ae85..59162038b4c 100644
--- a/cmake/macros/FindMySQL.cmake
+++ b/cmake/macros/FindMySQL.cmake
@@ -62,75 +62,67 @@ if( UNIX )
endif( MYSQL_CONFIG )
endif( UNIX )
-if( EXTERNAL_MYSQL )
- find_path(MYSQL_INCLUDE_DIR
- NAMES
- mysql.h
- PATHS
- ${MYSQL_ADD_INCLUDE_PATH}
- /usr/include
- /usr/include/mysql
- /usr/local/include
- /usr/local/include/mysql
- /usr/local/mysql/include
- "C:/Program Files/MySQL/include"
- "C:/Program Files/MySQL/MySQL Server 5.0/include"
- "C:/Program Files/MySQL/MySQL Server 5.1/include"
- "C:/MySQL/include"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.0;Location]/include"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.1;Location]/include"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.0;Location]/include"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.1;Location]/include"
- "$ENV{ProgramFiles}/MySQL/*/include"
- "$ENV{SystemDrive}/MySQL/*/include"
- "c:/msys/local/include"
- DOC
- "Specify the directory containing mysql.h."
- )
-else( EXTERNAL_MYSQL )
- set(MYSQL_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/dep/mysqllite/include)
-endif( EXTERNAL_MYSQL )
+find_path(MYSQL_INCLUDE_DIR
+ NAMES
+ mysql.h
+ PATHS
+ ${MYSQL_ADD_INCLUDE_PATH}
+ /usr/include
+ /usr/include/mysql
+ /usr/local/include
+ /usr/local/include/mysql
+ /usr/local/mysql/include
+ "C:/Program Files/MySQL/include"
+ "C:/Program Files/MySQL/MySQL Server 5.0/include"
+ "C:/Program Files/MySQL/MySQL Server 5.1/include"
+ "C:/MySQL/include"
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.0;Location]/include"
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.1;Location]/include"
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.0;Location]/include"
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.1;Location]/include"
+ "$ENV{ProgramFiles}/MySQL/*/include"
+ "$ENV{SystemDrive}/MySQL/*/include"
+ "c:/msys/local/include"
+ DOC
+ "Specify the directory containing mysql.h."
+)
if( UNIX )
-foreach(LIB ${MYSQL_ADD_LIBRARIES})
- find_library( MYSQL_LIBRARY
- NAMES
- mysql libmysql ${LIB}
- PATHS
- ${MYSQL_ADD_LIBRARIES_PATH}
- /usr/lib
- /usr/lib/mysql
- /usr/local/lib
- /usr/local/lib/mysql
- /usr/local/mysql/lib
- DOC "Specify the location of the mysql library here."
- )
-endforeach(LIB ${MYSQL_ADD_LIBRARY})
-endif( UNIX )
-
-if( WIN32 )
- if( EXTERNAL_MYSQL )
+ foreach(LIB ${MYSQL_ADD_LIBRARIES})
find_library( MYSQL_LIBRARY
NAMES
- libmysql
+ mysql libmysql ${LIB}
PATHS
${MYSQL_ADD_LIBRARIES_PATH}
- "C:/Program Files/MySQL/lib"
- "C:/Program Files/MySQL/MySQL Server 5.0/lib/opt"
- "C:/Program Files/MySQL/MySQL Server 5.1/lib/opt"
- "C:/MySQL/lib/debug"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.0;Location]/lib/opt"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.1;Location]/lib/opt"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.0;Location]/lib/opt"
- "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.1;Location]/lib/opt"
- "$ENV{ProgramFiles}/MySQL/*/lib/opt"
- "$ENV{SystemDrive}/MySQL/*/lib/opt"
- "c:/msys/local/include"
+ /usr/lib
+ /usr/lib/mysql
+ /usr/local/lib
+ /usr/local/lib/mysql
+ /usr/local/mysql/lib
DOC "Specify the location of the mysql library here."
)
- else( EXTERNAL_MYSQL )
- set(MYSQL_LIBRARY libmysql)
- endif( EXTERNAL_MYSQL )
+ endforeach(LIB ${MYSQL_ADD_LIBRARY})
+endif( UNIX )
+
+if( WIN32 )
+ find_library( MYSQL_LIBRARY
+ NAMES
+ libmysql
+ PATHS
+ ${MYSQL_ADD_LIBRARIES_PATH}
+ "C:/Program Files/MySQL/lib"
+ "C:/Program Files/MySQL/MySQL Server 5.0/lib/opt"
+ "C:/Program Files/MySQL/MySQL Server 5.1/lib/opt"
+ "C:/MySQL/lib/debug"
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.0;Location]/lib/opt"
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.1;Location]/lib/opt"
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.0;Location]/lib/opt"
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.1;Location]/lib/opt"
+ "$ENV{ProgramFiles}/MySQL/*/lib/opt"
+ "$ENV{SystemDrive}/MySQL/*/lib/opt"
+ "c:/msys/local/include"
+ DOC "Specify the location of the mysql library here."
+ )
endif( WIN32 )
# On Windows you typically don't need to include any extra libraries
@@ -150,20 +142,15 @@ else( NOT WIN32 )
set( MYSQL_EXTRA_LIBRARIES "" )
endif( NOT WIN32 )
-if( EXTERNAL_MYSQL )
- if( MYSQL_LIBRARY )
- if( MYSQL_INCLUDE_DIR )
- set( MYSQL_FOUND 1 )
- message(STATUS "Found MySQL library: ${MYSQL_LIBRARY}")
- message(STATUS "Found MySQL headers: ${MYSQL_INCLUDE_DIR}")
- else( MYSQL_INCLUDE_DIR )
- message(FATAL_ERROR "Could not find MySQL headers! Please install the development libraries and headers or use internal MySQL.")
- endif( MYSQL_INCLUDE_DIR )
- mark_as_advanced( MYSQL_FOUND MYSQL_LIBRARY MYSQL_EXTRA_LIBRARIES MYSQL_INCLUDE_DIR )
- else( MYSQL_LIBRARY )
- message(FATAL_ERROR "Could not find the MySQL libraries! Please install the development libraries and headers or use internal MySQL.")
- endif( MYSQL_LIBRARY )
-else( EXTERNAL_MYSQL )
- set( MYSQL_FOUND 1 )
- message(STATUS "Using internal MySQL.")
-endif( EXTERNAL_MYSQL )
+if( MYSQL_LIBRARY )
+ if( MYSQL_INCLUDE_DIR )
+ set( MYSQL_FOUND 1 )
+ message(STATUS "Found MySQL library: ${MYSQL_LIBRARY}")
+ message(STATUS "Found MySQL headers: ${MYSQL_INCLUDE_DIR}")
+ else( MYSQL_INCLUDE_DIR )
+ message(FATAL_ERROR "Could not find MySQL headers! Please install the development libraries and headers")
+ endif( MYSQL_INCLUDE_DIR )
+ mark_as_advanced( MYSQL_FOUND MYSQL_LIBRARY MYSQL_EXTRA_LIBRARIES MYSQL_INCLUDE_DIR )
+else( MYSQL_LIBRARY )
+ message(FATAL_ERROR "Could not find the MySQL libraries! Please install the development libraries and headers")
+endif( MYSQL_LIBRARY )
diff --git a/cmake/options.cmake b/cmake/options.cmake
index 1e7374d1287..7926fed6cd8 100644
--- a/cmake/options.cmake
+++ b/cmake/options.cmake
@@ -14,11 +14,6 @@ option(TOOLS "Build map/vmap extraction/assembler tools"
option(USE_SCRIPTPCH "Use precompiled headers when compiling scripts" 1)
option(USE_COREPCH "Use precompiled headers when compiling servers" 1)
option(USE_SFMT "Use SFMT as random numbergenerator" 0)
-if(WIN32)
- option(EXTERNAL_MYSQL "Use your own installed MySQL instead of the internal one" 0)
-else(WIN32)
- set(EXTERNAL_MYSQL 0)
-endif(WIN32)
option(WITH_WARNINGS "Show all warnings during compile" 1)
option(WITH_COREDEBUG "Include additional debug-code in core" 0)
option(WITH_SQL "Copy SQL files during installation" 0)
diff --git a/cmake/platform/settings.win32.cmake b/cmake/platform/settings.win32.cmake
index 3e2df0c97ee..8f47294f575 100644
--- a/cmake/platform/settings.win32.cmake
+++ b/cmake/platform/settings.win32.cmake
@@ -1,9 +1,19 @@
+# Platform-specfic options
+option(EXTERNAL_MYSQL "Use your own installed MySQL instead of the internal one" 0)
+
# Package overloads
set(ACE_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/dep/acelite)
set(ACE_LIBRARY "ace")
set(BZIP2_LIBRARIES "bzip2")
set(ZLIB_LIBRARIES "zlib")
+if( EXTERNAL_MYSQL )
+ set(MYSQL_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/dep/mysqllite/include)
+ set(MYSQL_LIBRARY "libmysql")
+ set( MYSQL_FOUND 1 )
+ message(STATUS "Using internal MySQL.")
+endif( EXTERNAL_MYSQL )
+
# check the CMake preload parameters (commented out by default)
# overload CMAKE_INSTALL_PREFIX if not being set properly
diff --git a/cmake/showoptions.cmake b/cmake/showoptions.cmake
index 41fecc052fe..93c57ef96f0 100644
--- a/cmake/showoptions.cmake
+++ b/cmake/showoptions.cmake
@@ -63,15 +63,6 @@ else()
message("* Use SFMT for RNG : No (default)")
endif()
-if( WIN32 )
- if( EXTERNAL_MYSQL )
- message("* Use external MySQL : Yes")
- add_definitions(-DUSE_SFMT_FOR_RNG)
- else()
- message("* Use external MySQL : No (default)")
- endif()
-endif( WIN32 )
-
if( WITH_WARNINGS )
message("* Show all warnings : Yes")
else()
@@ -85,5 +76,13 @@ else()
message("* Use coreside debug : No (default)")
endif()
+if( WIN32 )
+ if( EXTERNAL_MYSQL )
+ message("* Use external MySQL : Yes")
+ else()
+ message("* Use external MySQL : No (default)")
+ endif()
+endif( WIN32 )
+
message("")