summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRasmus Johansson <rasmus@mariadb.com>2020-03-20 16:41:54 +0200
committerSergei Golubchik <serg@mariadb.org>2020-03-21 20:20:29 +0100
commit9e1b3af4a490d6fb6704756aba90281ff5ac033a (patch)
tree513967006d4809562e38a04ae741916c2c32e119
parent6fb59d525b7047c82e350d2b721bffc50431eb12 (diff)
downloadmariadb-git-9e1b3af4a490d6fb6704756aba90281ff5ac033a.tar.gz
MDEV-21303 Make executables MariaDB named
To change all executables to have a mariadb name I had to: - Do name changes in every CMakeLists.txt that produces executables - CREATE_MARIADB_SYMLINK was removed and GET_SYMLINK added by Wlad to reuse the function in other places also - The scripts/CMakeLists.txt could make use of GET_SYMLINK instead of introducing redundant code, but I thought I'll leave that for next release - A lot of changes to debian/.install and debian/.links files due to swapping of real executable and symlink. I did not however change the name of the manpages, so the real name is still mysql there and mariadb are symlinks. - The Windows part needed a change now when we made the executables mariadb -named. MSI (and ZIP) do not support symlinks and to not break backward compatibility we had to include mysql named binaries also. Done by Wlad
-rw-r--r--client/CMakeLists.txt60
-rw-r--r--cmake/install_macros.cmake39
-rw-r--r--cmake/mysql_add_executable.cmake39
-rw-r--r--cmake/symlinks.cmake104
-rw-r--r--debian/control8
-rw-r--r--debian/libmariadb-dev.install3
-rw-r--r--debian/libmariadb-dev.links2
-rw-r--r--debian/mariadb-backup.install2
-rw-r--r--debian/mariadb-backup.links2
-rw-r--r--debian/mariadb-client-10.5.install24
-rw-r--r--debian/mariadb-client-10.5.links48
-rw-r--r--debian/mariadb-client-core-10.5.install4
-rw-r--r--debian/mariadb-client-core-10.5.links4
-rw-r--r--debian/mariadb-plugin-rocksdb.install3
-rw-r--r--debian/mariadb-plugin-rocksdb.links2
-rw-r--r--debian/mariadb-server-10.5.install23
-rw-r--r--debian/mariadb-server-10.5.links19
-rw-r--r--debian/mariadb-server-core-10.5.install8
-rw-r--r--debian/mariadb-server-core-10.5.links6
-rw-r--r--debian/mariadb-test.install12
-rw-r--r--debian/mariadb-test.links8
-rw-r--r--extra/CMakeLists.txt20
-rw-r--r--extra/mariabackup/CMakeLists.txt12
-rw-r--r--libmysqld/examples/CMakeLists.txt34
-rw-r--r--man/CMakeLists.txt6
-rw-r--r--scripts/CMakeLists.txt133
-rw-r--r--sql/CMakeLists.txt62
-rw-r--r--storage/rocksdb/CMakeLists.txt6
-rw-r--r--tests/CMakeLists.txt12
-rw-r--r--win/packaging/ca/CMakeLists.txt13
-rw-r--r--win/packaging/ca/CustomAction.cpp265
-rw-r--r--win/packaging/ca/CustomAction.def3
-rw-r--r--win/packaging/ca/symlinks.cc.in6
-rw-r--r--win/packaging/ca/symlinks.h8
-rw-r--r--win/packaging/create_msi.cmake2
-rw-r--r--win/packaging/extra.wxs.in17
-rw-r--r--win/upgrade_wizard/CMakeLists.txt10
37 files changed, 367 insertions, 662 deletions
diff --git a/client/CMakeLists.txt b/client/CMakeLists.txt
index 0f63f58e5da..36288900b8f 100644
--- a/client/CMakeLists.txt
+++ b/client/CMakeLists.txt
@@ -36,51 +36,49 @@ COPY_OPENSSL_DLLS(copy_openssl_client)
SET(CLIENT_LIB mariadbclient mysys)
ADD_DEFINITIONS(${SSL_DEFINES})
-MYSQL_ADD_EXECUTABLE(mysql completion_hash.cc mysql.cc readline.cc
+MYSQL_ADD_EXECUTABLE(mariadb completion_hash.cc mysql.cc readline.cc
${CMAKE_SOURCE_DIR}/sql/sql_string.cc)
-TARGET_LINK_LIBRARIES(mysql ${CLIENT_LIB})
+TARGET_LINK_LIBRARIES(mariadb ${CLIENT_LIB})
IF(UNIX)
- TARGET_LINK_LIBRARIES(mysql ${MY_READLINE_LIBRARY})
- SET_TARGET_PROPERTIES(mysql PROPERTIES ENABLE_EXPORTS TRUE)
+ TARGET_LINK_LIBRARIES(mariadb ${MY_READLINE_LIBRARY})
+ SET_TARGET_PROPERTIES(mariadb PROPERTIES ENABLE_EXPORTS TRUE)
ENDIF(UNIX)
-MYSQL_ADD_EXECUTABLE(mysqltest mysqltest.cc
- ${CMAKE_SOURCE_DIR}/sql/sql_string.cc
- COMPONENT Test)
+MYSQL_ADD_EXECUTABLE(mariadb-test mysqltest.cc ${CMAKE_SOURCE_DIR}/sql/sql_string.cc COMPONENT Test)
SET_SOURCE_FILES_PROPERTIES(mysqltest.cc PROPERTIES COMPILE_FLAGS "-DTHREADS ${PCRE2_DEBIAN_HACK}")
-TARGET_LINK_LIBRARIES(mysqltest ${CLIENT_LIB} pcre2-posix pcre2-8)
-SET_TARGET_PROPERTIES(mysqltest PROPERTIES ENABLE_EXPORTS TRUE)
+TARGET_LINK_LIBRARIES(mariadb-test ${CLIENT_LIB} pcre2-posix pcre2-8)
+SET_TARGET_PROPERTIES(mariadb-test PROPERTIES ENABLE_EXPORTS TRUE)
-MYSQL_ADD_EXECUTABLE(mysqlcheck mysqlcheck.c)
-TARGET_LINK_LIBRARIES(mysqlcheck ${CLIENT_LIB})
+MYSQL_ADD_EXECUTABLE(mariadb-check mysqlcheck.c)
+TARGET_LINK_LIBRARIES(mariadb-check ${CLIENT_LIB})
-MYSQL_ADD_EXECUTABLE(mysqldump mysqldump.c ../sql-common/my_user.c)
-TARGET_LINK_LIBRARIES(mysqldump ${CLIENT_LIB})
+MYSQL_ADD_EXECUTABLE(mariadb-dump mysqldump.c ../sql-common/my_user.c)
+TARGET_LINK_LIBRARIES(mariadb-dump ${CLIENT_LIB})
-MYSQL_ADD_EXECUTABLE(mysqlimport mysqlimport.c)
+MYSQL_ADD_EXECUTABLE(mariadb-import mysqlimport.c)
SET_SOURCE_FILES_PROPERTIES(mysqlimport.c PROPERTIES COMPILE_FLAGS "-DTHREADS")
-TARGET_LINK_LIBRARIES(mysqlimport ${CLIENT_LIB})
+TARGET_LINK_LIBRARIES(mariadb-import ${CLIENT_LIB})
-MYSQL_ADD_EXECUTABLE(mysql_upgrade mysql_upgrade.c COMPONENT Server)
-TARGET_LINK_LIBRARIES(mysql_upgrade ${CLIENT_LIB})
-ADD_DEPENDENCIES(mysql_upgrade GenFixPrivs)
+MYSQL_ADD_EXECUTABLE(mariadb-upgrade mysql_upgrade.c COMPONENT Server)
+TARGET_LINK_LIBRARIES(mariadb-upgrade ${CLIENT_LIB})
+ADD_DEPENDENCIES(mariadb-upgrade GenFixPrivs)
-MYSQL_ADD_EXECUTABLE(mysqlshow mysqlshow.c)
-TARGET_LINK_LIBRARIES(mysqlshow ${CLIENT_LIB})
+MYSQL_ADD_EXECUTABLE(mariadb-show mysqlshow.c)
+TARGET_LINK_LIBRARIES(mariadb-show ${CLIENT_LIB})
-MYSQL_ADD_EXECUTABLE(mysql_plugin mysql_plugin.c)
-TARGET_LINK_LIBRARIES(mysql_plugin ${CLIENT_LIB})
+MYSQL_ADD_EXECUTABLE(mariadb-plugin mysql_plugin.c)
+TARGET_LINK_LIBRARIES(mariadb-plugin ${CLIENT_LIB})
-MYSQL_ADD_EXECUTABLE(mysqlbinlog mysqlbinlog.cc)
-TARGET_LINK_LIBRARIES(mysqlbinlog ${CLIENT_LIB} mysys_ssl)
+MYSQL_ADD_EXECUTABLE(mariadb-binlog mysqlbinlog.cc)
+TARGET_LINK_LIBRARIES(mariadb-binlog ${CLIENT_LIB} mysys_ssl)
-MYSQL_ADD_EXECUTABLE(mysqladmin mysqladmin.cc ../sql/password.c)
-TARGET_LINK_LIBRARIES(mysqladmin ${CLIENT_LIB} mysys_ssl)
+MYSQL_ADD_EXECUTABLE(mariadb-admin mysqladmin.cc ../sql/password.c)
+TARGET_LINK_LIBRARIES(mariadb-admin ${CLIENT_LIB} mysys_ssl)
-MYSQL_ADD_EXECUTABLE(mysqlslap mysqlslap.c)
+MYSQL_ADD_EXECUTABLE(mariadb-slap mysqlslap.c)
SET_SOURCE_FILES_PROPERTIES(mysqlslap.c PROPERTIES COMPILE_FLAGS "-DTHREADS")
-TARGET_LINK_LIBRARIES(mysqlslap ${CLIENT_LIB})
+TARGET_LINK_LIBRARIES(mariadb-slap ${CLIENT_LIB})
MYSQL_ADD_EXECUTABLE(mariadb-conv mariadb-conv.cc
${CMAKE_SOURCE_DIR}/sql/sql_string.cc)
@@ -95,11 +93,11 @@ ENDIF(WIN32)
ADD_EXECUTABLE(async_example async_example.c)
TARGET_LINK_LIBRARIES(async_example ${CLIENT_LIB})
-SET_TARGET_PROPERTIES (mysqlcheck mysqldump mysqlimport mysql_upgrade mysqlshow mysqlslap mysql_plugin async_example
+SET_TARGET_PROPERTIES (mariadb-check mariadb-dump mariadb-import mariadb-upgrade mariadb-show mariadb-slap mariadb-plugin async_example
PROPERTIES HAS_CXX TRUE)
-FOREACH(t mysql mysqltest mysqlcheck mysqldump mysqlimport mysql_upgrade mysqlshow mysql_plugin mysqlbinlog
- mysqladmin mysqlslap async_example)
+FOREACH(t mariadb mariadb-test mariadb-check mariadb-dump mariadb-import mariadb-upgrade mariadb-show mariadb-plugin mariadb-binlog
+ mariadb-admin mariadb-slap async_example)
ADD_DEPENDENCIES(${t} GenError ${CLIENT_LIB})
ENDFOREACH()
diff --git a/cmake/install_macros.cmake b/cmake/install_macros.cmake
index 2318e9d5dea..ac2e952c768 100644
--- a/cmake/install_macros.cmake
+++ b/cmake/install_macros.cmake
@@ -1,5 +1,5 @@
# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
-#
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
@@ -11,7 +11,7 @@
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
INCLUDE(CMakeParseArguments)
@@ -23,7 +23,7 @@ FUNCTION (INSTALL_DEBUG_SYMBOLS)
""
${ARGN}
)
-
+
IF(NOT ARG_COMPONENT)
SET(ARG_COMPONENT DebugBinaries)
ENDIF()
@@ -51,7 +51,7 @@ FUNCTION (INSTALL_DEBUG_SYMBOLS)
ENDFUNCTION()
# Installs manpage for given file (either script or executable)
-#
+#
FUNCTION(INSTALL_MANPAGE file)
IF(NOT UNIX)
RETURN()
@@ -64,7 +64,7 @@ FUNCTION(INSTALL_MANPAGE file)
${CMAKE_BINARY_DIR}/man/*${file}man.8*
)
IF(MYSQL_DOC_DIR)
- SET(GLOB_EXPR
+ SET(GLOB_EXPR
${MYSQL_DOC_DIR}/man/*${file}man.1*
${MYSQL_DOC_DIR}/man/*${file}man.8*
${MYSQL_DOC_DIR}/man/*${file}.1*
@@ -72,7 +72,7 @@ FUNCTION(INSTALL_MANPAGE file)
${GLOB_EXPR}
)
ENDIF()
-
+
FILE(GLOB_RECURSE MANPAGES ${GLOB_EXPR})
IF(MANPAGES)
@@ -96,7 +96,7 @@ FUNCTION(INSTALL_SCRIPT)
""
${ARGN}
)
-
+
SET(script ${ARG_UNPARSED_ARGUMENTS})
IF(NOT ARG_DESTINATION)
SET(ARG_DESTINATION ${INSTALL_BINDIR})
@@ -109,8 +109,6 @@ FUNCTION(INSTALL_SCRIPT)
INSTALL(PROGRAMS ${script} DESTINATION ${ARG_DESTINATION} COMPONENT ${COMP})
get_filename_component(dest "${script}" NAME)
- CREATE_MARIADB_SYMLINK(${dest} ${ARG_DESTINATION} ${COMP})
-
INSTALL_MANPAGE(${dest})
ENDFUNCTION()
@@ -148,7 +146,7 @@ FUNCTION(INSTALL_DOCUMENTATION)
ENDFUNCTION()
-# Install symbolic link to CMake target.
+# Install symbolic link to CMake target.
# the link is created in the current build directory
# and extension will be the same as for target file.
MACRO(INSTALL_SYMLINK linkname target destination component)
@@ -157,19 +155,19 @@ IF(UNIX)
ADD_CUSTOM_COMMAND(
OUTPUT ${output}
COMMAND ${CMAKE_COMMAND} ARGS -E remove -f ${linkname}
- COMMAND ${CMAKE_COMMAND} ARGS -E create_symlink
+ COMMAND ${CMAKE_COMMAND} ARGS -E create_symlink
$<TARGET_FILE_NAME:${target}>
${linkname}
DEPENDS ${target}
)
-
+
ADD_CUSTOM_TARGET(symlink_${linkname}
ALL
DEPENDS ${output})
SET_TARGET_PROPERTIES(symlink_${linkname} PROPERTIES CLEAN_DIRECT_OUTPUT 1)
IF(CMAKE_GENERATOR MATCHES "Xcode")
# For Xcode, replace project config with install config
- STRING(REPLACE "${CMAKE_CFG_INTDIR}"
+ STRING(REPLACE "${CMAKE_CFG_INTDIR}"
"\${CMAKE_INSTALL_CONFIG_NAME}" output ${output})
ENDIF()
INSTALL(FILES ${output} DESTINATION ${destination} COMPONENT ${component})
@@ -180,16 +178,16 @@ IF(WIN32)
OPTION(SIGNCODE "Sign executables and dlls with digital certificate" OFF)
MARK_AS_ADVANCED(SIGNCODE)
IF(SIGNCODE)
- SET(SIGNTOOL_PARAMETERS
+ SET(SIGNTOOL_PARAMETERS
/a /t http://timestamp.verisign.com/scripts/timstamp.dll
CACHE STRING "parameters for signtool (list)")
- FIND_PROGRAM(SIGNTOOL_EXECUTABLE signtool
+ FIND_PROGRAM(SIGNTOOL_EXECUTABLE signtool
PATHS "$ENV{ProgramFiles}/Microsoft SDKs/Windows/v7.0A/bin"
"$ENV{ProgramFiles}/Windows Kits/8.0/bin/x86"
"$ENV{ProgramFiles}/Windows Kits/8.1/bin/x86"
)
IF(NOT SIGNTOOL_EXECUTABLE)
- MESSAGE(FATAL_ERROR
+ MESSAGE(FATAL_ERROR
"signtool is not found. Signing executables not possible")
ENDIF()
MARK_AS_ADVANCED(SIGNTOOL_EXECUTABLE SIGNTOOL_PARAMETERS)
@@ -207,7 +205,7 @@ FUNCTION(SIGN_TARGET target)
ENDIF()
# Mark executable for signing by creating empty *.signme file
# The actual signing happens in preinstall step
- # (which traverses
+ # (which traverses
ADD_CUSTOM_COMMAND(TARGET ${target} POST_BUILD
COMMAND ${CMAKE_COMMAND} -E touch "$<TARGET_FILE:${target}>.signme"
)
@@ -229,7 +227,7 @@ FUNCTION(MYSQL_INSTALL_TARGETS)
ELSE()
MESSAGE(FATAL_ERROR "COMPONENT argument required")
ENDIF()
-
+
SET(TARGETS ${ARG_UNPARSED_ARGUMENTS})
IF(NOT TARGETS)
MESSAGE(FATAL_ERROR "Need target list for MYSQL_INSTALL_TARGETS")
@@ -254,13 +252,12 @@ FUNCTION(MYSQL_INSTALL_TARGETS)
ENDFUNCTION()
-# Optionally install mysqld/client/embedded from debug build run. outside of the current build dir
-# (unless multi-config generator is used like Visual Studio or Xcode).
+# Optionally install mysqld/client/embedded from debug build run. outside of the current build dir
+# (unless multi-config generator is used like Visual Studio or Xcode).
# For Makefile generators we default Debug build directory to ${buildroot}/../debug.
GET_FILENAME_COMPONENT(BINARY_PARENTDIR ${CMAKE_BINARY_DIR} PATH)
SET(DEBUGBUILDDIR "${BINARY_PARENTDIR}/debug" CACHE INTERNAL "Directory of debug build")
-
FUNCTION(INSTALL_MYSQL_TEST from to)
IF(INSTALL_MYSQLTESTDIR)
INSTALL(
diff --git a/cmake/mysql_add_executable.cmake b/cmake/mysql_add_executable.cmake
index eec370d51af..426bdaf1896 100644
--- a/cmake/mysql_add_executable.cmake
+++ b/cmake/mysql_add_executable.cmake
@@ -1,5 +1,5 @@
# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
-#
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
@@ -36,7 +36,7 @@ FUNCTION (MYSQL_ADD_EXECUTABLE)
)
LIST(GET ARG_UNPARSED_ARGUMENTS 0 target)
LIST(REMOVE_AT ARG_UNPARSED_ARGUMENTS 0)
-
+
SET(sources ${ARG_UNPARSED_ARGUMENTS})
ADD_VERSION_INFO(${target} EXECUTABLE sources)
@@ -62,6 +62,7 @@ FUNCTION (MYSQL_ADD_EXECUTABLE)
ELSE()
UNSET(EXCLUDE_FROM_ALL)
ENDIF()
+
ADD_EXECUTABLE(${target} ${WIN32} ${MACOSX_BUNDLE} ${EXCLUDE_FROM_ALL} ${sources})
# tell CPack where to install
@@ -79,16 +80,44 @@ FUNCTION (MYSQL_ADD_EXECUTABLE)
IF (COMP MATCHES ${SKIP_COMPONENTS})
RETURN()
ENDIF()
- IF (WITH_STRIPPED_CLIENT AND NOT target STREQUAL mysqld)
+
+ IF (WITH_STRIPPED_CLIENT AND NOT target STREQUAL mariadbd)
INSTALL(CODE "SET(CMAKE_INSTALL_DO_STRIP 1)" COMPONENT ${COMP})
SET(reset_strip ON)
ENDIF()
+
MYSQL_INSTALL_TARGETS(${target} DESTINATION ${ARG_DESTINATION} COMPONENT ${COMP})
+
IF (reset_strip)
INSTALL(CODE "SET(CMAKE_INSTALL_DO_STRIP 0)" COMPONENT ${COMP})
ENDIF()
ENDIF()
- # create mariadb named symlink
- CREATE_MARIADB_SYMLINK(${target} ${ARG_DESTINATION} ${COMP})
+ # create MySQL named "legacy links"
+ GET_SYMLINK(${target} link)
+ IF(link)
+ IF(UNIX)
+ ADD_CUSTOM_COMMAND(TARGET ${target} POST_BUILD
+ COMMAND ${CMAKE_COMMAND} -E create_symlink
+ ${target} ${link}
+ COMMENT "Creating ${link} link"
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR})
+ INSTALL(PROGRAMS
+ ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${link}
+ DESTINATION
+ ${ARG_DESTINATION}
+ COMPONENT ${COMP})
+ ELSE()
+ # Windows note:
+ # Here, hardlinks are used, because cmake can't install symlinks.
+ # In packages, there are won't be links, just copies.
+ SET(link ${link}.exe)
+ ADD_CUSTOM_COMMAND(TARGET ${target} POST_BUILD
+ COMMAND cmake -E remove -f ${link}
+ COMMAND mklink /H ${link} $<TARGET_FILE_NAME:${target}>
+ COMMENT "Creating ${link} link"
+ WORKING_DIRECTORY $<TARGET_FILE_DIR:${target}>)
+ INSTALL(PROGRAMS $<TARGET_FILE_DIR:${target}>/${link} DESTINATION ${ARG_DESTINATION} COMPONENT ${COMP})
+ ENDIF()
+ ENDIF()
ENDFUNCTION()
diff --git a/cmake/symlinks.cmake b/cmake/symlinks.cmake
index ec638bc82de..e040ff19f77 100644
--- a/cmake/symlinks.cmake
+++ b/cmake/symlinks.cmake
@@ -9,68 +9,46 @@ macro(REGISTER_SYMLINK from to)
endmacro()
# MariaDB names for executables
-REGISTER_SYMLINK("mysql" "mariadb")
-REGISTER_SYMLINK("mysqlaccess" "mariadb-access")
-REGISTER_SYMLINK("mysqladmin" "mariadb-admin")
-REGISTER_SYMLINK("mariabackup" "mariadb-backup")
-REGISTER_SYMLINK("mysqlbinlog" "mariadb-binlog")
-REGISTER_SYMLINK("mysqlcheck" "mariadb-check")
-REGISTER_SYMLINK("mysql_client_test_embedded" "mariadb-client-test-embedded")
-REGISTER_SYMLINK("mysql_client_test" "mariadb-client-test")
-REGISTER_SYMLINK("mariadb_config" "mariadb-config")
-REGISTER_SYMLINK("mysql_convert_table_format" "mariadb-convert-table-format")
-REGISTER_SYMLINK("mysqldump" "mariadb-dump")
-REGISTER_SYMLINK("mysqldumpslow" "mariadb-dumpslow")
-REGISTER_SYMLINK("mysql_embedded" "mariadb-embedded")
-REGISTER_SYMLINK("mysql_find_rows" "mariadb-find-rows")
-REGISTER_SYMLINK("mysql_fix_extensions" "mariadb-fix-extensions")
-REGISTER_SYMLINK("mysqlhotcopy" "mariadb-hotcopy")
-REGISTER_SYMLINK("mysqlimport" "mariadb-import")
-REGISTER_SYMLINK("mysql_install_db" "mariadb-install-db")
-REGISTER_SYMLINK("mysql_ldb" "mariadb-ldb")
-REGISTER_SYMLINK("mysql_plugin" "mariadb-plugin")
-REGISTER_SYMLINK("mysql_secure_installation" "mariadb-secure-installation")
-REGISTER_SYMLINK("mysql_setpermission" "mariadb-setpermission")
-REGISTER_SYMLINK("mysqlshow" "mariadb-show")
-REGISTER_SYMLINK("mysqlslap" "mariadb-slap")
-REGISTER_SYMLINK("mysqltest" "mariadb-test")
-REGISTER_SYMLINK("mysqltest_embedded" "mariadb-test-embedded")
-REGISTER_SYMLINK("mysql_tzinfo_to_sql" "mariadb-tzinfo-to-sql")
-REGISTER_SYMLINK("mysql_upgrade" "mariadb-upgrade")
-REGISTER_SYMLINK("mysql_upgrade_service" "mariadb-upgrade-service")
-REGISTER_SYMLINK("mysql_upgrade_wizard" "mariadb-upgrade-wizard")
-REGISTER_SYMLINK("mysql_waitpid" "mariadb-waitpid")
-REGISTER_SYMLINK("mysqld" "mariadbd")
-REGISTER_SYMLINK("mysqld_multi" "mariadbd-multi")
-REGISTER_SYMLINK("mysqld_safe" "mariadbd-safe")
-REGISTER_SYMLINK("mysqld_safe_helper" "mariadbd-safe-helper")
-
-# Add MariaDB symlinks
-macro(CREATE_MARIADB_SYMLINK src dir comp)
- # Find the MariaDB name for executable
- list(FIND MARIADB_SYMLINK_FROMS ${src} _index)
-
+REGISTER_SYMLINK("mariadb" "mysql")
+REGISTER_SYMLINK("mariadb-access" "mysqlaccess")
+REGISTER_SYMLINK("mariadb-admin" "mysqladmin")
+REGISTER_SYMLINK("mariadb-backup" "mariabackup")
+REGISTER_SYMLINK("mariadb-binlog" "mysqlbinlog")
+REGISTER_SYMLINK("mariadb-check" "mysqlcheck")
+REGISTER_SYMLINK("mariadb-client-test-embedded" "mysql_client_test_embedded")
+REGISTER_SYMLINK("mariadb-client-test" "mysql_client_test")
+REGISTER_SYMLINK("mariadb-config" "mariadb_config")
+REGISTER_SYMLINK("mariadb-convert-table-format" "mysql_convert_table_format")
+REGISTER_SYMLINK("mariadb-dump" "mysqldump")
+REGISTER_SYMLINK("mariadb-dumpslow" "mysqldumpslow")
+REGISTER_SYMLINK("mariadb-embedded" "mysql_embedded")
+REGISTER_SYMLINK("mariadb-find-rows" "mysql_find_rows")
+REGISTER_SYMLINK("mariadb-fix-extensions" "mysql_fix_extensions")
+REGISTER_SYMLINK("mariadb-hotcopy" "mysqlhotcopy")
+REGISTER_SYMLINK("mariadb-import" "mysqlimport")
+REGISTER_SYMLINK("mariadb-install-db" "mysql_install_db")
+REGISTER_SYMLINK("mariadb-ldb" "mysql_ldb")
+REGISTER_SYMLINK("mariadb-plugin" "mysql_plugin")
+REGISTER_SYMLINK("mariadb-secure-installation" "mysql_secure_installation")
+REGISTER_SYMLINK("mariadb-setpermission" "mysql_setpermission")
+REGISTER_SYMLINK("mariadb-show" "mysqlshow")
+REGISTER_SYMLINK("mariadb-slap" "mysqlslap")
+REGISTER_SYMLINK("mariadb-test" "mysqltest")
+REGISTER_SYMLINK("mariadb-test-embedded" "mysqltest_embedded")
+REGISTER_SYMLINK("mariadb-tzinfo-to-sql" "mysql_tzinfo_to_sql")
+REGISTER_SYMLINK("mariadb-upgrade" "mysql_upgrade")
+REGISTER_SYMLINK("mariadb-upgrade-service" "mysql_upgrade_service")
+REGISTER_SYMLINK("mariadb-upgrade-wizard" "mysql_upgrade_wizard")
+REGISTER_SYMLINK("mariadb-waitpid" "mysql_waitpid")
+REGISTER_SYMLINK("mariadbd" "mysqld")
+REGISTER_SYMLINK("mariadbd-multi" "mysqld_multi")
+REGISTER_SYMLINK("mariadbd-safe" "mysqld_safe")
+REGISTER_SYMLINK("mariadbd-safe-helper" "mysqld_safe_helper")
+
+MACRO(GET_SYMLINK name out)
+ set(${out})
+ list(FIND MARIADB_SYMLINK_FROMS ${name} _index)
if (${_index} GREATER -1)
- list(GET MARIADB_SYMLINK_TOS ${_index} mariadbname)
- endif()
-
- if (mariadbname)
- CREATE_MARIADB_SYMLINK_IN_DIR(${src} ${mariadbname} ${dir} ${comp})
- endif()
-endmacro(CREATE_MARIADB_SYMLINK)
-
-# Add MariaDB symlinks in directory
-macro(CREATE_MARIADB_SYMLINK_IN_DIR src dest dir comp)
- if(UNIX)
- add_custom_target(
- SYM_${dest} ALL
- DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${dest}
- )
-
- add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${dest} POST_BUILD
- COMMAND ${CMAKE_COMMAND} -E create_symlink ${src} ${dest}
- COMMENT "mklink ${src} -> ${dest}")
-
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${dest} DESTINATION ${dir} COMPONENT ${comp})
+ list(GET MARIADB_SYMLINK_TOS ${_index} ${out})
endif()
-endmacro(CREATE_MARIADB_SYMLINK_IN_DIR)
+ENDMACRO()
diff --git a/debian/control b/debian/control
index 198471c31e1..a63881f61cf 100644
--- a/debian/control
+++ b/debian/control
@@ -244,6 +244,7 @@ Conflicts: mariadb-client-10.0,
mariadb-client-10.2,
mariadb-client-10.3,
mariadb-client-10.4,
+ mariadb-client-10.5 (<< ${source:Version}),
mariadb-client-5.1,
mariadb-client-5.2,
mariadb-client-5.3,
@@ -271,6 +272,7 @@ Replaces: mariadb-client-10.0,
mariadb-client-10.2,
mariadb-client-10.3,
mariadb-client-10.4,
+ mariadb-client-10.5 (<< ${source:Version}),
mariadb-client-5.1,
mariadb-client-5.2,
mariadb-client-5.3,
@@ -322,6 +324,7 @@ Conflicts: mariadb-client (<< ${source:Version}),
mariadb-client-10.2,
mariadb-client-10.3,
mariadb-client-10.4,
+ mariadb-client-10.5 (<< ${source:Version}),
mariadb-client-5.1,
mariadb-client-5.2,
mariadb-client-5.3,
@@ -339,10 +342,12 @@ Replaces: mariadb-client (<< ${source:Version}),
mariadb-client-10.2,
mariadb-client-10.3,
mariadb-client-10.4,
+ mariadb-client-10.5 (<< ${source:Version}),
mariadb-client-5.1,
mariadb-client-5.2,
mariadb-client-5.3,
mariadb-client-5.5,
+ mariadb-server-10.5 (<< ${source:Version}),
mysql-client (<< 5.0.51),
mysql-client-5.0,
mysql-client-5.1,
@@ -396,6 +401,7 @@ Breaks: mariadb-client-10.0,
mariadb-client-10.2,
mariadb-client-10.3,
mariadb-client-10.4,
+ mariadb-client-10.5 (<< ${source:Version}),
mariadb-server-10.3,
mariadb-server-10.4,
mariadb-server-10.5 (<< ${source:Version})
@@ -404,6 +410,7 @@ Replaces: mariadb-client-10.0,
mariadb-client-10.2,
mariadb-client-10.3,
mariadb-client-10.4,
+ mariadb-client-10.5 (<< ${source:Version}),
mariadb-server-10.3,
mariadb-server-10.4,
mariadb-server-10.5 (<< ${source:Version}),
@@ -487,6 +494,7 @@ Conflicts: mariadb-server (<< ${source:Version}),
virtual-mysql-server
Replaces: libmariadbclient-dev (<< 5.5.0),
libmariadbclient16 (<< 5.3.4),
+ mariadb-client-10.5 (<< ${source:Version}),
mariadb-server (<< ${source:Version}),
mariadb-server-10.0,
mariadb-server-10.1,
diff --git a/debian/libmariadb-dev.install b/debian/libmariadb-dev.install
index 0625dec7a9e..4d6d74643fb 100644
--- a/debian/libmariadb-dev.install
+++ b/debian/libmariadb-dev.install
@@ -1,4 +1,4 @@
-usr/bin/mariadb_config
+usr/bin/mariadb-config
usr/include/mariadb
usr/lib/*/libmariadb.so
usr/lib/*/libmariadbclient.a
@@ -7,3 +7,4 @@ usr/lib/*/libmysqlservices.a
usr/lib/*/pkgconfig/mariadb.pc
usr/share/aclocal/mysql.m4
usr/share/man/man1/mysql_config.1
+usr/share/man/man1/mariadb-config.1 \ No newline at end of file
diff --git a/debian/libmariadb-dev.links b/debian/libmariadb-dev.links
index 6a7bf707ca7..80ae8c1e700 100644
--- a/debian/libmariadb-dev.links
+++ b/debian/libmariadb-dev.links
@@ -1 +1 @@
-usr/share/man/man1/mysql_config.1.gz usr/share/man/man1/mariadb_config.1.gz
+usr/bin/mariadb-config usr/bin/mysql_config \ No newline at end of file
diff --git a/debian/mariadb-backup.install b/debian/mariadb-backup.install
index 2bc61c12079..b332b8724d5 100644
--- a/debian/mariadb-backup.install
+++ b/debian/mariadb-backup.install
@@ -1,4 +1,4 @@
-usr/bin/mariabackup
+usr/bin/mariadb-backup
usr/bin/mbstream
usr/share/man/man1/mariabackup.1
usr/share/man/man1/mariadb-backup.1
diff --git a/debian/mariadb-backup.links b/debian/mariadb-backup.links
index 7980ef5e54d..924b476393b 100644
--- a/debian/mariadb-backup.links
+++ b/debian/mariadb-backup.links
@@ -1 +1 @@
-usr/bin/mariabackup usr/bin/mariadb-backup
+usr/bin/mariadb-backup usr/bin/mariabackup
diff --git a/debian/mariadb-client-10.5.install b/debian/mariadb-client-10.5.install
index 67c0c2619c3..eba63ad76cd 100644
--- a/debian/mariadb-client-10.5.install
+++ b/debian/mariadb-client-10.5.install
@@ -1,27 +1,25 @@
debian/additions/innotop/innotop usr/bin/
debian/additions/mysqlreport usr/bin/
+usr/bin/mariadb-access
+usr/bin/mariadb-admin
usr/bin/mariadb-conv
-usr/bin/mysql_find_rows
-usr/bin/mysql_fix_extensions
-usr/bin/mysql_waitpid
-usr/bin/mysqlaccess
-usr/bin/mysqladmin
-usr/bin/mysqldump
-usr/bin/mysqldumpslow
-usr/bin/mysqlimport
-usr/bin/mysqlshow
-usr/bin/mysqlslap
+usr/bin/mariadb-dump
+usr/bin/mariadb-dumpslow
+usr/bin/mariadb-find-rows
+usr/bin/mariadb-fix-extensions
+usr/bin/mariadb-import
+usr/bin/mariadb-show
+usr/bin/mariadb-slap
+usr/bin/mariadb-waitpid
usr/bin/mytop
usr/share/man/man1/mariadb-access.1
usr/share/man/man1/mariadb-admin.1
-usr/share/man/man1/mariadb-binlog.1
-usr/share/man/man1/mariadb-conv.1
usr/share/man/man1/mariadb-dump.1
usr/share/man/man1/mariadb-dumpslow.1
usr/share/man/man1/mariadb-find-rows.1
usr/share/man/man1/mariadb-fix-extensions.1
usr/share/man/man1/mariadb-import.1
-usr/share/man/man1/mariadb-plugin.1
+usr/share/man/man1/mariadb-show.1
usr/share/man/man1/mariadb-slap.1
usr/share/man/man1/mariadb-waitpid.1
usr/share/man/man1/mysql_find_rows.1
diff --git a/debian/mariadb-client-10.5.links b/debian/mariadb-client-10.5.links
index 5d966575b76..85b2c73a30b 100644
--- a/debian/mariadb-client-10.5.links
+++ b/debian/mariadb-client-10.5.links
@@ -1,25 +1,23 @@
-usr/bin/mysql_find_rows usr/bin/mariadb-find-rows
-usr/bin/mysql_fix_extensions usr/bin/mariadb-fix-extensions
-usr/bin/mysql_plugin usr/bin/mariadb-plugin
-usr/bin/mysql_waitpid usr/bin/mariadb-waitpid
-usr/bin/mysqlaccess usr/bin/mariadb-access
-usr/bin/mysqladmin usr/bin/mariadb-admin
-usr/bin/mysqlbinlog usr/bin/mariadb-binlog
-usr/bin/mysqlcheck usr/bin/mariadb-analyze
-usr/bin/mysqlcheck usr/bin/mariadb-optimize
-usr/bin/mysqlcheck usr/bin/mariadb-repair
-usr/bin/mysqlcheck usr/bin/mysqlanalyze
-usr/bin/mysqlcheck usr/bin/mysqloptimize
-usr/bin/mysqlcheck usr/bin/mysqlrepair
-usr/bin/mysqldump usr/bin/mariadb-dump
-usr/bin/mysqldumpslow usr/bin/mariadb-dumpslow
-usr/bin/mysqlimport usr/bin/mariadb-import
-usr/bin/mysqlreport usr/bin/mariadb-report
-usr/bin/mysqlslap usr/bin/mariadb-slap
-usr/share/man/man1/mysqlcheck.1.gz usr/share/man/man1/mariadb-analyze.1.gz
-usr/share/man/man1/mysqlcheck.1.gz usr/share/man/man1/mariadb-optimize.1.gz
-usr/share/man/man1/mysqlcheck.1.gz usr/share/man/man1/mariadb-repair.1.gz
-usr/share/man/man1/mysqlcheck.1.gz usr/share/man/man1/mysqlanalyze.1.gz
-usr/share/man/man1/mysqlcheck.1.gz usr/share/man/man1/mysqloptimize.1.gz
-usr/share/man/man1/mysqlcheck.1.gz usr/share/man/man1/mysqlrepair.1.gz
-usr/share/man/man1/mysqlreport.1.gz usr/share/man/man1/mariadb-report.1.gz
+usr/bin/mariadb-access usr/bin/mysqlaccess
+usr/bin/mariadb-admin usr/bin/mysqladmin
+usr/bin/mariadb-dump usr/bin/mysqldump
+usr/bin/mariadb-dumpslow usr/bin/mysqldumpslow
+usr/bin/mariadb-find-rows usr/bin/mysql_find_rows
+usr/bin/mariadb-fix-extensions usr/bin/mysql_fix_extensions
+usr/bin/mariadb-import usr/bin/mysqlimport
+usr/bin/mariadb-report usr/bin/mysqlreport
+usr/bin/mariadb-show usr/bin/mysqlshow
+usr/bin/mariadb-slap usr/bin/mysqlslap
+usr/bin/mariadb-waitpid usr/bin/mysql_waitpid
+usr/bin/mariadb-check usr/bin/mariadb-analyze
+usr/bin/mariadb-check usr/bin/mariadb-optimize
+usr/bin/mariadb-check usr/bin/mariadb-repair
+usr/bin/mariadb-check usr/bin/mysqlanalyze
+usr/bin/mariadb-check usr/bin/mysqloptimize
+usr/bin/mariadb-check usr/bin/mysqlrepair
+usr/share/man/man1/mariadb-check.1 usr/share/man/man1/mariadb-analyze.1
+usr/share/man/man1/mariadb-check.1 usr/share/man/man1/mariadb-optimize.1
+usr/share/man/man1/mariadb-check.1 usr/share/man/man1/mariadb-repair.1
+usr/share/man/man1/mariadb-check.1 usr/share/man/man1/mysqlanalyze.1
+usr/share/man/man1/mariadb-check.1 usr/share/man/man1/mysqloptimize.1
+usr/share/man/man1/mariadb-check.1 usr/share/man/man1/mysqlrepair.1
diff --git a/debian/mariadb-client-core-10.5.install b/debian/mariadb-client-core-10.5.install
index 4cc61674770..224e324b704 100644
--- a/debian/mariadb-client-core-10.5.install
+++ b/debian/mariadb-client-core-10.5.install
@@ -1,5 +1,5 @@
-usr/bin/mysql
-usr/bin/mysqlcheck
+usr/bin/mariadb
+usr/bin/mariadb-check
usr/share/man/man1/mariadb-check.1
usr/share/man/man1/mariadb.1
usr/share/man/man1/mysql.1
diff --git a/debian/mariadb-client-core-10.5.links b/debian/mariadb-client-core-10.5.links
index d889e7164b0..343cf6ff78b 100644
--- a/debian/mariadb-client-core-10.5.links
+++ b/debian/mariadb-client-core-10.5.links
@@ -1,2 +1,2 @@
-usr/bin/mysql usr/bin/mariadb
-usr/bin/mysqlcheck usr/bin/mariadb-check
+usr/bin/mariadb usr/bin/mysql
+usr/bin/mariadb-check usr/bin/mysqlcheck
diff --git a/debian/mariadb-plugin-rocksdb.install b/debian/mariadb-plugin-rocksdb.install
index 80987612c30..0ac42fed69a 100644
--- a/debian/mariadb-plugin-rocksdb.install
+++ b/debian/mariadb-plugin-rocksdb.install
@@ -1,6 +1,7 @@
etc/mysql/conf.d/rocksdb.cnf etc/mysql/mariadb.conf.d
+usr/bin/mariadb-ldb
usr/bin/myrocks_hotbackup
-usr/bin/mysql_ldb
+usr/bin/sst_dump
usr/lib/mysql/plugin/ha_rocksdb.so
usr/share/man/man1/mariadb-ldb.1
usr/share/man/man1/myrocks_hotbackup.1
diff --git a/debian/mariadb-plugin-rocksdb.links b/debian/mariadb-plugin-rocksdb.links
index 78e47d43359..d24682a5a66 100644
--- a/debian/mariadb-plugin-rocksdb.links
+++ b/debian/mariadb-plugin-rocksdb.links
@@ -1 +1 @@
-usr/bin/mysql_ldb usr/bin/mariadb-ldb
+usr/bin/mariadb-ldb usr/bin/mysql_ldb
diff --git a/debian/mariadb-server-10.5.install b/debian/mariadb-server-10.5.install
index 4a860ff57df..bd550987197 100644
--- a/debian/mariadb-server-10.5.install
+++ b/debian/mariadb-server-10.5.install
@@ -14,22 +14,22 @@ usr/bin/aria_pack
usr/bin/aria_read_log
usr/bin/galera_new_cluster
usr/bin/galera_recovery
+usr/bin/mariadb-binlog
+usr/bin/mariadb-convert-table-format
+usr/bin/mariadb-hotcopy
+usr/bin/mariadb-plugin
+usr/bin/mariadb-secure-installation
usr/bin/mariadb-service-convert
+usr/bin/mariadb-setpermission
+usr/bin/mariadb-tzinfo-to-sql
+usr/bin/mariadbd-multi
+usr/bin/mariadbd-safe
+usr/bin/mariadbd-safe-helper
usr/bin/msql2mysql
usr/bin/myisam_ftdump
usr/bin/myisamchk
usr/bin/myisamlog
usr/bin/myisampack
-usr/bin/mysql_convert_table_format
-usr/bin/mysql_plugin
-usr/bin/mysql_secure_installation
-usr/bin/mysql_setpermission
-usr/bin/mysql_tzinfo_to_sql
-usr/bin/mysqlbinlog
-usr/bin/mysqld_multi
-usr/bin/mysqld_safe
-usr/bin/mysqld_safe_helper
-usr/bin/mysqlhotcopy
usr/bin/perror
usr/bin/replace
usr/bin/resolve_stack_dump
@@ -67,12 +67,13 @@ usr/share/man/man1/aria_pack.1
usr/share/man/man1/aria_read_log.1
usr/share/man/man1/galera_new_cluster.1
usr/share/man/man1/galera_recovery.1
+usr/share/man/man1/mariadb-binlog.1
usr/share/man/man1/mariadb-convert-table-format.1
usr/share/man/man1/mariadb-hotcopy.1
+usr/share/man/man1/mariadb-plugin.1
usr/share/man/man1/mariadb-secure-installation.1
usr/share/man/man1/mariadb-service-convert.1
usr/share/man/man1/mariadb-setpermission.1
-usr/share/man/man1/mariadb-show.1
usr/share/man/man1/mariadb-tzinfo-to-sql.1
usr/share/man/man1/mariadbd-multi.1
usr/share/man/man1/mariadbd-safe-helper.1
diff --git a/debian/mariadb-server-10.5.links b/debian/mariadb-server-10.5.links
index f2d97460371..9cc3a436ba8 100644
--- a/debian/mariadb-server-10.5.links
+++ b/debian/mariadb-server-10.5.links
@@ -1,9 +1,10 @@
-usr/bin/mysql_convert_table_format usr/bin/mariadb-convert-table-format
-usr/bin/mysql_secure_installation usr/bin/mariadb-secure-installation
-usr/bin/mysql_setpermission usr/bin/mariadb-setpermission
-usr/bin/mysql_tzinfo_to_sql usr/bin/mariadb-tzinfo-to-sql
-usr/bin/mysqld_multi usr/bin/mariadbd-multi
-usr/bin/mysqld_safe usr/bin/mariadbd-safe
-usr/bin/mysqld_safe_helper usr/bin/mariadbd-safe-helper
-usr/bin/mysqlhotcopy usr/bin/mariadb-hotcopy
-usr/bin/mysqlshow usr/bin/mariadb-show
+usr/bin/mariadb-binlog usr/bin/mysqlbinlog
+usr/bin/mariadb-convert-table-format usr/bin/mysql_convert_table_format
+usr/bin/mariadb-hotcopy usr/bin/mysqlhotcopy
+usr/bin/mariadb-plugin usr/bin/mysql_plugin
+usr/bin/mariadb-secure-installation usr/bin/mysql_secure_installation
+usr/bin/mariadb-setpermission usr/bin/mysql_setpermission
+usr/bin/mariadb-tzinfo-to-sql usr/bin/mysql_tzinfo_to_sql
+usr/bin/mariadbd-multi usr/bin/mysqld_multi
+usr/bin/mariadbd-safe usr/bin/mysqld_safe
+usr/bin/mariadbd-safe-helper usr/bin/mysqld_safe_helper
diff --git a/debian/mariadb-server-core-10.5.install b/debian/mariadb-server-core-10.5.install
index a8acdfa6300..133aad20b74 100644
--- a/debian/mariadb-server-core-10.5.install
+++ b/debian/mariadb-server-core-10.5.install
@@ -1,15 +1,15 @@
usr/bin/innochecksum
+usr/bin/mariadb-install-db
+usr/bin/mariadb-upgrade
usr/bin/my_print_defaults
-usr/bin/mysql_install_db
-usr/bin/mysql_upgrade
-usr/sbin/mysqld
+usr/sbin/mariadbd
usr/share/man/man1/innochecksum.1
usr/share/man/man1/mariadb-install-db.1
usr/share/man/man1/mariadb-upgrade.1
+usr/share/man/man8/mariadbd.8
usr/share/man/man1/my_print_defaults.1
usr/share/man/man1/mysql_install_db.1
usr/share/man/man1/mysql_upgrade.1
-usr/share/man/man8/mariadbd.8
usr/share/man/man8/mysqld.8
usr/share/mysql/charsets
usr/share/mysql/czech
diff --git a/debian/mariadb-server-core-10.5.links b/debian/mariadb-server-core-10.5.links
index b7873f93141..c2be98f38fb 100644
--- a/debian/mariadb-server-core-10.5.links
+++ b/debian/mariadb-server-core-10.5.links
@@ -1,3 +1,3 @@
-usr/bin/mysql_install_db usr/bin/mariadb-install-db
-usr/bin/mysql_upgrade usr/bin/mariadb-upgrade
-usr/sbin/mysqld usr/sbin/mariadbd
+usr/bin/mariadb-install-db usr/bin/mysql_install_db
+usr/bin/mariadb-upgrade usr/bin/mysql_upgrade
+usr/sbin/mariadbd usr/sbin/mysqld
diff --git a/debian/mariadb-test.install b/debian/mariadb-test.install
index fc7a707c007..7a0ed767bad 100644
--- a/debian/mariadb-test.install
+++ b/debian/mariadb-test.install
@@ -1,7 +1,7 @@
-usr/bin/mysql_client_test
-usr/bin/mysql_client_test_embedded
-usr/bin/mysqltest
-usr/bin/mysqltest_embedded
+usr/bin/mariadb-client-test
+usr/bin/mariadb-client-test-embedded
+usr/bin/mariadb-test
+usr/bin/mariadb-test-embedded
usr/lib/mysql/plugin/adt_null.so
usr/lib/mysql/plugin/auth_0x0100.so
usr/lib/mysql/plugin/auth_test_plugin.so
@@ -17,10 +17,10 @@ usr/lib/mysql/plugin/qa_auth_client.so
usr/lib/mysql/plugin/qa_auth_interface.so
usr/lib/mysql/plugin/qa_auth_server.so
usr/lib/mysql/plugin/test_versioning.so
-usr/share/man/man1/mariadb-client-test-embedded.1
usr/share/man/man1/mariadb-client-test.1
-usr/share/man/man1/mariadb-test-embedded.1
+usr/share/man/man1/mariadb-client-test-embedded.1
usr/share/man/man1/mariadb-test.1
+usr/share/man/man1/mariadb-test-embedded.1
usr/share/man/man1/mysql-stress-test.pl.1
usr/share/man/man1/mysql-test-run.pl.1
usr/share/man/man1/mysql_client_test.1
diff --git a/debian/mariadb-test.links b/debian/mariadb-test.links
index 504e0a0b557..718a5355474 100644
--- a/debian/mariadb-test.links
+++ b/debian/mariadb-test.links
@@ -1,6 +1,6 @@
-usr/bin/mysql_client_test usr/bin/mariadb-client-test
-usr/bin/mysql_client_test_embedded usr/bin/mariadb-client-test-embedded
-usr/bin/mysqltest usr/bin/mariadb-test
-usr/bin/mysqltest_embedded usr/bin/mariadb-test-embedded
+usr/bin/mariadb-client-test usr/bin/mysql_client_test
+usr/bin/mariadb-client-test-embedded usr/bin/mysql_client_test_embedded
+usr/bin/mariadb-test usr/bin/mysqltest
+usr/bin/mariadb-test-embedded usr/bin/mysqltest_embedded
usr/share/mysql/mysql-test/mysql-test-run.pl usr/share/mysql/mysql-test/mtr
usr/share/mysql/mysql-test/mysql-test-run.pl usr/share/mysql/mysql-test/mysql-test-run
diff --git a/extra/CMakeLists.txt b/extra/CMakeLists.txt
index 2fc56ce5e98..b7b1d215711 100644
--- a/extra/CMakeLists.txt
+++ b/extra/CMakeLists.txt
@@ -1,14 +1,14 @@
# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
-#
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
-#
+#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
-#
+#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
@@ -30,9 +30,9 @@ ENDIF()
# to mysqld_error.h using cmake -E copy_if_different
ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_BINARY_DIR}/include/mysqld_error.h.tmp
COMMAND comp_err
- --charset=${PROJECT_SOURCE_DIR}/sql/share/charsets
+ --charset=${PROJECT_SOURCE_DIR}/sql/share/charsets
--out-dir=${CMAKE_BINARY_DIR}/sql/share/
- --header_file=${CMAKE_BINARY_DIR}/include/mysqld_error.h.tmp
+ --header_file=${CMAKE_BINARY_DIR}/include/mysqld_error.h.tmp
--name_file=${CMAKE_BINARY_DIR}/include/mysqld_ername.h.tmp
--state_file=${CMAKE_BINARY_DIR}/include/sql_state.h.tmp
--in_file=${PROJECT_SOURCE_DIR}/sql/share/errmsg-utf8.txt
@@ -43,7 +43,7 @@ ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_BINARY_DIR}/include/mysqld_error.h.tmp
ADD_CUSTOM_TARGET(GenError
ALL
- DEPENDS
+ DEPENDS
${CMAKE_BINARY_DIR}/include/mysqld_error.h.tmp)
MYSQL_ADD_EXECUTABLE(my_print_defaults my_print_defaults.c)
@@ -106,9 +106,9 @@ IF(UNIX)
MYSQL_ADD_EXECUTABLE(resolve_stack_dump resolve_stack_dump.c)
TARGET_LINK_LIBRARIES(resolve_stack_dump mysys)
- MYSQL_ADD_EXECUTABLE(mysql_waitpid mysql_waitpid.c COMPONENT Client)
- TARGET_LINK_LIBRARIES(mysql_waitpid mysys)
+ MYSQL_ADD_EXECUTABLE(mariadb-waitpid mysql_waitpid.c COMPONENT Client)
+ TARGET_LINK_LIBRARIES(mariadb-waitpid mysys)
- MYSQL_ADD_EXECUTABLE(mysqld_safe_helper mysqld_safe_helper.c COMPONENT Server)
- TARGET_LINK_LIBRARIES(mysqld_safe_helper mysys)
+ MYSQL_ADD_EXECUTABLE(mariadbd-safe-helper mysqld_safe_helper.c COMPONENT Server)
+ TARGET_LINK_LIBRARIES(mariadbd-safe-helper mysys)
ENDIF()
diff --git a/extra/mariabackup/CMakeLists.txt b/extra/mariabackup/CMakeLists.txt
index b703c5c4344..ad36d2fa6a6 100644
--- a/extra/mariabackup/CMakeLists.txt
+++ b/extra/mariabackup/CMakeLists.txt
@@ -55,7 +55,7 @@ ENDIF()
ADD_DEFINITIONS(-DPCRE_STATIC=1)
ADD_DEFINITIONS(${SSL_DEFINES})
-MYSQL_ADD_EXECUTABLE(mariabackup
+MYSQL_ADD_EXECUTABLE(mariadb-backup
xtrabackup.cc
innobackupex.cc
changed_page_bitmap.cc
@@ -82,17 +82,13 @@ MYSQL_ADD_EXECUTABLE(mariabackup
COMPONENT backup
)
-
-
-
# Export all symbols on Unix, for better crash callstacks
-SET_TARGET_PROPERTIES(mariabackup PROPERTIES ENABLE_EXPORTS TRUE)
+SET_TARGET_PROPERTIES(mariadb-backup PROPERTIES ENABLE_EXPORTS TRUE)
ADD_SUBDIRECTORY(crc)
-
-TARGET_LINK_LIBRARIES(mariabackup sql sql_builtins crc)
+TARGET_LINK_LIBRARIES(mariadb-backup sql sql_builtins crc)
IF(NOT HAVE_SYSTEM_REGEX)
- TARGET_LINK_LIBRARIES(mariabackup pcre2-posix)
+ TARGET_LINK_LIBRARIES(mariadb-backup pcre2-posix)
ENDIF()
diff --git a/libmysqld/examples/CMakeLists.txt b/libmysqld/examples/CMakeLists.txt
index 5bd861c2f63..2a10def8e2e 100644
--- a/libmysqld/examples/CMakeLists.txt
+++ b/libmysqld/examples/CMakeLists.txt
@@ -1,14 +1,14 @@
# Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
-#
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
-#
+#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
-#
+#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
@@ -24,40 +24,40 @@ INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include
ADD_DEFINITIONS(-DEMBEDDED_LIBRARY -UMYSQL_CLIENT)
-MYSQL_ADD_EXECUTABLE(mysql_embedded ../../client/completion_hash.cc
+MYSQL_ADD_EXECUTABLE(mariadb-embedded ../../client/completion_hash.cc
../../client/mysql.cc ../../client/readline.cc
COMPONENT Client)
-TARGET_LINK_LIBRARIES(mysql_embedded mysqlserver)
+TARGET_LINK_LIBRARIES(mariadb-embedded mysqlserver)
IF(UNIX)
- TARGET_LINK_LIBRARIES(mysql_embedded ${MY_READLINE_LIBRARY})
+ TARGET_LINK_LIBRARIES(mariadb-embedded ${MY_READLINE_LIBRARY})
ENDIF(UNIX)
-MYSQL_ADD_EXECUTABLE(mysqltest_embedded ../../client/mysqltest.cc
+MYSQL_ADD_EXECUTABLE(mariadb-test-embedded ../../client/mysqltest.cc
COMPONENT Test)
-TARGET_LINK_LIBRARIES(mysqltest_embedded mysqlserver pcre2-posix pcre2-8)
+TARGET_LINK_LIBRARIES(mariadb-test-embedded mysqlserver pcre2-posix pcre2-8)
SET_SOURCE_FILES_PROPERTIES(../../client/mysqltest.cc PROPERTIES COMPILE_FLAGS "${PCRE2_DEBIAN_HACK}")
IF(CMAKE_GENERATOR MATCHES "Xcode")
# It does not seem possible to tell Xcode the resulting target might need
# to be linked with C++ runtime. The project needs to have at least one C++
# file. Add a dummy one.
- ADD_CUSTOM_COMMAND(OUTPUT
+ ADD_CUSTOM_COMMAND(OUTPUT
${CMAKE_CURRENT_BINARY_DIR}/mysql_client_test_embedded_dummy.cc
- COMMAND ${CMAKE_COMMAND} -E touch
+ COMMAND ${CMAKE_COMMAND} -E touch
${CMAKE_CURRENT_BINARY_DIR}/mysql_client_test_embedded_dummy.cc
)
- MYSQL_ADD_EXECUTABLE(mysql_client_test_embedded
+ MYSQL_ADD_EXECUTABLE(mariadb-client-test-embedded
${CMAKE_CURRENT_BINARY_DIR}/mysql_client_test_embedded_dummy.cc
../../tests/mysql_client_test.c)
ELSE()
- MYSQL_ADD_EXECUTABLE(mysql_client_test_embedded ../../tests/mysql_client_test.c
+ MYSQL_ADD_EXECUTABLE(mariadb-client-test-embedded ../../tests/mysql_client_test.c
COMPONENT Test)
- SET_TARGET_PROPERTIES(mysql_client_test_embedded PROPERTIES HAS_CXX TRUE)
+ SET_TARGET_PROPERTIES(mariadb-client-test-embedded PROPERTIES HAS_CXX TRUE)
ENDIF()
-TARGET_LINK_LIBRARIES(mysql_client_test_embedded mysqlserver)
+TARGET_LINK_LIBRARIES(mariadb-client-test-embedded mysqlserver)
IF(UNIX)
-SET_TARGET_PROPERTIES(mysql_embedded PROPERTIES ENABLE_EXPORTS TRUE)
-SET_TARGET_PROPERTIES(mysqltest_embedded PROPERTIES ENABLE_EXPORTS TRUE)
-SET_TARGET_PROPERTIES(mysql_client_test_embedded PROPERTIES ENABLE_EXPORTS TRUE)
+SET_TARGET_PROPERTIES(mariadb-embedded PROPERTIES ENABLE_EXPORTS TRUE)
+SET_TARGET_PROPERTIES(mariadb-test-embedded PROPERTIES ENABLE_EXPORTS TRUE)
+SET_TARGET_PROPERTIES(mariadb-client-test-embedded PROPERTIES ENABLE_EXPORTS TRUE)
ENDIF()
diff --git a/man/CMakeLists.txt b/man/CMakeLists.txt
index 24f5dac9292..4faaf062666 100644
--- a/man/CMakeLists.txt
+++ b/man/CMakeLists.txt
@@ -46,11 +46,11 @@ INSTALL(FILES ${MAN1_DEVEL} DESTINATION ${INSTALL_MANDIR}/man1 COMPONENT ManPage
INSTALL(FILES ${MAN1_TEST} DESTINATION ${INSTALL_MANDIR}/man1 COMPONENT ManPagesTest)
macro(MARIADB_SYMLINK_MANPAGE)
- list(LENGTH MARIADB_SYMLINK_FROMS _len)
+ list(LENGTH MARIADB_SYMLINK_TOS _len)
math(EXPR _listlen "${_len}-1")
foreach(_index RANGE ${_listlen})
- list(GET MARIADB_SYMLINK_FROMS ${_index} _name)
+ list(GET MARIADB_SYMLINK_TOS ${_index} _name)
set(_manname "${_name}")
list(FIND MAN1_SERVER ${_manname}.1 _iman1server)
@@ -78,7 +78,7 @@ macro(MARIADB_SYMLINK_MANPAGE)
endmacro(MARIADB_SYMLINK_MANPAGE)
macro(MARIADB_SYMLINK_MANPAGE_CREATE mysqlname index mannr dir comp)
- LIST(GET MARIADB_SYMLINK_TOS ${index} _mariadbname)
+ LIST(GET MARIADB_SYMLINK_FROMS ${index} _mariadbname)
SET(dest "${CMAKE_CURRENT_BINARY_DIR}/${_mariadbname}.${mannr}")
FILE(WRITE ${dest} ".so ${dir}/${mysqlname}.${mannr}")
INSTALL(FILES ${dest} DESTINATION ${INSTALL_MANDIR}/${dir} COMPONENT ${comp})
diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt
index 7be46ac1985..8fcae8d5fd2 100644
--- a/scripts/CMakeLists.txt
+++ b/scripts/CMakeLists.txt
@@ -1,27 +1,39 @@
# Copyright (c) 2006, 2017, Oracle and/or its affiliates.
# Copyright (c) 2011, 2017, MariaDB Corporation
-#
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
-#
+#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
-#
+#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
# Build comp_sql - used for embedding SQL in C or C++ programs
+
+MACRO(INSTALL_LINK old new destination component)
+ EXECUTE_PROCESS(
+ COMMAND ${CMAKE_COMMAND} -E create_symlink ${old} ${new}
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ )
+ INSTALL(
+ PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${new}
+ DESTINATION ${destination}
+ COMPONENT ${component}
+ )
+ENDMACRO()
+
IF(NOT CMAKE_CROSSCOMPILING)
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
ADD_EXECUTABLE(comp_sql comp_sql.c)
TARGET_LINK_LIBRARIES(comp_sql)
ENDIF()
-
# Build mysql_fix_privilege_tables.sql (concatenate 3 sql scripts)
IF(NOT WIN32 OR CMAKE_CROSSCOMPILING)
FIND_PROGRAM(CAT_EXECUTABLE cat DOC "path to the executable")
@@ -29,7 +41,7 @@ IF(NOT WIN32 OR CMAKE_CROSSCOMPILING)
ENDIF()
IF(CAT_EXECUTABLE)
- SET(CAT_COMMAND COMMAND
+ SET(CAT_COMMAND COMMAND
${CMAKE_COMMAND} -E chdir ${CMAKE_CURRENT_SOURCE_DIR}
${CAT_EXECUTABLE} mysql_system_tables_fix.sql mysql_system_tables.sql mysql_performance_tables.sql >
${CMAKE_CURRENT_BINARY_DIR}/mysql_fix_privilege_tables.sql
@@ -67,7 +79,7 @@ ADD_CUSTOM_TARGET(GenFixPrivs
)
IF(UNIX)
- FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/make_binary_distribution
+ FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/make_binary_distribution
"cd ${CMAKE_BINARY_DIR} && '${CMAKE_CPACK_COMMAND}' -G TGZ --config CPackConfig.cmake\n" )
EXECUTE_PROCESS(
COMMAND chmod +x ${CMAKE_CURRENT_BINARY_DIR}/make_binary_distribution
@@ -92,8 +104,8 @@ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/maria_add_gis_sp.sql.in
${CMAKE_CURRENT_BINARY_DIR}/maria_add_gis_sp_bootstrap.sql ESCAPE_QUOTES @ONLY)
IF (NOT WITHOUT_SERVER)
-INSTALL(FILES
- ${CMAKE_CURRENT_SOURCE_DIR}/mysql_system_tables.sql
+INSTALL(FILES
+ ${CMAKE_CURRENT_SOURCE_DIR}/mysql_system_tables.sql
${CMAKE_CURRENT_SOURCE_DIR}/mysql_system_tables_data.sql
${CMAKE_CURRENT_SOURCE_DIR}/mysql_performance_tables.sql
${CMAKE_CURRENT_SOURCE_DIR}/mysql_test_db.sql
@@ -120,7 +132,6 @@ IF(CMAKE_GENERATOR MATCHES "Makefiles|Ninja")
ENDFOREACH()
ENDIF()
-
IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
SET (PERL_PATH "/usr/local/bin/perl")
ELSE()
@@ -130,18 +141,18 @@ ENDIF()
IF(UNIX)
# FIND_PROC and CHECK_PID are used by mysqld_safe
IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
- SET (FIND_PROC
+ SET (FIND_PROC
"ps wwwp $PID | grep -v mysqld_safe | grep -- $MYSQLD > /dev/null")
ENDIF()
IF(NOT FIND_PROC AND CMAKE_SYSTEM_NAME MATCHES "SunOS")
- SET (FIND_PROC
+ SET (FIND_PROC
"ps -p $PID | grep -v mysqld_safe | grep -- $MYSQLD > /dev/null")
ENDIF()
IF(NOT FIND_PROC)
# BSD style
EXECUTE_PROCESS(COMMAND ps -uaxww OUTPUT_QUIET ERROR_QUIET RESULT_VARIABLE result)
- IF(result MATCHES 0)
+ IF(result MATCHES 0)
SET( FIND_PROC
"ps -uaxww | grep -v mysqld_safe | grep -- $MYSQLD | grep $PID > /dev/null")
ENDIF()
@@ -154,7 +165,7 @@ IF(NOT FIND_PROC)
SET( FIND_PROC "ps -ef | grep -v mysqld_safe | grep -- $MYSQLD | grep $PID > /dev/null")
ENDIF()
ENDIF()
-
+
EXECUTE_PROCESS(COMMAND sh -c "kill -0 $$" OUTPUT_QUIET ERROR_QUIET RESULT_VARIABLE result)
IF(result MATCHES 0)
SET(CHECK_PID "kill -0 $PID > /dev/null 2> /dev/null")
@@ -195,18 +206,19 @@ SET(mysqld_locations "$basedir/${INSTALL_SBINDIR} $basedir/libexec $basedir/sbin
SET(errmsg_locations "$basedir/${INSTALL_MYSQLSHAREDIR}/english $basedir/share/english $basedir/share/mysql/english")
SET(pkgdata_locations "$basedir/${INSTALL_MYSQLSHAREDIR} $basedir/share $basedir/share/mysql")
+# install mysql_install_db.sh at this point since it needs
+# different values for the above variables that will change
+# afterwards
IF(UNIX)
-CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mysql_install_db.sh
- ${CMAKE_CURRENT_BINARY_DIR}/mysql_install_db ESCAPE_QUOTES @ONLY)
- EXECUTE_PROCESS(
- COMMAND chmod +x ${CMAKE_CURRENT_BINARY_DIR}/mysql_install_db
- )
+ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mysql_install_db.sh
+ ${CMAKE_CURRENT_BINARY_DIR}/mariadb-install-db ESCAPE_QUOTES @ONLY)
-INSTALL_SCRIPT(
- "${CMAKE_CURRENT_BINARY_DIR}/mysql_install_db"
- DESTINATION ${INSTALL_SCRIPTDIR}
- COMPONENT Server
- )
+ INSTALL_SCRIPT(
+ "${CMAKE_CURRENT_BINARY_DIR}/mariadb-install-db"
+ DESTINATION ${INSTALL_SCRIPTDIR}
+ COMPONENT Server)
+
+ INSTALL_LINK(mariadb-install-db mysql_install_db ${INSTALL_SCRIPTDIR} Server)
ENDIF()
SET(prefix "${CMAKE_INSTALL_PREFIX}")
@@ -245,7 +257,7 @@ SET(mysql_find_rows_COMPONENT COMPONENT Client)
SET(mytop_COMPONENT Mytop)
IF(WIN32)
- # On Windows, some .sh and some .pl.in files are configured
+ # On Windows, some .sh and some .pl.in files are configured
# The resulting files will have .pl extension (those are perl scripts)
# Input files with pl.in extension
@@ -284,10 +296,10 @@ ELSE()
ENDIF()
IF (NOT WITHOUT_SERVER)
SET(SERVER_SCRIPTS
- mysql_fix_extensions
- mysqld_multi
- mysqld_safe
- mysqldumpslow
+ mariadb-fix-extensions
+ mariadbd-multi
+ mariadbd-safe
+ mariadb-dumpslow
)
ENDIF()
# Configure this one, for testing, but do not install it.
@@ -296,60 +308,53 @@ ELSE()
# On Unix, most of the files end up in the bin directory
SET(BIN_SCRIPTS
msql2mysql
- mysql_config
- mysql_setpermission
- mysql_secure_installation
- mysqlaccess
- mysql_convert_table_format
- mysql_find_rows
+ mariadb-setpermission
+ mariadb-secure-installation
+ mariadb-access
+ mariadb-convert-table-format
+ mariadb-find-rows
mytop
- mysqlhotcopy
+ mariadb-hotcopy
${SERVER_SCRIPTS}
${WSREP_SCRIPTS}
${SYSTEMD_SCRIPTS}
)
+
FOREACH(file ${BIN_SCRIPTS})
- IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh)
- CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh
+ # set name of executable
+ GET_SYMLINK(${file} binname)
+
+ if("${binname}" STREQUAL "")
+ set(binname ${file})
+ endif()
+
+ IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${binname}.sh)
+ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${binname}.sh
${CMAKE_CURRENT_BINARY_DIR}/${file} ESCAPE_QUOTES @ONLY)
- ELSEIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file})
- CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}
- ${CMAKE_CURRENT_BINARY_DIR}/${file} COPYONLY)
+ ELSEIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${binname})
+ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${binname}
+ ${CMAKE_CURRENT_BINARY_DIR}/${file} COPYONLY)
ELSE()
- MESSAGE(FATAL_ERROR "Can not find ${file}.sh or ${file} in "
+ MESSAGE(FATAL_ERROR "Can not find ${binname}.sh or ${binname} in "
"${CMAKE_CURRENT_SOURCE_DIR}" )
ENDIF()
- # TODO: The following EXECUTE could be redundant as INSTALL_SCRIPT
- # macro does an INSTALL(PROGRAMS ..) that automatically sets +x on
- # the executable.
- EXECUTE_PROCESS(COMMAND chmod +x ${CMAKE_CURRENT_BINARY_DIR}/${file})
+
IF(NOT ${file}_COMPONENT)
SET(${file}_COMPONENT Server)
ENDIF()
INSTALL_SCRIPT(
- ${CMAKE_CURRENT_BINARY_DIR}/${file}
+ ${CMAKE_CURRENT_BINARY_DIR}/${file}
DESTINATION ${INSTALL_BINDIR}
COMPONENT ${${file}_COMPONENT}
- )
- ENDFOREACH()
+ )
- SET (wsrep_sst_rsync_wan ${CMAKE_CURRENT_BINARY_DIR}/wsrep_sst_rsync_wan)
- ADD_CUSTOM_COMMAND(
- OUTPUT ${wsrep_sst_rsync_wan}
- COMMAND ${CMAKE_COMMAND} ARGS -E create_symlink
- wsrep_sst_rsync
- wsrep_sst_rsync_wan
- )
- ADD_CUSTOM_TARGET(symlink_wsrep_sst_rsync
- ALL
- DEPENDS ${wsrep_sst_rsync_wan}
- )
- INSTALL(
- FILES ${wsrep_sst_rsync_wan}
- DESTINATION ${INSTALL_BINDIR}
- COMPONENT Server
- )
+ # Create symlink
+ IF (NOT ${binname} STREQUAL ${file})
+ INSTALL_LINK(${file} ${binname} ${INSTALL_BINDIR} ${${file}_COMPONENT})
+ ENDIF()
+ ENDFOREACH()
+ INSTALL_LINK(wsrep_sst_rsync wsrep_sst_rsync_wan ${INSTALL_BINDIR} Server)
FOREACH(file ${WSREP_SOURCE})
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh
${CMAKE_CURRENT_BINARY_DIR}/${file} ESCAPE_QUOTES @ONLY)
diff --git a/sql/CMakeLists.txt b/sql/CMakeLists.txt
index d0a3e8a437a..eee5572ca72 100644
--- a/sql/CMakeLists.txt
+++ b/sql/CMakeLists.txt
@@ -1,15 +1,15 @@
# Copyright (c) 2006, 2014, Oracle and/or its affiliates.
# Copyright (c) 2010, 2018, MariaDB Corporation
-#
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
-#
+#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
-#
+#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
@@ -293,56 +293,56 @@ ENDIF()
ADD_LIBRARY(sql_builtins STATIC ${CMAKE_CURRENT_BINARY_DIR}/sql_builtin.cc)
TARGET_LINK_LIBRARIES(sql_builtins ${MYSQLD_STATIC_PLUGIN_LIBS})
-MYSQL_ADD_EXECUTABLE(mysqld ${MYSQLD_SOURCE} DESTINATION ${INSTALL_SBINDIR} COMPONENT Server)
+MYSQL_ADD_EXECUTABLE(mariadbd ${MYSQLD_SOURCE} DESTINATION ${INSTALL_SBINDIR} COMPONENT Server)
-IF(APPLE)
- # Add CoreServices framework since some dloadable plugins may need it
- FIND_LIBRARY(CORESERVICES NAMES CoreServices)
- IF(CORESERVICES)
- TARGET_LINK_LIBRARIES(mysqld LINK_PRIVATE ${CORESERVICES})
- ENDIF()
-ENDIF()
+IF(APPLE)
+ # Add CoreServices framework since some dloadable plugins may need it
+ FIND_LIBRARY(CORESERVICES NAMES CoreServices)
+ IF(CORESERVICES)
+ TARGET_LINK_LIBRARIES(mariadbd LINK_PRIVATE ${CORESERVICES})
+ ENDIF()
+ENDIF()
IF(NOT WITHOUT_DYNAMIC_PLUGINS)
IF(NOT MSVC)
- SET_TARGET_PROPERTIES(mysqld PROPERTIES ENABLE_EXPORTS TRUE)
+ SET_TARGET_PROPERTIES(mariadbd PROPERTIES ENABLE_EXPORTS TRUE)
ENDIF()
- GET_TARGET_PROPERTY(mysqld_link_flags mysqld LINK_FLAGS)
+ GET_TARGET_PROPERTY(mysqld_link_flags mariadbd LINK_FLAGS)
IF(NOT mysqld_link_flags)
SET(mysqld_link_flags)
ENDIF()
IF (MINGW OR CYGWIN)
- SET_TARGET_PROPERTIES(mysqld PROPERTIES LINK_FLAGS "${mysqld_link_flags} -Wl,--export-all-symbols")
+ SET_TARGET_PROPERTIES(mariadbd PROPERTIES LINK_FLAGS "${mysqld_link_flags} -Wl,--export-all-symbols")
ENDIF()
IF(MSVC)
- SET_TARGET_PROPERTIES(mysqld PROPERTIES LINK_FLAGS "${mysqld_link_flags} \"${MYSQLD_EXP}\"")
- ADD_DEPENDENCIES(mysqld gen_mysqld_lib)
+ SET_TARGET_PROPERTIES(mariadbd PROPERTIES LINK_FLAGS "${mysqld_link_flags} \"${MYSQLD_EXP}\"")
+ ADD_DEPENDENCIES(mariadbd gen_mysqld_lib)
ENDIF()
ENDIF(NOT WITHOUT_DYNAMIC_PLUGINS)
-TARGET_LINK_LIBRARIES(mysqld LINK_PRIVATE sql sql_builtins)
+TARGET_LINK_LIBRARIES(mariadbd LINK_PRIVATE sql sql_builtins)
# Provide plugins with minimal set of libraries
SET(INTERFACE_LIBS ${LIBRT})
IF(INTERFACE_LIBS)
- TARGET_LINK_LIBRARIES(mysqld LINK_PUBLIC ${INTERFACE_LIBS})
+ TARGET_LINK_LIBRARIES(mariadbd LINK_PUBLIC ${INTERFACE_LIBS})
ENDIF()
# On Solaris, some extra effort is required in order to get dtrace probes
# from static libraries
-DTRACE_INSTRUMENT_STATIC_LIBS(mysqld
+DTRACE_INSTRUMENT_STATIC_LIBS(mariadbd
"sql;mysys;mysys_ssl;${MYSQLD_STATIC_PLUGIN_LIBS}")
SET(WITH_MYSQLD_LDFLAGS "" CACHE STRING "Additional linker flags for mysqld")
MARK_AS_ADVANCED(WITH_MYSQLD_LDFLAGS)
IF(WITH_MYSQLD_LDFLAGS)
- GET_TARGET_PROPERTY(MYSQLD_LINK_FLAGS mysqld LINK_FLAGS)
+ GET_TARGET_PROPERTY(MYSQLD_LINK_FLAGS mariadbd LINK_FLAGS)
IF(NOT MYSQLD_LINK_FLAGS)
SET(MYSQLD_LINK_FLAGS)
ENDIF()
- SET_TARGET_PROPERTIES(mysqld PROPERTIES LINK_FLAGS
+ SET_TARGET_PROPERTIES(mariadbd PROPERTIES LINK_FLAGS
"${MYSQLD_LINK_FLAGS} ${WITH_MYSQLD_LDFLAGS}")
ENDIF()
@@ -396,11 +396,11 @@ ADD_CUSTOM_COMMAND(
DEPENDS gen_lex_hash
)
-MYSQL_ADD_EXECUTABLE(mysql_tzinfo_to_sql tztime.cc COMPONENT Server)
-SET_TARGET_PROPERTIES(mysql_tzinfo_to_sql PROPERTIES COMPILE_FLAGS "-DTZINFO2SQL")
-TARGET_LINK_LIBRARIES(mysql_tzinfo_to_sql mysys mysys_ssl)
+MYSQL_ADD_EXECUTABLE(mariadb-tzinfo-to-sql tztime.cc COMPONENT Server)
+SET_TARGET_PROPERTIES(mariadb-tzinfo-to-sql PROPERTIES COMPILE_FLAGS "-DTZINFO2SQL")
+TARGET_LINK_LIBRARIES(mariadb-tzinfo-to-sql mysys mysys_ssl)
-ADD_CUSTOM_TARGET(
+ADD_CUSTOM_TARGET(
GenServerSource
DEPENDS
${CMAKE_CURRENT_BINARY_DIR}/lex_hash.h
@@ -420,7 +420,7 @@ CONFIGURE_FILE(
${CMAKE_SOURCE_DIR}/cmake/make_dist.cmake.in
${CMAKE_BINARY_DIR}/make_dist.cmake @ONLY)
-ADD_CUSTOM_TARGET(dist
+ADD_CUSTOM_TARGET(dist
COMMAND ${CMAKE_COMMAND} -P ${CMAKE_BINARY_DIR}/make_dist.cmake
DEPENDS ${CMAKE_BINARY_DIR}/sql/sql_yacc.cc ${CMAKE_BINARY_DIR}/sql/sql_yacc.hh
DEPENDS ${CMAKE_BINARY_DIR}/sql/sql_yacc_ora.cc ${CMAKE_BINARY_DIR}/sql/sql_yacc_ora.hh
@@ -492,22 +492,22 @@ IF(WIN32)
DEPENDS comp_sql ${my_bootstrap_sql}
)
- MYSQL_ADD_EXECUTABLE(mysql_install_db
+ MYSQL_ADD_EXECUTABLE(mariadb-install-db
mysql_install_db.cc
${CMAKE_CURRENT_BINARY_DIR}/mysql_bootstrap_sql.c
COMPONENT Server
)
- SET_TARGET_PROPERTIES(mysql_install_db PROPERTIES COMPILE_FLAGS -DINSTALL_PLUGINDIR=${INSTALL_PLUGINDIR})
- TARGET_LINK_LIBRARIES(mysql_install_db mysys shlwapi)
+ SET_TARGET_PROPERTIES(mariadb-install-db PROPERTIES COMPILE_FLAGS -DINSTALL_PLUGINDIR=${INSTALL_PLUGINDIR})
+ TARGET_LINK_LIBRARIES(mariadb-install-db mysys shlwapi)
ADD_LIBRARY(winservice STATIC winservice.c)
TARGET_LINK_LIBRARIES(winservice shell32)
- MYSQL_ADD_EXECUTABLE(mysql_upgrade_service
+ MYSQL_ADD_EXECUTABLE(mariadb-upgrade-service
mysql_upgrade_service.cc
upgrade_conf_file.cc
COMPONENT Server)
- TARGET_LINK_LIBRARIES(mysql_upgrade_service mysys winservice)
+ TARGET_LINK_LIBRARIES(mariadb-upgrade-service mysys winservice)
ENDIF(WIN32)
INSTALL(DIRECTORY . DESTINATION ${INSTALL_INCLUDEDIR}/server/private COMPONENT Development
diff --git a/storage/rocksdb/CMakeLists.txt b/storage/rocksdb/CMakeLists.txt
index f4f23ff08c6..1b4f9aa6a17 100644
--- a/storage/rocksdb/CMakeLists.txt
+++ b/storage/rocksdb/CMakeLists.txt
@@ -229,8 +229,8 @@ ADD_LIBRARY(rocksdb_tools STATIC
MYSQL_ADD_EXECUTABLE(sst_dump rocksdb/tools/sst_dump.cc COMPONENT rocksdb-engine)
TARGET_LINK_LIBRARIES(sst_dump rocksdblib)
-MYSQL_ADD_EXECUTABLE(mysql_ldb tools/mysql_ldb.cc COMPONENT rocksdb-engine)
-TARGET_LINK_LIBRARIES(mysql_ldb rocksdb_tools rocksdb_aux_lib dbug)
+MYSQL_ADD_EXECUTABLE(mariadb-ldb tools/mysql_ldb.cc COMPONENT rocksdb-engine)
+TARGET_LINK_LIBRARIES(mariadb-ldb rocksdb_tools rocksdb_aux_lib dbug)
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/myrocks_hotbackup.py
${CMAKE_CURRENT_BINARY_DIR}/myrocks_hotbackup @ONLY)
@@ -249,7 +249,7 @@ IF(MSVC)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4267")
ENDIF()
ELSEIF(CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
- SET_TARGET_PROPERTIES(rocksdb_tools sst_dump mysql_ldb PROPERTIES COMPILE_FLAGS "-Wno-error")
+ SET_TARGET_PROPERTIES(rocksdb_tools sst_dump mariadb-ldb PROPERTIES COMPILE_FLAGS "-Wno-error")
ENDIF()
# Enable ZSTD if available. Upstream rocksdb cmake will use WITH_ZSTD and set
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index cb6c756cfe3..8d4d77590a1 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -1,14 +1,14 @@
# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
-#
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
-#
+#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
-#
+#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
@@ -22,11 +22,11 @@ INCLUDE_DIRECTORIES(BEFORE
${CMAKE_BINARY_DIR}/libmariadb/include
${CMAKE_SOURCE_DIR}/libmariadb/include)
-MYSQL_ADD_EXECUTABLE(mysql_client_test mysql_client_test.c COMPONENT Test)
+MYSQL_ADD_EXECUTABLE(mariadb-client-test mysql_client_test.c COMPONENT Test)
SET(CLIENT_LIB mariadbclient mysys)
-TARGET_LINK_LIBRARIES(mysql_client_test ${CLIENT_LIB})
-ADD_DEPENDENCIES(mysql_client_test GenError ${CLIENT_LIB})
+TARGET_LINK_LIBRARIES(mariadb-client-test ${CLIENT_LIB})
+ADD_DEPENDENCIES(mariadb-client-test GenError ${CLIENT_LIB})
IF(WITH_UNIT_TESTS)
ADD_EXECUTABLE(bug25714 bug25714.c)
diff --git a/win/packaging/ca/CMakeLists.txt b/win/packaging/ca/CMakeLists.txt
index 99dc7da01fb..326bab47de4 100644
--- a/win/packaging/ca/CMakeLists.txt
+++ b/win/packaging/ca/CMakeLists.txt
@@ -14,21 +14,10 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA
INCLUDE_DIRECTORIES(${WIX_DIR}/../SDK/${WIX_MSVC_SUFFIX}/inc)
-SET(WIXCA_SOURCES CustomAction.cpp CustomAction.def ${CMAKE_CURRENT_BINARY_DIR}/symlinks.cc)
+SET(WIXCA_SOURCES CustomAction.cpp CustomAction.def)
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/sql ${CMAKE_CURRENT_SOURCE_DIR})
-INCLUDE(symlinks)
-LIST(LENGTH MARIADB_SYMLINK_FROMS LEN)
-MATH(EXPR max_index "${LEN}-1")
-SET(ALL_SYMLINKS "")
-FOREACH(i RANGE 0 ${max_index})
- LIST(GET MARIADB_SYMLINK_FROMS ${i} src)
- LIST(GET MARIADB_SYMLINK_TOS ${i} dst)
- STRING(APPEND ALL_SYMLINKS "{L\"${src}\",L\"${dst}\"},\n")
-ENDFOREACH()
-CONFIGURE_FILE(symlinks.cc.in symlinks.cc)
-
# Custom action should not depend on C runtime, since we do not know if CRT is installed.
FORCE_STATIC_CRT()
ADD_VERSION_INFO(wixca SHARED WIXCA_SOURCES)
diff --git a/win/packaging/ca/CustomAction.cpp b/win/packaging/ca/CustomAction.cpp
index 4f66e266583..1a4abc754e8 100644
--- a/win/packaging/ca/CustomAction.cpp
+++ b/win/packaging/ca/CustomAction.cpp
@@ -1013,268 +1013,3 @@ extern "C" BOOL WINAPI DllMain(
return TRUE;
}
-
-static wstring MakeExePath(const wchar_t *installDir, const wchar_t *basename)
-{
- wstring path(installDir);
- if (path.back() != L'\\')
- path.append(L"\\");
- path.append(L"bin\\");
- path.append(basename);
- path.append(L".exe");
- return path;
-}
-
-static wstring MakeExePath(const wchar_t *installDir, string basename)
-{
- wstring path(installDir);
- if (path.back() != L'\\')
- path.append(L"\\");
- path.append(L"bin\\");
- for (auto c : basename)
- path+= c;
- path.append(L".exe");
- return path;
-}
-static wstring MakeFixSymlinksLogPath()
-{
- wchar_t buf[MAX_PATH];
- if (GetTempPathW(MAX_PATH, buf))
- return wstring(buf) + L"\\mariadb_msi_fix_symlinks.log";
- return L"";
-}
-
-static string w2s(wstring w)
-{
- string s;
- for (auto wc : w)
- s += (char)wc;
- return s;
-}
-
-/*
- Remove symlinks if target file does not exist.
- Create symlink if target exists, but symlink is not.
-*/
-static void fix_symlink(const wchar_t *file, const wchar_t *link,
- const wchar_t *installdir,
- vector<string> &rollback_actions)
-{
- WcaLog(LOGMSG_STANDARD, "fix_symlink %S=>%S", link, file);
-
- auto tgt= MakeExePath(installdir, file);
- auto lnk= MakeExePath(installdir, link);
- auto target_path= tgt.c_str();
- auto link_path= lnk.c_str();
-
- auto target_attr= GetFileAttributesW(target_path);
- auto link_attr= GetFileAttributesW(link_path);
- WcaLog(LOGMSG_STANDARD, "%S %s", target_path,
- target_attr == INVALID_FILE_ATTRIBUTES ? "does not exist" : "exists");
- WcaLog(LOGMSG_STANDARD, "%S %s", link_path,
- link_attr == INVALID_FILE_ATTRIBUTES ? "does not exist" : "exists");
-
- if (link_attr != INVALID_FILE_ATTRIBUTES &&
- ((link_attr & FILE_ATTRIBUTE_REPARSE_POINT) == 0))
- {
- WcaLog(LOGMSG_STANDARD, "%S is not a symlink!", link_path);
- return;
- }
-
- if (target_attr == INVALID_FILE_ATTRIBUTES)
- {
- if (link_attr == INVALID_FILE_ATTRIBUTES)
- {
- return;
- }
- auto ok= DeleteFileW(link_path);
- WcaLog(LOGMSG_STANDARD, "DeleteFileW(L\"%S\") returned %s, last error %lu",
- link_path, ok ? "success" : "error", GetLastError());
- if (ok)
- {
- rollback_actions.push_back(string("create_symlink ") + w2s(link) + " " +
- w2s(file));
- }
- return;
- }
-
- if (link_attr != INVALID_FILE_ATTRIBUTES)
- return;
-
- auto ok= CreateSymbolicLinkW(link_path, target_path, 0);
- WcaLog(LOGMSG_STANDARD,
- "CreateSymbolicLinkW(\"%S\",\"%S\", 0) returned %s, last error %d",
- link_path, target_path, ok ? "success" : "error",
- (int) GetLastError());
- if (ok)
- rollback_actions.push_back(string("delete ") + w2s(link));
-}
-
-static string rollback_info_path()
-{
- char tmppath[MAX_PATH];
- if (!GetTempPathA(MAX_PATH, tmppath))
- return "";
- string filepath(tmppath);
- filepath.append("\\mariadb_symlink_rollback_info.tmp");
- return filepath;
-}
-
-
-static void save_symlink_rollback_info(vector<string> rollback_info)
-{
- std::ofstream ofs;
- string path = rollback_info_path();
- ofs.open(path, std::ofstream::out | std::ofstream::trunc);
- if (!ofs.good())
- return;
- WcaLog(LOGMSG_STANDARD,
- "Storing this rollback script for custom action in %s, in case installation rolls back",
- path.c_str());
- for (auto line : rollback_info)
- {
- WcaLog(LOGMSG_STANDARD, "%s", line.c_str());
- ofs << line << "\n";
- }
- WcaLog(LOGMSG_STANDARD, "End of rollback script");
-}
-
-
-#include <symlinks.h>
-/* MDEV-19781 MariaDB symlinks on Windows */
-extern "C" UINT __stdcall FixSymlinksRollback(MSIHANDLE hInstall)
-{
- HRESULT hr= S_OK;
- UINT er= ERROR_SUCCESS;
- wchar_t targetdir[MAX_PATH];
- DWORD len= MAX_PATH;
- hr= WcaInitialize(hInstall, __FUNCTION__);
- WcaLog(LOGMSG_STANDARD, "Initialized.");
- std::ifstream ifs;
- std::string command;
-
- if (MsiGetPropertyW(hInstall, L"CustomActionData", targetdir, &len) !=
- ERROR_SUCCESS)
- {
- hr= HRESULT_FROM_WIN32(GetLastError());
- ExitOnFailure(hr, "MsiGetPropertyW failed");
- }
-
- ifs.open(rollback_info_path(), std::ofstream::in);
- if (!ifs.good())
- goto LExit;
-
- while (ifs >> command)
- {
- if (command == "create_symlink")
- {
- string link;
- ifs >> link;
- auto link_path= MakeExePath(targetdir, link);
- string file;
- ifs >> file;
- auto target_path= MakeExePath(targetdir, file);
- bool ok= CreateSymbolicLinkW(link_path.c_str(), target_path.c_str(), 0);
- WcaLog(LOGMSG_STANDARD, "CreateSymbolicLinkW(%S,%S) %s, last error %lu",
- link_path.c_str(), target_path.c_str(), ok ? "success" : "error",
- GetLastError());
- }
- else if (command == "delete")
- {
- string link;
- ifs >> link;
- auto link_path= MakeExePath(targetdir, link);
- auto link_attr= GetFileAttributesW(link_path.c_str());
- if (link_attr != INVALID_FILE_ATTRIBUTES &&
- (link_attr & FILE_ATTRIBUTE_REPARSE_POINT))
- {
- auto ok= DeleteFileW(link_path.c_str());
- WcaLog(LOGMSG_STANDARD, "DeleteFile(%S) %s, last error %lu",
- link_path.c_str(), ok ? "success" : "error", GetLastError());
- }
- }
- else
- {
- WcaLog(LOGMSG_STANDARD, "Unknown command '%s' in rollback script ",
- command.c_str());
- goto LExit;
- }
- }
-
-LExit:
- return WcaFinalize(er);
-}
-
-
-extern "C" UINT __stdcall SymlinksUninstall(MSIHANDLE hInstall)
-{
- HRESULT hr = S_OK;
- UINT er = ERROR_SUCCESS;
- wchar_t targetdir[MAX_PATH];
- DWORD len = MAX_PATH;
- int i;
- hr = WcaInitialize(hInstall, __FUNCTION__);
- WcaLog(LOGMSG_STANDARD, "Initialized.");
-
- if (MsiGetPropertyW(hInstall, L"CustomActionData", targetdir, &len) !=
- ERROR_SUCCESS)
- {
- hr = HRESULT_FROM_WIN32(GetLastError());
- ExitOnFailure(hr, "MsiGetPropertyW failed");
- }
-
- for (i = 0; all_symlinks[i].file; i++)
- {
- auto link_path = MakeExePath(targetdir, all_symlinks[i].link);
- auto link_attr = GetFileAttributesW(link_path.c_str());
- auto filepath = link_path.c_str();
-
- if (link_attr == INVALID_FILE_ATTRIBUTES)
- {
- WcaLog(LOGMSG_STANDARD, " %S does not exist",filepath);
- continue;
- }
-
- if(!(link_attr & FILE_ATTRIBUTE_REPARSE_POINT))
- {
- WcaLog(LOGMSG_STANDARD, " %S is not a symbolic link!",filepath);
- continue;
- }
- BOOL ok = DeleteFileW(filepath);
- WcaLog(LOGMSG_STANDARD, "DeleteFile(%S) %s, last error %lu",
- filepath, ok? "succeeded":"failed", GetLastError());
- }
-
-LExit:
- return WcaFinalize(er);
-}
-
-/* MDEV-19781 MariaDB symlinks on Windows */
-extern "C" UINT __stdcall FixSymlinks(MSIHANDLE hInstall)
-{
- HRESULT hr= S_OK;
- UINT er= ERROR_SUCCESS;
- wchar_t targetdir[MAX_PATH];
- vector<string> rollback_actions;
- DWORD len= MAX_PATH;
- int i;
- hr= WcaInitialize(hInstall, __FUNCTION__);
- WcaLog(LOGMSG_STANDARD, "Initialized.");
-
- if (MsiGetPropertyW(hInstall, L"CustomActionData", targetdir, &len) !=
- ERROR_SUCCESS)
- {
- hr= HRESULT_FROM_WIN32(GetLastError());
- ExitOnFailure(hr, "MsiGetPropertyW failed");
- }
-
- for (i= 0; all_symlinks[i].file; i++)
- fix_symlink(all_symlinks[i].file, all_symlinks[i].link, targetdir,
- rollback_actions);
-
- save_symlink_rollback_info(rollback_actions);
-
-LExit:
- return WcaFinalize(er);
-}
-
diff --git a/win/packaging/ca/CustomAction.def b/win/packaging/ca/CustomAction.def
index 8169968e26b..0be77a97a08 100644
--- a/win/packaging/ca/CustomAction.def
+++ b/win/packaging/ca/CustomAction.def
@@ -8,6 +8,3 @@ CheckDatabaseProperties
CheckDataDirectoryEmpty
CheckDBInUse
CheckServiceUpgrades
-FixSymlinks
-FixSymlinksRollback
-SymlinksUninstall
diff --git a/win/packaging/ca/symlinks.cc.in b/win/packaging/ca/symlinks.cc.in
deleted file mode 100644
index 62ca9884af8..00000000000
--- a/win/packaging/ca/symlinks.cc.in
+++ /dev/null
@@ -1,6 +0,0 @@
-#include "symlinks.h"
-symlink all_symlinks[]=
-{
-@ALL_SYMLINKS@
-{nullptr, nullptr}
-};
diff --git a/win/packaging/ca/symlinks.h b/win/packaging/ca/symlinks.h
deleted file mode 100644
index 4fc1f2cb685..00000000000
--- a/win/packaging/ca/symlinks.h
+++ /dev/null
@@ -1,8 +0,0 @@
-#pragma once
-struct symlink
-{
- const wchar_t *file;
- const wchar_t *link;
-};
-
-extern symlink all_symlinks[];
diff --git a/win/packaging/create_msi.cmake b/win/packaging/create_msi.cmake
index 0527c6a7787..6b9b5c04449 100644
--- a/win/packaging/create_msi.cmake
+++ b/win/packaging/create_msi.cmake
@@ -311,9 +311,11 @@ ENDFUNCTION()
SET(CPACK_WIX_COMPONENTS)
SET(CPACK_WIX_COMPONENT_GROUPS)
GET_FILENAME_COMPONENT(abs . ABSOLUTE)
+
FOREACH(d ${DIRS})
GET_FILENAME_COMPONENT(d ${d} ABSOLUTE)
GET_FILENAME_COMPONENT(d_name ${d} NAME)
+
MAKE_WIX_IDENTIFIER("${d_name}" d_name)
FILE(WRITE ${abs}/${d_name}_component_group.wxs
"<ComponentGroup Id='componentgroup.${d_name}'>")
diff --git a/win/packaging/extra.wxs.in b/win/packaging/extra.wxs.in
index 7de62907300..3aa6889ac2f 100644
--- a/win/packaging/extra.wxs.in
+++ b/win/packaging/extra.wxs.in
@@ -597,21 +597,6 @@
<?endif ?>
- <!-- Custom action, create symlinks -->
- <CustomAction Id="Symlinks.SetProperty" Return="check" Property="Symlinks" Value="[INSTALLDIR]" />
- <CustomAction Id="Symlinks" BinaryKey="wixca.dll" DllEntry="FixSymlinks" Execute="deferred" Impersonate="no" Return="ignore"/>
- <CustomAction Id="SymlinksRollback.SetProperty" Return="check" Property="SymlinksRollback" Value="[INSTALLDIR]" />
- <CustomAction Id="SymlinksRollback" BinaryKey="wixca.dll" DllEntry="FixSymlinksRollback" Execute="rollback" Impersonate="no" Return="ignore"/>
- <CustomAction Id="SymlinksUninstall.SetProperty" Return="check" Property="SymlinksUninstall" Value="[INSTALLDIR]" />
- <CustomAction Id="SymlinksUninstall" BinaryKey="wixca.dll" DllEntry="SymlinksUninstall" Execute="deferred" Impersonate="no" Return="ignore"/>
- <InstallExecuteSequence>
- <Custom Action="Symlinks.SetProperty" Before="Symlinks">NOT Installed OR UPGRADINGPRODUCTCODE</Custom>
- <Custom Action="Symlinks" After="SymlinksRollback">NOT Installed OR UPGRADINGPRODUCTCODE</Custom>
- <Custom Action="SymlinksRollback.SetProperty" Before="SymlinksRollback">NOT Installed OR UPGRADINGPRODUCTCODE</Custom>
- <Custom Action="SymlinksRollback" After="InstallFiles">NOT Installed OR UPGRADINGPRODUCTCODE</Custom>
- <Custom Action="SymlinksUninstall.SetProperty" Before="SymlinksUninstall">Installed AND NOT UPGRADINGPRODUCTCODE</Custom>
- <Custom Action="SymlinksUninstall" Before="RemoveFiles">Installed AND NOT UPGRADINGPRODUCTCODE</Custom>
- </InstallExecuteSequence>
<!-- Custom action, call mysql_install_db -->
<SetProperty Sequence='execute' Before='CreateDatabaseCommand' Id="SKIPNETWORKING" Value="--skip-networking" >SKIPNETWORKING</SetProperty>
@@ -633,7 +618,7 @@
<CustomAction Id="CreateDatabaseRollback" BinaryKey="wixca.dll" DllEntry="CreateDatabaseRollback"
Execute="rollback" Return="check" Impersonate="no"/>
<UI>
- <ProgressText Action="CreateDatabase">Running mysql_install_db.exe</ProgressText>
+ <ProgressText Action="CreateDatabase">Running mariadb-install-db.exe</ProgressText>
</UI>
<!-- Error injection script activated by TEST_FAIL=1 passed to msiexec (to see how good custom action rollback works) -->
diff --git a/win/upgrade_wizard/CMakeLists.txt b/win/upgrade_wizard/CMakeLists.txt
index 7d0e774b968..510f770b798 100644
--- a/win/upgrade_wizard/CMakeLists.txt
+++ b/win/upgrade_wizard/CMakeLists.txt
@@ -40,20 +40,20 @@ SET(CMAKE_MFC_FLAG 1)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHsc -DNO_WARN_MBCS_MFC_DEPRECATION")
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/sql)
-MYSQL_ADD_EXECUTABLE(mysql_upgrade_wizard
+MYSQL_ADD_EXECUTABLE(mariadb-upgrade-wizard
upgrade.cpp upgradeDlg.cpp upgrade.rc ${UPGRADE_WIZARD_SOURCES}
COMPONENT Server)
-TARGET_LINK_LIBRARIES(mysql_upgrade_wizard ${UPGRADE_WIZARD_LINK_LIBRARIES})
+TARGET_LINK_LIBRARIES(mariadb-upgrade-wizard ${UPGRADE_WIZARD_LINK_LIBRARIES})
# upgrade_wizard is Windows executable, set WIN32_EXECUTABLE so it does not
# create a console.
-SET_TARGET_PROPERTIES(mysql_upgrade_wizard PROPERTIES WIN32_EXECUTABLE 1)
+SET_TARGET_PROPERTIES(mariadb-upgrade-wizard PROPERTIES WIN32_EXECUTABLE 1)
# Embed Vista "admin" manifest, since upgrade_wizard needs admin privileges
# to change service configuration. Due to a CMake bug http://www.vtk.org/Bug/view.php?id=11171
# it is not possible currenly to do it with linker flags. Work around is to use
# manifest tool mt.exe and embed the manifest post-build.
ADD_CUSTOM_COMMAND(
- TARGET mysql_upgrade_wizard POST_BUILD
+ TARGET mariadb-upgrade-wizard POST_BUILD
COMMAND mt.exe -manifest ${CMAKE_CURRENT_SOURCE_DIR}/upgrade_wizard.exe.manifest
- "-outputresource:$<TARGET_FILE:mysql_upgrade_wizard>;#1"
+ "-outputresource:$<TARGET_FILE:mariadb-upgrade-wizard>;#1"
)