Index: head/databases/mysql80-client/pkg-plist =================================================================== --- head/databases/mysql80-client/pkg-plist (revision 523154) +++ head/databases/mysql80-client/pkg-plist (revision 523155) @@ -1,205 +1,208 @@ +bin/comp_err bin/my_print_defaults bin/mysql bin/mysql_config bin/mysql_config_editor bin/mysqladmin bin/mysqlbinlog bin/mysqlcheck bin/mysqldump bin/mysqlimport bin/mysqlpump bin/mysqlshow bin/mysqlslap bin/perror bin/zlib_decompress include/mysql/base64.h include/mysql/big_endian.h include/mysql/c_string_less.h include/mysql/crypt_genhash_impl.h include/mysql/decimal.h include/mysql/depth_first_search.h include/mysql/dur_prop.h include/mysql/errmsg.h include/mysql/field_types.h include/mysql/ft_global.h +include/mysql/guard.h include/mysql/heap.h +include/mysql/integer_digits.h include/mysql/keycache.h include/mysql/lex_string.h include/mysql/lf.h include/mysql/little_endian.h include/mysql/m_ctype.h include/mysql/m_string.h include/mysql/map_helpers.h include/mysql/mf_wcomp.h include/mysql/mutex_lock.h include/mysql/my_aes.h include/mysql/my_alloc.h include/mysql/my_atomic.h include/mysql/my_base.h include/mysql/my_bit.h include/mysql/my_bitmap.h include/mysql/my_byteorder.h include/mysql/my_check_opt.h include/mysql/my_command.h include/mysql/my_compare.h include/mysql/my_compiler.h include/mysql/my_compress.h include/mysql/my_dbug.h include/mysql/my_default.h include/mysql/my_dir.h include/mysql/my_double2ulonglong.h include/mysql/my_getopt.h include/mysql/my_hash_combine.h include/mysql/my_icp.h include/mysql/my_inttypes.h include/mysql/my_io.h include/mysql/my_list.h include/mysql/my_loglevel.h include/mysql/my_macros.h include/mysql/my_md5.h include/mysql/my_md5_size.h include/mysql/my_murmur3.h include/mysql/my_pointer_arithmetic.h include/mysql/my_psi_config.h include/mysql/my_rapidjson_size_t.h include/mysql/my_rdtsc.h include/mysql/my_rnd.h include/mysql/my_sharedlib.h include/mysql/my_shm_defaults.h include/mysql/my_sqlcommand.h include/mysql/my_stacktrace.h include/mysql/my_sys.h include/mysql/my_systime.h include/mysql/my_table_map.h include/mysql/my_thread.h include/mysql/my_thread_local.h include/mysql/my_thread_os_id.h include/mysql/my_time.h include/mysql/my_timer.h include/mysql/my_tree.h include/mysql/my_uctype.h include/mysql/my_user.h include/mysql/my_xml.h include/mysql/myisam.h include/mysql/myisammrg.h include/mysql/myisampack.h include/mysql/mysql.h include/mysql/mysql.h.pp include/mysql/mysql/client_authentication.h include/mysql/mysql/client_plugin.h include/mysql/mysql/client_plugin.h.pp include/mysql/mysql/com_data.h -include/mysql/mysql/get_password.h include/mysql/mysql/group_replication_priv.h include/mysql/mysql/innodb_priv.h include/mysql/mysql/mysql_lex_string.h include/mysql/mysql/plugin.h include/mysql/mysql/plugin_audit.h include/mysql/mysql/plugin_audit.h.pp include/mysql/mysql/plugin_auth.h include/mysql/mysql/plugin_auth.h.pp include/mysql/mysql/plugin_auth_common.h include/mysql/mysql/plugin_ftparser.h include/mysql/mysql/plugin_ftparser.h.pp include/mysql/mysql/plugin_group_replication.h include/mysql/mysql/plugin_keyring.h include/mysql/mysql/plugin_keyring.h.pp include/mysql/mysql/plugin_query_rewrite.h include/mysql/mysql/plugin_trace.h include/mysql/mysql/plugin_validate_password.h include/mysql/mysql/service_command.h include/mysql/mysql/service_locking.h include/mysql/mysql/service_my_plugin_log.h include/mysql/mysql/service_mysql_alloc.h include/mysql/mysql/service_mysql_keyring.h include/mysql/mysql/service_mysql_password_policy.h include/mysql/mysql/service_mysql_string.h include/mysql/mysql/service_parser.h include/mysql/mysql/service_plugin_registry.h include/mysql/mysql/service_rpl_transaction_ctx.h include/mysql/mysql/service_rpl_transaction_write_set.h include/mysql/mysql/service_rules_table.h include/mysql/mysql/service_security_context.h include/mysql/mysql/service_srv_session.h include/mysql/mysql/service_srv_session_info.h include/mysql/mysql/service_ssl_wrapper.h include/mysql/mysql/service_thd_alloc.h include/mysql/mysql/service_thd_engine_lock.h include/mysql/mysql/service_thd_wait.h include/mysql/mysql/service_thread_scheduler.h include/mysql/mysql/services.h include/mysql/mysql/services.h.pp include/mysql/mysql/thread_pool_priv.h include/mysql/mysql/thread_type.h include/mysql/mysql/udf_registration_types.h include/mysql/mysql_com.h include/mysql/mysql_com_server.h include/mysql/mysql_time.h include/mysql/mysql_version.h include/mysql/mysql_version.h.in include/mysql/mysqld_error.h include/mysql/mysys_err.h include/mysql/nullable.h include/mysql/password.h include/mysql/pfs_cond_provider.h include/mysql/pfs_error_provider.h include/mysql/pfs_file_provider.h include/mysql/pfs_idle_provider.h include/mysql/pfs_memory_provider.h include/mysql/pfs_metadata_provider.h include/mysql/pfs_mutex_provider.h include/mysql/pfs_rwlock_provider.h include/mysql/pfs_socket_provider.h include/mysql/pfs_stage_provider.h include/mysql/pfs_statement_provider.h include/mysql/pfs_table_provider.h include/mysql/pfs_thread_provider.h include/mysql/pfs_transaction_provider.h include/mysql/prealloced_array.h include/mysql/print_version.h include/mysql/priority_queue.h include/mysql/rwlock_scoped_lock.h include/mysql/scope_guard.h include/mysql/service_versions.h include/mysql/sha1.h include/mysql/sha2.h include/mysql/sql_chars.h include/mysql/sql_common.h include/mysql/sql_string.h include/mysql/sslopt-case.h include/mysql/sslopt-longopts.h include/mysql/sslopt-vars.h +include/mysql/tables_contained_in.h include/mysql/template_utils.h include/mysql/thr_cond.h include/mysql/thr_lock.h include/mysql/thr_mutex.h include/mysql/thr_rwlock.h include/mysql/typelib.h include/mysql/varlen_sort.h include/mysql/violite.h include/mysql/welcome_copyright_notice.h lib/mysql/libmysqlclient.a lib/mysql/libmysqlclient.so lib/mysql/libmysqlclient.so.21 lib/mysql/libmysqlclient_r.a lib/mysql/libmysqlclient_r.so lib/mysql/libmysqlclient_r.so.21 %%SASLCLIENT%%lib/mysql/plugin/authentication_ldap_sasl_client.so libdata/pkgconfig/mysqlclient.pc man/man1/comp_err.1.gz man/man1/lz4_decompress.1.gz man/man1/mysql.1.gz man/man1/mysql_config.1.gz man/man1/mysql_config_editor.1.gz man/man1/mysqladmin.1.gz man/man1/mysqlbinlog.1.gz man/man1/mysqlcheck.1.gz man/man1/mysqldump.1.gz man/man1/mysqlimport.1.gz man/man1/mysqlman.1.gz man/man1/mysqlpump.1.gz man/man1/mysqlshow.1.gz man/man1/mysqlslap.1.gz man/man1/perror.1.gz man/man1/zlib_decompress.1.gz share/aclocal/mysql.m4 Index: head/databases/mysql80-server/Makefile =================================================================== --- head/databases/mysql80-server/Makefile (revision 523154) +++ head/databases/mysql80-server/Makefile (revision 523155) @@ -1,174 +1,174 @@ # Created by: Mahdi Mokhtari # $FreeBSD$ PORTNAME?= mysql -PORTVERSION= 8.0.18 +PORTVERSION= 8.0.19 PORTREVISION?= 0 CATEGORIES= databases MASTER_SITES= MYSQL/MySQL-8.0 PKGNAMESUFFIX?= 80-server DISTNAME= ${PORTNAME}-boost-${PORTVERSION}${DISTVERSIONSUFFIX} MAINTAINER= mmokhi@FreeBSD.org COMMENT?= Multithreaded SQL database (server) LICENSE= GPLv2 WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}${DISTVERSIONSUFFIX} SLAVEDIRS= databases/mysql80-client USES= bison:build cmake:noninja compiler:c++14-lang cpe \ libedit localbase ncurses perl5 pkgconfig shebangfix ssl 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 \ libicutu.so:devel/icu \ liblz4.so:archivers/liblz4 \ libzstd.so:archivers/zstd \ libprotobuf.so:devel/protobuf \ libunwind.so:devel/libunwind BUILD_DEPENDS= liblz4>0:archivers/liblz4 \ libunwind>0:devel/libunwind CMAKE_BUILD_TYPE= Release CFLAGS+= -fPIC 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="man" \ -DINSTALL_MYSQLDATADIR="${MY_DBDIR}" \ -DINSTALL_MYSQLKEYRINGDIR="etc/mysql/keyring" \ -DINSTALL_MYSQLSHAREDIR="share/mysql" \ -DINSTALL_MYSQLTESTDIR="" \ -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_SYSTEM_LIBS=1 \ -DWITH_EDITLINE=system \ -DWITH_LIBEVENT=system \ -DWITH_LZ4=system \ -DWITH_ICU=system \ -DWITH_CURL=system \ -DWITH_ZLIB=system \ -DWITH_ZSTD=system \ -DWITH_PROTOBUF=system \ -DWITH_SSL=${OPENSSLBASE} \ -DBUILD_BUNDLED_ZLIB=0 \ -DBUILD_BUNDLED_LZ4=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} \ MYSQL80_LIBVER=${MYSQL80_LIBVER} # MySQL-Server part .if !defined(CLIENT_ONLY) USES+= mysql:80 CONFLICTS_INSTALL= mysql8[1-9]-server-* \ mysql[0-79][0-9]-server-* \ mysqlwsrep* \ mariadb[0-9][0-9]-server-* \ percona[0-9][0-9]-server-* USE_RC_SUBR= mysql-server SUB_FILES= my.cnf.sample USERS= mysql GROUPS= mysql USE_LDCONFIG+= ${PREFIX}/lib/mysql/plugin MMAN1= ibd2sdi.1 innochecksum.1 my_print_defaults.1 myisam_ftdump.1 myisamchk.1 \ myisamlog.1 myisampack.1 mysql_secure_installation.1 mysql_ssl_rsa_setup.1 \ mysql_tzinfo_to_sql.1 mysql_upgrade.1 mysql.server.1 mysqldumpslow.1 mysqld_multi.1 \ mysqld_safe.1 mysqlrouter_passwd.1 mysqlrouter_plugin_info.1 mysqlrouter.1 MMAN8= mysqld.8 CMAKE_ARGS+= -DWITH_EMBEDDED_SERVER="ON" CMAKE_ARGS+= -DWITHOUT_CLIENTLIBS="ON" OPTIONS_GROUP= STORAGE OPTIONS_GROUP_STORAGE= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE PARTITION PERFSCHEMA OPTIONS_SUB= YES 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 OPTIONS_GROUP_FEATURES= PERFSCHM FEATURES_DESC= Default features knobs 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="" .endif .include .if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1200057 SUB_LIST+= LEGACY_LIMITS="@comment " MODERN_LIMITS="" .else SUB_LIST+= LEGACY_LIMITS="" MODERN_LIMITS="@comment " .endif .include post-extract: @${RM} -rv ${WRKSRC}/sql/sql_hints.yy.cc ${WRKSRC}/sql/sql_hints.yy.h .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 Index: head/databases/mysql80-server/distinfo =================================================================== --- head/databases/mysql80-server/distinfo (revision 523154) +++ head/databases/mysql80-server/distinfo (revision 523155) @@ -1,3 +1,3 @@ -TIMESTAMP = 1578004259 -SHA256 (mysql-boost-8.0.18.tar.gz) = 0eccd9d79c04ba0ca661136bb29085e3833d9c48ed022d0b9aba12236994186b -SIZE (mysql-boost-8.0.18.tar.gz) = 194953221 +TIMESTAMP = 1578922201 +SHA256 (mysql-boost-8.0.19.tar.gz) = 3622d2a53236ed9ca62de0616a7e80fd477a9a3f862ba09d503da188f53ca523 +SIZE (mysql-boost-8.0.19.tar.gz) = 264147972 Index: head/databases/mysql80-server/files/patch-plugin-x-client-mysqlxclient-xmessage.h =================================================================== --- head/databases/mysql80-server/files/patch-plugin-x-client-mysqlxclient-xmessage.h (revision 523154) +++ head/databases/mysql80-server/files/patch-plugin-x-client-mysqlxclient-xmessage.h (nonexistent) @@ -1,10 +0,0 @@ ---- plugin/x/client/mysqlxclient/xmessage.h.orig 2019-04-13 11:46:31 UTC -+++ plugin/x/client/mysqlxclient/xmessage.h -@@ -36,7 +36,6 @@ - #include - #include - #include --#include - - #ifdef USE_MYSQLX_FULL_PROTO - Property changes on: head/databases/mysql80-server/files/patch-plugin-x-client-mysqlxclient-xmessage.h ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/databases/mysql80-server/files/patch-plugin-x-ngs-include-ngs-protocol-protocol_protobuf.h =================================================================== --- head/databases/mysql80-server/files/patch-plugin-x-ngs-include-ngs-protocol-protocol_protobuf.h (revision 523154) +++ head/databases/mysql80-server/files/patch-plugin-x-ngs-include-ngs-protocol-protocol_protobuf.h (nonexistent) @@ -1,10 +0,0 @@ ---- plugin/x/ngs/include/ngs/protocol/protocol_protobuf.h.orig 2019-04-13 11:46:31 UTC -+++ plugin/x/ngs/include/ngs/protocol/protocol_protobuf.h -@@ -38,7 +38,6 @@ - #include - #include - #include --#include - - #ifdef USE_MYSQLX_FULL_PROTO - #include "plugin/x/generated/protobuf/mysqlx.pb.h" Property changes on: head/databases/mysql80-server/files/patch-plugin-x-ngs-include-ngs-protocol-protocol_protobuf.h ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/databases/mysql80-server/files/patch-CMakeLists.txt =================================================================== --- head/databases/mysql80-server/files/patch-CMakeLists.txt (revision 523154) +++ head/databases/mysql80-server/files/patch-CMakeLists.txt (revision 523155) @@ -1,76 +1,76 @@ --- CMakeLists.txt.orig 2019-09-20 08:30:51 UTC +++ CMakeLists.txt -@@ -1181,10 +1181,10 @@ ENDIF() +@@ -1191,10 +1191,10 @@ ENDIF() MYSQL_CHECK_SSL() MYSQL_CHECK_SSL_DLLS() -# Add system/bundled editline. -MYSQL_CHECK_EDITLINE() # Add libevent -MYSQL_CHECK_LIBEVENT() +IF(NOT WITHOUT_SERVER) + MYSQL_CHECK_LIBEVENT() +ENDIF() # Add lz4 library MYSQL_CHECK_LZ4() # Add icu library -@@ -1273,7 +1273,9 @@ IF(WITH_UNIT_TESTS) +@@ -1283,7 +1283,9 @@ IF(WITH_UNIT_TESTS) INCLUDE(googletest) ENDIF() -ADD_SUBDIRECTORY(include) +IF(NOT WITHOUT_CLIENTLIBS) + ADD_SUBDIRECTORY(include) +ENDIF(NOT WITHOUT_CLIENTLIBS) ADD_SUBDIRECTORY(strings) ADD_SUBDIRECTORY(vio) ADD_SUBDIRECTORY(mysys) -@@ -1314,24 +1316,29 @@ IF(WITH_UNIT_TESTS) +@@ -1324,12 +1326,17 @@ IF(WITH_UNIT_TESTS) ADD_SUBDIRECTORY(unittest/mytap/t) ENDIF() -ADD_SUBDIRECTORY(client) +IF(NOT WITHOUT_TOOLS) + # Add system/bundled editline + MYSQL_CHECK_EDITLINE() + ADD_SUBDIRECTORY(client) +ENDIF(NOT WITHOUT_TOOLS) + ADD_SUBDIRECTORY(utilities) -ADD_SUBDIRECTORY(share) ADD_SUBDIRECTORY(libservices) IF(NOT WITHOUT_SERVER) - ADD_SUBDIRECTORY(testclients) + ADD_SUBDIRECTORY(share) + ADD_SUBDIRECTORY(testclients) ADD_SUBDIRECTORY(sql) ENDIF() - +@@ -1351,11 +1358,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) +ADD_SUBDIRECTORY(support-files) IF(NOT WITHOUT_SERVER) ADD_SUBDIRECTORY(mysql-test) ADD_SUBDIRECTORY(mysql-test/lib/My/SafeProcess) - ADD_SUBDIRECTORY(support-files) IF(EXISTS ${CMAKE_SOURCE_DIR}/internal/CMakeLists.txt) ADD_SUBDIRECTORY(internal) ENDIF() -@@ -1440,6 +1447,7 @@ IF(PACK_SEPARATE_COMPONENTS) +@@ -1464,6 +1471,7 @@ IF(PACK_SEPARATE_COMPONENTS) SET(CPACK_COMPONENTS_GROUPING IGNORE) ENDIF() +IF(FALSE) IF(UNIX) INSTALL(FILES Docs/mysql.info -@@ -1474,6 +1482,7 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM") +@@ -1498,6 +1506,7 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM") PATTERN "sp-imp-spec.txt" EXCLUDE PATTERN "README.build" EXCLUDE ) +ENDIF() ENDIF() # Now that we're done with all ADD_SUBDIRECTORY and thus all feature tests, Index: head/databases/mysql80-server/files/patch-cmake_install_layout.cmake =================================================================== --- head/databases/mysql80-server/files/patch-cmake_install_layout.cmake (nonexistent) +++ head/databases/mysql80-server/files/patch-cmake_install_layout.cmake (revision 523155) @@ -0,0 +1,96 @@ +--- 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}." +@@ -159,6 +163,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") +@@ -345,7 +375,7 @@ ENDIF() + + # Install layout for router, follows the same pattern as above. + # +-# Supported layouts here are STANDALONE, RPM, DEB, SVR4, TARGZ ++# Supported layouts here are STANDALONE, FREEBSD, RPM, DEB, SVR4, TARGZ + + # Variables ROUTER_INSTALL_${X}DIR, where + # X = BIN, LIB and DOC is using +@@ -387,7 +417,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 are _pure_ STANDALONE we can write into data/ as it is all ours + # if we are shared STANDALONE with the the server, we shouldn't write +@@ -400,6 +430,13 @@ SET(ROUTER_INSTALL_CONFIGDIR_STANDALONE ".") + SET(ROUTER_INSTALL_DATADIR_STANDALONE "var/lib/mysqlrouter") + SET(ROUTER_INSTALL_LOGDIR_STANDALONE ".") + SET(ROUTER_INSTALL_RUNTIMEDIR_STANDALONE "run") ++# ++# 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") + # + # RPM layout + # Property changes on: head/databases/mysql80-server/files/patch-cmake_install_layout.cmake ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/mysql80-server/files/patch-include_CMakeLists.txt =================================================================== --- head/databases/mysql80-server/files/patch-include_CMakeLists.txt (revision 523154) +++ head/databases/mysql80-server/files/patch-include_CMakeLists.txt (revision 523155) @@ -1,174 +1,176 @@ ---- include/CMakeLists.txt.orig 2019-09-20 08:30:51 UTC +--- include/CMakeLists.txt.orig 2019-12-09 19:53:17 UTC +++ include/CMakeLists.txt -@@ -37,10 +37,171 @@ SET(HEADERS +@@ -37,10 +37,173 @@ SET(HEADERS ${CMAKE_CURRENT_BINARY_DIR}/mysql_version.h ${CMAKE_CURRENT_BINARY_DIR}/mysqld_error.h field_types.h + base64.h + big_endian.h + c_string_less.h + crypt_genhash_impl.h + decimal.h + depth_first_search.h + dur_prop.h + errmsg.h + ft_global.h ++ guard.h + heap.h ++ integer_digits.h + keycache.h + lex_string.h + lf.h + little_endian.h + m_ctype.h + m_string.h + map_helpers.h + mf_wcomp.h + mutex_lock.h + my_aes.h + my_alloc.h + my_atomic.h + my_base.h + my_bit.h + my_bitmap.h + my_byteorder.h + my_check_opt.h + my_command.h + my_compare.h + my_compiler.h + my_dbug.h + my_default.h + my_dir.h + my_double2ulonglong.h + my_getopt.h + my_hash_combine.h + my_icp.h + my_inttypes.h + my_io.h + my_list.h + my_loglevel.h + my_macros.h + my_md5.h + my_md5_size.h + my_murmur3.h + my_pointer_arithmetic.h + my_psi_config.h + my_rapidjson_size_t.h + my_rdtsc.h + my_rnd.h + my_sharedlib.h + my_shm_defaults.h + my_sqlcommand.h + my_stacktrace.h + my_sys.h + my_systime.h + my_table_map.h + my_thread.h + my_thread_local.h + my_thread_os_id.h + my_time.h + my_timer.h + my_tree.h + my_uctype.h + my_user.h + my_xml.h + myisam.h + myisammrg.h + myisampack.h + mysql.h + mysql.h.pp + mysql_com.h + mysql_com_server.h + mysql_time.h + mysql_version.h.in + mysys_err.h + nullable.h + password.h + pfs_cond_provider.h + pfs_error_provider.h + pfs_file_provider.h + pfs_idle_provider.h + pfs_memory_provider.h + pfs_metadata_provider.h + pfs_mutex_provider.h + pfs_rwlock_provider.h + pfs_socket_provider.h + pfs_stage_provider.h + pfs_statement_provider.h + pfs_table_provider.h + pfs_thread_provider.h + pfs_transaction_provider.h + prealloced_array.h + print_version.h + priority_queue.h + rwlock_scoped_lock.h + scope_guard.h + service_versions.h + sha1.h + sha2.h + sql_chars.h + sql_common.h + sql_string.h + sslopt-case.h + sslopt-longopts.h + sslopt-vars.h ++ tables_contained_in.h + template_utils.h + thr_cond.h + thr_lock.h + thr_mutex.h + thr_rwlock.h + typelib.h + varlen_sort.h + violite.h + welcome_copyright_notice.h ) SET(HEADERS_MYSQL_DIR mysql/client_plugin.h mysql/plugin_auth_common.h + mysql/udf_registration_types.h + mysql/client_authentication.h + mysql/client_plugin.h.pp + mysql/com_data.h -+ mysql/get_password.h + mysql/group_replication_priv.h + mysql/innodb_priv.h + mysql/mysql_lex_string.h + mysql/plugin.h + mysql/plugin_audit.h + mysql/plugin_audit.h.pp + mysql/plugin_auth.h + mysql/plugin_auth.h.pp + mysql/plugin_auth_common.h + mysql/plugin_ftparser.h + mysql/plugin_ftparser.h.pp + mysql/plugin_group_replication.h + mysql/plugin_keyring.h + mysql/plugin_keyring.h.pp + mysql/plugin_query_rewrite.h + mysql/plugin_trace.h + mysql/plugin_validate_password.h + mysql/service_command.h + mysql/service_locking.h + mysql/service_my_plugin_log.h + mysql/service_mysql_alloc.h + mysql/service_mysql_keyring.h + mysql/service_mysql_password_policy.h + mysql/service_mysql_string.h + mysql/service_parser.h + mysql/service_plugin_registry.h + mysql/service_rpl_transaction_ctx.h + mysql/service_rpl_transaction_write_set.h + mysql/service_rules_table.h + mysql/service_security_context.h + mysql/service_srv_session.h + mysql/service_srv_session_info.h + mysql/service_ssl_wrapper.h + mysql/service_thd_alloc.h + mysql/service_thd_engine_lock.h + mysql/service_thd_wait.h + mysql/service_thread_scheduler.h + mysql/services.h + mysql/services.h.pp + mysql/thread_pool_priv.h + mysql/thread_type.h mysql/udf_registration_types.h ) Index: head/databases/mysql80-server/files/patch-plugin_x_client_xconnection__impl.cc =================================================================== --- head/databases/mysql80-server/files/patch-plugin_x_client_xconnection__impl.cc (revision 523154) +++ head/databases/mysql80-server/files/patch-plugin_x_client_xconnection__impl.cc (revision 523155) @@ -1,32 +1,33 @@ --- plugin/x/client/xconnection_impl.cc.orig 2019-09-20 08:30:51 UTC +++ plugin/x/client/xconnection_impl.cc -@@ -521,6 +521,7 @@ XError Connection_impl::get_ssl_error(const int error_ +@@ -520,6 +520,7 @@ XError Connection_impl::get_ssl_error(const int error_ return XError(CR_SSL_CONNECTION_ERROR, buffer); } +#ifndef LIBRESSL_VERSION_NUMBER /** 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 uint fips_mode, char err_strin +@@ -559,6 +560,7 @@ int set_fips_mode(const uint32_t fips_mode, EXIT: return rc; } +#endif XError Connection_impl::activate_tls() { if (nullptr == m_vio) return get_socket_error(SOCKET_ECONNRESET); -@@ -569,11 +571,13 @@ XError Connection_impl::activate_tls() { +@@ -569,12 +571,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}; +#ifndef LIBRESSL_VERSION_NUMBER char err_string[OPENSSL_ERROR_LENGTH] = {'\0'}; - if (set_fips_mode(static_cast(m_context->m_ssl_config.m_ssl_fips_mode), - err_string) != 1) { + if (set_fips_mode( + static_cast(m_context->m_ssl_config.m_ssl_fips_mode), + err_string) != 1) { return XError{CR_SSL_CONNECTION_ERROR, err_string, true}; } +#endif auto ssl_ctx_flags = process_tls_version( details::null_when_empty(m_context->m_ssl_config.m_tls_version)); Index: head/databases/mysql80-server/files/patch-router_src_harness_src_CMakeLists.txt =================================================================== --- head/databases/mysql80-server/files/patch-router_src_harness_src_CMakeLists.txt (nonexistent) +++ head/databases/mysql80-server/files/patch-router_src_harness_src_CMakeLists.txt (revision 523155) @@ -0,0 +1,10 @@ +--- router/src/harness/src/CMakeLists.txt.orig 2019-12-09 19:53:17 UTC ++++ router/src/harness/src/CMakeLists.txt +@@ -200,7 +200,6 @@ IF(NOT WIN32) + INSTALL(TARGETS harness-library + LIBRARY + DESTINATION ${ROUTER_INSTALL_LIBDIR} COMPONENT Router +- NAMELINK_SKIP + ) + ELSE() + INSTALL(TARGETS harness-library Property changes on: head/databases/mysql80-server/files/patch-router_src_harness_src_CMakeLists.txt ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/mysql80-server/files/patch-router_src_http_src_CMakeLists.txt =================================================================== --- head/databases/mysql80-server/files/patch-router_src_http_src_CMakeLists.txt (nonexistent) +++ head/databases/mysql80-server/files/patch-router_src_http_src_CMakeLists.txt (revision 523155) @@ -0,0 +1,10 @@ +--- router/src/http/src/CMakeLists.txt.orig 2019-12-09 19:53:17 UTC ++++ router/src/http/src/CMakeLists.txt +@@ -62,7 +62,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 +- NAMELINK_SKIP + ) + + ## split library code from the plugin to use them _passwd and tests Property changes on: head/databases/mysql80-server/files/patch-router_src_http_src_CMakeLists.txt ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/mysql80-server/files/patch-router_src_http_src_tls__context.cc =================================================================== --- head/databases/mysql80-server/files/patch-router_src_http_src_tls__context.cc (revision 523154) +++ head/databases/mysql80-server/files/patch-router_src_http_src_tls__context.cc (revision 523155) @@ -1,34 +1,44 @@ --- router/src/http/src/tls_context.cc.orig 2019-09-20 08:30:51 UTC +++ router/src/http/src/tls_context.cc @@ -91,7 +91,7 @@ static constexpr int o11x_version(TlsVersion version) return TLS1_1_VERSION; case TlsVersion::TLS_1_2: return TLS1_2_VERSION; -#if OPENSSL_VERSION_NUMBER >= ROUTER_OPENSSL_VERSION(1, 1, 1) +#ifdef TLS1_3_VERSION case TlsVersion::TLS_1_3: return TLS1_3_VERSION; #endif @@ -121,9 +121,11 @@ void TlsContext::version_range(TlsVersion min_version, default: // unknown, leave all disabled // fallthrough +#ifdef TLS1_3_VERSION case TlsVersion::TLS_1_3: opts |= SSL_OP_NO_TLSv1_2; // fallthrough +#endif case TlsVersion::TLS_1_2: opts |= SSL_OP_NO_TLSv1_1; // fallthrough @@ -170,8 +172,10 @@ TlsVersion TlsContext::min_version() const { return TlsVersion::TLS_1_1; case TLS1_2_VERSION: return TlsVersion::TLS_1_2; +#ifdef TLS1_3_VERSION case TLS1_3_VERSION: return TlsVersion::TLS_1_3; +#endif case 0: return TlsVersion::AUTO; default: +@@ -230,7 +234,8 @@ TlsContext::InfoCallback TlsContext::info_callback() c + } + + int TlsContext::security_level() const { +-#if OPENSSL_VERSION_NUMBER >= ROUTER_OPENSSL_VERSION(1, 1, 0) ++#if OPENSSL_VERSION_NUMBER >= ROUTER_OPENSSL_VERSION(1, 1, 0) && \ ++ !defined(LIBRESSL_VERSION_NUMBER) + return SSL_CTX_get_security_level(ssl_ctx_.get()); + #else + return 0; Index: head/databases/mysql80-server/files/patch-router_src_router_src_CMakeLists.txt =================================================================== --- head/databases/mysql80-server/files/patch-router_src_router_src_CMakeLists.txt (nonexistent) +++ head/databases/mysql80-server/files/patch-router_src_router_src_CMakeLists.txt (revision 523155) @@ -0,0 +1,10 @@ +--- router/src/router/src/CMakeLists.txt.orig 2019-12-09 19:53:17 UTC ++++ router/src/router/src/CMakeLists.txt +@@ -119,7 +119,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 +- NAMELINK_SKIP + ) + + MYSQL_ADD_EXECUTABLE(mysqlrouter_keyring Property changes on: head/databases/mysql80-server/files/patch-router_src_router_src_CMakeLists.txt ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/mysql80-server/files/patch-scripts_CMakeLists.txt =================================================================== --- head/databases/mysql80-server/files/patch-scripts_CMakeLists.txt (revision 523154) +++ head/databases/mysql80-server/files/patch-scripts_CMakeLists.txt (revision 523155) @@ -1,64 +1,61 @@ --- scripts/CMakeLists.txt.orig 2019-09-20 08:30:51 UTC +++ scripts/CMakeLists.txt -@@ -327,7 +327,7 @@ MACRO(EXTRACT_LINK_LIBRARIES target var) +@@ -330,7 +330,7 @@ MACRO(EXTRACT_LINK_LIBRARIES target var) LIST(REMOVE_DUPLICATES ${target}_LIB_DEPENDS) FOREACH(lib ${${target}_LIB_DEPENDS}) # Filter out "general", it is not a library, just CMake hint - IF(NOT lib STREQUAL "general" AND NOT ${var} MATCHES "-l${lib} ") + IF(NOT lib STREQUAL "general" AND NOT ${var} MATCHES "-l${lib} " AND NOT lib STREQUAL "imported_openssl" AND NOT lib STREQUAL "imported_crypto") IF (lib MATCHES "^\\-l") SET(${var} "${${var}} ${lib} ") ELSEIF (lib MATCHES "^\\-L") -@@ -337,6 +337,8 @@ MACRO(EXTRACT_LINK_LIBRARIES target var) +@@ -340,6 +340,8 @@ MACRO(EXTRACT_LINK_LIBRARIES target var) GET_FILENAME_COMPONENT(lib "${lib}" NAME_WE) STRING(REGEX REPLACE "^lib" "" lib "${lib}") SET(${var} "${${var}}-l${lib} " ) + ELSEIF(lib STREQUAL "-pthread") + SET(${var} "${${var}}-pthread " ) ELSE() SET(${var} "${${var}}-l${lib} " ) ENDIF() -@@ -423,18 +425,23 @@ ELSE() +@@ -414,7 +416,7 @@ ELSE() + ${CMAKE_CURRENT_BINARY_DIR}/${PKGCONFIG_FILE} + ESCAPE_QUOTES @ONLY) +- IF(INSTALL_PKGCONFIGDIR) ++ IF(INSTALL_PKGCONFIGDIR AND NOT WITHOUT_CLIENTLIBS) + MESSAGE(STATUS "INSTALL ${PKGCONFIG_FILE} ${INSTALL_PKGCONFIGDIR}") + INSTALL(FILES + ${CMAKE_CURRENT_BINARY_DIR}/${PKGCONFIG_FILE} +@@ -427,23 +429,28 @@ ELSE() + # mysqld_safe used in mtr even for systemd platforms IF(WITH_SYSTEMD) SET(BIN_SCRIPTS - mysql_config mysqldumpslow + mysqld_safe ) ELSE() SET(BIN_SCRIPTS - mysql_config mysqldumpslow mysqld_multi mysqld_safe ) ENDIF() + IF(NOT WITHOUT_CLIENTLIBS) + SET(BIN_SCRIPTS + ${BIN_SCRIPTS} + mysql_config + ) + ENDIF(NOT WITHOUT_CLIENTLIBS) + - SET(PKGCONFIG_FILE ${LIBMYSQL_OS_OUTPUT_NAME}.pc) - STRING(REGEX REPLACE "/mysql$" "" PKGCONFIG_DIR "${INSTALL_LIBDIR}") - SET(PKGCONFIG_DIR "${PKGCONFIG_DIR}/pkgconfig") -@@ -449,7 +456,7 @@ ELSE() - ${CMAKE_CURRENT_BINARY_DIR}/${PKGCONFIG_FILE} - ESCAPE_QUOTES @ONLY) - -- IF(INSTALL_PKGCONFIGDIR) -+ IF(INSTALL_PKGCONFIGDIR AND NOT WITHOUT_CLIENTLIBS) - MESSAGE(STATUS "INSTALL ${PKGCONFIG_FILE} ${INSTALL_PKGCONFIGDIR}") - INSTALL(FILES - ${CMAKE_CURRENT_BINARY_DIR}/${PKGCONFIG_FILE} -@@ -462,7 +469,7 @@ ELSE() FOREACH(file ${BIN_SCRIPTS}) IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh) CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh -- ${CMAKE_CURRENT_BINARY_DIR}/${file} ESCAPE_QUOTES @ONLY) -+ ${CMAKE_CURRENT_BINARY_DIR}/${file} @ONLY) - ELSEIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}) - CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file} - ${CMAKE_CURRENT_BINARY_DIR}/${file} COPYONLY) +- ${CMAKE_CURRENT_BINARY_DIR}/${file} ESCAPE_QUOTES @ONLY ++ ${CMAKE_CURRENT_BINARY_DIR}/${file} @ONLY + ) + ELSEIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.pl.in) + CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}.pl.in Index: head/databases/mysql80-server/files/patch-sql_mysqld.cc =================================================================== --- head/databases/mysql80-server/files/patch-sql_mysqld.cc (revision 523154) +++ head/databases/mysql80-server/files/patch-sql_mysqld.cc (revision 523155) @@ -1,11 +1,26 @@ --- sql/mysqld.cc.orig 2019-09-20 08:30:51 UTC +++ sql/mysqld.cc -@@ -4797,7 +4797,7 @@ static int init_thread_environment() { +@@ -4818,7 +4818,7 @@ static int init_thread_environment() { static PSI_memory_key key_memory_openssl = PSI_NOT_INSTRUMENTED; -#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) #define FILE_LINE_ARGS #else #define FILE_LINE_ARGS , const char *, int +@@ -4854,12 +4854,14 @@ static void init_ssl() { + } + + static int init_ssl_communication() { ++#ifndef LIBRESSL_VERSION_NUMBER + char ssl_err_string[OPENSSL_ERROR_LENGTH] = {'\0'}; + int ret_fips_mode = set_fips_mode(opt_ssl_fips_mode, ssl_err_string); + if (ret_fips_mode != 1) { + LogErr(ERROR_LEVEL, ER_SSL_FIPS_MODE_ERROR, ssl_err_string); + return 1; + } ++#endif /* LIBRESSL_VERSION_NUMBER */ + if (SslAcceptorContext::singleton_init(opt_use_ssl)) return 1; + + #if OPENSSL_VERSION_NUMBER < 0x10100000L Index: head/databases/mysql80-server/files/patch-support-files_CMakeLists.txt =================================================================== --- head/databases/mysql80-server/files/patch-support-files_CMakeLists.txt (revision 523154) +++ head/databases/mysql80-server/files/patch-support-files_CMakeLists.txt (revision 523155) @@ -1,27 +1,27 @@ --- support-files/CMakeLists.txt.orig 2019-09-20 08:30:51 UTC +++ support-files/CMakeLists.txt @@ -24,8 +24,9 @@ IF(NOT UNIX) RETURN() ENDIF() -INSTALL(FILES mysql.m4 - DESTINATION ${INSTALL_SHAREDIR}/aclocal COMPONENT Development) +IF(NOT WITHOUT_CLIENTLIBS) + INSTALL(FILES mysql.m4 DESTINATION ${INSTALL_SHAREDIR}/aclocal COMPONENT Development) +ENDIF(NOT WITHOUT_CLIENTLIBS) SET(localstatedir "${MYSQL_DATADIR}") -@@ -39,6 +40,7 @@ ELSE() - SET (PIDOF "pgrep -d' ' -f") - ENDIF() +@@ -45,6 +46,7 @@ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mysql.serve + CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mysql-log-rotate.in + ${CMAKE_CURRENT_BINARY_DIR}/mysql-log-rotate @ONLY) +IF(NOT WITHOUT_SERVER) - FOREACH(script - mysql.server - mysqld_multi.server -@@ -54,3 +56,4 @@ FOREACH(script - GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE - ) - ENDFOREACH() + INSTALL_SCRIPT(${CMAKE_CURRENT_BINARY_DIR}/mysql.server + COMPONENT Server_Scripts + DESTINATION ${INSTALL_SUPPORTFILESDIR} +@@ -62,3 +64,4 @@ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mysql-log-ro + OWNER_READ OWNER_WRITE + GROUP_READ WORLD_READ + ) +ENDIF() Index: head/databases/mysql80-server/files/patch-utilities_CMakeLists.txt =================================================================== --- head/databases/mysql80-server/files/patch-utilities_CMakeLists.txt (revision 523154) +++ head/databases/mysql80-server/files/patch-utilities_CMakeLists.txt (revision 523155) @@ -1,59 +1,81 @@ --- utilities/CMakeLists.txt.orig 2019-09-20 08:30:51 UTC +++ utilities/CMakeLists.txt -@@ -99,10 +99,30 @@ IF(APPLE AND HAVE_CRYPTO_DYLIB AND HAVE_OPENSSL_DYLIB) +@@ -22,13 +22,19 @@ + + ADD_WSHADOW_WARNING() + +-IF(NOT CMAKE_CROSSCOMPILING) ++IF(WITHOUT_CLIENTLIBS) + MYSQL_ADD_EXECUTABLE(comp_err + comp_err.cc + COMPONENT Server + LINK_LIBRARIES mysys ++ SKIP_INSTALL) ++ELSE(WITHOUT_CLIENTLIBS) ++ MYSQL_ADD_EXECUTABLE(comp_err ++ comp_err.cc ++ COMPONENT Server ++ LINK_LIBRARIES mysys + ) +-ENDIF() ++ENDIF(WITHOUT_CLIENTLIBS) + + MYSQL_ADD_EXECUTABLE(comp_client_err + comp_client_err.cc +@@ -120,10 +126,30 @@ IF(LINUX_INSTALL_RPATH_ORIGIN) ADD_DEPENDENCIES(comp_err copy_openssl_dlls) ENDIF() +IF(WITHOUT_CLIENTLIBS) MYSQL_ADD_EXECUTABLE(my_print_defaults my_print_defaults.cc COMPONENT Server LINK_LIBRARIES mysys + SKIP_INSTALL ) +MYSQL_ADD_EXECUTABLE(perror + perror.cc + COMPONENT Server + DEPENDENCIES GenError + LINK_LIBRARIES mysys + SKIP_INSTALL ) +IF(BUILD_BUNDLED_LZ4) + MYSQL_ADD_EXECUTABLE(lz4_decompress + lz4_decompress.cc + COMPONENT Server + LINK_LIBRARIES ${LZ4_LIBRARY} mysys + SKIP_INSTALL ) +ENDIF() +ELSE(WITHOUT_CLIENTLIBS) +MYSQL_ADD_EXECUTABLE(my_print_defaults + my_print_defaults.cc + COMPONENT Server + LINK_LIBRARIES mysys ) MYSQL_ADD_EXECUTABLE(perror perror.cc -@@ -117,14 +137,25 @@ IF(BUILD_BUNDLED_LZ4) +@@ -138,14 +164,25 @@ IF(BUILD_BUNDLED_LZ4) LINK_LIBRARIES ${LZ4_LIBRARY} mysys ) ENDIF() +ENDIF(WITHOUT_CLIENTLIBS) +IF(WITHOUT_CLIENTLIBS) IF(BUILD_BUNDLED_ZLIB OR NOT OPENSSL_EXECUTABLE_HAS_ZLIB) MYSQL_ADD_EXECUTABLE(zlib_decompress zlib_decompress.cc COMPONENT Server LINK_LIBRARIES ${ZLIB_LIBRARY} mysys + SKIP_INSTALL ) +ENDIF() +ELSE(WITHOUT_CLIENTLIBS) +IF(BUILD_BUNDLED_ZLIB OR NOT OPENSSL_EXECUTABLE_HAS_ZLIB) + MYSQL_ADD_EXECUTABLE(zlib_decompress + zlib_decompress.cc + COMPONENT Server + LINK_LIBRARIES ${ZLIB_LIBRARY} mysys ) ENDIF() +ENDIF(WITHOUT_CLIENTLIBS) # All targets below belong to COMPONENT Server and depend on InnoDB. IF(WITHOUT_SERVER) Index: head/databases/mysql80-server/files/patch-vio_viossl.cc =================================================================== --- head/databases/mysql80-server/files/patch-vio_viossl.cc (revision 523154) +++ head/databases/mysql80-server/files/patch-vio_viossl.cc (revision 523155) @@ -1,20 +1,30 @@ --- vio/viossl.cc.orig 2019-09-20 08:30:51 UTC +++ vio/viossl.cc +@@ -45,7 +45,8 @@ + BIO_set_callback_ex was added in openSSL 1.1.1 + For older openSSL, use the deprecated BIO_set_callback. + */ +-#if OPENSSL_VERSION_NUMBER >= 0x10101000L ++#if OPENSSL_VERSION_NUMBER >= 0x10101000L && \ ++ !defined(LIBRESSL_VERSION_NUMBER) + #define HAVE_BIO_SET_CALLBACK_EX + #endif + @@ -490,7 +490,7 @@ static int ssl_do(struct st_VioSSLFd *ptr, Vio *vio, l #if !defined(DBUG_OFF) { STACK_OF(SSL_COMP) *ssl_comp_methods = NULL; - ssl_comp_methods = SSL_COMP_get_compression_methods(); + ssl_comp_methods = (STACK_OF(SSL_COMP) *)SSL_COMP_get_compression_methods(); n = sk_SSL_COMP_num(ssl_comp_methods); DBUG_PRINT("info", ("Available compression methods:\n")); if (n == 0) @@ -498,7 +498,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); -#if OPENSSL_VERSION_NUMBER < 0x10100000L +#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) DBUG_PRINT("info", (" %d: %s\n", c->id, c->name)); #else /* OPENSSL_VERSION_NUMBER < 0x10100000L */ DBUG_PRINT("info", Index: head/databases/mysql80-server/pkg-plist =================================================================== --- head/databases/mysql80-server/pkg-plist (revision 523154) +++ head/databases/mysql80-server/pkg-plist (revision 523155) @@ -1,223 +1,225 @@ LICENSE.router README.router bin/ibd2sdi bin/innochecksum bin/myisam_ftdump bin/myisamchk bin/myisamlog bin/myisampack bin/mysqldumpslow bin/mysql_client_test bin/mysql_secure_installation bin/mysql_ssl_rsa_setup bin/mysql_tzinfo_to_sql bin/mysql_upgrade bin/mysqld_multi bin/mysqld_safe bin/mysqlrouter bin/mysqlrouter_keyring bin/mysqlrouter_passwd bin/mysqlrouter_plugin_info bin/mysqltest bin/mysqltest_safe_process bin/mysqlxtest -lib/mysql/libmysqlharness.a lib/mysql/libmysqlharness.so lib/mysql/libmysqlharness.so.1 lib/mysql/libmysqlrouter.so lib/mysql/libmysqlrouter.so.1 lib/mysql/libmysqlrouter_http.so lib/mysql/libmysqlrouter_http.so.1 lib/mysql/mysqlrouter/http_auth_backend.so lib/mysql/mysqlrouter/http_auth_realm.so lib/mysql/mysqlrouter/http_server.so lib/mysql/mysqlrouter/keepalive.so lib/mysql/mysqlrouter/metadata_cache.so lib/mysql/mysqlrouter/mysql_protocol.so lib/mysql/mysqlrouter/rest_api.so lib/mysql/mysqlrouter/rest_metadata_cache.so lib/mysql/mysqlrouter/rest_router.so lib/mysql/mysqlrouter/rest_routing.so lib/mysql/mysqlrouter/routing.so lib/mysql/plugin/adt_null.so lib/mysql/plugin/auth.so lib/mysql/plugin/auth_test_plugin.so lib/mysql/plugin/component_audit_api_message_emit.so lib/mysql/plugin/component_example_component1.so lib/mysql/plugin/component_example_component2.so lib/mysql/plugin/component_example_component3.so lib/mysql/plugin/component_log_filter_dragnet.so lib/mysql/plugin/component_log_sink_json.so lib/mysql/plugin/component_log_sink_syseventlog.so lib/mysql/plugin/component_log_sink_test.so lib/mysql/plugin/component_mysqlbackup.so lib/mysql/plugin/component_mysqlx_global_reset.so lib/mysql/plugin/component_pfs_example.so lib/mysql/plugin/component_pfs_example_component_population.so lib/mysql/plugin/component_test_audit_api_message.so lib/mysql/plugin/component_test_backup_lock_service.so lib/mysql/plugin/component_test_host_application_signal.so lib/mysql/plugin/component_test_mysql_current_thread_reader.so lib/mysql/plugin/component_test_mysql_runtime_error.so lib/mysql/plugin/component_test_pfs_notification.so lib/mysql/plugin/component_test_pfs_resource_group.so lib/mysql/plugin/component_test_status_var_service.so lib/mysql/plugin/component_test_status_var_service_int.so lib/mysql/plugin/component_test_status_var_service_reg_only.so lib/mysql/plugin/component_test_status_var_service_str.so lib/mysql/plugin/component_test_status_var_service_unreg_only.so lib/mysql/plugin/component_test_string_service.so lib/mysql/plugin/component_test_string_service_charset.so lib/mysql/plugin/component_test_string_service_long.so lib/mysql/plugin/component_test_sys_var_service.so lib/mysql/plugin/component_test_sys_var_service_int.so lib/mysql/plugin/component_test_sys_var_service_same.so lib/mysql/plugin/component_test_sys_var_service_str.so lib/mysql/plugin/component_test_system_variable_source.so lib/mysql/plugin/component_test_udf_registration.so +@comment lib/mysql/plugin/component_test_udf_services.so lib/mysql/plugin/component_udf_reg_3_func.so lib/mysql/plugin/component_udf_reg_avg_func.so lib/mysql/plugin/component_udf_reg_int_func.so lib/mysql/plugin/component_udf_reg_int_same_func.so lib/mysql/plugin/component_udf_reg_only_3_func.so lib/mysql/plugin/component_udf_reg_real_func.so lib/mysql/plugin/component_udf_unreg_3_func.so lib/mysql/plugin/component_udf_unreg_int_func.so lib/mysql/plugin/component_udf_unreg_real_func.so lib/mysql/plugin/component_validate_password.so lib/mysql/plugin/connection_control.so lib/mysql/plugin/daemon_example.ini lib/mysql/plugin/ddl_rewriter.so lib/mysql/plugin/group_replication.so %%NO_EXAMPLE%%lib/mysql/plugin/ha_example.so lib/mysql/plugin/ha_mock.so +lib/mysql/plugin/component_test_udf_services.so lib/mysql/plugin/keyring_file.so lib/mysql/plugin/libdaemon_example.so lib/mysql/plugin/libtest_framework.so lib/mysql/plugin/libtest_services.so lib/mysql/plugin/libtest_services_threaded.so lib/mysql/plugin/libtest_session_attach.so lib/mysql/plugin/libtest_session_detach.so lib/mysql/plugin/libtest_session_in_thd.so lib/mysql/plugin/libtest_session_info.so lib/mysql/plugin/libtest_sql_2_sessions.so lib/mysql/plugin/libtest_sql_all_col_types.so lib/mysql/plugin/libtest_sql_cmds_1.so lib/mysql/plugin/libtest_sql_commit.so lib/mysql/plugin/libtest_sql_complex.so lib/mysql/plugin/libtest_sql_errors.so lib/mysql/plugin/libtest_sql_lock.so lib/mysql/plugin/libtest_sql_processlist.so lib/mysql/plugin/libtest_sql_replication.so lib/mysql/plugin/libtest_sql_reset_connection.so lib/mysql/plugin/libtest_sql_shutdown.so lib/mysql/plugin/libtest_sql_sqlmode.so lib/mysql/plugin/libtest_sql_stmt.so lib/mysql/plugin/libtest_sql_stored_procedures_functions.so lib/mysql/plugin/libtest_sql_views_triggers.so lib/mysql/plugin/libtest_x_sessions_deinit.so lib/mysql/plugin/libtest_x_sessions_init.so lib/mysql/plugin/locking_service.so lib/mysql/plugin/mypluglib.so lib/mysql/plugin/mysql_clone.so lib/mysql/plugin/mysql_no_login.so lib/mysql/plugin/pfs_example_plugin_employee.so lib/mysql/plugin/qa_auth_client.so lib/mysql/plugin/qa_auth_interface.so lib/mysql/plugin/qa_auth_server.so lib/mysql/plugin/replication_observers_example_plugin.so lib/mysql/plugin/rewrite_example.so lib/mysql/plugin/rewriter.so lib/mysql/plugin/semisync_master.so lib/mysql/plugin/semisync_slave.so lib/mysql/plugin/test_security_context.so lib/mysql/plugin/test_services_host_application_signal.so lib/mysql/plugin/test_services_plugin_registry.so lib/mysql/plugin/udf_example.so lib/mysql/plugin/keyring_udf.so lib/mysql/plugin/test_udf_services.so lib/mysql/plugin/validate_password.so lib/mysql/plugin/version_token.so libexec/mysqld man/man1/ibd2sdi.1.gz man/man1/innochecksum.1.gz man/man1/my_print_defaults.1.gz man/man1/myisam_ftdump.1.gz man/man1/myisamchk.1.gz man/man1/myisamlog.1.gz man/man1/myisampack.1.gz man/man1/mysql_secure_installation.1.gz man/man1/mysql_ssl_rsa_setup.1.gz man/man1/mysql_tzinfo_to_sql.1.gz man/man1/mysql_upgrade.1.gz man/man1/mysql.server.1.gz man/man1/mysqld_multi.1.gz man/man1/mysqld_safe.1.gz man/man1/mysqldumpslow.1.gz man/man1/mysqlrouter_passwd.1.gz man/man1/mysqlrouter_plugin_info.1.gz man/man1/mysqlrouter.1.gz man/man8/mysqld.8.gz %%DATADIR%%/bulgarian/errmsg.sys %%DATADIR%%/charsets/Index.xml %%DATADIR%%/charsets/README %%DATADIR%%/charsets/armscii8.xml %%DATADIR%%/charsets/ascii.xml %%DATADIR%%/charsets/cp1250.xml %%DATADIR%%/charsets/cp1251.xml %%DATADIR%%/charsets/cp1256.xml %%DATADIR%%/charsets/cp1257.xml %%DATADIR%%/charsets/cp850.xml %%DATADIR%%/charsets/cp852.xml %%DATADIR%%/charsets/cp866.xml %%DATADIR%%/charsets/dec8.xml %%DATADIR%%/charsets/geostd8.xml %%DATADIR%%/charsets/greek.xml %%DATADIR%%/charsets/hebrew.xml %%DATADIR%%/charsets/hp8.xml %%DATADIR%%/charsets/keybcs2.xml %%DATADIR%%/charsets/koi8r.xml %%DATADIR%%/charsets/koi8u.xml %%DATADIR%%/charsets/latin1.xml %%DATADIR%%/charsets/latin2.xml %%DATADIR%%/charsets/latin5.xml %%DATADIR%%/charsets/latin7.xml %%DATADIR%%/charsets/macce.xml %%DATADIR%%/charsets/macroman.xml %%DATADIR%%/charsets/swe7.xml %%DATADIR%%/czech/errmsg.sys %%DATADIR%%/danish/errmsg.sys %%DATADIR%%/dictionary.txt %%DATADIR%%/dutch/errmsg.sys %%DATADIR%%/english/errmsg.sys -%%DATADIR%%/errmsg-utf8.txt %%DATADIR%%/estonian/errmsg.sys %%DATADIR%%/french/errmsg.sys %%DATADIR%%/german/errmsg.sys %%DATADIR%%/greek/errmsg.sys %%DATADIR%%/hungarian/errmsg.sys %%DATADIR%%/innodb_memcached_config.sql %%DATADIR%%/install_rewriter.sql %%DATADIR%%/italian/errmsg.sys %%DATADIR%%/japanese/errmsg.sys %%DATADIR%%/korean/errmsg.sys +%%DATADIR%%/messages_to_clients.txt +%%DATADIR%%/messages_to_error_log.txt %%DATADIR%%/mysql-log-rotate %%DATADIR%%/mysql.server %%DATADIR%%/mysqld_multi.server %%DATADIR%%/norwegian-ny/errmsg.sys %%DATADIR%%/norwegian/errmsg.sys %%DATADIR%%/polish/errmsg.sys %%DATADIR%%/portuguese/errmsg.sys %%DATADIR%%/romanian/errmsg.sys %%DATADIR%%/russian/errmsg.sys %%DATADIR%%/serbian/errmsg.sys %%DATADIR%%/slovak/errmsg.sys %%DATADIR%%/spanish/errmsg.sys %%DATADIR%%/swedish/errmsg.sys %%DATADIR%%/ukrainian/errmsg.sys %%DATADIR%%/uninstall_rewriter.sql @dir lib/mysql/plugin/debug @sample(root,wheel,0644) %%ETCDIR%%/my.cnf.sample @dir(mysql,mysql,0750) %%ETCDIR%%/keyring @dir(mysql,mysql,0750) %%MY_SECDIR%% @dir(mysql,mysql,0750) %%MY_TMPDIR%%