diff --git a/databases/mysql57-client/files/patch-cmake_ssl.cmake b/databases/mysql57-client/files/patch-cmake_ssl.cmake index 014ae927331a..6efbcd0e492d 100644 --- a/databases/mysql57-client/files/patch-cmake_ssl.cmake +++ b/databases/mysql57-client/files/patch-cmake_ssl.cmake @@ -1,82 +1,30 @@ ---- cmake/ssl.cmake.orig 2023-03-16 22:25:04.000000000 +0700 -+++ cmake/ssl.cmake 2023-06-13 12:11:25.125506000 +0700 -@@ -176,24 +176,32 @@ MACRO (MYSQL_CHECK_SSL) +--- cmake/ssl.cmake.orig 2023-10-25 22:22:28.748647000 +0200 ++++ cmake/ssl.cmake 2023-10-30 19:12:39.388494000 +0100 +@@ -232,13 +232,6 @@ MACRO (MYSQL_CHECK_SSL) MESSAGE(STATUS "OPENSSL_APPLINK_C ${OPENSSL_APPLINK_C}") ENDIF() - # On mac this list is <.dylib;.so;.a> - # We prefer static libraries, so we reverse it here. - IF (WITH_SSL_PATH) - LIST(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES) - MESSAGE(STATUS "suffixes <${CMAKE_FIND_LIBRARY_SUFFIXES}>") - ENDIF() - FIND_LIBRARY(OPENSSL_LIBRARY NAMES ssl libssl ssleay32 ssleay32MD HINTS ${OPENSSL_ROOT_DIR}/lib) - FIND_LIBRARY(CRYPTO_LIBRARY - NAMES crypto libcrypto libeay32 - HINTS ${OPENSSL_ROOT_DIR}/lib) -- IF (WITH_SSL_PATH) -- LIST(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES) -- ENDIF() -- - IF(OPENSSL_INCLUDE_DIR) -+ FOREACH(version_part -+ OPENSSL_VERSION_MAJOR -+ OPENSSL_VERSION_MINOR -+ OPENSSL_VERSION_PATCH -+ ) -+ FILE(STRINGS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h" ${version_part} -+ REGEX "^#[\t ]*define[\t ]+${version_part}[\t ]+([0-9]+).*") -+ STRING(REGEX REPLACE -+ "^.*${version_part}[\t ]+([0-9]+).*" "\\1" -+ ${version_part} "${${version_part}}") -+ ENDFOREACH() -+ -+ IF(OPENSSL_VERSION_MAJOR VERSION_EQUAL 3) -+ # OpenSSL 3 -+ SET(OPENSSL_MAJOR_VERSION "${OPENSSL_VERSION_MAJOR}") -+ SET(OPENSSL_MINOR_VERSION "${OPENSSL_VERSION_MINOR}") -+ SET(OPENSSL_FIX_VERSION "${OPENSSL_VERSION_PATCH}") -+ SET(OPENSSL_FOUND TRUE) -+ ELSE() - # Verify version number. Version information looks like: - # #define OPENSSL_VERSION_NUMBER 0x1000103fL - # Encoded as MNNFFPPS: major minor fix patch status -@@ -213,15 +221,17 @@ MACRO (MYSQL_CHECK_SSL) - "^.*OPENSSL_VERSION_NUMBER[\t ]+0x[0-9][0-9][0-9]([0-9][0-9]).*$" "\\1" - OPENSSL_FIX_VERSION "${OPENSSL_VERSION_NUMBER}" - ) -+ ENDIF() +@@ -253,9 +246,10 @@ MACRO (MYSQL_CHECK_SSL) + FIND_OPENSSL_VERSION() ENDIF() - SET(OPENSSL_VERSION - "${OPENSSL_MAJOR_VERSION}.${OPENSSL_MINOR_VERSION}.${OPENSSL_FIX_VERSION}" - ) - SET(OPENSSL_VERSION ${OPENSSL_VERSION} CACHE INTERNAL "") - IF("${OPENSSL_VERSION}" VERSION_GREATER "1.1.0") - ADD_DEFINITIONS(-DHAVE_TLSv13) - SET(HAVE_TLSv13 1) + CHECK_SYMBOL_EXISTS(TLS1_3_VERSION "openssl/tls1.h" HAVE_TLS1_3_VERSION) + IF(HAVE_TLS1_3_VERSION) + #ADD_DEFINITIONS(-DHAVE_TLSv13) + #SET(HAVE_TLSv13 1) IF(SOLARIS) SET(FORCE_SSL_SOLARIS "-Wl,--undefined,address_of_sk_new_null") ENDIF() -@@ -229,7 +239,13 @@ MACRO (MYSQL_CHECK_SSL) - 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) -+ ELSEIF(OPENSSL_INCLUDE_DIR AND -+ OPENSSL_LIBRARY AND -+ CRYPTO_LIBRARY AND -+ OPENSSL_MAJOR_VERSION STREQUAL "2" - ) - SET(OPENSSL_FOUND TRUE) - ELSE() diff --git a/databases/mysql57-server/Makefile b/databases/mysql57-server/Makefile index 36e5fb57ad01..4df55337b904 100644 --- a/databases/mysql57-server/Makefile +++ b/databases/mysql57-server/Makefile @@ -1,185 +1,185 @@ PORTNAME?= mysql -PORTVERSION= 5.7.42 +PORTVERSION= 5.7.43 PORTREVISION?= 0 CATEGORIES= databases MASTER_SITES= MYSQL/MySQL-5.7 PKGNAMESUFFIX?= 57-server DISTNAME= ${PORTNAME}-boost-${PORTVERSION} MAINTAINER= joneum@FreeBSD.org COMMENT?= Multithreaded SQL database (server) WWW= https://www.mysql.com/ LICENSE= GPLv2 DEPRECATED= Upstream support ended in October 2019 EXPIRATION_DATE= 2023-12-31 WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION} SLAVEDIRS= databases/mysql57-client USES= bison:build cmake:noninja compiler:c11 compiler:c++11-lib \ cpe groff:run libedit localbase perl5 shebangfix ssl CPE_VENDOR= oracle USE_PERL5= run MY_DBDIR= /var/db/mysql MY_SECDIR= /var/db/mysql_secure MY_TMPDIR= /var/db/mysql_tmpdir LIB_DEPENDS+= libcurl.so:ftp/curl \ libevent.so:devel/libevent \ liblz4.so:archivers/liblz4 \ libprotobuf.so:devel/protobuf CMAKE_BUILD_TYPE= Release CMAKE_ARGS+= -DINSTALL_LAYOUT=FREEBSD \ -DINSTALL_LDCONFIGDIR="${LOCALBASE}/libdata/ldconfig" \ -DINSTALL_PKGCONFIGDIR="${LOCALBASE}/libdata/pkgconfig" \ -DINSTALL_DOCDIR="share/doc/mysql" \ -DINSTALL_DOCREADMEDIR="share/doc/mysql" \ -DINSTALL_INCLUDEDIR="include/mysql" \ -DINSTALL_INFODIR="${INFO_PATH}" \ -DINSTALL_LIBDIR="lib/mysql" \ -DINSTALL_MANDIR="share/man" \ -DINSTALL_MYSQLDATADIR="${MY_DBDIR}" \ -DINSTALL_MYSQLKEYRINGDIR="etc/mysql/keyring" \ -DINSTALL_MYSQLSHAREDIR="share/mysql" \ -DINSTALL_MYSQLTESTDIR="share/mysql/tests" \ -DINSTALL_PLUGINDIR="lib/mysql/plugin" \ -DINSTALL_SBINDIR="libexec" \ -DINSTALL_SCRIPTDIR="bin" \ -DINSTALL_SECURE_FILE_PRIVDIR="${MY_SECDIR}" \ -DINSTALL_SHAREDIR="share" \ -DINSTALL_SUPPORTFILESDIR="share/mysql" \ -DMYSQL_KEYRINGDIR="${ETCDIR}/keyring" \ -DWITH_BOOST="${WRKSRC}/boost" \ -DWITH_EDITLINE=system \ -DWITH_LIBEVENT=system \ -DWITH_LZ4=system \ -DWITH_ZLIB=system \ -DWITH_PROTOBUF=system \ -DWITH_CURL=system \ -DINSTALL_MYSQLTESTDIR=0 \ -DWITH_DEBUG=0 SHEBANG_FILES= scripts/*.pl* scripts/*.sh .ifdef USE_MYSQL .error You have `USE_MYSQL' variable defined either in environment or in make(1) arguments. Please undefine and try again. .endif SUB_LIST= MY_DBDIR=${MY_DBDIR} \ MY_SECDIR=${MY_SECDIR} \ MY_TMPDIR=${MY_TMPDIR} PLIST_SUB= MY_DBDIR=${MY_DBDIR} \ MY_SECDIR=${MY_SECDIR} \ MY_TMPDIR=${MY_TMPDIR} OPTIONS_SUB= YES # MySQL-Server part .if !defined(CLIENT_ONLY) USES+= mysql:57 CONFLICTS_INSTALL= mysql*-server \ mysqlwsrep*-server \ mariadb*-server \ percona*-server USE_RC_SUBR= mysql-server SUB_FILES= my.cnf.sample pkg-message USERS= mysql GROUPS= mysql USE_CXXSTD= c++11 USE_LDCONFIG+= ${PREFIX}/lib/mysql/plugin MMAN1= my_print_defaults.1 myisam_ftdump.1 myisamchk.1 myisamlog.1 myisampack.1 \ mysql.server.1 mysql_convert_table_format.1 mysql_fix_extensions.1 \ mysql_install_db.1 mysql_plugin.1 mysql_secure_installation.1 mysql_setpermission.1 \ mysql_tzinfo_to_sql.1 mysql_upgrade.1 mysql_zap.1 mysqlbug.1 \ mysqld_multi.1 mysqld_safe.1 mysqldumpslow.1 mysqlhotcopy.1 mysqlman.1 \ mysqltest.1 perror.1 replace.1 resolve_stack_dump.1 resolveip.1 CMAKE_ARGS+= -DWITH_EMBEDDED_SERVER="ON" OPTIONS_GROUP+= STORAGE OPTIONS_GROUP_STORAGE= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE PARTITION PERFSCHEMA STORAGE_DESC= Permissible "Storage Engines" (to compile statically into the server) ARCHIVE_DESC= Compile "Archive Storage" statically in server BLACKHOLE_DESC= Compile "Blackhole Storage" statically in server EXAMPLE_DESC= Compile "Example Storage" statically in server FEDERATED_DESC= Compile "Federated Storage" statically in server INNOBASE_DESC= Compile "InnoDB Storage" statically in server PARTITION_DESC= Compile "Partitioning support Storage" statically in server PERFSCHEMA_DESC= Compile "Performance Schema Storage" statically in server ARCHIVE_CMAKE_ON= -DWITH_ARCHIVE_STORAGE_ENGINE=1 BLACKHOLE_CMAKE_ON= -DWITH_BLACKHOLE_STORAGE_ENGINE=1 EXAMPLE_CMAKE_ON= -DWITH_EXAMPLE_STORAGE_ENGINE=1 FEDERATED_CMAKE_ON= -DWITH_FEDERATED_STORAGE_ENGINE=1 INNOBASE_CMAKE_ON= -DWITH_INNOBASE_STORAGE_ENGINE=1 PARTITION_CMAKE_ON= -DWITH_PARTITION_STORAGE_ENGINE=1 PERFSCHEMA_CMAKE_ON= -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 OPTIONS_GROUP+= FEATURES FEATURES_DESC= Default features knobs OPTIONS_GROUP_FEATURES= PERFSCHM PERFSCHM_DESC= Enable "Performance Schema" by default (High RAM usage) OPTIONS_DEFAULT+= PERFSCHM PERFSCHM_SUB_LIST+= PERFSCHEMRC="" PERFSCHM_SUB_LIST_OFF+= PERFSCHEMRC="--skip-performance-schema" FEDERATED_SUB_LIST+= FEDER="--federated" FEDERATED_SUB_LIST_OFF+= FEDER="" # issue 220865: Currently there's no source to be built with server-side support. # But this keeps the pkg-plist not overlaping CMAKE_ARGS+= -DWITH_AUTHENTICATION_LDAP=0 .endif .include .include .if ( ${OPSYS} == FreeBSD && ${OSVERSION} >= 1400092 && ${SSL_DEFAULT} == base ) || ${SSL_DEFAULT:Mopenssl3*} IGNORE= Upstream only supports OpenSSL 1.0.1 upto 1.1.X .endif .if ${SSL_DEFAULT} == base CMAKE_ARGS+= -DWITH_SSL=system .else CMAKE_ARGS+= -DWITH_SSL=${OPENSSLBASE} .endif .if ${CHOSEN_COMPILER_TYPE} == gcc CXXFLAGS+= -fpermissive .endif post-extract: @${RM} -rv ${WRKSRC}/sql/sql_hints.yy.cc ${WRKSRC}/sql/sql_hints.yy.h post-patch: @${REINPLACE_CMD} 's/*.1/${MMAN1}/' ${WRKSRC}/man/CMakeLists.txt # issue 220865: MySQL developers forgot that FreeBSD != Linux @${REINPLACE_CMD} -e 's|%%FREEBSD_LOCAL_LIB%%|${LOCALBASE}/lib|g' \ ${WRKSRC}/configure.cmake @${REINPLACE_CMD} -e 's|__clang__|__undefined__|g' \ ${WRKSRC}/boost/boost_1_59_0/boost/atomic/detail/ops_gcc_x86_dcas.hpp .if !defined(CLIENT_ONLY) post-install: ${MKDIR} ${STAGEDIR}${ETCDIR} ${INSTALL_DATA} ${WRKDIR}/my.cnf.sample ${STAGEDIR}${ETCDIR}/my.cnf.sample ${MKDIR} ${STAGEDIR}${ETCDIR}/keyring ${MKDIR} ${STAGEDIR}${MY_SECDIR} ${MKDIR} ${STAGEDIR}${MY_TMPDIR} .endif .include diff --git a/databases/mysql57-server/distinfo b/databases/mysql57-server/distinfo index 4ce64f6ed061..267de0d7943e 100644 --- a/databases/mysql57-server/distinfo +++ b/databases/mysql57-server/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1686034482 -SHA256 (mysql-boost-5.7.42.tar.gz) = 7e1a7d45e7ca382eb3a992f63631c380904dd49c89f3382ec950aef01997524f -SIZE (mysql-boost-5.7.42.tar.gz) = 53288125 +TIMESTAMP = 1697571027 +SHA256 (mysql-boost-5.7.43.tar.gz) = 22998c0fe8439a6946644f175b6f219d5f503d4c194b246a338f1dfcd87db045 +SIZE (mysql-boost-5.7.43.tar.gz) = 53291096 diff --git a/databases/mysql57-server/files/patch-cmake_ssl.cmake b/databases/mysql57-server/files/patch-cmake_ssl.cmake index 0e70d693a90d..a82dbb94680a 100644 --- a/databases/mysql57-server/files/patch-cmake_ssl.cmake +++ b/databases/mysql57-server/files/patch-cmake_ssl.cmake @@ -1,54 +1,53 @@ ---- cmake/ssl.cmake.orig 2019-12-06 10:41:47 UTC -+++ cmake/ssl.cmake -@@ -150,22 +150,12 @@ MACRO (MYSQL_CHECK_SSL) +--- cmake/ssl.cmake.orig 2023-11-10 17:37:52.213133000 +0100 ++++ cmake/ssl.cmake 2023-11-10 17:50:19.620626000 +0100 +@@ -232,30 +232,21 @@ MACRO (MYSQL_CHECK_SSL) MESSAGE(STATUS "OPENSSL_APPLINK_C ${OPENSSL_APPLINK_C}") ENDIF() - # On mac this list is <.dylib;.so;.a> - # We prefer static libraries, so we reverse it here. - IF (WITH_SSL_PATH) - LIST(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES) - MESSAGE(STATUS "suffixes <${CMAKE_FIND_LIBRARY_SUFFIXES}>") - ENDIF() - FIND_LIBRARY(OPENSSL_LIBRARY NAMES ssl libssl ssleay32 ssleay32MD HINTS ${OPENSSL_ROOT_DIR}/lib) FIND_LIBRARY(CRYPTO_LIBRARY NAMES crypto libcrypto libeay32 HINTS ${OPENSSL_ROOT_DIR}/lib) - IF (WITH_SSL_PATH) - LIST(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES) - ENDIF() IF(OPENSSL_INCLUDE_DIR) - # Verify version number. Version information looks like: -@@ -193,9 +183,10 @@ MACRO (MYSQL_CHECK_SSL) - ) - SET(OPENSSL_VERSION ${OPENSSL_VERSION} CACHE INTERNAL "") + FIND_OPENSSL_VERSION() + ENDIF() - IF("${OPENSSL_VERSION}" VERSION_GREATER "1.1.0") - ADD_DEFINITIONS(-DHAVE_TLSv13) - SET(HAVE_TLSv13 1) + CHECK_SYMBOL_EXISTS(TLS1_3_VERSION "openssl/tls1.h" HAVE_TLS1_3_VERSION) + IF(HAVE_TLS1_3_VERSION) + #ADD_DEFINITIONS(-DHAVE_TLSv13) + #SET(HAVE_TLSv13 1) IF(SOLARIS) SET(FORCE_SSL_SOLARIS "-Wl,--undefined,address_of_sk_new_null") ENDIF() -@@ -203,7 +204,13 @@ MACRO (MYSQL_CHECK_SSL) +@@ -263,8 +254,13 @@ MACRO (MYSQL_CHECK_SSL) IF(OPENSSL_INCLUDE_DIR AND OPENSSL_LIBRARY AND CRYPTO_LIBRARY AND -- OPENSSL_MAJOR_VERSION STREQUAL "1" +- (OPENSSL_MAJOR_VERSION STREQUAL "1" OR +- OPENSSL_MAJOR_VERSION STREQUAL "3") + OPENSSL_MAJOR_VERSION VERSION_GREATER_EQUAL "1" + ) + SET(OPENSSL_FOUND TRUE) + ELSEIF(OPENSSL_INCLUDE_DIR AND + OPENSSL_LIBRARY AND + CRYPTO_LIBRARY AND + OPENSSL_MAJOR_VERSION STREQUAL "2" ) SET(OPENSSL_FOUND TRUE) ELSE()