diff options
author | Rasmus Johansson <rasmus@mariadb.com> | 2020-03-20 16:41:54 +0200 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2020-03-21 20:20:29 +0100 |
commit | 9e1b3af4a490d6fb6704756aba90281ff5ac033a (patch) | |
tree | 513967006d4809562e38a04ae741916c2c32e119 | |
parent | 6fb59d525b7047c82e350d2b721bffc50431eb12 (diff) | |
download | mariadb-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
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" ) |