Skip to content

Commit 24503d5

Browse files
Rasmus Johanssonvuvova
authored andcommitted
MDEV-17592 Create MariaDB named commands/symlinks
1 parent f02bc3c commit 24503d5

12 files changed

+188
-7
lines changed

CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,7 @@ INCLUDE(plugin)
160160
INCLUDE(install_macros)
161161
INCLUDE(systemd)
162162
INCLUDE(mysql_add_executable)
163+
INCLUDE(symlinks)
163164
INCLUDE(compile_flags)
164165
INCLUDE(crc32)
165166

client/CMakeLists.txt

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,6 @@ TARGET_LINK_LIBRARIES(mysqlcheck ${CLIENT_LIB})
5656
MYSQL_ADD_EXECUTABLE(mysqldump mysqldump.c ../sql-common/my_user.c)
5757
TARGET_LINK_LIBRARIES(mysqldump ${CLIENT_LIB})
5858

59-
6059
MYSQL_ADD_EXECUTABLE(mysqlimport mysqlimport.c)
6160
SET_SOURCE_FILES_PROPERTIES(mysqlimport.c PROPERTIES COMPILE_FLAGS "-DTHREADS")
6261
TARGET_LINK_LIBRARIES(mysqlimport ${CLIENT_LIB})
@@ -93,11 +92,9 @@ TARGET_LINK_LIBRARIES(async_example ${CLIENT_LIB})
9392
SET_TARGET_PROPERTIES (mysqlcheck mysqldump mysqlimport mysql_upgrade mysqlshow mysqlslap mysql_plugin async_example
9493
PROPERTIES HAS_CXX TRUE)
9594

