Build: synced FindMySQL macro with master branch
This commit is contained in:
1 parent
7769aed49a
commit
4d193c29a3
2 files changed
+192
-187
No files matched your search
@@ -21,12 +21,17 @@ project(TrinityCore)
|
|||||||
cmake_policy(SET CMP0005 NEW)
|
cmake_policy(SET CMP0005 NEW)
|
||||||
cmake_policy(SET CMP0043 NEW) # Ignore COMPILE_DEFINITIONS_<Config> properties
|
cmake_policy(SET CMP0043 NEW) # Ignore COMPILE_DEFINITIONS_<Config> properties
|
||||||
cmake_policy(SET CMP0054 NEW) # Only interpret if() arguments as variables or keywords when unquoted - prevents intepreting if(SOME_STRING_VARIABLE MATCHES "MSVC") as if(SOME_STRING_VARIABLE MATCHES "1")
|
cmake_policy(SET CMP0054 NEW) # Only interpret if() arguments as variables or keywords when unquoted - prevents intepreting if(SOME_STRING_VARIABLE MATCHES "MSVC") as if(SOME_STRING_VARIABLE MATCHES "1")
|
||||||
|
cmake_policy(SET CMP0067 NEW) # Honor language standard in try_compile() source-file signature
|
||||||
cmake_policy(SET CMP0074 NEW) # find_package() uses <PackageName>_ROOT variables
|
cmake_policy(SET CMP0074 NEW) # find_package() uses <PackageName>_ROOT variables
|
||||||
|
|
||||||
if(POLICY CMP0144)
|
if(POLICY CMP0144)
|
||||||
cmake_policy(SET CMP0144 NEW) # find_package() uses upper-case <PACKAGENAME>_ROOT variables
|
cmake_policy(SET CMP0144 NEW) # find_package() uses upper-case <PACKAGENAME>_ROOT variables
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(POLICY CMP0153)
|
||||||
|
cmake_policy(SET CMP0153 NEW) # The exec_program() command should not be called
|
||||||
|
endif()
|
||||||
|
|
||||||
# Set RPATH-handing (CMake parameters)
|
# Set RPATH-handing (CMake parameters)
|
||||||
set(CMAKE_SKIP_BUILD_RPATH 0)
|
set(CMAKE_SKIP_BUILD_RPATH 0)
|
||||||
set(CMAKE_BUILD_WITH_INSTALL_RPATH 0)
|
set(CMAKE_BUILD_WITH_INSTALL_RPATH 0)
|
||||||
@@ -71,6 +76,9 @@ if(NOT WITHOUT_GIT)
|
|||||||
find_package(Git 1.7)
|
find_package(Git 1.7)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# find mysql client binary (needed by genrev)
|
||||||
|
find_package(MySQL OPTIONAL_COMPONENTS binary)
|
||||||
|
|
||||||
# Find revision ID and hash of the sourcetree
|
# Find revision ID and hash of the sourcetree
|
||||||
include(cmake/genrev.cmake)
|
include(cmake/genrev.cmake)
|
||||||
|
|
||||||
|
|||||||
+184
-187
@@ -1,18 +1,59 @@
|
|||||||
|
# This file is part of the TrinityCore Project. See AUTHORS file for Copyright information
|
||||||
#
|
#
|
||||||
# Find the MySQL client includes and library
|
# This program is free software; you can redistribute it and/or modify it
|
||||||
|
# under the terms of the GNU General Public License as published by the
|
||||||
|
# Free Software Foundation; either version 2 of the License, or (at your
|
||||||
|
# option) any later version.
|
||||||
#
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||||
|
# more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License along
|
||||||
|
# with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
# This module defines
|
#[=======================================================================[.rst:
|
||||||
# MYSQL_INCLUDE_DIR, where to find mysql.h
|
FindMySQL
|
||||||
# MYSQL_LIBRARIES, the libraries to link against to connect to MySQL
|
-----------
|
||||||
# MYSQL_EXECUTABLE, the MySQL executable.
|
|
||||||
# MYSQL_FOUND, if false, you cannot build anything that requires MySQL.
|
|
||||||
|
|
||||||
# also defined, but not for general use are
|
Find MySQL.
|
||||||
# MYSQL_LIBRARY, where to find the MySQL library.
|
|
||||||
|
Imported Targets
|
||||||
|
^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
This module defines the following :prop_tgt:`IMPORTED` targets:
|
||||||
|
|
||||||
|
``MySQL::MySQL``
|
||||||
|
MySQL client library, if found.
|
||||||
|
|
||||||
|
Result Variables
|
||||||
|
^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
This module will set the following variables in your project:
|
||||||
|
|
||||||
|
``MYSQL_FOUND``
|
||||||
|
System has MySQL.
|
||||||
|
``MYSQL_INCLUDE_DIR``
|
||||||
|
MySQL include directory.
|
||||||
|
``MYSQL_LIBRARY``
|
||||||
|
MySQL library.
|
||||||
|
``MYSQL_EXECUTABLE``
|
||||||
|
Path to mysql client binary.
|
||||||
|
|
||||||
|
Hints
|
||||||
|
^^^^^
|
||||||
|
|
||||||
|
Set ``MYSQL_ROOT_DIR`` to the root directory of MySQL installation.
|
||||||
|
#]=======================================================================]
|
||||||
|
|
||||||
set(MYSQL_FOUND 0)
|
set(MYSQL_FOUND 0)
|
||||||
|
|
||||||
|
set(_MYSQL_ROOT_HINTS
|
||||||
|
${MYSQL_ROOT_DIR}
|
||||||
|
ENV MYSQL_ROOT_DIR
|
||||||
|
)
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
set(MYSQL_CONFIG_PREFER_PATH "$ENV{MYSQL_HOME}/bin" CACHE FILEPATH
|
set(MYSQL_CONFIG_PREFER_PATH "$ENV{MYSQL_HOME}/bin" CACHE FILEPATH
|
||||||
"preferred path to MySQL (mysql_config)"
|
"preferred path to MySQL (mysql_config)"
|
||||||
@@ -28,18 +69,20 @@ if(UNIX)
|
|||||||
if(MYSQL_CONFIG)
|
if(MYSQL_CONFIG)
|
||||||
message(STATUS "Using mysql-config: ${MYSQL_CONFIG}")
|
message(STATUS "Using mysql-config: ${MYSQL_CONFIG}")
|
||||||
# set INCLUDE_DIR
|
# set INCLUDE_DIR
|
||||||
exec_program(${MYSQL_CONFIG}
|
execute_process(
|
||||||
ARGS --include
|
COMMAND "${MYSQL_CONFIG}" --include
|
||||||
OUTPUT_VARIABLE MY_TMP
|
OUTPUT_VARIABLE MY_TMP
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
)
|
)
|
||||||
|
|
||||||
string(REGEX REPLACE "-I([^ ]*)( .*)?" "\\1" MY_TMP "${MY_TMP}")
|
string(REGEX REPLACE "-I([^ ]*)( .*)?" "\\1" MY_TMP "${MY_TMP}")
|
||||||
set(MYSQL_ADD_INCLUDE_PATH ${MY_TMP} CACHE FILEPATH INTERNAL)
|
set(MYSQL_ADD_INCLUDE_PATH ${MY_TMP} CACHE FILEPATH INTERNAL)
|
||||||
#message("[DEBUG] MYSQL ADD_INCLUDE_PATH : ${MYSQL_ADD_INCLUDE_PATH}")
|
#message("[DEBUG] MYSQL ADD_INCLUDE_PATH : ${MYSQL_ADD_INCLUDE_PATH}")
|
||||||
# set LIBRARY_DIR
|
# set LIBRARY_DIR
|
||||||
exec_program(${MYSQL_CONFIG}
|
execute_process(
|
||||||
ARGS --libs_r
|
COMMAND "${MYSQL_CONFIG}" --libs_r
|
||||||
OUTPUT_VARIABLE MY_TMP
|
OUTPUT_VARIABLE MY_TMP
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
)
|
)
|
||||||
set(MYSQL_ADD_LIBRARIES "")
|
set(MYSQL_ADD_LIBRARIES "")
|
||||||
string(REGEX MATCHALL "-l[^ ]*" MYSQL_LIB_LIST "${MY_TMP}")
|
string(REGEX MATCHALL "-l[^ ]*" MYSQL_LIB_LIST "${MY_TMP}")
|
||||||
@@ -63,22 +106,68 @@ if(UNIX)
|
|||||||
endif(MYSQL_CONFIG)
|
endif(MYSQL_CONFIG)
|
||||||
endif(UNIX)
|
endif(UNIX)
|
||||||
|
|
||||||
|
set(_MYSQL_ROOT_PATHS)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# read environment variables and change \ to /
|
# read environment variables and change \ to /
|
||||||
SET(PROGRAM_FILES_32 $ENV{ProgramFiles})
|
file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" PROGRAM_FILES_32)
|
||||||
if(${PROGRAM_FILES_32})
|
file(TO_CMAKE_PATH "$ENV{ProgramW6432}" PROGRAM_FILES_64)
|
||||||
STRING(REPLACE "\\\\" "/" PROGRAM_FILES_32 ${PROGRAM_FILES_32})
|
|
||||||
endif(${PROGRAM_FILES_32})
|
|
||||||
|
|
||||||
SET(PROGRAM_FILES_64 $ENV{ProgramW6432})
|
cmake_host_system_information(
|
||||||
if(${PROGRAM_FILES_64})
|
RESULT
|
||||||
STRING(REPLACE "\\\\" "/" PROGRAM_FILES_64 ${PROGRAM_FILES_64})
|
_MYSQL_ROOT_HINTS_SUBKEYS
|
||||||
endif(${PROGRAM_FILES_64})
|
QUERY
|
||||||
|
WINDOWS_REGISTRY
|
||||||
|
"HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB" SUBKEYS
|
||||||
|
VIEW BOTH
|
||||||
|
)
|
||||||
|
list(SORT _MYSQL_ROOT_HINTS_SUBKEYS COMPARE NATURAL ORDER DESCENDING)
|
||||||
|
|
||||||
|
set(_MYSQL_ROOT_HINTS_REGISTRY_LOCATIONS)
|
||||||
|
foreach(subkey IN LISTS _MYSQL_ROOT_HINTS_SUBKEYS)
|
||||||
|
cmake_host_system_information(
|
||||||
|
RESULT
|
||||||
|
_MYSQL_ROOT_HINTS_REGISTRY_LOCATION
|
||||||
|
QUERY
|
||||||
|
WINDOWS_REGISTRY
|
||||||
|
"HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\${subkey}" VALUE "Location"
|
||||||
|
VIEW BOTH
|
||||||
|
)
|
||||||
|
list(APPEND _MYSQL_ROOT_HINTS_REGISTRY_LOCATIONS ${_MYSQL_ROOT_HINTS_REGISTRY_LOCATION})
|
||||||
|
endforeach()
|
||||||
|
|
||||||
|
set(_MYSQL_ROOT_HINTS
|
||||||
|
${_MYSQL_ROOT_HINTS}
|
||||||
|
${_MYSQL_ROOT_HINTS_REGISTRY_LOCATIONS}
|
||||||
|
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.4;INSTALLDIR]"
|
||||||
|
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.4 (x64);INSTALLDIR]"
|
||||||
|
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.5;INSTALLDIR]"
|
||||||
|
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.5 (x64);INSTALLDIR]"
|
||||||
|
)
|
||||||
|
|
||||||
|
file(GLOB _MYSQL_ROOT_PATHS_VERSION_SUBDIRECTORIES
|
||||||
|
LIST_DIRECTORIES TRUE
|
||||||
|
"${PROGRAM_FILES_64}/MySQL/MySQL Server *"
|
||||||
|
"${PROGRAM_FILES_32}/MySQL/MySQL Server *"
|
||||||
|
"$ENV{SystemDrive}/MySQL/MySQL Server *"
|
||||||
|
)
|
||||||
|
|
||||||
|
list(SORT _MYSQL_ROOT_PATHS_VERSION_SUBDIRECTORIES COMPARE NATURAL ORDER DESCENDING)
|
||||||
|
|
||||||
|
set(_MYSQL_ROOT_PATHS
|
||||||
|
${_MYSQL_ROOT_PATHS}
|
||||||
|
${_MYSQL_ROOT_PATHS_VERSION_SUBDIRECTORIES}
|
||||||
|
"${PROGRAM_FILES_64}/MySQL"
|
||||||
|
"${PROGRAM_FILES_32}/MySQL"
|
||||||
|
"$ENV{SystemDrive}/MySQL"
|
||||||
|
)
|
||||||
endif(WIN32)
|
endif(WIN32)
|
||||||
|
|
||||||
find_path(MYSQL_INCLUDE_DIR
|
find_path(MYSQL_INCLUDE_DIR
|
||||||
NAMES
|
NAMES
|
||||||
mysql.h
|
mysql.h
|
||||||
|
HINTS
|
||||||
|
${_MYSQL_ROOT_HINTS}
|
||||||
PATHS
|
PATHS
|
||||||
${MYSQL_ADD_INCLUDE_PATH}
|
${MYSQL_ADD_INCLUDE_PATH}
|
||||||
/usr/include
|
/usr/include
|
||||||
@@ -86,45 +175,10 @@ find_path(MYSQL_INCLUDE_DIR
|
|||||||
/usr/local/include
|
/usr/local/include
|
||||||
/usr/local/include/mysql
|
/usr/local/include/mysql
|
||||||
/usr/local/mysql/include
|
/usr/local/mysql/include
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.3/include"
|
${_MYSQL_ROOT_PATHS}
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.2/include"
|
PATH_SUFFIXES
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.1/include"
|
include
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.0/include"
|
include/mysql
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 5.7/include"
|
|
||||||
"${PROGRAM_FILES_64}/MySQL/include"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.3/include"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.2/include"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.1/include"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.0/include"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 5.7/include"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/include"
|
|
||||||
"C:/MySQL/include"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.3;Location]/include"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.2;Location]/include"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.1;Location]/include"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.0;Location]/include"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.7;Location]/include"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.3;Location]/include"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.2;Location]/include"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.1;Location]/include"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.0;Location]/include"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.7;Location]/include"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.3/include"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.2/include"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.1/include"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.0/include"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 5.7/include"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 8.3/include"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 8.2/include"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 8.1/include"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 8.0/include"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 5.7/include"
|
|
||||||
"c:/msys/local/include"
|
|
||||||
"$ENV{MYSQL_ROOT}/include"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.4;INSTALLDIR]/include/mysql"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.4 (x64);INSTALLDIR]/include/mysql"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.5;INSTALLDIR]/include/mysql"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.5 (x64);INSTALLDIR]/include/mysql"
|
|
||||||
DOC
|
DOC
|
||||||
"Specify the directory containing mysql.h."
|
"Specify the directory containing mysql.h."
|
||||||
)
|
)
|
||||||
@@ -150,67 +204,14 @@ if(WIN32)
|
|||||||
find_library(MYSQL_LIBRARY
|
find_library(MYSQL_LIBRARY
|
||||||
NAMES
|
NAMES
|
||||||
libmysql libmariadb
|
libmysql libmariadb
|
||||||
|
HINTS
|
||||||
|
${_MYSQL_ROOT_HINTS}
|
||||||
PATHS
|
PATHS
|
||||||
${MYSQL_ADD_LIBRARIES_PATH}
|
${MYSQL_ADD_LIBRARIES_PATH}
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.3/lib"
|
${_MYSQL_ROOT_PATHS}
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.2/lib"
|
PATH_SUFFIXES
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.1/lib"
|
lib
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.0/lib"
|
lib/opt
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 5.7/lib"
|
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.3/lib/opt"
|
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.2/lib/opt"
|
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.1/lib/opt"
|
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.0/lib/opt"
|
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 5.7/lib/opt"
|
|
||||||
"${PROGRAM_FILES_64}/MySQL/lib"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.3/lib"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.2/lib"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.1/lib"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.0/lib"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 5.7/lib"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.3/lib/opt"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.2/lib/opt"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.1/lib/opt"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.0/lib/opt"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 5.7/lib/opt"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/lib"
|
|
||||||
"C:/MySQL/lib/debug"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.3;Location]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.2;Location]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.1;Location]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.0;Location]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.7;Location]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.3;Location]/lib/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.2;Location]/lib/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.1;Location]/lib/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.0;Location]/lib/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.7;Location]/lib/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.3;Location]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.2;Location]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.1;Location]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.0;Location]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.7;Location]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.3;Location]/lib/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.2;Location]/lib/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.1;Location]/lib/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.0;Location]/lib/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.7;Location]/lib/opt"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.3/lib/opt"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.2/lib/opt"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.1/lib/opt"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.0/lib/opt"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 5.7/lib/opt"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 8.3/lib/opt"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 8.2/lib/opt"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 8.1/lib/opt"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 8.0/lib/opt"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 5.7/lib/opt"
|
|
||||||
"c:/msys/local/include"
|
|
||||||
"$ENV{MYSQL_ROOT}/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.4;INSTALLDIR]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.4 (x64);INSTALLDIR]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.5;INSTALLDIR]/lib"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.5 (x64);INSTALLDIR]/lib"
|
|
||||||
DOC "Specify the location of the mysql library here."
|
DOC "Specify the location of the mysql library here."
|
||||||
)
|
)
|
||||||
endif(WIN32)
|
endif(WIN32)
|
||||||
@@ -246,83 +247,79 @@ endif(UNIX)
|
|||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
find_program(MYSQL_EXECUTABLE mysql
|
find_program(MYSQL_EXECUTABLE mysql
|
||||||
|
HINTS
|
||||||
|
${_MYSQL_ROOT_HINTS}
|
||||||
PATHS
|
PATHS
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.3/bin"
|
${_MYSQL_ROOT_PATHS}
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.2/bin"
|
PATH_SUFFIXES
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.1/bin"
|
bin
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.0/bin"
|
bin/opt
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 5.7/bin"
|
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.3/bin/opt"
|
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.2/bin/opt"
|
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.1/bin/opt"
|
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 8.0/bin/opt"
|
|
||||||
"${PROGRAM_FILES_64}/MySQL/MySQL Server 5.7/bin/opt"
|
|
||||||
"${PROGRAM_FILES_64}/MySQL/bin"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.3/bin"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.2/bin"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.1/bin"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.0/bin"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 5.7/bin"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.3/bin/opt"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.2/bin/opt"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.1/bin/opt"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 8.0/bin/opt"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/MySQL Server 5.7/bin/opt"
|
|
||||||
"${PROGRAM_FILES_32}/MySQL/bin"
|
|
||||||
"C:/MySQL/bin/debug"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.3;Location]/bin"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.2;Location]/bin"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.1;Location]/bin"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.0;Location]/bin"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.7;Location]/bin"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.3;Location]/bin/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.2;Location]/bin/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.1;Location]/bin/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.0;Location]/bin/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.7;Location]/bin/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.3;Location]/bin"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.2;Location]/bin"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.1;Location]/bin"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.0;Location]/bin"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.7;Location]/bin"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.3;Location]/bin/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.2;Location]/bin/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.1;Location]/bin/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.0;Location]/bin/opt"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.7;Location]/bin/opt"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.3/bin/opt"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.2/bin/opt"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.1/bin/opt"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 8.0/bin/opt"
|
|
||||||
"$ENV{ProgramFiles}/MySQL/MySQL Server 5.7/bin/opt"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 8.3/bin/opt"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 8.2/bin/opt"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 8.1/bin/opt"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 8.0/bin/opt"
|
|
||||||
"$ENV{SystemDrive}/MySQL/MySQL Server 5.7/bin/opt"
|
|
||||||
"c:/msys/local/include"
|
|
||||||
"$ENV{MYSQL_ROOT}/bin"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.4;INSTALLDIR]/bin"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.4 (x64);INSTALLDIR]/bin"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.5;INSTALLDIR]/bin"
|
|
||||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.5 (x64);INSTALLDIR]/bin"
|
|
||||||
DOC
|
DOC
|
||||||
"path to your mysql binary."
|
"path to your mysql binary."
|
||||||
)
|
)
|
||||||
endif(WIN32)
|
endif(WIN32)
|
||||||
|
|
||||||
if(MYSQL_LIBRARY)
|
unset(MySQL_lib_WANTED)
|
||||||
if(MYSQL_INCLUDE_DIR)
|
unset(MySQL_binary_WANTED)
|
||||||
set(MYSQL_FOUND 1)
|
set(MYSQL_REQUIRED_VARS "")
|
||||||
|
foreach(_comp IN LISTS MySQL_FIND_COMPONENTS)
|
||||||
|
if(_comp STREQUAL "lib")
|
||||||
|
set(MySQL_${_comp}_WANTED TRUE)
|
||||||
|
if(MySQL_FIND_REQUIRED_${_comp})
|
||||||
|
list(APPEND MYSQL_REQUIRED_VARS "MYSQL_LIBRARY")
|
||||||
|
list(APPEND MYSQL_REQUIRED_VARS "MYSQL_INCLUDE_DIR")
|
||||||
|
endif()
|
||||||
|
if(EXISTS "${MYSQL_LIBRARY}" AND EXISTS "${MYSQL_INCLUDE_DIR}")
|
||||||
|
set(MySQL_${_comp}_FOUND TRUE)
|
||||||
|
else()
|
||||||
|
set(MySQL_${_comp}_FOUND FALSE)
|
||||||
|
endif()
|
||||||
|
elseif(_comp STREQUAL "binary")
|
||||||
|
set(MySQL_${_comp}_WANTED TRUE)
|
||||||
|
if(MySQL_FIND_REQUIRED_${_comp})
|
||||||
|
list(APPEND MYSQL_REQUIRED_VARS "MYSQL_EXECUTABLE")
|
||||||
|
endif()
|
||||||
|
if(EXISTS "${MYSQL_EXECUTABLE}" )
|
||||||
|
set(MySQL_${_comp}_FOUND TRUE)
|
||||||
|
else()
|
||||||
|
set(MySQL_${_comp}_FOUND FALSE)
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
message(WARNING "${_comp} is not a valid MySQL component")
|
||||||
|
set(MySQL_${_comp}_FOUND FALSE)
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
unset(_comp)
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
find_package_handle_standard_args(MySQL
|
||||||
|
REQUIRED_VARS
|
||||||
|
${MYSQL_REQUIRED_VARS}
|
||||||
|
HANDLE_COMPONENTS
|
||||||
|
FAIL_MESSAGE
|
||||||
|
"Could not find the MySQL libraries! Please install the development libraries and headers"
|
||||||
|
)
|
||||||
|
unset(MYSQL_REQUIRED_VARS)
|
||||||
|
|
||||||
|
if(MYSQL_FOUND)
|
||||||
|
if(MySQL_lib_WANTED AND MySQL_lib_FOUND)
|
||||||
message(STATUS "Found MySQL library: ${MYSQL_LIBRARY}")
|
message(STATUS "Found MySQL library: ${MYSQL_LIBRARY}")
|
||||||
message(STATUS "Found MySQL headers: ${MYSQL_INCLUDE_DIR}")
|
message(STATUS "Found MySQL headers: ${MYSQL_INCLUDE_DIR}")
|
||||||
else(MYSQL_INCLUDE_DIR)
|
endif()
|
||||||
message(FATAL_ERROR "Could not find MySQL headers! Please install the development libraries and headers")
|
if(MySQL_binary_WANTED AND MySQL_binary_FOUND)
|
||||||
endif(MYSQL_INCLUDE_DIR)
|
|
||||||
if(MYSQL_EXECUTABLE)
|
|
||||||
message(STATUS "Found MySQL executable: ${MYSQL_EXECUTABLE}")
|
message(STATUS "Found MySQL executable: ${MYSQL_EXECUTABLE}")
|
||||||
endif(MYSQL_EXECUTABLE)
|
endif()
|
||||||
mark_as_advanced(MYSQL_FOUND MYSQL_LIBRARY MYSQL_EXTRA_LIBRARIES MYSQL_INCLUDE_DIR MYSQL_EXECUTABLE)
|
mark_as_advanced(MYSQL_FOUND MYSQL_LIBRARY MYSQL_EXTRA_LIBRARIES MYSQL_INCLUDE_DIR MYSQL_EXECUTABLE)
|
||||||
else(MYSQL_LIBRARY)
|
|
||||||
|
if(NOT TARGET MySQL::MySQL AND MySQL_lib_WANTED AND MySQL_lib_FOUND)
|
||||||
|
add_library(MySQL::MySQL UNKNOWN IMPORTED)
|
||||||
|
set_target_properties(MySQL::MySQL
|
||||||
|
PROPERTIES
|
||||||
|
IMPORTED_LOCATION
|
||||||
|
"${MYSQL_LIBRARY}"
|
||||||
|
INTERFACE_INCLUDE_DIRECTORIES
|
||||||
|
"${MYSQL_INCLUDE_DIR}")
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
message(FATAL_ERROR "Could not find the MySQL libraries! Please install the development libraries and headers")
|
message(FATAL_ERROR "Could not find the MySQL libraries! Please install the development libraries and headers")
|
||||||
endif(MYSQL_LIBRARY)
|
endif()
|
||||||
Reference in new issue
Block a user