diff options
author | Shauren <shauren.trinity@gmail.com> | 2024-08-20 13:48:10 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2025-05-11 18:40:43 +0200 |
commit | ca6aa745458322c106bea50454d975e13f87f3ba (patch) | |
tree | 918125515d0ea5274925310509c8831b43b9ec0a /cmake | |
parent | 71a8e05fed91714373e6c885709867cac77045bb (diff) |
Build: Extract hardcoded list of mysql paths to shared cmake variable
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/macros/FindMySQL.cmake | 137 |
1 files changed, 40 insertions, 97 deletions
diff --git a/cmake/macros/FindMySQL.cmake b/cmake/macros/FindMySQL.cmake index 122e88be6a2..47e56f4e63c 100644 --- a/cmake/macros/FindMySQL.cmake +++ b/cmake/macros/FindMySQL.cmake @@ -106,24 +106,33 @@ if(UNIX) endif(MYSQL_CONFIG) endif(UNIX) +set(_MYSQL_ROOT_PATHS) + if(WIN32) # read environment variables and change \ to / file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" PROGRAM_FILES_32) file(TO_CMAKE_PATH "$ENV{ProgramW6432}" PROGRAM_FILES_64) -endif(WIN32) -find_path(MYSQL_INCLUDE_DIR - NAMES - mysql.h - HINTS + set(_MYSQL_ROOT_HINTS ${_MYSQL_ROOT_HINTS} - PATHS - ${MYSQL_ADD_INCLUDE_PATH} - /usr/include - /usr/include/mysql - /usr/local/include - /usr/local/include/mysql - /usr/local/mysql/include + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.3;Location]" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.2;Location]" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.1;Location]" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.0;Location]" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.7;Location]" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.3;Location]" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.2;Location]" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.1;Location]" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.0;Location]" + "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.7;Location]" + "[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]" + ) + + set(_MYSQL_ROOT_PATHS + ${_MYSQL_ROOT_PATHS} "${PROGRAM_FILES_64}/MySQL/MySQL Server 8.3" "${PROGRAM_FILES_64}/MySQL/MySQL Server 8.2" "${PROGRAM_FILES_64}/MySQL/MySQL Server 8.1" @@ -136,28 +145,28 @@ find_path(MYSQL_INCLUDE_DIR "${PROGRAM_FILES_32}/MySQL/MySQL Server 8.0" "${PROGRAM_FILES_32}/MySQL/MySQL Server 5.7" "${PROGRAM_FILES_32}/MySQL" - "C:/MySQL" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.3;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.2;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.1;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.0;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.7;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.3;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.2;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.1;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.0;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.7;Location]" "$ENV{SystemDrive}/MySQL/MySQL Server 8.3" "$ENV{SystemDrive}/MySQL/MySQL Server 8.2" "$ENV{SystemDrive}/MySQL/MySQL Server 8.1" "$ENV{SystemDrive}/MySQL/MySQL Server 8.0" "$ENV{SystemDrive}/MySQL/MySQL Server 5.7" - "c:/msys/local/include" - "$ENV{MYSQL_ROOT}" - "[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]" + "$ENV{SystemDrive}/MySQL" + ) +endif(WIN32) + +find_path(MYSQL_INCLUDE_DIR + NAMES + mysql.h + HINTS + ${_MYSQL_ROOT_HINTS} + PATHS + ${MYSQL_ADD_INCLUDE_PATH} + /usr/include + /usr/include/mysql + /usr/local/include + /usr/local/include/mysql + /usr/local/mysql/include + ${_MYSQL_ROOT_PATHS} PATH_SUFFIXES include include/mysql @@ -190,40 +199,7 @@ if(WIN32) ${_MYSQL_ROOT_HINTS} PATHS ${MYSQL_ADD_LIBRARIES_PATH} - "${PROGRAM_FILES_64}/MySQL/MySQL Server 8.3" - "${PROGRAM_FILES_64}/MySQL/MySQL Server 8.2" - "${PROGRAM_FILES_64}/MySQL/MySQL Server 8.1" - "${PROGRAM_FILES_64}/MySQL/MySQL Server 8.0" - "${PROGRAM_FILES_64}/MySQL/MySQL Server 5.7" - "${PROGRAM_FILES_64}/MySQL/lib" - "${PROGRAM_FILES_32}/MySQL/MySQL Server 8.3" - "${PROGRAM_FILES_32}/MySQL/MySQL Server 8.2" - "${PROGRAM_FILES_32}/MySQL/MySQL Server 8.1" - "${PROGRAM_FILES_32}/MySQL/MySQL Server 8.0" - "${PROGRAM_FILES_32}/MySQL/MySQL Server 5.7" - "${PROGRAM_FILES_32}/MySQL/lib" - "C:/MySQL/lib/debug" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.3;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.2;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.1;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.0;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.7;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.3;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.2;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.1;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.0;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.7;Location]" - "$ENV{SystemDrive}/MySQL/MySQL Server 8.3" - "$ENV{SystemDrive}/MySQL/MySQL Server 8.2" - "$ENV{SystemDrive}/MySQL/MySQL Server 8.1" - "$ENV{SystemDrive}/MySQL/MySQL Server 8.0" - "$ENV{SystemDrive}/MySQL/MySQL Server 5.7" - "c:/msys/local/lib" - "$ENV{MYSQL_ROOT}" - "[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]" + ${_MYSQL_ROOT_PATHS} PATH_SUFFIXES lib lib/opt @@ -265,40 +241,7 @@ if(WIN32) HINTS ${_MYSQL_ROOT_HINTS} PATHS - "${PROGRAM_FILES_64}/MySQL/MySQL Server 8.3" - "${PROGRAM_FILES_64}/MySQL/MySQL Server 8.2" - "${PROGRAM_FILES_64}/MySQL/MySQL Server 8.1" - "${PROGRAM_FILES_64}/MySQL/MySQL Server 8.0" - "${PROGRAM_FILES_64}/MySQL/MySQL Server 5.7" - "${PROGRAM_FILES_64}/MySQL" - "${PROGRAM_FILES_32}/MySQL/MySQL Server 8.3" - "${PROGRAM_FILES_32}/MySQL/MySQL Server 8.2" - "${PROGRAM_FILES_32}/MySQL/MySQL Server 8.1" - "${PROGRAM_FILES_32}/MySQL/MySQL Server 8.0" - "${PROGRAM_FILES_32}/MySQL/MySQL Server 5.7" - "${PROGRAM_FILES_32}/MySQL" - "C:/MySQL/bin/debug" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.3;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.2;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.1;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 8.0;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.7;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.3;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.2;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.1;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 8.0;Location]" - "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.7;Location]" - "$ENV{SystemDrive}/MySQL/MySQL Server 8.3" - "$ENV{SystemDrive}/MySQL/MySQL Server 8.2" - "$ENV{SystemDrive}/MySQL/MySQL Server 8.1" - "$ENV{SystemDrive}/MySQL/MySQL Server 8.0" - "$ENV{SystemDrive}/MySQL/MySQL Server 5.7" - "c:/msys/local/bin" - "$ENV{MYSQL_ROOT}" - "[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]" + ${_MYSQL_ROOT_PATHS} PATH_SUFFIXES bin bin/opt |