aboutsummaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake')
-rw-r--r--cmake/macros/FindMySQL.cmake30
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)