Skip to content

Commit 9c04a32

Browse files
committed
Dep/MySQL: Remove hardcoded mariadb search locations
Closes #31242 (cherry picked from commit ceb9aed4e2fe2038063d2487766d863d04846974)
1 parent ae3856b commit 9c04a32

File tree

2 files changed

+27
-5
lines changed

2 files changed

+27
-5
lines changed

cmake/macros/FindMySQL.cmake

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -142,20 +142,42 @@ if(WIN32)
142142
list(APPEND _MYSQL_ROOT_HINTS_REGISTRY_LOCATIONS ${_MYSQL_ROOT_HINTS_REGISTRY_LOCATION})
143143
endforeach()
144144

145+
cmake_host_system_information(
146+
RESULT
147+
_MYSQL_ROOT_HINTS_SUBKEYS
148+
QUERY
149+
WINDOWS_REGISTRY
150+
"HKEY_LOCAL_MACHINE\\SOFTWARE" SUBKEYS
151+
VIEW BOTH
152+
)
153+
list(FILTER _MYSQL_ROOT_HINTS_SUBKEYS INCLUDE REGEX "^MariaDB ")
154+
list(SORT _MYSQL_ROOT_HINTS_SUBKEYS COMPARE NATURAL ORDER DESCENDING)
155+
156+
foreach(subkey IN LISTS _MYSQL_ROOT_HINTS_SUBKEYS)
157+
cmake_host_system_information(
158+
RESULT
159+
_MYSQL_ROOT_HINTS_REGISTRY_LOCATION
160+
QUERY
161+
WINDOWS_REGISTRY
162+
"HKEY_LOCAL_MACHINE\\SOFTWARE\\${subkey}" VALUE "INSTALLDIR"
163+
VIEW BOTH
164+
)
165+
list(APPEND _MYSQL_ROOT_HINTS_REGISTRY_LOCATIONS ${_MYSQL_ROOT_HINTS_REGISTRY_LOCATION})
166+
endforeach()
167+
145168
set(_MYSQL_ROOT_HINTS
146169
${_MYSQL_ROOT_HINTS}
147170
${_MYSQL_ROOT_HINTS_REGISTRY_LOCATIONS}
148-
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.4;INSTALLDIR]"
149-
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.4 (x64);INSTALLDIR]"
150-
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.5;INSTALLDIR]"
151-
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MariaDB 10.5 (x64);INSTALLDIR]"
152171
)
153172

154173
file(GLOB _MYSQL_ROOT_PATHS_VERSION_SUBDIRECTORIES
155174
LIST_DIRECTORIES TRUE
156175
"${PROGRAM_FILES_64}/MySQL/MySQL Server *"
157176
"${PROGRAM_FILES_32}/MySQL/MySQL Server *"
158177
"$ENV{SystemDrive}/MySQL/MySQL Server *"
178+
"${PROGRAM_FILES_64}/MariaDB *"
179+
"${PROGRAM_FILES_32}/MariaDB *"
180+
"$ENV{SystemDrive}/MariaDB *"
159181
)
160182

161183
list(SORT _MYSQL_ROOT_PATHS_VERSION_SUBDIRECTORIES COMPARE NATURAL ORDER DESCENDING)

dep/mysql/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
1010

1111
set(MYSQL_MIN_VERSION_MySQL 8.0.34)
12-
set(MYSQL_MIN_VERSION_MariaDB 10.4)
12+
set(MYSQL_MIN_VERSION_MariaDB 10.6.3)
1313
find_package(MySQL COMPONENTS lib)
1414

1515
add_library(mysql INTERFACE)

0 commit comments

Comments
 (0)