summaryrefslogtreecommitdiffstats
path: root/cmake
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-07-01 18:15:00 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-07-01 18:15:00 +0000
commita2a2e32c02643a0cec111511220227703fda1cd5 (patch)
tree69cc2b631234c2a8e026b9cd4d72676c61c594df /cmake
parentReleasing progress-linux version 1:10.11.8-1~progress7.99u1. (diff)
downloadmariadb-a2a2e32c02643a0cec111511220227703fda1cd5.tar.xz
mariadb-a2a2e32c02643a0cec111511220227703fda1cd5.zip
Merging upstream version 1:11.4.2.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'cmake')
-rw-r--r--cmake/configure.pl2
-rw-r--r--cmake/cpack_rpm.cmake40
-rw-r--r--cmake/create_initial_db.cmake4
-rw-r--r--cmake/install_layout.cmake16
-rw-r--r--cmake/install_macros.cmake58
-rw-r--r--cmake/mysql_add_executable.cmake2
-rw-r--r--cmake/os/WindowsCache.cmake2
-rw-r--r--cmake/plugin.cmake5
-rw-r--r--cmake/ssl.cmake8
9 files changed, 69 insertions, 68 deletions
diff --git a/cmake/configure.pl b/cmake/configure.pl
index 4085110b..87099169 100644
--- a/cmake/configure.pl
+++ b/cmake/configure.pl
@@ -190,7 +190,7 @@ foreach my $option (@ARGV)
$cmakeargs = $cmakeargs." -DWITH_SSL=system";
next;
}
- if($option =~ /with-ssl$/)
+ if($option =~ /with-ssl$/ || $option =~ /with-ssl=bundled/)
{
$cmakeargs = $cmakeargs." -DWITH_SSL=bundled";
next;
diff --git a/cmake/cpack_rpm.cmake b/cmake/cpack_rpm.cmake
index 030360b9..19915b60 100644
--- a/cmake/cpack_rpm.cmake
+++ b/cmake/cpack_rpm.cmake
@@ -10,28 +10,27 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8.7)
SET(CPACK_RPM_COMPONENT_INSTALL ON)
SET(CPACK_COMPONENT_SERVER_GROUP "server")
-SET(CPACK_COMPONENT_MANPAGESSERVER_GROUP "server")
SET(CPACK_COMPONENT_INIFILES_GROUP "server")
SET(CPACK_COMPONENT_SERVER_SCRIPTS_GROUP "server")
SET(CPACK_COMPONENT_SUPPORTFILES_GROUP "server")
SET(CPACK_COMPONENT_DEVELOPMENT_GROUP "devel")
+SET(CPACK_COMPONENT_DEVELOPMENTSYMLINKS_GROUP "devel")
SET(CPACK_COMPONENT_MANPAGESDEVELOPMENT_GROUP "devel")
SET(CPACK_COMPONENT_TEST_GROUP "test")
-SET(CPACK_COMPONENT_MANPAGESTEST_GROUP "test")
+SET(CPACK_COMPONENT_TESTSYMLINKS_GROUP "test")
SET(CPACK_COMPONENT_CLIENT_GROUP "client")
-SET(CPACK_COMPONENT_MANPAGESCLIENT_GROUP "client")
SET(CPACK_COMPONENT_README_GROUP "server")
SET(CPACK_COMPONENT_SHAREDLIBRARIES_GROUP "shared")
SET(CPACK_COMPONENT_COMMON_GROUP "common")
SET(CPACK_COMPONENT_CLIENTPLUGINS_GROUP "common")
SET(CPACK_COMPONENT_COMPAT_GROUP "compat")
SET(CPACK_COMPONENT_BACKUP_GROUP "backup")
+SET(CPACK_COMPONENT_BACKUPSYMLINKS_GROUP "backup")
-SET(CPACK_COMPONENTS_ALL Server ManPagesServer IniFiles Server_Scripts
- SupportFiles Development ManPagesDevelopment
- ManPagesTest Readme ManPagesClient Test
- Common Client SharedLibraries ClientPlugins
- backup
+SET(CPACK_COMPONENTS_ALL Server IniFiles Server_Scripts SupportFiles
+ Development ManPagesDevelopment Readme Test Common
+ Client SharedLibraries ClientPlugins Backup
+ TestSymlinks BackupSymlinks DevelopmentSymlinks
)
SET(CPACK_RPM_PACKAGE_NAME ${CPACK_PACKAGE_NAME})
@@ -108,6 +107,7 @@ SET(CPACK_RPM_SPEC_MORE_DEFINE "
%define _sysconfdir ${INSTALL_SYSCONFDIR}
%define restart_flag_dir %{_localstatedir}/lib/rpm-state/mariadb
%define restart_flag %{restart_flag_dir}/need-restart
+%define _lto_cflags %{nil}
%define pretrans %{nil}
@@ -182,6 +182,24 @@ MACRO(SETA var)
ENDFOREACH()
ENDMACRO(SETA)
+FOREACH(SYM_COMPONENT Server Client)
+ STRING(TOLOWER ${SYM_COMPONENT}-compat SYM)
+ SET(SYMCOMP ${SYM_COMPONENT}Symlinks)
+ STRING(TOUPPER ${SYMCOMP} SYMCOMP_UPPER)
+ SET(CPACK_COMPONENT_${SYMCOMP_UPPER}_GROUP "${SYM}")
+ SET(CPACK_COMPONENTS_ALL "${CPACK_COMPONENTS_ALL}" "${SYMCOMP}")
+ SET(CPACK_RPM_${SYM}_PACKAGE_SUMMARY "MySQL compatible symlinks for MariaDB database ${SYM_COMPONENT} binaries/scripts")
+ SET(CPACK_RPM_${SYM}_PACKAGE_DESCRIPTION "${CPACK_RPM_PACKAGE_DESCRIPTION}")
+ SET(CPACK_RPM_${SYM}_PACKAGE_ARCHITECTURE "noarch")
+ SET(CPACK_RPM_${SYM}_USER_FILELIST ${ignored})
+ STRING(TOLOWER ${SYM_COMPONENT} SYM_COMPONENT_LOWER)
+ SET(CPACK_RPM_${SYM}_PACKAGE_REQUIRES "MariaDB-${SYM_COMPONENT_LOWER} >= 11.0.0")
+ SETA(CPACK_RPM_${SYM_COMPONENT_LOWER}_PACKAGE_RECOMMENDS "MariaDB-${SYM}")
+ENDFOREACH()
+
+SETA(CPACK_RPM_client_symlinks_PACKAGE_CONFLICTS
+ "MariaDB-server < 11.0.0")
+
SETA(CPACK_RPM_client_PACKAGE_OBSOLETES
"mysql-client"
"MySQL-client"
@@ -191,7 +209,9 @@ SETA(CPACK_RPM_client_PACKAGE_PROVIDES
"mysql-client"
"mytop")
SETA(CPACK_RPM_client_PACKAGE_CONFLICTS
- "MariaDB-server < 10.6.0")
+ "MariaDB-server < 11.0.0")
+SETA(CPACK_RPM_client_PACKAGE_REQUIRES
+ "MariaDB-common")
SETA(CPACK_RPM_common_PACKAGE_CONFLICTS
"MariaDB-server < 10.6.1")
@@ -223,7 +243,7 @@ SETA(CPACK_RPM_test_PACKAGE_PROVIDES
SETA(CPACK_RPM_server_PACKAGE_REQUIRES
"MariaDB-common >= 10.6.1"
- "MariaDB-client >= 10.6.1")
+ "MariaDB-client >= 11.0.0")
IF(WITH_WSREP)
SETA(CPACK_RPM_server_PACKAGE_REQUIRES
diff --git a/cmake/create_initial_db.cmake b/cmake/create_initial_db.cmake
index ba2b25c0..0209d840 100644
--- a/cmake/create_initial_db.cmake
+++ b/cmake/create_initial_db.cmake
@@ -30,7 +30,7 @@ ENDIF()
# Create bootstrapper SQL script
FILE(WRITE bootstrap.sql "use mysql;\n" )
-FOREACH(FILENAME mysql_system_tables.sql mysql_system_tables_data.sql mysql_performance_tables.sql)
+FOREACH(FILENAME mariadb_system_tables.sql mariadb_system_tables_data.sql mariadb_performance_tables.sql)
FILE(STRINGS ${TOP_SRCDIR}/scripts/${FILENAME} CONTENTS)
FOREACH(STR ${CONTENTS})
IF(NOT STR MATCHES "@current_hostname")
@@ -39,7 +39,7 @@ FOREACH(FILENAME mysql_system_tables.sql mysql_system_tables_data.sql mysql_perf
ENDFOREACH()
ENDFOREACH()
-FOREACH(FILENAME ${TOP_SRCDIR}/scripts/fill_help_tables.sql ${TOP_SRCDIR}/scripts/mysql_sys_schema.sql)
+FOREACH(FILENAME ${TOP_SRCDIR}/scripts/fill_help_tables.sql ${TOP_SRCDIR}/scripts/mariadb_sys_schema.sql)
FILE(READ ${FILENAME} CONTENTS)
FILE(APPEND bootstrap.sql "${CONTENTS}")
ENDFOREACH()
diff --git a/cmake/install_layout.cmake b/cmake/install_layout.cmake
index 877b147b..eb969679 100644
--- a/cmake/install_layout.cmake
+++ b/cmake/install_layout.cmake
@@ -119,7 +119,7 @@ SET(INSTALL_INFODIR_STANDALONE "docs")
#
SET(INSTALL_SHAREDIR_STANDALONE "share")
SET(INSTALL_MYSQLSHAREDIR_STANDALONE "share")
-SET(INSTALL_MYSQLTESTDIR_STANDALONE "mysql-test")
+SET(INSTALL_MYSQLTESTDIR_STANDALONE "mariadb-test")
SET(INSTALL_SQLBENCHDIR_STANDALONE ".")
SET(INSTALL_SUPPORTFILESDIR_STANDALONE "support-files")
#
@@ -152,10 +152,10 @@ SET(INSTALL_INFODIR_RPM "share/info")
SET(INSTALL_MANDIR_RPM "share/man")
#
SET(INSTALL_SHAREDIR_RPM "share")
-SET(INSTALL_MYSQLSHAREDIR_RPM "share/mysql")
-SET(INSTALL_MYSQLTESTDIR_RPM "share/mysql-test")
+SET(INSTALL_MYSQLSHAREDIR_RPM "share/mariadb")
+SET(INSTALL_MYSQLTESTDIR_RPM "share/mariadb-test")
SET(INSTALL_SQLBENCHDIR_RPM "")
-SET(INSTALL_SUPPORTFILESDIR_RPM "share/mysql")
+SET(INSTALL_SUPPORTFILESDIR_RPM "share/mariadb")
#
SET(INSTALL_MYSQLDATADIR_RPM "/var/lib/mysql")
@@ -186,10 +186,10 @@ SET(INSTALL_MANDIR_DEB "share/man")
SET(INSTALL_INFODIR_DEB "share/info")
#
SET(INSTALL_SHAREDIR_DEB "share")
-SET(INSTALL_MYSQLSHAREDIR_DEB "share/mysql")
-SET(INSTALL_MYSQLTESTDIR_DEB "share/mysql/mysql-test")
+SET(INSTALL_MYSQLSHAREDIR_DEB "share/mariadb")
+SET(INSTALL_MYSQLTESTDIR_DEB "share/mariadb/mariadb-test")
SET(INSTALL_SQLBENCHDIR_DEB ".")
-SET(INSTALL_SUPPORTFILESDIR_DEB "share/mysql")
+SET(INSTALL_SUPPORTFILESDIR_DEB "share/mariadb")
#
SET(INSTALL_MYSQLDATADIR_DEB "/var/lib/mysql")
@@ -219,7 +219,7 @@ SET(INSTALL_INFODIR_SVR4 "docs")
#
SET(INSTALL_SHAREDIR_SVR4 "share")
SET(INSTALL_MYSQLSHAREDIR_SVR4 "share")
-SET(INSTALL_MYSQLTESTDIR_SVR4 "mysql-test")
+SET(INSTALL_MYSQLTESTDIR_SVR4 "mariadb-test")
SET(INSTALL_SQLBENCHDIR_SVR4 ".")
SET(INSTALL_SUPPORTFILESDIR_SVR4 "support-files")
#
diff --git a/cmake/install_macros.cmake b/cmake/install_macros.cmake
index f14c0145..0c07c5c7 100644
--- a/cmake/install_macros.cmake
+++ b/cmake/install_macros.cmake
@@ -51,43 +51,27 @@ FUNCTION (INSTALL_DEBUG_SYMBOLS)
ENDIF()
ENDFUNCTION()
-# Installs manpage for given file (either script or executable)
-#
-FUNCTION(INSTALL_MANPAGE file)
- IF(NOT UNIX)
+FUNCTION(INSTALL_MANPAGES COMP)
+ IF(WIN32)
RETURN()
ENDIF()
- GET_FILENAME_COMPONENT(file_name "${file}" NAME)
- SET(GLOB_EXPR
- ${CMAKE_SOURCE_DIR}/man/*${file}man.1*
- ${CMAKE_SOURCE_DIR}/man/*${file}man.8*
- ${CMAKE_BINARY_DIR}/man/*${file}man.1*
- ${CMAKE_BINARY_DIR}/man/*${file}man.8*
- )
- IF(MYSQL_DOC_DIR)
- SET(GLOB_EXPR
- ${MYSQL_DOC_DIR}/man/*${file}man.1*
- ${MYSQL_DOC_DIR}/man/*${file}man.8*
- ${MYSQL_DOC_DIR}/man/*${file}.1*
- ${MYSQL_DOC_DIR}/man/*${file}.8*
- ${GLOB_EXPR}
- )
- ENDIF()
-
- FILE(GLOB_RECURSE MANPAGES ${GLOB_EXPR})
-
- IF(MANPAGES)
- LIST(GET MANPAGES 0 MANPAGE)
- STRING(REPLACE "${file}man.1" "${file}.1" MANPAGE "${MANPAGE}")
- STRING(REPLACE "${file}man.8" "${file}.8" MANPAGE "${MANPAGE}")
- IF(MANPAGE MATCHES "${file}.1")
- SET(SECTION man1)
- ELSE()
- SET(SECTION man8)
+ FOREACH(f ${ARGN})
+ STRING(REGEX REPLACE "^.*\\.([1-8])$" "\\1" n ${f})
+ IF(NOT ${n})
+ MESSAGE(FATAL_ERROR "Wrong filename in INSTALL_MANPAGE(${f})")
ENDIF()
- INSTALL(FILES "${MANPAGE}" DESTINATION "${INSTALL_MANDIR}/${SECTION}"
- COMPONENT ManPages)
- ENDIF()
+ INSTALL(FILES ${f} DESTINATION ${INSTALL_MANDIR}/man${n} COMPONENT ${COMP})
+
+ STRING(REGEX REPLACE "\\.${n}$" "" f ${f})
+ LIST(FIND MARIADB_SYMLINK_FROMS ${f} i)
+ IF(i GREATER -1)
+ LIST(GET MARIADB_SYMLINK_TOS ${i} s)
+ SET(dst "${CMAKE_CURRENT_BINARY_DIR}/${s}.${n}")
+ FILE(WRITE ${dst} ".so man${n}/${f}.${n}")
+ INSTALL(FILES ${dst} DESTINATION ${INSTALL_MANDIR}/man${n}
+ COMPONENT ${COMP}Symlinks)
+ ENDIF()
+ ENDFOREACH()
ENDFUNCTION()
FUNCTION(INSTALL_SCRIPT)
@@ -109,8 +93,6 @@ FUNCTION(INSTALL_SCRIPT)
ENDIF()
INSTALL(PROGRAMS ${script} DESTINATION ${ARG_DESTINATION} COMPONENT ${COMP})
- get_filename_component(dest "${script}" NAME)
- INSTALL_MANPAGE(${dest})
ENDFUNCTION()
@@ -246,10 +228,6 @@ FUNCTION(MYSQL_INSTALL_TARGETS)
IF(SIGNCODE)
SIGN_TARGET(${target} ${COMP})
ENDIF()
- # Install man pages on Unix
- IF(UNIX)
- INSTALL_MANPAGE($<TARGET_FILE:${target}>)
- ENDIF()
ENDFOREACH()
INSTALL(TARGETS ${TARGETS} DESTINATION ${ARG_DESTINATION} ${COMP})
diff --git a/cmake/mysql_add_executable.cmake b/cmake/mysql_add_executable.cmake
index 06bdfce1..f9faabab 100644
--- a/cmake/mysql_add_executable.cmake
+++ b/cmake/mysql_add_executable.cmake
@@ -106,7 +106,7 @@ FUNCTION (MYSQL_ADD_EXECUTABLE)
${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${link}
DESTINATION
${ARG_DESTINATION}
- COMPONENT ${COMP})
+ COMPONENT ${COMP}Symlinks)
ELSE()
# Windows note:
# Here, hardlinks are used, because cmake can't install symlinks.
diff --git a/cmake/os/WindowsCache.cmake b/cmake/os/WindowsCache.cmake
index c1048661..e224fcbd 100644
--- a/cmake/os/WindowsCache.cmake
+++ b/cmake/os/WindowsCache.cmake
@@ -22,7 +22,6 @@
IF(MSVC)
SET(BFD_H_EXISTS 0 CACHE INTERNAL "")
SET(HAVE_ACCESS 1 CACHE INTERNAL "")
-SET(HAVE_ALARM CACHE INTERNAL "")
SET(HAVE_ALLOCA_H CACHE INTERNAL "")
SET(HAVE_ARPA_INET_H CACHE INTERNAL "")
SET(HAVE_BACKTRACE CACHE INTERNAL "")
@@ -313,6 +312,7 @@ SET(STRUCT_DIRENT_HAS_D_NAMLEN CACHE INTERNAL "")
SET(HAVE_UCONTEXT_H CACHE INTERNAL "")
SET(STRUCT_TIMESPEC_HAS_TV_SEC 1 CACHE INTERNAL "")
SET(STRUCT_TIMESPEC_HAS_TV_NSEC 1 CACHE INTERNAL "")
+SET(STRUCT_TM_HAS_TM_GMTOFF 0 CACHE INTERNAL "")
SET(HAVE_UNISTD CACHE INTERNAL "")
SET(HAVE_SIGNAL_H CACHE INTERNAL "")
SET(HAVE_LZ4_H CACHE INTERNAL "")
diff --git a/cmake/plugin.cmake b/cmake/plugin.cmake
index 378fc5f5..43b9db15 100644
--- a/cmake/plugin.cmake
+++ b/cmake/plugin.cmake
@@ -250,7 +250,10 @@ MACRO(MYSQL_ADD_PLUGIN)
ELSE()
SET(ver "")
ENDIF()
- SET(CPACK_COMPONENTS_ALL ${CPACK_COMPONENTS_ALL} ${ARG_COMPONENT})
+ STRING(TOUPPER ${ARG_COMPONENT} ARG_COMPONENT_UPPER)
+ SET(CPACK_COMPONENT_${ARG_COMPONENT_UPPER}SYMLINKS_GROUP ${ARG_COMPONENT} PARENT_SCOPE)
+ SET(CPACK_COMPONENT_${ARG_COMPONENT_UPPER}_GROUP ${ARG_COMPONENT} PARENT_SCOPE)
+ SET(CPACK_COMPONENTS_ALL ${CPACK_COMPONENTS_ALL} ${ARG_COMPONENT} ${ARG_COMPONENT}Symlinks)
SET(CPACK_COMPONENTS_ALL ${CPACK_COMPONENTS_ALL} PARENT_SCOPE)
IF (NOT ARG_CLIENT)
diff --git a/cmake/ssl.cmake b/cmake/ssl.cmake
index 8be48e2a..a050a2ba 100644
--- a/cmake/ssl.cmake
+++ b/cmake/ssl.cmake
@@ -57,10 +57,10 @@ MACRO (MYSQL_USE_BUNDLED_SSL)
SET(SSL_INCLUDE_DIRS ${INC_DIRS})
SET(SSL_DEFINES "-DHAVE_OPENSSL -DHAVE_WOLFSSL -DWOLFSSL_USER_SETTINGS")
SET(HAVE_ERR_remove_thread_state ON CACHE INTERNAL "wolfssl doesn't have ERR_remove_thread_state")
- SET(HAVE_EncryptAes128Ctr OFF CACHE INTERNAL "wolfssl does support AES-CTR, but differently from openssl")
+ SET(HAVE_EncryptAes128Ctr ON CACHE INTERNAL "wolfssl does support AES-CTR")
SET(HAVE_EncryptAes128Gcm OFF CACHE INTERNAL "wolfssl does not support AES-GCM")
- SET(HAVE_X509_check_host ON CACHE INTERNAL "wolfssl does support X509_check_host")
SET(HAVE_des ON CACHE INTERNAL "wolfssl does support DES API")
+ SET(HAVE_hkdf ON CACHE INTERNAL "wolfssl does support EVP_PKEY API")
CHANGE_SSL_SETTINGS("bundled")
ADD_SUBDIRECTORY(extra/wolfssl)
MESSAGE_ONCE(SSL_LIBRARIES "SSL_LIBRARIES = ${SSL_LIBRARIES}")
@@ -157,10 +157,10 @@ MACRO (MYSQL_CHECK_SSL)
HAVE_EncryptAes128Ctr)
CHECK_SYMBOL_EXISTS(EVP_aes_128_gcm "openssl/evp.h"
HAVE_EncryptAes128Gcm)
- CHECK_SYMBOL_EXISTS(X509_check_host "openssl/x509v3.h"
- HAVE_X509_check_host)
CHECK_SYMBOL_EXISTS(DES_set_key_unchecked "openssl/des.h"
HAVE_des)
+ CHECK_SYMBOL_EXISTS(EVP_PKEY_CTX_set_hkdf_md "string.h;stdarg.h;openssl/kdf.h"
+ HAVE_hkdf)
SET(CMAKE_REQUIRED_INCLUDES)
SET(CMAKE_REQUIRED_LIBRARIES)
SET(CMAKE_REQUIRED_DEFINITIONS)