diff --git a/databases/mysql80-client/Makefile b/databases/mysql80-client/Makefile index 32d382f0c8f9..9796cfa9bafa 100644 --- a/databases/mysql80-client/Makefile +++ b/databases/mysql80-client/Makefile @@ -19,7 +19,7 @@ CONFLICTS_INSTALL= mysql8[1-9]-client \ mariadb[0-9][0-9]-client \ percona[0-9][0-9]-client -CMAKE_ARGS+= -DWITHOUT_SERVER=1 -DINSTALL_SUPPORTFILESDIR=0 -DWITH_AUTHENTICATION_FIDO=ON +CMAKE_ARGS+= -DWITHOUT_SERVER=1 -DINSTALL_SUPPORTFILESDIR=0 -DWITH_AUTHENTICATION_FIDO=ON -DWITH_FIDO=bundled USE_LDCONFIG+= ${PREFIX}/lib/mysql diff --git a/databases/mysql80-server/Makefile b/databases/mysql80-server/Makefile index 13db1af59e53..f65fda8334e2 100644 --- a/databases/mysql80-server/Makefile +++ b/databases/mysql80-server/Makefile @@ -1,7 +1,7 @@ # Created by: Mahdi Mokhtari PORTNAME?= mysql -PORTVERSION= 8.0.27 +PORTVERSION= 8.0.28 PORTREVISION?= 0 CATEGORIES= databases MASTER_SITES= MYSQL/MySQL-8.0 @@ -86,7 +86,8 @@ CMAKE_ARGS+= -DINSTALL_LAYOUT=FREEBSD \ -DWITH_PROTOBUF=system \ -DWITH_SSL=system \ -DBUILD_BUNDLED_ZLIB=0 \ - -DBUILD_BUNDLED_LZ4=0 + -DBUILD_BUNDLED_LZ4=0 \ + -DWITH_FIDO=bundled # The Mroonga, RocksDB, and TokuDB storage engines are disabled. # Mroonga is only buildable on little endian archs. diff --git a/databases/mysql80-server/distinfo b/databases/mysql80-server/distinfo index 55029d0a7a90..b05a8225c312 100644 --- a/databases/mysql80-server/distinfo +++ b/databases/mysql80-server/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1635786797 -SHA256 (mysql-boost-8.0.27.tar.gz) = 74b5bc6ff88fe225560174a24b7d5ff139f4c17271c43000dbcf3dcc9507b3f9 -SIZE (mysql-boost-8.0.27.tar.gz) = 292184025 +TIMESTAMP = 1642464423 +SHA256 (mysql-boost-8.0.28.tar.gz) = 6dd0303998e70066d36905bd8fef1c01228ea182dbfbabc6c22ebacdbf8b5941 +SIZE (mysql-boost-8.0.28.tar.gz) = 298044027 diff --git a/databases/mysql80-server/files/extra-patch-config.h.cmake b/databases/mysql80-server/files/extra-patch-config.h.cmake index 3ac1add1b9ce..e69de29bb2d1 100644 --- a/databases/mysql80-server/files/extra-patch-config.h.cmake +++ b/databases/mysql80-server/files/extra-patch-config.h.cmake @@ -1,12 +0,0 @@ ---- config.h.cmake.orig 2014-12-05 16:24:02 UTC -+++ config.h.cmake -@@ -151,7 +151,8 @@ - #cmakedefine HAVE_FESETROUND 1 - #cmakedefine HAVE_FINITE 1 - #cmakedefine HAVE_FP_EXCEPT 1 --#cmakedefine HAVE_FPSETMASK 1 -+#cmakedefine HAVE_FPSETMASK 0 -+#cmakedefine HAVE_FEDISABLEEXCEPT 1 - #cmakedefine HAVE_FSEEKO 1 - #cmakedefine HAVE_FSYNC 1 - #cmakedefine HAVE_FTIME 1 diff --git a/databases/mysql80-server/files/patch-CMakeLists.txt b/databases/mysql80-server/files/patch-CMakeLists.txt index 0b4f88bfd853..e977c8863cc0 100644 --- a/databases/mysql80-server/files/patch-CMakeLists.txt +++ b/databases/mysql80-server/files/patch-CMakeLists.txt @@ -1,6 +1,6 @@ ---- CMakeLists.txt.orig 2021-09-28 11:46:34 UTC +--- CMakeLists.txt.orig 2021-12-17 16:07:27 UTC +++ CMakeLists.txt -@@ -1647,7 +1647,7 @@ IF(LINUX AND KNOWN_CUSTOM_LIBRARIES) +@@ -1665,7 +1665,7 @@ IF(LINUX AND KNOWN_CUSTOM_LIBRARIES) ENDIF() IF(WITH_AUTHENTICATION_LDAP) @@ -9,7 +9,7 @@ # LDAP / SASL / KERBEROS / SSL must all be "system" or "custom", not a mix. IF(WITH_LDAP STREQUAL "system" OR WITH_SASL STREQUAL "system" OR -@@ -1696,10 +1696,10 @@ IF(WITH_AUTHENTICATION_KERBEROS) +@@ -1714,10 +1714,10 @@ IF(WITH_AUTHENTICATION_KERBEROS) ENDIF() ENDIF() @@ -23,9 +23,9 @@ # Add lz4 library MYSQL_CHECK_LZ4() # Add icu library -@@ -1869,7 +1869,9 @@ OPTION(WITH_HYPERGRAPH_OPTIMIZER - ${WITH_HYPERGRAPH_OPTIMIZER_DEFAULT} - ) +@@ -1917,7 +1917,9 @@ ADD_CUSTOM_TARGET(plugin_all) + # Utility target to build every target added with MYSQL_ADD_COMPONENT. + ADD_CUSTOM_TARGET(component_all) -ADD_SUBDIRECTORY(include) +IF(NOT WITHOUT_CLIENTLIBS) @@ -34,7 +34,7 @@ ADD_SUBDIRECTORY(strings) ADD_SUBDIRECTORY(vio) ADD_SUBDIRECTORY(mysys) -@@ -1913,12 +1915,17 @@ IF(WITH_UNIT_TESTS) +@@ -1962,12 +1964,17 @@ IF(WITH_UNIT_TESTS) ADD_SUBDIRECTORY(unittest/mytap/t) ENDIF() @@ -54,7 +54,7 @@ ADD_SUBDIRECTORY(testclients) ADD_SUBDIRECTORY(sql) ENDIF() -@@ -1971,11 +1978,11 @@ ENDIF() +@@ -2020,11 +2027,11 @@ ENDIF() # scripts/mysql_config depends on client and server targets loaded above. # It is referenced by some of the directories below, so we insert it here. ADD_SUBDIRECTORY(scripts) @@ -67,7 +67,7 @@ IF(WITH_INTERNAL) ADD_SUBDIRECTORY(internal) ENDIF() -@@ -2084,6 +2091,7 @@ IF(PACK_SEPARATE_COMPONENTS) +@@ -2134,6 +2141,7 @@ IF(PACK_SEPARATE_COMPONENTS) SET(CPACK_COMPONENTS_GROUPING IGNORE) ENDIF() @@ -75,7 +75,7 @@ IF(UNIX) INSTALL(FILES Docs/mysql.info -@@ -2118,6 +2126,7 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM") +@@ -2168,6 +2176,7 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM") PATTERN "sp-imp-spec.txt" EXCLUDE PATTERN "README.build" EXCLUDE ) diff --git a/databases/mysql80-server/files/patch-client_CMakeLists.txt b/databases/mysql80-server/files/patch-client_CMakeLists.txt index 41b4925911bc..449c999aa99b 100644 --- a/databases/mysql80-server/files/patch-client_CMakeLists.txt +++ b/databases/mysql80-server/files/patch-client_CMakeLists.txt @@ -1,4 +1,4 @@ ---- client/CMakeLists.txt.orig 2021-09-28 11:46:34 UTC +--- client/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC +++ client/CMakeLists.txt @@ -28,10 +28,13 @@ DISABLE_MISSING_PROFILE_WARNING() ## Subdirectory with common client code. diff --git a/databases/mysql80-server/files/patch-cmake_install_layout.cmake b/databases/mysql80-server/files/patch-cmake_install_layout.cmake index 927729ddd20b..e69de29bb2d1 100644 --- a/databases/mysql80-server/files/patch-cmake_install_layout.cmake +++ b/databases/mysql80-server/files/patch-cmake_install_layout.cmake @@ -1,95 +0,0 @@ ---- cmake/install_layout.cmake.orig 2019-12-09 19:53:17 UTC -+++ cmake/install_layout.cmake -@@ -41,6 +41,10 @@ - # Build with prefix=/usr/local/mysql, create tarball with install prefix="." - # and relative links. - # -+# FREEBSD -+# Build with prefix=/usr/local, create tarball with install prefix="." -+# and relative links. -+# - # To force a directory layout, use -DINSTALL_LAYOUT=. - # - # The default is STANDALONE. -@@ -80,7 +84,7 @@ IF(NOT INSTALL_LAYOUT) - ENDIF() - - SET(INSTALL_LAYOUT "${DEFAULT_INSTALL_LAYOUT}" -- CACHE STRING "Installation directory layout. Options are: TARGZ (as in tar.gz installer), STANDALONE, RPM, DEB, SVR4" -+ CACHE STRING "Installation directory layout. Options are: TARGZ (as in tar.gz installer), STANDALONE, FREEBSD, RPM, DEB, SVR4" - ) - - IF(UNIX) -@@ -98,7 +102,7 @@ IF(UNIX) - CACHE PATH "install prefix" FORCE) - ENDIF() - SET(VALID_INSTALL_LAYOUTS -- "RPM" "DEB" "SVR4" "TARGZ" "STANDALONE") -+ "RPM" "DEB" "SVR4" "TARGZ" "FREEBSD" "STANDALONE") - LIST(FIND VALID_INSTALL_LAYOUTS "${INSTALL_LAYOUT}" ind) - IF(ind EQUAL -1) - MESSAGE(FATAL_ERROR "Invalid INSTALL_LAYOUT parameter:${INSTALL_LAYOUT}." -@@ -167,6 +171,32 @@ SET(INSTALL_MYSQLKEYRINGDIR_STANDALONE "keyring") - SET(INSTALL_SECURE_FILE_PRIVDIR_STANDALONE ${secure_file_priv_path}) - - # -+# FREEBSD layout -+# -+SET(INSTALL_BINDIR_FREEBSD "bin") -+SET(INSTALL_SBINDIR_FREEBSD "bin") -+# -+SET(INSTALL_LIBDIR_FREEBSD "lib") -+SET(INSTALL_PRIV_LIBDIR_FREEBSD "lib/private") -+SET(INSTALL_PLUGINDIR_FREEBSD "lib/plugin") -+# -+SET(INSTALL_INCLUDEDIR_FREEBSD "include") -+# -+SET(INSTALL_DOCDIR_FREEBSD "docs") -+SET(INSTALL_DOCREADMEDIR_FREEBSD ".") -+SET(INSTALL_MANDIR_FREEBSD "man") -+SET(INSTALL_INFODIR_FREEBSD "docs") -+# -+SET(INSTALL_SHAREDIR_FREEBSD "share") -+SET(INSTALL_MYSQLSHAREDIR_FREEBSD "share") -+SET(INSTALL_MYSQLTESTDIR_FREEBSD "mysql-test") -+SET(INSTALL_SUPPORTFILESDIR_FREEBSD "support-files") -+# -+SET(INSTALL_MYSQLDATADIR_FREEBSD "data") -+SET(INSTALL_MYSQLKEYRINGDIR_FREEBSD "keyring") -+SET(INSTALL_SECURE_FILE_PRIVDIR_FREEBSD ${secure_file_priv_path}) -+ -+# - # TARGZ layout - # - SET(INSTALL_BINDIR_TARGZ "bin") -@@ -361,7 +391,7 @@ ENDIF() - SET(ROUTER_INSTALL_LAYOUT "${DEFAULT_ROUTER_INSTALL_LAYOUT}" - CACHE - STRING -- "Installation directory layout. Options are: STANDALONE RPM DEB SVR4 TARGZ") -+ "Installation directory layout. Options are: STANDALONE FREEBSD RPM DEB SVR4 TARGZ") - - # If we are shared STANDALONE with the the server, we shouldn't write - # into the server's data/ as that would create a "schemadir" in -@@ -405,6 +435,21 @@ FOREACH(var - ) - SET(ROUTER_INSTALL_${var}DIR_TARGZ ${ROUTER_INSTALL_${var}DIR_STANDALONE}) - ENDFOREACH() -+ -+# -+# FreeBSD layout -+# -+SET(ROUTER_INSTALL_CONFIGDIR_FREEBSD "/usr/local/etc/mysqlrouter") -+SET(ROUTER_INSTALL_DATADIR_FREEBSD "/var/db/mysqlrouter") -+SET(ROUTER_INSTALL_LOGDIR_FREEBSD "/var/log/mysqlrouter") -+SET(ROUTER_INSTALL_RUNTIMEDIR_FREEBSD "/var/run/mysqlrouter") -+ -+SET(ROUTER_INSTALL_BINDIR_FREEBSD "bin") -+SET(ROUTER_INSTALL_LIBDIR_FREEBSD "lib/mysql") -+SET(ROUTER_INSTALL_PLUGINDIR_FREEBSD "lib/mysql/mysqlrouter") -+SET(ROUTER_INSTALL_LOGROTATEDIR_FREEBSD "etc/logrotate.d") -+SET(ROUTER_INSTALL_LOGROTATEFILE_FREEBSD "mysqlrouter") -+SET(ROUTER_INSTALL_DOCDIR_FREEBSD "share/mysqlrouter/docs") - - FOREACH(var - LOGROTATE diff --git a/databases/mysql80-server/files/patch-cmake_os_DragonFly.cmake b/databases/mysql80-server/files/patch-cmake_os_DragonFly.cmake index 83c154ee3bcf..43e2131744fe 100644 --- a/databases/mysql80-server/files/patch-cmake_os_DragonFly.cmake +++ b/databases/mysql80-server/files/patch-cmake_os_DragonFly.cmake @@ -1,4 +1,4 @@ ---- cmake/os/DragonFly.cmake.orig 2016-04-14 10:16:17 UTC +--- cmake/os/DragonFly.cmake.orig 2022-01-18 00:38:55 UTC +++ cmake/os/DragonFly.cmake @@ -0,0 +1,24 @@ +INCLUDE(CheckCSourceRuns) diff --git a/databases/mysql80-server/files/patch-cmake_os_FreeBSD.cmake b/databases/mysql80-server/files/patch-cmake_os_FreeBSD.cmake index 2f6f488d4abd..90629de01287 100644 --- a/databases/mysql80-server/files/patch-cmake_os_FreeBSD.cmake +++ b/databases/mysql80-server/files/patch-cmake_os_FreeBSD.cmake @@ -1,8 +1,8 @@ ---- cmake/os/FreeBSD.cmake.orig 2019-09-20 08:30:51 UTC +--- cmake/os/FreeBSD.cmake.orig 2021-12-17 16:07:27 UTC +++ cmake/os/FreeBSD.cmake -@@ -45,8 +45,20 @@ IF(NOT FORCE_UNSUPPORTED_COMPILER) - MESSAGE(FATAL_ERROR - "GCC 5.3 or newer is required (-dumpversion says ${GCC_VERSION})") +@@ -48,8 +48,20 @@ IF(NOT FORCE_UNSUPPORTED_COMPILER) + IF(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.1) + MESSAGE(FATAL_ERROR "GCC 7.1 or newer is required") ENDIF() - ELSE() - MESSAGE(FATAL_ERROR "Unsupported compiler!") diff --git a/databases/mysql80-server/files/patch-cmake_plugin.cmake b/databases/mysql80-server/files/patch-cmake_plugin.cmake index ecd2598f320e..874c450a4ef2 100644 --- a/databases/mysql80-server/files/patch-cmake_plugin.cmake +++ b/databases/mysql80-server/files/patch-cmake_plugin.cmake @@ -1,6 +1,6 @@ ---- cmake/plugin.cmake.orig 2019-09-20 08:30:51 UTC +--- cmake/plugin.cmake.orig 2021-12-17 16:07:27 UTC +++ cmake/plugin.cmake -@@ -230,15 +230,15 @@ MACRO(MYSQL_ADD_PLUGIN plugin_arg) +@@ -247,15 +247,15 @@ MACRO(MYSQL_ADD_PLUGIN plugin_arg) # For testing purposes, we need # <...>/lib/plugin/debug/authentication_ldap_sasl_client.so diff --git a/databases/mysql80-server/files/patch-cmake_ssl.cmake b/databases/mysql80-server/files/patch-cmake_ssl.cmake index 9173b842a952..e69de29bb2d1 100644 --- a/databases/mysql80-server/files/patch-cmake_ssl.cmake +++ b/databases/mysql80-server/files/patch-cmake_ssl.cmake @@ -1,29 +0,0 @@ ---- cmake/ssl.cmake.orig 2019-09-20 08:30:51 UTC -+++ cmake/ssl.cmake -@@ -199,7 +199,7 @@ MACRO (MYSQL_CHECK_SSL) - # Encoded as MNNFFPPS: major minor fix patch status - FILE(STRINGS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h" - OPENSSL_VERSION_NUMBER -- REGEX "^#[ ]*define[\t ]+OPENSSL_VERSION_NUMBER[\t ]+0x[0-9].*" -+ REGEX "^#[\t ]*define[\t ]+OPENSSL_VERSION_NUMBER[\t ]+0x[0-9].*" - ) - STRING(REGEX REPLACE - "^.*OPENSSL_VERSION_NUMBER[\t ]+0x([0-9]).*$" "\\1" -@@ -222,13 +222,14 @@ MACRO (MYSQL_CHECK_SSL) - OPENSSL_FIX_VERSION "${OPENSSL_VERSION_NUMBER}" - ) - ENDIF() -- IF("${OPENSSL_MAJOR_VERSION}.${OPENSSL_MINOR_VERSION}.${OPENSSL_FIX_VERSION}" VERSION_GREATER "1.1.0") -- ADD_DEFINITIONS(-DHAVE_TLSv13) -+ CHECK_SYMBOL_EXISTS(TLS1_3_VERSION "openssl/tls1.h" HAVE_TLS1_3_VERSION) -+ IF(HAVE_TLS1_3_VERSION) -+ #ADD_DEFINITIONS(-DHAVE_TLSv13) - ENDIF() - IF(OPENSSL_INCLUDE_DIR AND - OPENSSL_LIBRARY AND - CRYPTO_LIBRARY AND -- OPENSSL_MAJOR_VERSION STREQUAL "1" -+ OPENSSL_MAJOR_VERSION VERSION_GREATER_EQUAL "1" - ) - SET(OPENSSL_FOUND TRUE) - FIND_PROGRAM(OPENSSL_EXECUTABLE openssl diff --git a/databases/mysql80-server/files/patch-include_CMakeLists.txt b/databases/mysql80-server/files/patch-include_CMakeLists.txt index 96f88d8593aa..ae572dfc8056 100644 --- a/databases/mysql80-server/files/patch-include_CMakeLists.txt +++ b/databases/mysql80-server/files/patch-include_CMakeLists.txt @@ -1,4 +1,4 @@ ---- include/CMakeLists.txt.orig 2021-09-28 11:46:34 UTC +--- include/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC +++ include/CMakeLists.txt @@ -37,10 +37,182 @@ SET(HEADERS ${CMAKE_CURRENT_BINARY_DIR}/mysql_version.h diff --git a/databases/mysql80-server/files/patch-include_my__compare.h b/databases/mysql80-server/files/patch-include_my__compare.h index 83e2c6f371ca..e2644a314339 100644 --- a/databases/mysql80-server/files/patch-include_my__compare.h +++ b/databases/mysql80-server/files/patch-include_my__compare.h @@ -1,4 +1,4 @@ ---- include/my_compare.h.orig 2019-09-20 08:30:51 UTC +--- include/my_compare.h.orig 2021-12-17 16:07:27 UTC +++ include/my_compare.h @@ -49,7 +49,7 @@ But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and HA_MAX_KEY_LENGTH. diff --git a/databases/mysql80-server/files/patch-include_my__stacktrace.h b/databases/mysql80-server/files/patch-include_my__stacktrace.h index 372aec242a8d..1654014bd77b 100644 --- a/databases/mysql80-server/files/patch-include_my__stacktrace.h +++ b/databases/mysql80-server/files/patch-include_my__stacktrace.h @@ -1,5 +1,5 @@ ---- include/my_stacktrace.h.orig 2020-01-23 19:43:07.769584000 +0100 -+++ include/my_stacktrace.h 2020-01-23 19:43:48.684042000 +0100 +--- include/my_stacktrace.h.orig 2021-12-17 16:07:27 UTC ++++ include/my_stacktrace.h @@ -43,7 +43,7 @@ HAVE_BACKTRACE - Linux, FreeBSD, OSX, Solaris _WIN32 - Windows @@ -8,4 +8,4 @@ +#if (defined(HAVE_BACKTRACE) || defined(_WIN32)) && (defined(__aarch64__) || defined(__amd64__) || defined(__i386__)) #define HAVE_STACKTRACE 1 void my_init_stacktrace(); - void my_print_stacktrace(uchar *stack_bottom, ulong thread_stack); + void my_print_stacktrace(const uchar *stack_bottom, ulong thread_stack); diff --git a/databases/mysql80-server/files/patch-include_my__thread__os__id.h b/databases/mysql80-server/files/patch-include_my__thread__os__id.h index 56af9be42579..c75da875cd17 100644 --- a/databases/mysql80-server/files/patch-include_my__thread__os__id.h +++ b/databases/mysql80-server/files/patch-include_my__thread__os__id.h @@ -1,4 +1,4 @@ ---- include/my_thread_os_id.h.orig 2019-09-20 08:30:51 UTC +--- include/my_thread_os_id.h.orig 2021-12-17 16:07:27 UTC +++ include/my_thread_os_id.h @@ -84,8 +84,12 @@ static inline my_thread_os_id_t my_thread_os_id() { return pthread_getthreadid_np(); diff --git a/databases/mysql80-server/files/patch-include_myisam.h b/databases/mysql80-server/files/patch-include_myisam.h index b8f3ec7ef519..311c935fc115 100644 --- a/databases/mysql80-server/files/patch-include_myisam.h +++ b/databases/mysql80-server/files/patch-include_myisam.h @@ -1,6 +1,6 @@ ---- include/myisam.h.orig 2019-09-20 08:30:51 UTC +--- include/myisam.h.orig 2021-12-17 16:07:27 UTC +++ include/myisam.h -@@ -59,7 +59,7 @@ +@@ -60,7 +60,7 @@ The following defines can be increased if necessary. But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and MI_MAX_KEY_LENGTH. */ diff --git a/databases/mysql80-server/files/patch-include_violite.h b/databases/mysql80-server/files/patch-include_violite.h index 78d606a68c6c..00065b6ea59c 100644 --- a/databases/mysql80-server/files/patch-include_violite.h +++ b/databases/mysql80-server/files/patch-include_violite.h @@ -1,6 +1,6 @@ ---- include/violite.h.orig 2019-09-20 08:30:51 UTC +--- include/violite.h.orig 2021-12-17 16:07:27 UTC +++ include/violite.h -@@ -269,9 +269,11 @@ struct st_VioSSLFd *new_VioSSLConnectorFd( +@@ -268,9 +268,11 @@ struct st_VioSSLFd *new_VioSSLConnectorFd( long process_tls_version(const char *tls_version); @@ -10,5 +10,5 @@ uint get_fips_mode(); +#endif - struct st_VioSSLFd *new_VioSSLAcceptorFd( - const char *key_file, const char *cert_file, const char *ca_file, + int test_ssl_fips_mode(char *err_string); + diff --git a/databases/mysql80-server/files/patch-libmysql_CMakeLists.txt b/databases/mysql80-server/files/patch-libmysql_CMakeLists.txt index bfc8693d6480..e69de29bb2d1 100644 --- a/databases/mysql80-server/files/patch-libmysql_CMakeLists.txt +++ b/databases/mysql80-server/files/patch-libmysql_CMakeLists.txt @@ -1,68 +0,0 @@ ---- libmysql/CMakeLists.txt.orig 2021-07-01 07:53:49 UTC -+++ libmysql/CMakeLists.txt -@@ -197,6 +197,11 @@ IF (WIN32 AND OPENSSL_APPLINK_C) - ) - ENDIF() - -+INCLUDE(${MYSQL_CMAKE_SCRIPT_DIR}/compile_flags.cmake) -+IF (CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") -+ ADD_COMPILE_FLAGS(${CLIENT_SOURCES} COMPILE_FLAGS "-fPIC") -+ENDIF() -+ - # - # Include protocol tracing infrastructure and the test - # trace plugin if enabled by build options. -@@ -270,8 +275,15 @@ IF(WIN32) - LIST(APPEND LIBS_TO_MERGE auth_win_client) - ENDIF() - --# LDAP authentication SASL client plug-in --ADD_SUBDIRECTORY(authentication_ldap) -+IF(WITHOUT_CLIENTLIBS) -+ # Merge several convenience libraries into one big mysqlclient -+ MERGE_CONVENIENCE_LIBRARIES(mysqlclient ${LIBS_TO_MERGE} -+ COMPONENT Development -+ SKIP_INSTALL) -+ELSE(WITHOUT_CLIENTLIBS) -+ # LDAP authentication SASL client plugin -+ MESSAGE(STATUS "Creating LDAP authentication SASL client library.") -+ ADD_SUBDIRECTORY(authentication_ldap) - - # authentication kerberos client plug-in - ADD_SUBDIRECTORY(authentication_kerberos) -@@ -281,6 +293,7 @@ MERGE_CONVENIENCE_LIBRARIES(mysqlclient ${LIBS_TO_MERG - COMPONENT Development - LINK_LIBRARIES ${LIBS_TO_LINK} - ) -+ENDIF(WITHOUT_CLIENTLIBS) - - # Visual Studio users need debug static library for debug projects - IF(MSVC) -@@ -327,17 +340,27 @@ ENDIF() - - # Merge several convenience libraries into one big mysqlclient - # and link them together into shared library. -+IF(WITHOUT_CLIENTLIBS) - MERGE_LIBRARIES_SHARED(libmysql ${LIBS_TO_MERGE} - EXPORTS - ${CLIENT_API_FUNCTIONS} - ${CLIENT_API_FUNCTIONS_UNDOCUMENTED} - ${CLIENT_API_NONBLOCKING_FUNCTIONS} - COMPONENT SharedLibraries -+ SKIP_INSTALL ) -+ELSE(WITHOUT_CLIENTLIBS) -+MERGE_LIBRARIES_SHARED(libmysql ${LIBS_TO_MERGE} -+ EXPORTS -+ ${CLIENT_API_FUNCTIONS} -+ ${CLIENT_API_FUNCTIONS_UNDOCUMENTED} -+ ${CLIENT_API_NONBLOCKING_FUNCTIONS} -+ COMPONENT SharedLibraries - LINK_LIBRARIES ${LIBS_TO_LINK} - ${UNIX_OUTPUT_NAME} - ${UNIX_SOVERSION} - ${UNIX_VERSION} - ) -+ENDIF(WITHOUT_CLIENTLIBS) - - IF(LINUX_STANDALONE AND KERBEROS_CUSTOM_LIBRARY) - ADD_DEPENDENCIES(libmysql ${kerberos_target}) diff --git a/databases/mysql80-server/files/patch-libservices_CMakeLists.txt b/databases/mysql80-server/files/patch-libservices_CMakeLists.txt index 1fa50bdd2bca..95610f261f3a 100644 --- a/databases/mysql80-server/files/patch-libservices_CMakeLists.txt +++ b/databases/mysql80-server/files/patch-libservices_CMakeLists.txt @@ -1,6 +1,6 @@ ---- libservices/CMakeLists.txt.orig 2019-09-20 08:30:51 UTC +--- libservices/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC +++ libservices/CMakeLists.txt -@@ -45,7 +45,9 @@ SET(MYSQLSERVICES_SOURCES +@@ -47,7 +47,9 @@ SET(MYSQLSERVICES_SOURCES plugin_registry_service.c) ADD_LIBRARY(mysqlservices STATIC ${MYSQLSERVICES_SOURCES}) diff --git a/databases/mysql80-server/files/patch-man_CMakeLists.txt b/databases/mysql80-server/files/patch-man_CMakeLists.txt index a08c4ce564c0..9c95ebf65a2b 100644 --- a/databases/mysql80-server/files/patch-man_CMakeLists.txt +++ b/databases/mysql80-server/files/patch-man_CMakeLists.txt @@ -1,5 +1,5 @@ ---- man/CMakeLists.txt.orig 2020-10-20 11:47:42.675974000 +0200 -+++ man/CMakeLists.txt 2020-10-20 13:53:03.993879000 +0200 +--- man/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC ++++ man/CMakeLists.txt @@ -23,26 +23,14 @@ # Copy man pages SET(MAN1 @@ -27,7 +27,7 @@ mysqlimport.1 mysqlman.1 mysqlpump.1 -@@ -52,13 +41,23 @@ SET(MAN1 +@@ -52,13 +40,23 @@ SET(MAN1 zlib_decompress.1 ) @@ -56,8 +56,8 @@ -ENDIF() SET(MAN1_NDB - ndb-common-options.1 -@@ -105,8 +104,14 @@ SET(MAN8_NDB + ndb_blob_tool.1 +@@ -103,8 +101,14 @@ SET(MAN8_NDB ndbmtd.8 ) diff --git a/databases/mysql80-server/files/patch-mysys_my__default.cc b/databases/mysql80-server/files/patch-mysys_my__default.cc index 6e479597e24a..87b603301f41 100644 --- a/databases/mysql80-server/files/patch-mysys_my__default.cc +++ b/databases/mysql80-server/files/patch-mysys_my__default.cc @@ -1,5 +1,5 @@ ---- mysys/my_default.cc.orig 2021-11-02 20:29:18.337621000 +0100 -+++ mysys/my_default.cc 2021-11-02 20:57:11.624299000 +0100 +--- mysys/my_default.cc.orig 2021-12-17 16:07:27 UTC ++++ mysys/my_default.cc @@ -204,7 +204,7 @@ bool no_defaults = false; /* Which directories are searched for options (and in which order) */ @@ -24,7 +24,7 @@ while (true) { auto fileline = mysql_file_getline(buff, sizeof(buff), fp, is_login_file); char *linebuff = fileline.get(); -@@ -1315,7 +1323,8 @@ void my_print_default_files(const char *conf_file) { +@@ -1311,7 +1319,8 @@ void my_print_default_files(const char *conf_file) { end[(strlen(end) - 1)] = ' '; else strxmov(end, conf_file, *ext, " ", NullS); @@ -34,7 +34,7 @@ } } } -@@ -1655,14 +1664,9 @@ static const char **init_default_directories(MEM_ROOT +@@ -1651,14 +1660,9 @@ static const char **init_default_directories(MEM_ROOT #else @@ -51,7 +51,7 @@ #endif if ((env = getenv("MYSQL_HOME"))) errors += add_directory(alloc, env, dirs); -@@ -1727,7 +1731,7 @@ int check_file_permissions(const char *file_name, bool +@@ -1723,7 +1727,7 @@ int check_file_permissions(const char *file_name, bool #if !defined(_WIN32) MY_STAT stat_info; diff --git a/databases/mysql80-server/files/patch-mysys_my__md5.cc b/databases/mysql80-server/files/patch-mysys_my__md5.cc index 56986ec7f9b0..937468d818d1 100644 --- a/databases/mysql80-server/files/patch-mysys_my__md5.cc +++ b/databases/mysql80-server/files/patch-mysys_my__md5.cc @@ -1,4 +1,4 @@ ---- mysys/my_md5.cc.orig 2019-09-20 08:30:51 UTC +--- mysys/my_md5.cc.orig 2021-12-17 16:07:27 UTC +++ mysys/my_md5.cc @@ -56,7 +56,9 @@ static void my_md5_hash(unsigned char *digest, unsigne int compute_md5_hash(char *digest, const char *buf, int len) { diff --git a/databases/mysql80-server/files/patch-plugin_password__validation_validate__password.cc b/databases/mysql80-server/files/patch-plugin_password__validation_validate__password.cc index 4f1313993d21..c18c9a957b17 100644 --- a/databases/mysql80-server/files/patch-plugin_password__validation_validate__password.cc +++ b/databases/mysql80-server/files/patch-plugin_password__validation_validate__password.cc @@ -1,4 +1,4 @@ ---- plugin/password_validation/validate_password.cc.orig 2019-09-20 08:30:51 UTC +--- plugin/password_validation/validate_password.cc.orig 2021-12-17 16:07:27 UTC +++ plugin/password_validation/validate_password.cc @@ -25,6 +25,8 @@ #include diff --git a/databases/mysql80-server/files/patch-plugin_x_CMakeLists.txt b/databases/mysql80-server/files/patch-plugin_x_CMakeLists.txt index e3ee6f45bb06..58cb6a7922b1 100644 --- a/databases/mysql80-server/files/patch-plugin_x_CMakeLists.txt +++ b/databases/mysql80-server/files/patch-plugin_x_CMakeLists.txt @@ -1,4 +1,4 @@ ---- plugin/x/CMakeLists.txt.orig 2019-09-20 08:30:51 UTC +--- plugin/x/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC +++ plugin/x/CMakeLists.txt @@ -77,6 +77,8 @@ INCLUDE_DIRECTORIES( ${MYSQLX_GENERATE_DIR} @@ -8,4 +8,4 @@ + ${BOOST_INCLUDE_DIR} ) - MY_INCLUDE_SYSTEM_DIRECTORIES(PROTOBUF) + MY_INCLUDE_SYSTEM_DIRECTORIES(LIBEVENT) diff --git a/databases/mysql80-server/files/patch-plugin_x_client_authentication_sha256__scramble__generator.cc b/databases/mysql80-server/files/patch-plugin_x_client_authentication_sha256__scramble__generator.cc index 0e894219bb8d..fdc7a8fde7ca 100644 --- a/databases/mysql80-server/files/patch-plugin_x_client_authentication_sha256__scramble__generator.cc +++ b/databases/mysql80-server/files/patch-plugin_x_client_authentication_sha256__scramble__generator.cc @@ -1,4 +1,4 @@ ---- plugin/x/client/authentication/sha256_scramble_generator.cc.orig 2019-09-20 08:30:51 UTC +--- plugin/x/client/authentication/sha256_scramble_generator.cc.orig 2021-12-17 16:07:27 UTC +++ plugin/x/client/authentication/sha256_scramble_generator.cc @@ -97,7 +97,7 @@ bool SHA256_digest::retrieve_digest(unsigned char *dig return true; diff --git a/databases/mysql80-server/files/patch-plugin_x_client_xconnection__impl.cc b/databases/mysql80-server/files/patch-plugin_x_client_xconnection__impl.cc index df8f2bfd0942..ecd596100e6b 100644 --- a/databases/mysql80-server/files/patch-plugin_x_client_xconnection__impl.cc +++ b/databases/mysql80-server/files/patch-plugin_x_client_xconnection__impl.cc @@ -1,6 +1,6 @@ ---- plugin/x/client/xconnection_impl.cc.orig 2019-09-20 08:30:51 UTC +--- plugin/x/client/xconnection_impl.cc.orig 2021-12-17 16:07:27 UTC +++ plugin/x/client/xconnection_impl.cc -@@ -520,6 +520,7 @@ XError Connection_impl::get_ssl_error(const int error_ +@@ -618,6 +618,7 @@ XError Connection_impl::get_ssl_error(const int error_ return XError(CR_SSL_CONNECTION_ERROR, buffer); } @@ -8,7 +8,7 @@ /** Set fips mode in openssl library, When we set fips mode ON/STRICT, it will perform following operations: -@@ -559,6 +560,7 @@ int set_fips_mode(const uint32_t fips_mode, +@@ -657,6 +658,7 @@ int set_fips_mode(const uint32_t fips_mode, EXIT: return rc; } @@ -16,7 +16,7 @@ XError Connection_impl::activate_tls() { if (nullptr == m_vio) return get_socket_error(SOCKET_ECONNRESET); -@@ -569,12 +571,14 @@ XError Connection_impl::activate_tls() { +@@ -667,12 +669,14 @@ XError Connection_impl::activate_tls() { if (!m_context->m_ssl_config.is_configured()) return XError{CR_SSL_CONNECTION_ERROR, ER_TEXT_TLS_NOT_CONFIGURATED, true}; diff --git a/databases/mysql80-server/files/patch-plugin_x_configure.cmake b/databases/mysql80-server/files/patch-plugin_x_configure.cmake index 3d56059d869a..c6ea8a852d55 100644 --- a/databases/mysql80-server/files/patch-plugin_x_configure.cmake +++ b/databases/mysql80-server/files/patch-plugin_x_configure.cmake @@ -1,4 +1,4 @@ ---- plugin/x/configure.cmake.orig 2019-09-20 08:30:51 UTC +--- plugin/x/configure.cmake.orig 2021-12-17 16:07:27 UTC +++ plugin/x/configure.cmake @@ -45,6 +45,7 @@ CONFIGURE_FILE(${MYSQLX_PROJECT_DIR}/src/config/mysqlx CONFIGURE_FILE(${MYSQLX_PROJECT_DIR}/src/config/mysqlx_version.h.in diff --git a/databases/mysql80-server/files/patch-router_src_harness_include_mysql_harness_net__ts_internet.h b/databases/mysql80-server/files/patch-router_src_harness_include_mysql_harness_net__ts_internet.h index 015c6839ada0..c7fe1b7984dc 100644 --- a/databases/mysql80-server/files/patch-router_src_harness_include_mysql_harness_net__ts_internet.h +++ b/databases/mysql80-server/files/patch-router_src_harness_include_mysql_harness_net__ts_internet.h @@ -1,4 +1,4 @@ ---- router/src/harness/include/mysql/harness/net_ts/internet.h.orig 2020-11-09 00:30:01 UTC +--- router/src/harness/include/mysql/harness/net_ts/internet.h.orig 2021-12-17 16:07:27 UTC +++ router/src/harness/include/mysql/harness/net_ts/internet.h @@ -43,6 +43,7 @@ #include // inet_ntop diff --git a/databases/mysql80-server/files/patch-router_src_harness_include_mysql_harness_net_ts_impl_kqueue_io_service.h b/databases/mysql80-server/files/patch-router_src_harness_include_mysql_harness_net_ts_impl_kqueue_io_service.h index 8274f7e275ac..e69de29bb2d1 100644 --- a/databases/mysql80-server/files/patch-router_src_harness_include_mysql_harness_net_ts_impl_kqueue_io_service.h +++ b/databases/mysql80-server/files/patch-router_src_harness_include_mysql_harness_net_ts_impl_kqueue_io_service.h @@ -1,13 +0,0 @@ ---- router/src/harness/include/mysql/harness/net_ts/impl/kqueue_io_service.h.orig 2020-09-23 12:37:48 UTC -+++ router/src/harness/include/mysql/harness/net_ts/impl/kqueue_io_service.h -@@ -190,8 +190,8 @@ - auto secs = std::chrono::duration_cast(timeout); - timeout -= secs; - -- ts = {secs.count(), -- std::chrono::duration_cast(timeout) -+ ts = {(time_t)secs.count(), -+ (time_t)std::chrono::duration_cast(timeout) - .count()}; - - p_ts = &ts; diff --git a/databases/mysql80-server/files/patch-router_src_harness_src_CMakeLists.txt b/databases/mysql80-server/files/patch-router_src_harness_src_CMakeLists.txt index 74d19b39f2d3..65fe02456eec 100644 --- a/databases/mysql80-server/files/patch-router_src_harness_src_CMakeLists.txt +++ b/databases/mysql80-server/files/patch-router_src_harness_src_CMakeLists.txt @@ -1,14 +1,14 @@ ---- router/src/harness/src/CMakeLists.txt.orig 2019-12-09 19:53:17 UTC +--- router/src/harness/src/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC +++ router/src/harness/src/CMakeLists.txt -@@ -205,7 +205,6 @@ IF(NOT WIN32) +@@ -212,7 +212,6 @@ ELSE() INSTALL(TARGETS harness-library LIBRARY DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router - NAMELINK_SKIP ) - ELSE() - INSTALL(TARGETS harness-library -@@ -240,7 +239,6 @@ INSTALL(TARGETS harness_stdx + ENDIF() + +@@ -243,7 +242,6 @@ INSTALL(TARGETS harness_stdx RUNTIME DESTINATION ${ROUTER_INSTALL_BINDIR} COMPONENT Router ARCHIVE DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router LIBRARY DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router @@ -16,7 +16,7 @@ ) ## harness_tls -@@ -277,5 +275,4 @@ INSTALL(TARGETS harness_tls +@@ -284,5 +282,4 @@ INSTALL(TARGETS harness_tls RUNTIME DESTINATION ${ROUTER_INSTALL_BINDIR} COMPONENT Router ARCHIVE DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router LIBRARY DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router diff --git a/databases/mysql80-server/files/patch-router_src_harness_src_tls__client__context.cc b/databases/mysql80-server/files/patch-router_src_harness_src_tls__client__context.cc index 3c9c3d70b23f..d4a5ef543b49 100644 --- a/databases/mysql80-server/files/patch-router_src_harness_src_tls__client__context.cc +++ b/databases/mysql80-server/files/patch-router_src_harness_src_tls__client__context.cc @@ -1,11 +1,11 @@ ---- router/src/harness/src/tls_client_context.cc.orig 2019-09-20 08:30:51 UTC +--- router/src/harness/src/tls_client_context.cc.orig 2021-12-17 16:07:27 UTC +++ router/src/harness/src/tls_client_context.cc -@@ -54,7 +54,7 @@ void TlsClientContext::verify(TlsVerify verify) { - - void TlsClientContext::cipher_suites(const std::string &ciphers) { +@@ -61,7 +61,7 @@ stdx::expected TlsClientContext + stdx::expected TlsClientContext::cipher_suites( + const std::string &ciphers) { // TLSv1.3 ciphers are controlled via SSL_CTX_set_ciphersuites() -#if OPENSSL_VERSION_NUMBER >= ROUTER_OPENSSL_VERSION(1, 1, 1) +#ifdef TLS1_3_VERSION if (1 != SSL_CTX_set_ciphersuites(ssl_ctx_.get(), ciphers.c_str())) { - throw TlsError("set-cipher-suites"); + return stdx::make_unexpected(make_tls_error()); } diff --git a/databases/mysql80-server/files/patch-router_src_harness_src_tls__context.cc b/databases/mysql80-server/files/patch-router_src_harness_src_tls__context.cc index 2d5ba1470260..b1d818afe81a 100644 --- a/databases/mysql80-server/files/patch-router_src_harness_src_tls__context.cc +++ b/databases/mysql80-server/files/patch-router_src_harness_src_tls__context.cc @@ -1,5 +1,5 @@ ---- router/src/harness/src/tls_context.cc.orig 2021-11-04 17:14:44.779135000 +0100 -+++ router/src/harness/src/tls_context.cc 2021-11-04 17:35:31.121070000 +0100 +--- router/src/harness/src/tls_context.cc.orig 2021-12-17 16:07:27 UTC ++++ router/src/harness/src/tls_context.cc @@ -241,7 +241,7 @@ static int o11x_version(TlsVersion version) { return TLS1_1_VERSION; case TlsVersion::TLS_1_2: diff --git a/databases/mysql80-server/files/patch-router_src_harness_src_tls__server__context.cc b/databases/mysql80-server/files/patch-router_src_harness_src_tls__server__context.cc index ac19ffd0c661..e7498ecbfb8a 100644 --- a/databases/mysql80-server/files/patch-router_src_harness_src_tls__server__context.cc +++ b/databases/mysql80-server/files/patch-router_src_harness_src_tls__server__context.cc @@ -1,6 +1,6 @@ ---- router/src/harness/src/tls_server_context.cc.orig 2019-09-20 08:30:51 UTC +--- router/src/harness/src/tls_server_context.cc.orig 2021-12-17 16:07:27 UTC +++ router/src/harness/src/tls_server_context.cc -@@ -166,7 +166,8 @@ void TlsServerContext::init_tmp_dh(const std::string & +@@ -169,7 +169,8 @@ stdx::expected TlsServerContext } } else { diff --git a/databases/mysql80-server/files/patch-router_src_http_src_CMakeLists.txt b/databases/mysql80-server/files/patch-router_src_http_src_CMakeLists.txt index cea2271c20d1..d6d71414449d 100644 --- a/databases/mysql80-server/files/patch-router_src_http_src_CMakeLists.txt +++ b/databases/mysql80-server/files/patch-router_src_http_src_CMakeLists.txt @@ -1,6 +1,6 @@ ---- router/src/http/src/CMakeLists.txt.orig 2019-12-09 19:53:17 UTC +--- router/src/http/src/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC +++ router/src/http/src/CMakeLists.txt -@@ -62,7 +62,6 @@ INSTALL(TARGETS http_common +@@ -58,7 +58,6 @@ INSTALL(TARGETS http_common RUNTIME DESTINATION ${ROUTER_INSTALL_BINDIR} COMPONENT Router ARCHIVE DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router LIBRARY DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router @@ -8,7 +8,7 @@ ) ## split library code from the plugin to use them _passwd and tests -@@ -88,7 +87,6 @@ INSTALL(TARGETS http_auth_backend_lib +@@ -84,7 +83,6 @@ INSTALL(TARGETS http_auth_backend_lib RUNTIME DESTINATION ${ROUTER_INSTALL_BINDIR} COMPONENT Router ARCHIVE DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router LIBRARY DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router @@ -16,7 +16,7 @@ ) TARGET_INCLUDE_DIRECTORIES(http_auth_backend_lib PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} -@@ -141,7 +139,6 @@ INSTALL(TARGETS http_auth_realm_lib +@@ -137,7 +135,6 @@ INSTALL(TARGETS http_auth_realm_lib RUNTIME DESTINATION ${ROUTER_INSTALL_BINDIR} COMPONENT Router ARCHIVE DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router LIBRARY DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router diff --git a/databases/mysql80-server/files/patch-router_src_io_src_CMakeLists.txt b/databases/mysql80-server/files/patch-router_src_io_src_CMakeLists.txt index 474f473e1893..1dc8bfe04685 100644 --- a/databases/mysql80-server/files/patch-router_src_io_src_CMakeLists.txt +++ b/databases/mysql80-server/files/patch-router_src_io_src_CMakeLists.txt @@ -1,4 +1,4 @@ ---- router/src/io/src/CMakeLists.txt.orig 2020-09-23 12:37:48 UTC +--- router/src/io/src/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC +++ router/src/io/src/CMakeLists.txt @@ -47,7 +47,6 @@ INSTALL(TARGETS io_component RUNTIME DESTINATION ${ROUTER_INSTALL_BINDIR} COMPONENT Router diff --git a/databases/mysql80-server/files/patch-router_src_router_src_CMakeLists.txt b/databases/mysql80-server/files/patch-router_src_router_src_CMakeLists.txt index cee2af2e2f73..ae48964a591e 100644 --- a/databases/mysql80-server/files/patch-router_src_router_src_CMakeLists.txt +++ b/databases/mysql80-server/files/patch-router_src_router_src_CMakeLists.txt @@ -1,6 +1,6 @@ ---- router/src/router/src/CMakeLists.txt.orig 2019-12-09 19:53:17 UTC +--- router/src/router/src/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC +++ router/src/router/src/CMakeLists.txt -@@ -119,7 +119,6 @@ INSTALL(TARGETS router_lib +@@ -124,7 +124,6 @@ INSTALL(TARGETS router_lib RUNTIME DESTINATION ${ROUTER_INSTALL_BINDIR} COMPONENT Router ARCHIVE DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router LIBRARY DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router diff --git a/databases/mysql80-server/files/patch-scripts_CMakeLists.txt b/databases/mysql80-server/files/patch-scripts_CMakeLists.txt index 976c2397e16d..74acb1291d88 100644 --- a/databases/mysql80-server/files/patch-scripts_CMakeLists.txt +++ b/databases/mysql80-server/files/patch-scripts_CMakeLists.txt @@ -1,5 +1,5 @@ ---- scripts/CMakeLists.txt.orig 2021-11-04 17:42:29.686664000 +0100 -+++ scripts/CMakeLists.txt 2021-11-04 17:57:49.957200000 +0100 +--- scripts/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC ++++ scripts/CMakeLists.txt @@ -323,6 +323,8 @@ MACRO(EXTRACT_LINK_LIBRARIES target var) GET_FILENAME_COMPONENT(lib "${lib}" NAME_WE) STRING(REGEX REPLACE "^lib" "" lib "${lib}") diff --git a/databases/mysql80-server/files/patch-scripts_mysqld__safe.txt b/databases/mysql80-server/files/patch-scripts_mysqld__safe.txt index 7da369b97b60..e69de29bb2d1 100644 --- a/databases/mysql80-server/files/patch-scripts_mysqld__safe.txt +++ b/databases/mysql80-server/files/patch-scripts_mysqld__safe.txt @@ -1,19 +0,0 @@ ---- scripts/mysqld_safe.sh.orig 2022-01-07 11:33:53.643546000 +0100 -+++ scripts/mysqld_safe.sh 2022-01-07 11:37:41.505101000 +0100 -@@ -360,7 +360,7 @@ mysqld_ld_preload_text() { - # running mysqld. See ld.so for details. - set_malloc_lib() { - # This list is kept intentionally simple. -- malloc_dirs="/usr/lib /usr/lib64 /usr/lib/i386-linux-gnu /usr/lib/x86_64-linux-gnu" -+ malloc_dirs="/usr/lib /usr/lib64 /usr/lib/i386-linux-gnu /usr/lib/x86_64-linux-gnu /usr/local/lib" - malloc_lib="$1" - - # Allow --malloc-lib='' to override other settings -@@ -379,6 +379,7 @@ set_malloc_lib() { - /usr/lib64) ;; - /usr/lib/i386-linux-gnu) ;; - /usr/lib/x86_64-linux-gnu) ;; -+ /usr/local/lib) ;; - *) - log_error "--malloc-lib must be located in one of the directories: $malloc_dirs" - exit 1 diff --git a/databases/mysql80-server/files/patch-sql-common_client.cc b/databases/mysql80-server/files/patch-sql-common_client.cc index acf9035fb33c..b01beea3686b 100644 --- a/databases/mysql80-server/files/patch-sql-common_client.cc +++ b/databases/mysql80-server/files/patch-sql-common_client.cc @@ -1,14 +1,14 @@ ---- sql-common/client.cc.orig 2020-03-26 13:31:45 UTC +--- sql-common/client.cc.orig 2021-12-17 16:07:27 UTC +++ sql-common/client.cc -@@ -7752,6 +7752,7 @@ int STDCALL mysql_options(MYSQL *mysql, enum mysql_opt +@@ -8301,6 +8301,7 @@ int STDCALL mysql_options(MYSQL *mysql, enum mysql_opt return 1; break; case MYSQL_OPT_SSL_FIPS_MODE: { +#if !defined(LIBRESSL_VERSION_NUMBER) char ssl_err_string[OPENSSL_ERROR_LENGTH] = {'\0'}; ENSURE_EXTENSIONS_PRESENT(&mysql->options); - mysql->options.extension->ssl_fips_mode = *static_cast(arg); -@@ -7763,6 +7764,7 @@ int STDCALL mysql_options(MYSQL *mysql, enum mysql_opt + mysql->options.extension->ssl_fips_mode = +@@ -8313,6 +8314,7 @@ int STDCALL mysql_options(MYSQL *mysql, enum mysql_opt "Set Fips mode ON/STRICT failed, detail: '%s'.", ssl_err_string); return 1; } diff --git a/databases/mysql80-server/files/patch-sql_auth_sha2__password__common.cc b/databases/mysql80-server/files/patch-sql_auth_sha2__password__common.cc index 56f6dfb3fbb7..bae41ee878fb 100644 --- a/databases/mysql80-server/files/patch-sql_auth_sha2__password__common.cc +++ b/databases/mysql80-server/files/patch-sql_auth_sha2__password__common.cc @@ -1,4 +1,4 @@ ---- sql/auth/sha2_password_common.cc.orig 2019-09-20 08:30:51 UTC +--- sql/auth/sha2_password_common.cc.orig 2021-12-17 16:07:27 UTC +++ sql/auth/sha2_password_common.cc @@ -101,7 +101,7 @@ bool SHA256_digest::retrieve_digest(unsigned char *dig return true; diff --git a/databases/mysql80-server/files/patch-sql_conn__handler_socket__connection.cc b/databases/mysql80-server/files/patch-sql_conn__handler_socket__connection.cc index edcba63dec28..8f5d99aa45b4 100644 --- a/databases/mysql80-server/files/patch-sql_conn__handler_socket__connection.cc +++ b/databases/mysql80-server/files/patch-sql_conn__handler_socket__connection.cc @@ -1,6 +1,6 @@ ---- sql/conn_handler/socket_connection.cc.orig 2019-09-20 08:30:51 UTC +--- sql/conn_handler/socket_connection.cc.orig 2021-12-17 16:07:27 UTC +++ sql/conn_handler/socket_connection.cc -@@ -950,9 +950,11 @@ bool check_connection_refused_by_tcp_wrapper(MYSQL_SOC +@@ -953,9 +953,11 @@ bool check_connection_refused_by_tcp_wrapper(MYSQL_SOC signal(SIGCHLD, SIG_DFL); request_init(&req, RQ_DAEMON, libwrap_name, RQ_FILE, mysql_socket_getfd(connect_sock), NULL); @@ -14,7 +14,7 @@ /* This may be stupid but refuse() includes an exit(0) which we surely don't want... -@@ -964,12 +966,13 @@ bool check_connection_refused_by_tcp_wrapper(MYSQL_SOC +@@ -967,12 +969,13 @@ bool check_connection_refused_by_tcp_wrapper(MYSQL_SOC This is unproblematic as TCP-wrapper is unix specific, anyway. */ diff --git a/databases/mysql80-server/files/patch-sql_mysqld.cc b/databases/mysql80-server/files/patch-sql_mysqld.cc index 39a7fb89844a..a8eccb94f647 100644 --- a/databases/mysql80-server/files/patch-sql_mysqld.cc +++ b/databases/mysql80-server/files/patch-sql_mysqld.cc @@ -1,6 +1,6 @@ ---- sql/mysqld.cc.orig 2019-09-20 08:30:51 UTC +--- sql/mysqld.cc.orig 2021-12-17 16:07:27 UTC +++ sql/mysqld.cc -@@ -5109,7 +5109,7 @@ static int init_thread_environment() { +@@ -5285,7 +5285,7 @@ static int init_thread_environment() { static PSI_memory_key key_memory_openssl = PSI_NOT_INSTRUMENTED; @@ -9,7 +9,7 @@ #define FILE_LINE_ARGS #else #define FILE_LINE_ARGS , const char *, int -@@ -5143,12 +5143,14 @@ static void init_ssl() { +@@ -5316,12 +5316,14 @@ static void init_ssl() { } static int init_ssl_communication() { diff --git a/databases/mysql80-server/files/patch-sql_sys__vars.cc b/databases/mysql80-server/files/patch-sql_sys__vars.cc index 9c12715fd6df..3bee6a98fbad 100644 --- a/databases/mysql80-server/files/patch-sql_sys__vars.cc +++ b/databases/mysql80-server/files/patch-sql_sys__vars.cc @@ -1,6 +1,6 @@ ---- sql/sys_vars.cc.orig 2019-09-20 08:30:51 UTC +--- sql/sys_vars.cc.orig 2021-12-17 16:07:27 UTC +++ sql/sys_vars.cc -@@ -1875,7 +1875,7 @@ static Sys_var_ulong Sys_connect_timeout( +@@ -1977,7 +1977,7 @@ static Sys_var_ulong Sys_connect_timeout( "The number of seconds the mysqld server is waiting for a connect " "packet before responding with 'Bad handshake'", GLOBAL_VAR(connect_timeout), CMD_LINE(REQUIRED_ARG), @@ -9,7 +9,7 @@ static Sys_var_ulong Sys_information_schema_stats_expiry( "information_schema_stats_expiry", -@@ -2929,7 +2929,7 @@ static Sys_var_ulong Sys_net_read_timeout( +@@ -3093,7 +3093,7 @@ static Sys_var_ulong Sys_net_read_timeout( "Number of seconds to wait for more data from a connection before " "aborting the read", SESSION_VAR(net_read_timeout), CMD_LINE(REQUIRED_ARG), @@ -18,7 +18,7 @@ NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(nullptr), ON_UPDATE(fix_net_read_timeout)); -@@ -2950,7 +2950,7 @@ static Sys_var_ulong Sys_net_write_timeout( +@@ -3114,7 +3114,7 @@ static Sys_var_ulong Sys_net_write_timeout( "Number of seconds to wait for a block to be written to a connection " "before aborting the write", SESSION_VAR(net_write_timeout), CMD_LINE(REQUIRED_ARG), @@ -27,7 +27,7 @@ NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(nullptr), ON_UPDATE(fix_net_write_timeout)); -@@ -4459,6 +4459,7 @@ static Sys_var_ulong Sys_max_execution_time( +@@ -4876,6 +4876,7 @@ static Sys_var_ulong Sys_max_execution_time( HINT_UPDATEABLE SESSION_VAR(max_execution_time), CMD_LINE(REQUIRED_ARG), VALID_RANGE(0, ULONG_MAX), DEFAULT(0), BLOCK_SIZE(1)); @@ -35,7 +35,7 @@ static bool update_fips_mode(sys_var *, THD *, enum_var_type) { char ssl_err_string[OPENSSL_ERROR_LENGTH] = {'\0'}; if (set_fips_mode(opt_ssl_fips_mode, ssl_err_string) != 1) { -@@ -4470,14 +4471,30 @@ static bool update_fips_mode(sys_var *, THD *, enum_va +@@ -4887,14 +4888,30 @@ static bool update_fips_mode(sys_var *, THD *, enum_va } } diff --git a/databases/mysql80-server/files/patch-ssl__init__callback.cc b/databases/mysql80-server/files/patch-ssl__init__callback.cc index 2d80cf5e6c78..e69de29bb2d1 100644 --- a/databases/mysql80-server/files/patch-ssl__init__callback.cc +++ b/databases/mysql80-server/files/patch-ssl__init__callback.cc @@ -1,20 +0,0 @@ ---- sql/ssl_init_callback.cc.orig 2020-12-11 07:42:20 UTC -+++ sql/ssl_init_callback.cc -@@ -88,7 +88,7 @@ static Sys_var_charptr Sys_tls_version( - "TLS version, permitted values are TLSv1, TLSv1.1, TLSv1.2, TLSv1.3", - PERSIST_AS_READONLY GLOBAL_VAR(opt_tls_version), - CMD_LINE(REQUIRED_ARG, OPT_TLS_VERSION), IN_FS_CHARSET, --#ifdef HAVE_TLSv13 -+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER) - "TLSv1,TLSv1.1,TLSv1.2,TLSv1.3", - #else - "TLSv1,TLSv1.1,TLSv1.2", -@@ -154,7 +154,7 @@ static Sys_var_charptr Sys_admin_tls_version( - "TLSv1.2, TLSv1.3", - PERSIST_AS_READONLY GLOBAL_VAR(opt_admin_tls_version), - CMD_LINE(REQUIRED_ARG, OPT_TLS_VERSION), IN_FS_CHARSET, --#ifdef HAVE_TLSv13 -+#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER) - "TLSv1,TLSv1.1,TLSv1.2,TLSv1.3", - #else - "TLSv1,TLSv1.1,TLSv1.2", diff --git a/databases/mysql80-server/files/patch-storage_innobase_include_detail_ut_large__page__alloc-linux.h b/databases/mysql80-server/files/patch-storage_innobase_include_detail_ut_large__page__alloc-linux.h index 5297a5023741..3898f3653e6e 100644 --- a/databases/mysql80-server/files/patch-storage_innobase_include_detail_ut_large__page__alloc-linux.h +++ b/databases/mysql80-server/files/patch-storage_innobase_include_detail_ut_large__page__alloc-linux.h @@ -1,11 +1,11 @@ ---- storage/innobase/include/detail/ut/large_page_alloc-linux.h.orig 2021-09-28 11:46:34 UTC +--- storage/innobase/include/detail/ut/large_page_alloc-linux.h.orig 2021-12-17 16:07:27 UTC +++ storage/innobase/include/detail/ut/large_page_alloc-linux.h -@@ -50,7 +50,7 @@ inline void *large_page_aligned_alloc(size_t n_bytes) +@@ -52,7 +52,7 @@ inline void *large_page_aligned_alloc(size_t n_bytes) // mmap will internally round n_bytes to the multiple of huge-page size if it // is not already void *ptr = mmap(nullptr, n_bytes, PROT_READ | PROT_WRITE, - MAP_PRIVATE | MAP_ANON | MAP_HUGETLB, -1, 0); + MAP_PRIVATE | MAP_ANON, -1, 0); - return (ptr != (void *)-1) ? ptr : nullptr; - } - + if (unlikely(ptr == (void *)-1)) { + ib::log_warn(ER_IB_MSG_856) << "large_page_aligned_alloc mmap(" << n_bytes + << " bytes) failed;" diff --git a/databases/mysql80-server/files/patch-storage_innobase_include_srv0mon.h b/databases/mysql80-server/files/patch-storage_innobase_include_srv0mon.h index ee591adb8697..fa2244cf1344 100644 --- a/databases/mysql80-server/files/patch-storage_innobase_include_srv0mon.h +++ b/databases/mysql80-server/files/patch-storage_innobase_include_srv0mon.h @@ -1,4 +1,4 @@ ---- storage/innobase/include/srv0mon.h.orig 2019-09-20 08:30:51 UTC +--- storage/innobase/include/srv0mon.h.orig 2021-12-17 16:07:27 UTC +++ storage/innobase/include/srv0mon.h @@ -40,6 +40,10 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, /* Required for FreeBSD so that INT64_MAX is defined. */ diff --git a/databases/mysql80-server/files/patch-storage_myisam_mi__dynrec.cc b/databases/mysql80-server/files/patch-storage_myisam_mi__dynrec.cc index 4daceefef132..4ebe56303d84 100644 --- a/databases/mysql80-server/files/patch-storage_myisam_mi__dynrec.cc +++ b/databases/mysql80-server/files/patch-storage_myisam_mi__dynrec.cc @@ -1,4 +1,4 @@ ---- storage/myisam/mi_dynrec.cc.orig 2019-09-20 08:30:51 UTC +--- storage/myisam/mi_dynrec.cc.orig 2021-12-17 16:07:27 UTC +++ storage/myisam/mi_dynrec.cc @@ -85,17 +85,12 @@ bool mi_dynmap_file(MI_INFO *info, my_off_t size) { return true; diff --git a/databases/mysql80-server/files/patch-storage_temptable_include_temptable_lock_free_type.h b/databases/mysql80-server/files/patch-storage_temptable_include_temptable_lock_free_type.h index a229da5b0adc..e69de29bb2d1 100644 --- a/databases/mysql80-server/files/patch-storage_temptable_include_temptable_lock_free_type.h +++ b/databases/mysql80-server/files/patch-storage_temptable_include_temptable_lock_free_type.h @@ -1,17 +0,0 @@ ---- storage/temptable/include/temptable/lock_free_type.h.orig 2020-06-16 16:31:03 UTC -+++ storage/temptable/include/temptable/lock_free_type.h -@@ -31,6 +31,14 @@ Lock-free type (selection) implementation. */ - - #include "storage/temptable/include/temptable/constants.h" - -+#if defined(__i386__) //&& defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8) -+/* Fix for clang setting __GCC_ATOMIC_LLONG_LOCK_FREE incorrectly for x86 -+ * https://llvm.org/bugs/show_bug.cgi?id=19355 -+ */ -+#undef ATOMIC_LLONG_LOCK_FREE -+#define ATOMIC_LLONG_LOCK_FREE 2 -+#endif -+ - namespace temptable { - - /** Enum class describing alignment-requirements. */ diff --git a/databases/mysql80-server/files/patch-support-files_CMakeLists.txt b/databases/mysql80-server/files/patch-support-files_CMakeLists.txt index 282a84437a0d..8f0f67a98551 100644 --- a/databases/mysql80-server/files/patch-support-files_CMakeLists.txt +++ b/databases/mysql80-server/files/patch-support-files_CMakeLists.txt @@ -1,4 +1,4 @@ ---- support-files/CMakeLists.txt.orig 2020-09-23 12:37:48 UTC +--- support-files/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC +++ support-files/CMakeLists.txt @@ -24,8 +24,9 @@ IF(NOT UNIX) RETURN() diff --git a/databases/mysql80-server/files/patch-utilities_CMakeLists.txt b/databases/mysql80-server/files/patch-utilities_CMakeLists.txt index 29c120a41e79..8dff9927e139 100644 --- a/databases/mysql80-server/files/patch-utilities_CMakeLists.txt +++ b/databases/mysql80-server/files/patch-utilities_CMakeLists.txt @@ -1,4 +1,4 @@ ---- utilities/CMakeLists.txt.orig 2020-09-23 12:37:48 UTC +--- utilities/CMakeLists.txt.orig 2021-12-17 16:07:27 UTC +++ utilities/CMakeLists.txt @@ -23,13 +23,19 @@ ADD_WSHADOW_WARNING() diff --git a/databases/mysql80-server/files/patch-vio_viossl.cc b/databases/mysql80-server/files/patch-vio_viossl.cc index e7f2a2a7c952..8fe78ce89f2a 100644 --- a/databases/mysql80-server/files/patch-vio_viossl.cc +++ b/databases/mysql80-server/files/patch-vio_viossl.cc @@ -1,4 +1,4 @@ ---- vio/viossl.cc.orig 2019-09-20 08:30:51 UTC +--- vio/viossl.cc.orig 2021-12-17 16:07:27 UTC +++ vio/viossl.cc @@ -45,7 +45,8 @@ BIO_set_callback_ex was added in openSSL 1.1.1 @@ -10,8 +10,8 @@ #define HAVE_BIO_SET_CALLBACK_EX #endif -@@ -635,7 +636,7 @@ static int ssl_do(struct st_VioSSLFd *ptr, Vio *vio, l - #if !defined(DBUG_OFF) +@@ -640,7 +641,7 @@ static int ssl_do(struct st_VioSSLFd *ptr, Vio *vio, l + #if !defined(NDEBUG) { STACK_OF(SSL_COMP) *ssl_comp_methods = nullptr; - ssl_comp_methods = SSL_COMP_get_compression_methods(); @@ -19,7 +19,7 @@ n = sk_SSL_COMP_num(ssl_comp_methods); DBUG_PRINT("info", ("Available compression methods:\n")); if (n == 0) -@@ -643,7 +644,7 @@ static int ssl_do(struct st_VioSSLFd *ptr, Vio *vio, l +@@ -648,7 +649,7 @@ static int ssl_do(struct st_VioSSLFd *ptr, Vio *vio, l else for (j = 0; j < n; j++) { SSL_COMP *c = sk_SSL_COMP_value(ssl_comp_methods, j); diff --git a/databases/mysql80-server/files/patch-vio_viosslfactories.cc b/databases/mysql80-server/files/patch-vio_viosslfactories.cc index 8c88903163ee..06cc1f909f4f 100644 --- a/databases/mysql80-server/files/patch-vio_viosslfactories.cc +++ b/databases/mysql80-server/files/patch-vio_viosslfactories.cc @@ -1,5 +1,5 @@ ---- vio/viosslfactories.cc.orig 2021-11-04 18:02:40.921064000 +0100 -+++ vio/viosslfactories.cc 2021-11-04 18:15:24.992676000 +0100 +--- vio/viosslfactories.cc.orig 2021-12-17 16:07:27 UTC ++++ vio/viosslfactories.cc @@ -40,6 +40,7 @@ #include "vio/vio_priv.h" @@ -30,10 +30,10 @@ -#ifdef HAVE_TLSv13 +#if defined(HAVE_TLSv13) && !defined(LIBRESSL_VERSION_NUMBER) - const char *tls_version_name_list[] = {"TLSv1", "TLSv1.1", "TLSv1.2", - "TLSv1.3"}; - const char ctx_flag_default[] = "TLSv1,TLSv1.1,TLSv1.2,TLSv1.3"; -@@ -624,7 +627,7 @@ static struct st_VioSSLFd *new_VioSSLFd( + const char *tls_version_name_list[] = {"TLSv1.2", "TLSv1.3"}; + const char ctx_flag_default[] = "TLSv1.2,TLSv1.3"; + const long tls_ctx_list[] = {SSL_OP_NO_TLSv1_2, SSL_OP_NO_TLSv1_3}; +@@ -623,7 +626,7 @@ static struct st_VioSSLFd *new_VioSSLFd( ssl_ctx_options = (ssl_ctx_options | ssl_ctx_flags) & (SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3 | SSL_OP_NO_TLSv1 | SSL_OP_NO_TLSv1_1 | SSL_OP_NO_TLSv1_2 @@ -42,7 +42,7 @@ | SSL_OP_NO_TLSv1_3 #endif /* HAVE_TLSv13 */ | SSL_OP_NO_TICKET); -@@ -633,7 +636,7 @@ static struct st_VioSSLFd *new_VioSSLFd( +@@ -632,7 +635,7 @@ static struct st_VioSSLFd *new_VioSSLFd( return nullptr; if (!(ssl_fd->ssl_context = SSL_CTX_new(is_client ? @@ -51,7 +51,7 @@ TLS_client_method() : TLS_server_method() #else /* HAVE_TLSv13 */ -@@ -648,7 +651,7 @@ static struct st_VioSSLFd *new_VioSSLFd( +@@ -647,7 +650,7 @@ static struct st_VioSSLFd *new_VioSSLFd( return nullptr; }