diff options
Diffstat (limited to 'cmake/macros/FindMySQL.cmake')
-rw-r--r-- | cmake/macros/FindMySQL.cmake | 30 |
1 files changed, 26 insertions, 4 deletions
diff --git a/cmake/macros/FindMySQL.cmake b/cmake/macros/FindMySQL.cmake index c295b3eafc5..45eb63f280d 100644 --- a/cmake/macros/FindMySQL.cmake +++ b/cmake/macros/FindMySQL.cmake @@ -142,13 +142,32 @@ if(WIN32) list(APPEND _MYSQL_ROOT_HINTS_REGISTRY_LOCATIONS ${_MYSQL_ROOT_HINTS_REGISTRY_LOCATION}) endforeach() + cmake_host_system_information( + RESULT + _MYSQL_ROOT_HINTS_SUBKEYS + QUERY + WINDOWS_REGISTRY + "HKEY_LOCAL_MACHINE\\SOFTWARE" SUBKEYS + VIEW BOTH + ) + list(FILTER _MYSQL_ROOT_HINTS_SUBKEYS INCLUDE REGEX "^MariaDB ") + list(SORT _MYSQL_ROOT_HINTS_SUBKEYS COMPARE NATURAL ORDER DESCENDING) + + 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\\${subkey}" VALUE "INSTALLDIR" + 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 @@ -156,6 +175,9 @@ if(WIN32) "${PROGRAM_FILES_64}/MySQL/MySQL Server *" "${PROGRAM_FILES_32}/MySQL/MySQL Server *" "$ENV{SystemDrive}/MySQL/MySQL Server *" + "${PROGRAM_FILES_64}/MariaDB *" + "${PROGRAM_FILES_32}/MariaDB *" + "$ENV{SystemDrive}/MariaDB *" ) list(SORT _MYSQL_ROOT_PATHS_VERSION_SUBDIRECTORIES COMPARE NATURAL ORDER DESCENDING) |