Skip to content

Commit 065dfb3

Browse files
committed
- Optionally, copy mysqld renamed to mysqld-debug from debug build directory into resulting package
- Fix to mysql_install_db.pl to the correct place on Windows ( under scripts directory)
1 parent b6779a7 commit 065dfb3

File tree

2 files changed

+48
-3
lines changed

2 files changed

+48
-3
lines changed

scripts/CMakeLists.txt

+12-3
Original file line numberDiff line numberDiff line change
@@ -154,12 +154,21 @@ ELSE()
154154
SET(localstatedir ${MYSQL_DATADIR})
155155
ENDIF()
156156

157+
IF(UNIX)
157158
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mysql_install_db.sh
158-
${CMAKE_CURRENT_BINARY_DIR}/mysql_install_db ESCAPE_QUOTES @ONLY)
159+
${CMAKE_CURRENT_BINARY_DIR}/mysql_install_db ESCAPE_QUOTES @ONLY)
160+
SET(DEST ${INSTALL_BINDIR})
161+
SET(EXT)
162+
ELSE()
163+
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mysql_install_db.pl.in
164+
${CMAKE_CURRENT_BINARY_DIR}/mysql_install_db.pl ESCAPE_QUOTES @ONLY)
165+
SET(DEST ${INSTALL_SCRIPTDIR})
166+
SET(EXT ".pl")
167+
ENDIF()
159168

160169
INSTALL(FILES
161-
"${CMAKE_CURRENT_BINARY_DIR}/mysql_install_db"
162-
DESTINATION bin
170+
"${CMAKE_CURRENT_BINARY_DIR}/mysql_install_db${EXT}"
171+
DESTINATION ${DEST}
163172
PERMISSIONS OWNER_READ OWNER_WRITE
164173
OWNER_EXECUTE GROUP_READ GROUP_EXECUTE
165174
WORLD_READ WORLD_EXECUTE

sql/CMakeLists.txt

+36
Original file line numberDiff line numberDiff line change
@@ -276,3 +276,39 @@ ELSE()
276276
ENDIF()
277277
ENDIF()
278278

279+
# Optionally install mysqld from debug build run. outside of the current build dir
280+
# (unless multi-config generator is used# like Visual Studio or Xcode).
281+
# For Makefile generators we default Debug build directory to ${buildroot}/../debug.
282+
283+
GET_FILENAME_COMPONENT(BINARY_PARENTDIR ${CMAKE_BINARY_DIR} PATH)
284+
SET(DEBUGBUILDDIR "${BINARY_PARENTDIR}/debug")
285+
286+
IF(WIN32)
287+
SET(EXE ".exe")
288+
ELSE()
289+
SET(EXE)
290+
ENDIF()
291+
292+
IF(CMAKE_GENERATOR MATCHES "Makefiles")
293+
SET(MYSQLD_DEBUG_EXE ${DEBUGBUILDDIR}/sql/mysqld${EXE})
294+
ELSE()
295+
# Visual Studio and Xcode
296+
SET(MYSQLD_DEBUG_EXE ${CMAKE_BINARY_DIR}/sql/Debug/mysqld${EXE})
297+
ENDIF()
298+
299+
INSTALL(FILES ${MYSQLD_DEBUG_EXE}
300+
DESTINATION ${INSTALL_SBINDIR}
301+
RENAME mysqld-debug${EXE}
302+
CONFIGURATIONS Release RelWithDebInfo
303+
OPTIONAL)
304+
305+
IF(WIN32)
306+
STRING(REPLACE ".exe" ".pdb" MYSQLD_DEBUG_PDB ${MYSQLD_DEBUG_EXE})
307+
INSTALL(FILES ${MYSQLD_DEBUG_PDB}
308+
CONFIGURATIONS Release RelWithDebInfo
309+
DESTINATION ${INSTALL_SBINDIR}
310+
RENAME mysqld-debug.pdb
311+
OPTIONAL)
312+
ENDIF()
313+
314+

0 commit comments

Comments
 (0)