96-
97-
FOREACH(t mysql mysqltest mysqltest mysqlcheck mysqldump mysqlimport mysql_upgrade mysqlshow mysql_plugin mysqlbinlog
95+
FOREACH(t mysql mysqltest mysqlcheck mysqldump mysqlimport mysql_upgrade mysqlshow mysql_plugin mysqlbinlog
9896
mysqladmin mysqlslap async_example)
9997
ADD_DEPENDENCIES(${t} GenError ${CLIENT_LIB})
10098
ENDFOREACH()
10199

102100
ADD_DEFINITIONS(-DHAVE_DLOPEN)
103-

cmake/install_macros.cmake

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,9 +71,10 @@ FUNCTION(INSTALL_MANPAGE file)
7171
${MYSQL_DOC_DIR}/man/*${file}.8*
7272
${GLOB_EXPR}
7373
)
74-
ENDIF()
74+
ENDIF()
7575

7676
FILE(GLOB_RECURSE MANPAGES ${GLOB_EXPR})
77+
7778
IF(MANPAGES)
7879
LIST(GET MANPAGES 0 MANPAGE)
7980
STRING(REPLACE "${file}man.1" "${file}.1" MANPAGE "${MANPAGE}")
@@ -111,8 +112,10 @@ FUNCTION(INSTALL_SCRIPT)
111112
ENDIF()
112113

113114
INSTALL(PROGRAMS ${script} DESTINATION ${ARG_DESTINATION} ${COMP})
115+
get_filename_component(dest "${script}" NAME)
116+
CREATE_MARIADB_SYMLINK(${dest} ${ARG_DESTINATION} ${COMP})
114117

115-
INSTALL_MANPAGE(${script})
118+
INSTALL_MANPAGE(${dest})
116119
ENDFUNCTION()
117120

118121

cmake/mysql_add_executable.cmake

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ FUNCTION (MYSQL_ADD_EXECUTABLE)
6363
UNSET(EXCLUDE_FROM_ALL)
6464
ENDIF()
6565
ADD_EXECUTABLE(${target} ${WIN32} ${MACOSX_BUNDLE} ${EXCLUDE_FROM_ALL} ${sources})
66+
6667
# tell CPack where to install
6768
IF(NOT ARG_EXCLUDE_FROM_ALL)
6869
IF(NOT ARG_DESTINATION)
@@ -80,4 +81,7 @@ FUNCTION (MYSQL_ADD_EXECUTABLE)
8081
ENDIF()
8182
MYSQL_INSTALL_TARGETS(${target} DESTINATION ${ARG_DESTINATION} ${COMP})
8283
ENDIF()
84+
85+
# create mariadb named symlink
86+
CREATE_MARIADB_SYMLINK(${target} ${ARG_DESTINATION} ${COMP})
8387
ENDFUNCTION()

cmake/symlinks.cmake

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
# Create lists
2+
macro(REGISTER_SYMLINK from to)
3+
list(APPEND MARIADB_SYMLINK_FROMS ${from})
4+
list(APPEND MARIADB_SYMLINK_TOS ${to})
5+
endmacro()
6+
7+
# MariaDB names for executables
8+
REGISTER_SYMLINK("mysql" "mariadb")
9+
REGISTER_SYMLINK("mysqlaccess" "mariadb-access")
10+
REGISTER_SYMLINK("mysqladmin" "mariadb-admin")
11+
REGISTER_SYMLINK("mariabackup" "mariadb-backup")
12+
REGISTER_SYMLINK("mysqlbinlog" "mariadb-binlog")
13+
REGISTER_SYMLINK("mysqlcheck" "mariadb-check")
14+
REGISTER_SYMLINK("mysql_client_test_embedded" "mariadb-client-test-embedded")
15+
REGISTER_SYMLINK("mariadb_config" "mariadb-config")
16+
REGISTER_SYMLINK("mysql_convert_table_format" "mariadb-convert-table-format")
17+
REGISTER_SYMLINK("mysqldump" "mariadb-dump")
18+
REGISTER_SYMLINK("mysqldumpslow" "mariadb-dumpslow")
19+
REGISTER_SYMLINK("mysql_embedded" "mariadb-embedded")
20+
REGISTER_SYMLINK("mysql_find_rows" "mariadb-find-rows")
21+
REGISTER_SYMLINK("mysql_fix_extensions" "mariadb-fix-extensions")
22+
REGISTER_SYMLINK("mysqlhotcopy" "mariadb-hotcopy")
23+
REGISTER_SYMLINK("mysqlimport" "mariadb-import")
24+
REGISTER_SYMLINK("mysql_install_db" "mariadb-install-db")
25+
REGISTER_SYMLINK("mysql_ldb" "mariadb-ldb")
26+
REGISTER_SYMLINK("mysql_plugin" "mariadb-plugin")
27+
REGISTER_SYMLINK("mysql_secure_installation" "mariadb-secure-installation")
28+
REGISTER_SYMLINK("mysql_setpermission" "mariadb-setpermission")
29+
REGISTER_SYMLINK("mysqlshow" "mariadb-show")
30+
REGISTER_SYMLINK("mysqlslap" "mariadb-slap")
31+
REGISTER_SYMLINK("mysqltest" "mariadb-test")
32+
REGISTER_SYMLINK("mysqltest_embedded" "mariadb-test-embedded")
33+
REGISTER_SYMLINK("mytop" "mariadb-top")
34+
REGISTER_SYMLINK("mysql_tzinfo_to_sql" "mariadb-tzinfo-to-sql")
35+
REGISTER_SYMLINK("mysql_upgrade" "mariadb-upgrade")
36+
REGISTER_SYMLINK("mysql_upgrade_service" "mariadb-upgrade-service")
37+
REGISTER_SYMLINK("mysql_upgrade_wizard" "mariadb-upgrade-wizard")
38+
REGISTER_SYMLINK("mysql_waitpid" "mariadb-waitpid")
39+
REGISTER_SYMLINK("mysqld" "mariadbd")
40+
REGISTER_SYMLINK("mysqld_multi" "mariadbd-multi")
41+
REGISTER_SYMLINK("mysqld_safe" "mariadbd-safe")
42+
REGISTER_SYMLINK("mysqld_safe_helper" "mariadbd-safe-helper")
43+
44+
# Add MariaDB symlinks
45+
macro(CREATE_MARIADB_SYMLINK src dir comp)
46+
# Find the MariaDB name for executable
47+
list(FIND MARIADB_SYMLINK_FROMS ${src} _index)
48+
49+
if (${_index} GREATER -1)
50+
list(GET MARIADB_SYMLINK_TOS ${_index} mariadbname)
51+
endif()
52+
53+
if (mariadbname)
54+
CREATE_MARIADB_SYMLINK_IN_DIR(${src} ${mariadbname} ${dir} ${comp})
55+
endif()
56+
endmacro(CREATE_MARIADB_SYMLINK)
57+
58+
# Add MariaDB symlinks in directory
59+
macro(CREATE_MARIADB_SYMLINK_IN_DIR src dest dir comp)
60+
if(UNIX)
61+
add_custom_target(
62+
symlink_${dest}_${comp} ALL
63+
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${dest}
64+
)
65+
66+
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${dest} POST_BUILD
67+
COMMAND ${CMAKE_COMMAND} -E create_symlink ${src} ${dest}
68+
COMMENT "mklink ${src} -> ${dest}")
69+
70+
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${dest} DESTINATION ${dir} COMPONENT ${comp})
71+
endif()
72+
endmacro(CREATE_MARIADB_SYMLINK_IN_DIR)

debian/mariadb-client-10.4.links

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,44 @@
1+
usr/bin/mysql_find_rows usr/bin/mariadb-find-rows
2+
usr/bin/mysql_fix_extensions usr/bin/mariadb-fix-extenstions
3+
usr/bin/mysql_plugin usr/bin/mariadb-plugin
4+
usr/bin/mysql_waitpid usr/bin/mariadb-waitpid
5+
usr/bin/mysqlaccess usr/bin/mariadb-access
6+
usr/bin/mysqladmin usr/bin/mariadb-admin
7+
usr/bin/mysqlanalyze usr/bin/mariadb-analyze
8+
usr/bin/mysqlbinlog usr/bin/mariadb-binlog
9+
usr/bin/mysqlcheck usr/bin/mariadb-analyze
10+
usr/bin/mysqlcheck usr/bin/mariadb-optimize
11+
usr/bin/mysqlcheck usr/bin/mariadb-repair
112
usr/bin/mysqlcheck usr/bin/mysqlanalyze
213
usr/bin/mysqlcheck usr/bin/mysqloptimize
314
usr/bin/mysqlcheck usr/bin/mysqlrepair
15+
usr/bin/mysqldump usr/bin/mariadb-dump
16+
usr/bin/mysqldumpslow usr/bin/mariadb-dump-slow
17+
usr/bin/mysqlimport usr/bin/mariadb-import
18+
usr/bin/mysqloptimize usr/bin/mariadb-optimize
19+
usr/bin/mysqlrepair usr/bin/mariadb-repair
20+
usr/bin/mysqlreport usr/bin/mariadb-report
21+
usr/bin/mysqlslap usr/bin/mariadb-slap
22+
usr/bin/mysqltest usr/bin/mariadb-test
23+
usr/share/man/man1/mysql_find_rows.1.gz usr/share/man/man1/mariadb-find-rows.1.gz
24+
usr/share/man/man1/mysql_fix_extensions.1.gz usr/share/man/man1/mariadb-fix-extensions.1.gz
25+
usr/share/man/man1/mysql_plugin.1.gz usr/share/man/man1/mariadb-plugin.1.gz
26+
usr/share/man/man1/mysql_waitpid.1.gz usr/share/man/man1/mariadb-waitpid.1.gz
27+
usr/share/man/man1/mysqlaccess.1.gz usr/share/man/man1/mariadb-access.1.gz
28+
usr/share/man/man1/mysqladmin.1.gz usr/share/man/man1/mariadb-admin.1.gz
29+
usr/share/man/man1/mysqlanalyze.1.gz usr/share/man/man1/mariadb-analyze.1.gz
30+
usr/share/man/man1/mysqlbinlog.1.gz usr/share/man/man1/mariadb-binlog.1.gz
31+
usr/share/man/man1/mysqlcheck.1.gz usr/share/man/man1/mariadb-analyze.1.gz
32+
usr/share/man/man1/mysqlcheck.1.gz usr/share/man/man1/mariadb-optimize.1.gz
33+
usr/share/man/man1/mysqlcheck.1.gz usr/share/man/man1/mariadb-repair.1.gz
434
usr/share/man/man1/mysqlcheck.1.gz usr/share/man/man1/mysqlanalyze.1.gz
535
usr/share/man/man1/mysqlcheck.1.gz usr/share/man/man1/mysqloptimize.1.gz
636
usr/share/man/man1/mysqlcheck.1.gz usr/share/man/man1/mysqlrepair.1.gz
37+
usr/share/man/man1/mysqldump.1.gz usr/share/man/man1/mariadb-dump.1.gz
38+
usr/share/man/man1/mysqldumpslow.1.gz usr/share/man/man1/mariadb-dump-slow.1.gz
39+
usr/share/man/man1/mysqlimport.1.gz usr/share/man/man1/mariadb-import.1.gz
40+
usr/share/man/man1/mysqloptimize.1.gz usr/share/man/man1/mariadb-optimize.1.gz
41+
usr/share/man/man1/mysqlrepair.1.gz usr/share/man/man1/mariadb-repair.1.gz
42+
usr/share/man/man1/mysqlreport.1.gz usr/share/man/man1/mariadb-report.1.gz
43+
usr/share/man/man1/mysqlslap.1.gz usr/share/man/man1/mariadb-slap.1.gz
44+
usr/share/man/man1/mysqltest.1.gz usr/share/man/man1/mariadb-test.1.gz

debian/mariadb-client-core-10.4.links

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
usr/bin/mysql usr/bin/mariadb
2+
usr/bin/mysqlcheck usr/bin/mariadb-check
3+
usr/share/man/man1/mysql.1.gz usr/share/man/man1/mariadb.1.gz
4+
usr/share/man/man1/mysqlcheck.1.gz usr/share/man/man1/mariadb-check.1.gz

debian/mariadb-server-10.4.install

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,9 +88,9 @@ usr/share/man/man1/replace.1
8888
usr/share/man/man1/resolve_stack_dump.1
8989
usr/share/man/man1/resolveip.1
9090
usr/share/man/man1/wsrep_sst_common.1
91+
usr/share/man/man1/wsrep_sst_mariabackup.1
9192
usr/share/man/man1/wsrep_sst_mysqldump.1
9293
usr/share/man/man1/wsrep_sst_rsync.1
93-
usr/share/man/man1/wsrep_sst_mariabackup.1
9494
usr/share/mysql/errmsg-utf8.txt
9595
usr/share/mysql/fill_help_tables.sql
9696
usr/share/mysql/maria_add_gis_sp_bootstrap.sql

debian/mariadb-server-10.4.links

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
usr/bin/mysql_convert_table_format usr/bin/mariadb-convert-table-format
2+
usr/bin/mysql_secure_installation usr/bin/mariadb-secure-installation
3+
usr/bin/mysql_setpermission usr/bin/mariadb-setpermission
4+
usr/bin/mysql_tzinfo_to_sql usr/bin/mariadb-tzinfo-to-sql
5+
usr/bin/mysqld_multi usr/bin/mariadb-multi
6+
usr/bin/mysqld_safe usr/bin/mariadb-safe
7+
usr/bin/mysqld_safe_helper usr/bin/mariadb-safe-helper
8+
usr/bin/mysqlhotcopy usr/bin/mariadb-hotcopy
9+
usr/bin/mysqlshow usr/bin/mariadb-show
10+
usr/share/man/man1/mysql_convert_table_format.1.gz usr/share/man/man1/mariadb-convert-table-format.1.gz
11+
usr/share/man/man1/mysql_secure_installation.1.gz usr/share/man/man1/mariadb-secure-installation.1.gz
12+
usr/share/man/man1/mysql_setpermission.1.gz usr/share/man/man1/mariadb-setpermission.1.gz
13+
usr/share/man/man1/mysql_tzinfo_to_sql.1.gz usr/share/man/man1/mariadb-tzinfo-to-sql.1.gz
14+
usr/share/man/man1/mysqld_multi.1.gz usr/share/man/man1/mariadb-multi.1.gz
15+
usr/share/man/man1/mysqld_safe.1.gz usr/share/man/man1/mariadb-safe.1.gz
16+
usr/share/man/man1/mysqld_safe_helper.1.gz usr/share/man/man1/mariadb-safe-helper.1.gz
17+
usr/share/man/man1/mysqlhotcopy.1.gz usr/share/man/man1/mariadb-hotcopy.1.gz
18+
usr/share/man/man1/mysqlshow.1.gz usr/share/man/man1/mariadb-show.1.gz

debian/mariadb-server-core-10.4.links

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
usr/bin/mysql_install_db usr/bin/mariadb-install-db
2+
usr/bin/mysql_upgrade usr/bin/mariadb-upgrade
3+
usr/share/man/man1/mysql_install_db.1.gz usr/share/man/man1/mariadb-install-db.1.gz
4+
usr/share/man/man1/mysql_upgrade.1.gz usr/share/man/man1/mariadb-upgrade-db.1.gz

0 commit comments

Comments
 (0)