From owner-svn-ports-branches@freebsd.org Thu Jan 26 19:58:07 2017 Return-Path: Delivered-To: svn-ports-branches@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A958ACC3CC2; Thu, 26 Jan 2017 19:58:07 +0000 (UTC) (envelope-from brnrd@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3A9971DF4; Thu, 26 Jan 2017 19:58:07 +0000 (UTC) (envelope-from brnrd@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v0QJw6Eb076968; Thu, 26 Jan 2017 19:58:06 GMT (envelope-from brnrd@FreeBSD.org) Received: (from brnrd@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v0QJw4pZ076952; Thu, 26 Jan 2017 19:58:04 GMT (envelope-from brnrd@FreeBSD.org) Message-Id: <201701261958.v0QJw4pZ076952@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: brnrd set sender to brnrd@FreeBSD.org using -f From: Bernard Spil Date: Thu, 26 Jan 2017 19:58:04 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-branches@freebsd.org Subject: svn commit: r432535 - in branches/2017Q1/databases: mysql56-client mysql56-client/files mysql56-server mysql56-server/files X-SVN-Group: ports-branches MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-branches@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for all the branches of the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Jan 2017 19:58:07 -0000 Author: brnrd Date: Thu Jan 26 19:58:04 2017 New Revision: 432535 URL: https://svnweb.freebsd.org/changeset/ports/432535 Log: MFH: r431919 r431968 r431975 r432035 r432066 r432458 databases/mysql56: Update to 5.6.35 - Port improvements from MySQL 5.7 port - Use system libs instead of bundled - Fix many open PRs - Change MAINTAINER PR: 216244 192657 198812 199751 205093 PR: 209618 211248 205983 209338 databases/mysql56-server: Rollback rc script changes databases/mysql56-server: Do not install my.cnf sample An issue was discovered where users of mysql did not have a my.cnf and the recent update was causing mysqld to find a sample my.cnf and load its parameters. This was causing errors on startup for users of innodb as the parameters used to init the database did not match the ones in the sample config file it was now reading. databases/mysql56-server: Fix build with LibreSSL - Fix CMake SSL detection - Always set WITH_SSL=${OPENSSLBASE} PR: 216311 Approved by: Mahdi Moktari (maintainer) Differential Revision: D9272 Revert r432035 part 2, it breaks build with openssl from base With hat: portmgr databases/mysql56-server: Fix OpenSSL linking - Force dynamic linking with OpenSSL Approved by: ports-secteam (feld) Added: branches/2017Q1/databases/mysql56-client/files/patch-cmake_ssl.cmake - copied unchanged from r432035, head/databases/mysql56-client/files/patch-cmake_ssl.cmake branches/2017Q1/databases/mysql56-server/files/my.cnf.sample.in - copied unchanged from r431919, head/databases/mysql56-server/files/my.cnf.sample.in branches/2017Q1/databases/mysql56-server/files/patch-cmake_ssl.cmake - copied unchanged from r432458, head/databases/mysql56-server/files/patch-cmake_ssl.cmake Modified: branches/2017Q1/databases/mysql56-client/Makefile branches/2017Q1/databases/mysql56-client/files/patch-CMakeLists.txt branches/2017Q1/databases/mysql56-client/files/patch-extra_CMakeLists.txt branches/2017Q1/databases/mysql56-client/files/patch-man_CMakeLists.txt branches/2017Q1/databases/mysql56-client/files/patch-mysys_ssl_my_default.cc branches/2017Q1/databases/mysql56-client/files/patch-scripts_CMakeLists.txt branches/2017Q1/databases/mysql56-client/files/patch-support-files_CMakeLists.txt branches/2017Q1/databases/mysql56-client/pkg-message branches/2017Q1/databases/mysql56-server/Makefile branches/2017Q1/databases/mysql56-server/distinfo branches/2017Q1/databases/mysql56-server/files/patch-mysys_ssl_my_default.cc branches/2017Q1/databases/mysql56-server/pkg-message branches/2017Q1/databases/mysql56-server/pkg-plist Directory Properties: branches/2017Q1/ (props changed) Modified: branches/2017Q1/databases/mysql56-client/Makefile ============================================================================== --- branches/2017Q1/databases/mysql56-client/Makefile Thu Jan 26 19:34:46 2017 (r432534) +++ branches/2017Q1/databases/mysql56-client/Makefile Thu Jan 26 19:58:04 2017 (r432535) @@ -2,10 +2,16 @@ # $FreeBSD$ PORTNAME= mysql +PORTREVISION?= 1 PKGNAMESUFFIX= 56-client COMMENT= Multithreaded SQL database (client) +LICENSE+= LGPL21 + +BROKEN_powerpc64= Does not build +BROKEN_sparc64= Does not build: reports unsupported compiler + MASTERDIR= ${.CURDIR}/../mysql56-server PKGMESSAGE= ${.CURDIR}/pkg-message @@ -13,12 +19,13 @@ PATCHDIR= ${.CURDIR}/files PLIST= ${.CURDIR}/pkg-plist CONFLICTS_INSTALL= mysql5[0-57-9]-client-* \ - mariadb*-client-* \ - percona*-client-* + mysql[0-46-9][0-9]-client-* \ + mariadb[0-9][0-9]-client-* \ + percona[0-9][0-9]-client-* CMAKE_ARGS+= -DWITHOUT_SERVER=1 -USE_LDCONFIG= ${PREFIX}/lib/mysql +USE_LDCONFIG+= ${PREFIX}/lib/mysql MMAN1= comp_err.1 msql2mysql.1 mysql.1 mysql_config.1 mysql_config_editor.1 mysql_find_rows.1 \ mysql_waitpid.1 mysqlaccess.1 mysqladmin.1 mysqlbinlog.1 \ Modified: branches/2017Q1/databases/mysql56-client/files/patch-CMakeLists.txt ============================================================================== --- branches/2017Q1/databases/mysql56-client/files/patch-CMakeLists.txt Thu Jan 26 19:34:46 2017 (r432534) +++ branches/2017Q1/databases/mysql56-client/files/patch-CMakeLists.txt Thu Jan 26 19:58:04 2017 (r432535) @@ -1,6 +1,6 @@ ---- CMakeLists.txt.orig 2016-03-03 16:35:33.000000000 +0100 -+++ CMakeLists.txt 2016-04-19 17:30:13.343558770 +0200 -@@ -475,8 +475,8 @@ ENDIF() +--- CMakeLists.txt.orig 2016-11-28 13:36:22 UTC ++++ CMakeLists.txt +@@ -481,8 +481,8 @@ ENDIF() ADD_SUBDIRECTORY(extra) ADD_SUBDIRECTORY(client) @@ -10,7 +10,7 @@ IF(UNIX) ADD_SUBDIRECTORY(man) -@@ -546,18 +546,17 @@ ELSE() +@@ -552,18 +552,17 @@ ELSE() SET(CPACK_GENERATOR "TGZ") ENDIF() ADD_SUBDIRECTORY(packaging/WiX) @@ -30,7 +30,7 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM") INSTALL(FILES COPYING LICENSE.mysql DESTINATION ${INSTALL_DOCREADMEDIR} -@@ -579,6 +578,7 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM") +@@ -585,6 +584,7 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM") PATTERN "sp-imp-spec.txt" EXCLUDE ) ENDIF() Copied: branches/2017Q1/databases/mysql56-client/files/patch-cmake_ssl.cmake (from r432035, head/databases/mysql56-client/files/patch-cmake_ssl.cmake) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2017Q1/databases/mysql56-client/files/patch-cmake_ssl.cmake Thu Jan 26 19:58:04 2017 (r432535, copy of r432035, head/databases/mysql56-client/files/patch-cmake_ssl.cmake) @@ -0,0 +1,11 @@ +--- cmake/ssl.cmake.orig 2016-11-28 13:36:22 UTC ++++ cmake/ssl.cmake +@@ -176,7 +176,7 @@ 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) + ELSE() Modified: branches/2017Q1/databases/mysql56-client/files/patch-extra_CMakeLists.txt ============================================================================== --- branches/2017Q1/databases/mysql56-client/files/patch-extra_CMakeLists.txt Thu Jan 26 19:34:46 2017 (r432534) +++ branches/2017Q1/databases/mysql56-client/files/patch-extra_CMakeLists.txt Thu Jan 26 19:58:04 2017 (r432535) @@ -1,6 +1,14 @@ ---- extra/CMakeLists.txt.orig 2016-03-03 16:35:33.000000000 +0100 -+++ extra/CMakeLists.txt 2016-04-19 17:37:34.634528313 +0200 -@@ -60,6 +60,7 @@ IF (WIN32 AND WITH_SSL_PATH AND HAVE_CRY +--- extra/CMakeLists.txt.orig 2016-11-28 13:36:22 UTC ++++ extra/CMakeLists.txt +@@ -35,6 +35,7 @@ ENDIF() + + ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_BINARY_DIR}/include/mysqld_error.h + ${PROJECT_BINARY_DIR}/sql/share/english/errmsg.sys ++ COMMAND mkdir -p ${PROJECT_BINARY_DIR}/sql/share/ + COMMAND comp_err + --charset=${PROJECT_SOURCE_DIR}/sql/share/charsets + --out-dir=${PROJECT_BINARY_DIR}/sql/share/ +@@ -60,6 +61,7 @@ IF (WIN32 AND WITH_SSL_PATH AND HAVE_CRY ENDIF() @@ -8,7 +16,7 @@ MYSQL_ADD_EXECUTABLE(my_print_defaults my_print_defaults.c) TARGET_LINK_LIBRARIES(my_print_defaults mysys mysys_ssl) SET_TARGET_PROPERTIES(my_print_defaults PROPERTIES LINKER_LANGUAGE CXX) -@@ -96,10 +97,13 @@ IF(WITH_INNOBASE_STORAGE_ENGINE) +@@ -96,10 +98,13 @@ IF(WITH_INNOBASE_STORAGE_ENGINE) MYSQL_ADD_EXECUTABLE(innochecksum innochecksum.cc ${INNOBASE_SOURCES}) TARGET_LINK_LIBRARIES(innochecksum mysys mysys_ssl) ENDIF() Modified: branches/2017Q1/databases/mysql56-client/files/patch-man_CMakeLists.txt ============================================================================== --- branches/2017Q1/databases/mysql56-client/files/patch-man_CMakeLists.txt Thu Jan 26 19:34:46 2017 (r432534) +++ branches/2017Q1/databases/mysql56-client/files/patch-man_CMakeLists.txt Thu Jan 26 19:58:04 2017 (r432535) @@ -1,13 +1,15 @@ ---- man/CMakeLists.txt.orig 2011-10-22 14:08:32.000000000 +0200 -+++ man/CMakeLists.txt 2011-10-22 14:22:42.000000000 +0200 -@@ -15,10 +15,6 @@ +--- man/CMakeLists.txt.orig 2016-11-28 13:36:22 UTC ++++ man/CMakeLists.txt +@@ -14,11 +14,7 @@ + # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # Copy man pages - FILE(GLOB MAN1_FILES *.1) +-FILE(GLOB MAN1_FILES *.1) -FILE(GLOB MAN1_EXCLUDE make_win_bin_dist.1) -FILE(GLOB MAN1_NDB ndb*.1) -FILE(GLOB MAN8_FILES *.8) -FILE(GLOB MAN8_NDB ndb*.8) ++FILE(GLOB MAN1_FILES comp_err.1 msql2mysql.1 mysql.1 mysql_config.1 mysql_config_editor.1 mysql_find_rows.1 mysql_waitpid.1 mysqlaccess.1 mysqladmin.1 mysqlbinlog.1 mysqlcheck.1 mysqldump.1 mysqlimport.1 mysqlshow.1 mysqlslap.1) IF(MAN1_FILES) IF(MAN1_EXCLUDE) LIST(REMOVE_ITEM MAN1_FILES ${MAN1_EXCLUDE}) Modified: branches/2017Q1/databases/mysql56-client/files/patch-mysys_ssl_my_default.cc ============================================================================== --- branches/2017Q1/databases/mysql56-client/files/patch-mysys_ssl_my_default.cc Thu Jan 26 19:34:46 2017 (r432534) +++ branches/2017Q1/databases/mysql56-client/files/patch-mysys_ssl_my_default.cc Thu Jan 26 19:58:04 2017 (r432535) @@ -1,6 +1,6 @@ ---- mysys_ssl/my_default.cc.orig 2013-01-22 17:54:49.000000000 +0100 -+++ mysys_ssl/my_default.cc 2013-02-13 11:08:15.000000000 +0100 -@@ -119,7 +119,7 @@ +--- mysys_ssl/my_default.cc.orig 2016-11-28 13:36:22 UTC ++++ mysys_ssl/my_default.cc +@@ -110,7 +110,7 @@ static my_bool defaults_already_read= FA /* Which directories are searched for options (and in which order) */ @@ -9,18 +9,48 @@ #define DEFAULT_DIRS_SIZE (MAX_DEFAULT_DIRS + 1) /* Terminate with NULL */ static const char **default_directories = NULL; -@@ -1395,7 +1395,10 @@ +@@ -903,6 +903,14 @@ static int search_default_file_with_ext( + return 1; /* Ignore wrong files */ + } - #if defined(DEFAULT_SYSCONFDIR) - if (DEFAULT_SYSCONFDIR[0]) ++ if (strstr(name, "/etc") == name) + { - errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs); -+ errors += add_directory(alloc, DEFAULT_SYSCONFDIR "/mysql", dirs); ++ fprintf(stderr, ++ "error: Config file %s in invalid location, please move to or merge with /usr/local%s\n", ++ name,name); ++ goto err; + } - #endif /* DEFAULT_SYSCONFDIR */ ++ + while (mysql_file_getline(buff, sizeof(buff) - 1, fp, is_login_file)) + { + line++; +@@ -1241,7 +1249,8 @@ void my_print_default_files(const char * + end[(strlen(end)-1)] = ' '; + else + strxmov(end, conf_file, *ext , " ", NullS); +- fputs(name, stdout); ++ if (strstr(name, "/etc") != name) ++ fputs(name, stdout); + } + } + } +@@ -1400,13 +1409,8 @@ static const char **init_default_directo + + #else + +- errors += add_directory(alloc, "/etc/", dirs); +- errors += add_directory(alloc, "/etc/mysql/", dirs); +- +-#if defined(DEFAULT_SYSCONFDIR) +- if (DEFAULT_SYSCONFDIR[0]) +- errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs); +-#endif /* DEFAULT_SYSCONFDIR */ ++ errors += add_directory(alloc, "/usr/local/etc/", dirs); ++ errors += add_directory(alloc, "/usr/local/etc/mysql/", dirs); #endif -@@ -1466,7 +1469,7 @@ + +@@ -1477,7 +1481,7 @@ int check_file_permissions(const char *f MY_STAT stat_info; if (!my_stat(file_name,&stat_info,MYF(0))) Modified: branches/2017Q1/databases/mysql56-client/files/patch-scripts_CMakeLists.txt ============================================================================== --- branches/2017Q1/databases/mysql56-client/files/patch-scripts_CMakeLists.txt Thu Jan 26 19:34:46 2017 (r432534) +++ branches/2017Q1/databases/mysql56-client/files/patch-scripts_CMakeLists.txt Thu Jan 26 19:58:04 2017 (r432535) @@ -1,6 +1,6 @@ ---- scripts/CMakeLists.txt.orig 2013-01-22 17:54:49.000000000 +0100 -+++ scripts/CMakeLists.txt 2013-02-13 14:14:11.000000000 +0100 -@@ -71,6 +71,7 @@ +--- scripts/CMakeLists.txt.orig 2016-11-28 13:36:22 UTC ++++ scripts/CMakeLists.txt +@@ -71,6 +71,7 @@ IF(UNIX) ) ENDIF() @@ -8,7 +8,7 @@ INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/mysql_system_tables.sql ${CMAKE_CURRENT_SOURCE_DIR}/mysql_system_tables_data.sql -@@ -80,6 +81,7 @@ +@@ -80,6 +81,7 @@ INSTALL(FILES ${FIX_PRIVILEGES_SQL} DESTINATION ${INSTALL_MYSQLSHAREDIR} COMPONENT Server ) @@ -16,7 +16,7 @@ # TCMalloc hacks IF(MALLOC_LIB) -@@ -139,6 +141,7 @@ +@@ -168,6 +170,7 @@ ENDIF() SET(HOSTNAME "hostname") SET(MYSQLD_USER "mysql") @@ -24,7 +24,7 @@ # Required for mysqlbug until autotools are deprecated, once done remove these # and expand default cmake variables SET(CC ${CMAKE_C_COMPILER}) -@@ -175,6 +178,7 @@ +@@ -204,6 +207,7 @@ INSTALL_SCRIPT(${CMAKE_CURRENT_BINARY_DI DESTINATION ${INSTALL_BINDIR} COMPONENT Server ) @@ -32,7 +32,7 @@ ENDIF(UNIX) -@@ -199,6 +203,7 @@ +@@ -228,6 +232,7 @@ ELSE() SET(localstatedir ${MYSQL_DATADIR}) ENDIF() @@ -40,15 +40,15 @@ IF(UNIX) SET(EXT) ELSE() -@@ -213,6 +218,7 @@ +@@ -242,6 +247,7 @@ INSTALL_SCRIPT( DESTINATION ${DEST} COMPONENT Server ) +ENDIF() - SET(prefix "${CMAKE_INSTALL_PREFIX}") -@@ -264,6 +270,8 @@ + SET(sysconfdir ${prefix}) +@@ -298,6 +304,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} " ) @@ -57,7 +57,7 @@ ELSE() SET(${var} "${${var}}-l${lib} " ) ENDIF() -@@ -316,17 +324,9 @@ +@@ -353,17 +361,9 @@ ELSE() SET(BIN_SCRIPTS msql2mysql mysql_config @@ -75,7 +75,7 @@ ) FOREACH(file ${BIN_SCRIPTS}) IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh) -@@ -350,6 +350,7 @@ +@@ -387,6 +387,7 @@ ELSE() ) ENDFOREACH() @@ -83,7 +83,7 @@ # Input files with pl.in extension - drop the extension completely SET(PLIN_FILES mysql_secure_installation) FOREACH(file ${PLIN_FILES}) -@@ -362,6 +363,7 @@ +@@ -399,6 +400,7 @@ ELSE() INSTALL_SCRIPT(${CMAKE_CURRENT_BINARY_DIR}/${file} COMPONENT ${${file}_COMPONENT}) ENDFOREACH() ENDIF() Modified: branches/2017Q1/databases/mysql56-client/files/patch-support-files_CMakeLists.txt ============================================================================== --- branches/2017Q1/databases/mysql56-client/files/patch-support-files_CMakeLists.txt Thu Jan 26 19:34:46 2017 (r432534) +++ branches/2017Q1/databases/mysql56-client/files/patch-support-files_CMakeLists.txt Thu Jan 26 19:58:04 2017 (r432535) @@ -1,6 +1,6 @@ ---- support-files/CMakeLists.txt.orig 2013-01-22 17:54:50.000000000 +0100 -+++ support-files/CMakeLists.txt 2013-02-13 11:13:32.000000000 +0100 -@@ -44,14 +44,17 @@ +--- support-files/CMakeLists.txt.orig 2016-11-28 13:36:22 UTC ++++ support-files/CMakeLists.txt +@@ -44,14 +44,17 @@ ELSE() SET(inst_location ${INSTALL_SUPPORTFILESDIR}) ENDIF() @@ -18,7 +18,7 @@ FOREACH(script mysqld_multi.server mysql-log-rotate binary-configure) CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${script}.sh ${CMAKE_CURRENT_BINARY_DIR}/${script} @ONLY ) -@@ -68,8 +71,10 @@ +@@ -68,8 +71,10 @@ IF(UNIX) IF(INSTALL_SUPPORTFILESDIR) INSTALL(FILES magic DESTINATION ${inst_location} COMPONENT SupportFiles) ENDIF() @@ -29,7 +29,7 @@ CONFIGURE_FILE(MySQL-shared-compat.spec.sh ${CMAKE_CURRENT_BINARY_DIR}/MySQL-shared-compat.spec @ONLY) CONFIGURE_FILE(mysql.spec.sh ${CMAKE_CURRENT_BINARY_DIR}/mysql.spec @ONLY) -@@ -94,3 +99,4 @@ +@@ -94,3 +99,4 @@ IF(UNIX) PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) ENDIF() Modified: branches/2017Q1/databases/mysql56-client/pkg-message ============================================================================== --- branches/2017Q1/databases/mysql56-client/pkg-message Thu Jan 26 19:34:46 2017 (r432534) +++ branches/2017Q1/databases/mysql56-client/pkg-message Thu Jan 26 19:58:04 2017 (r432535) @@ -12,4 +12,3 @@ receiving a patch. Please take note of t deploying this software. * * * * * * * * * * * * * * * * * * * * * * * * - Modified: branches/2017Q1/databases/mysql56-server/Makefile ============================================================================== --- branches/2017Q1/databases/mysql56-server/Makefile Thu Jan 26 19:34:46 2017 (r432534) +++ branches/2017Q1/databases/mysql56-server/Makefile Thu Jan 26 19:58:04 2017 (r432535) @@ -2,37 +2,62 @@ # $FreeBSD$ PORTNAME?= mysql -PORTVERSION= 5.6.34 -PORTREVISION?= 0 +PORTVERSION= 5.6.35 +PORTREVISION?= 3 CATEGORIES= databases ipv6 MASTER_SITES= MYSQL/MySQL-5.6 PKGNAMESUFFIX?= 56-server -MAINTAINER= ale@FreeBSD.org +MAINTAINER= mokhi64@gmail.com COMMENT?= Multithreaded SQL database (server) -BROKEN_powerpc64= Does not build +LICENSE= GPLv2 SLAVEDIRS= databases/mysql56-client -USES= cmake shebangfix +USES= bison:build cmake:outsource compiler:c11 compiler:c++11-lib \ + cpe libedit localbase perl5 shebangfix ssl -CMAKE_ARGS+= -DINSTALL_DOCDIR="share/doc/mysql" \ +USE_PERL5= run + +MY_DBDIR= /var/db/mysql +MY_SECDIR= /var/db/mysql_secure +MY_TMPDIR= /var/db/mysql_tmpdir + +LIB_DEPENDS+= libevent.so:devel/libevent2 \ + liblz4.so:archivers/liblz4 + +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" \ -DINSTALL_LIBDIR="lib/mysql" \ -DINSTALL_MANDIR="man" \ - -DINSTALL_MYSQLDATADIR="/var/db/mysql" \ + -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_SQLBENCHDIR="share/mysql" \ -DINSTALL_SUPPORTFILESDIR="share/mysql" \ + -DMYSQL_KEYRINGDIR="${ETCDIR}/keyring" \ + -DWITH_BOOST="${WRKSRC}/boost" \ -DWITH_EDITLINE=system \ - -DWITH_LIBWRAP=1 + -DWITH_LIBEVENT=system \ + -DWITH_LZ4=system \ + -DWITH_ZLIB=system \ + -DWITH_SSL=${OPENSSLBASE} \ + -DCRYPTO_LIBRARY=${OPENSSLLIB}/libcrypto.so \ + -DOPENSSL_LIBRARY=${OPENSSLLIB}/libssl.so \ + -DINSTALL_MYSQLTESTDIR=0 SHEBANG_FILES= scripts/*.pl* scripts/*.sh @@ -40,23 +65,32 @@ SHEBANG_FILES= scripts/*.pl* scripts/*.s .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} + # MySQL-Server part .if !defined(CLIENT_ONLY) -USE_MYSQL= yes -WANT_MYSQL_VER= 56 - -USES+= perl5 -USE_PERL5= run +USES+= mysql:56 CONFLICTS_INSTALL= mysql5[0-57-9]-server-* \ - mariadb*-server-* \ - percona*-server-* + mysql[0-46-9][0-9]-server-* \ + 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= 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 \ @@ -65,14 +99,51 @@ MMAN1= my_print_defaults.1 myisam_ftdum mysqltest.1 perror.1 replace.1 resolve_stack_dump.1 resolveip.1 CMAKE_ARGS+= -DWITH_EMBEDDED_SERVER="ON" -.else -USES+= libedit + +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" .endif +.include + post-patch: @${REINPLACE_CMD} 's/*.1/${MMAN1}/' ${WRKSRC}/man/CMakeLists.txt -.include +.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 .if ${ARCH} == "armv6" EXTRA_PATCHES+= ${FILESDIR}/extra-patch-config.h.cmake Modified: branches/2017Q1/databases/mysql56-server/distinfo ============================================================================== --- branches/2017Q1/databases/mysql56-server/distinfo Thu Jan 26 19:34:46 2017 (r432534) +++ branches/2017Q1/databases/mysql56-server/distinfo Thu Jan 26 19:58:04 2017 (r432535) @@ -1,3 +1,3 @@ -TIMESTAMP = 1477038469 -SHA256 (mysql-5.6.34.tar.gz) = ee90bafec6af3abe2715ccb0b3cc9345ed8d1cce025d41e6ec2b2b7a7d820823 -SIZE (mysql-5.6.34.tar.gz) = 32094762 +TIMESTAMP = 1484753208 +SHA256 (mysql-5.6.35.tar.gz) = dddcba169b98844d7c65346cbd791c853edf942d78440381685087b84aa35020 +SIZE (mysql-5.6.35.tar.gz) = 32167628 Copied: branches/2017Q1/databases/mysql56-server/files/my.cnf.sample.in (from r431919, head/databases/mysql56-server/files/my.cnf.sample.in) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2017Q1/databases/mysql56-server/files/my.cnf.sample.in Thu Jan 26 19:58:04 2017 (r432535, copy of r431919, head/databases/mysql56-server/files/my.cnf.sample.in) @@ -0,0 +1,63 @@ +# $FreeBSD$ + +[client] +port = 3306 +socket = /tmp/mysql.sock + +[mysql] +prompt = \u@\h [\d]>\_ +no_auto_rehash + +[mysqld] +user = mysql +port = 3306 +socket = /tmp/mysql.sock +bind-address = 127.0.0.1 +basedir = %%PREFIX%% +datadir = %%MY_DBDIR%% +tmpdir = %%MY_TMPDIR%% +slave-load-tmpdir = %%MY_TMPDIR%% +secure-file-priv = %%MY_SECDIR%% +log-bin = mysql-bin +log-output = TABLE +master-info-repository = TABLE +relay-log-info-repository = TABLE +relay-log-recovery = 1 +slow-query-log = 1 +server-id = 1 +sync_binlog = 1 +sync_relay_log = 1 +binlog_cache_size = 16M +expire_logs_days = 30 +log-slave-updates = 1 +enforce-gtid-consistency = 1 +gtid-mode = ON +safe-user-create = 1 +lower_case_table_names = 1 +explicit-defaults-for-timestamp = 1 +myisam-recover-options = BACKUP,FORCE +open_files_limit = 32768 +table_open_cache = 16384 +table_definition_cache = 8192 +net_retry_count = 16384 +key_buffer_size = 256M +max_allowed_packet = 64M +query_cache_type = 0 +query_cache_size = 0 +long_query_time = 0.5 +innodb_buffer_pool_size = 1G +innodb_data_home_dir = %%MY_DBDIR%% +innodb_log_group_home_dir = %%MY_DBDIR%% +innodb_data_file_path = ibdata1:128M:autoextend +innodb_flush_method = O_DIRECT +innodb_log_file_size = 256M +innodb_log_buffer_size = 16M +innodb_write_io_threads = 8 +innodb_read_io_threads = 8 +innodb_autoinc_lock_mode = 2 +skip-symbolic-links + +[mysqldump] +max_allowed_packet = 256M +quote_names +quick Copied: branches/2017Q1/databases/mysql56-server/files/patch-cmake_ssl.cmake (from r432458, head/databases/mysql56-server/files/patch-cmake_ssl.cmake) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/2017Q1/databases/mysql56-server/files/patch-cmake_ssl.cmake Thu Jan 26 19:58:04 2017 (r432535, copy of r432458, head/databases/mysql56-server/files/patch-cmake_ssl.cmake) @@ -0,0 +1,11 @@ +--- cmake/ssl.cmake.orig 2016-11-28 13:36:22 UTC ++++ cmake/ssl.cmake +@@ -176,7 +176,7 @@ 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) + ELSE() Modified: branches/2017Q1/databases/mysql56-server/files/patch-mysys_ssl_my_default.cc ============================================================================== --- branches/2017Q1/databases/mysql56-server/files/patch-mysys_ssl_my_default.cc Thu Jan 26 19:34:46 2017 (r432534) +++ branches/2017Q1/databases/mysql56-server/files/patch-mysys_ssl_my_default.cc Thu Jan 26 19:58:04 2017 (r432535) @@ -1,6 +1,6 @@ ---- mysys_ssl/my_default.cc.orig 2013-01-22 17:54:49.000000000 +0100 -+++ mysys_ssl/my_default.cc 2013-02-13 11:08:15.000000000 +0100 -@@ -119,7 +119,7 @@ +--- mysys_ssl/my_default.cc.orig 2016-11-28 13:36:22 UTC ++++ mysys_ssl/my_default.cc +@@ -110,7 +110,7 @@ static my_bool defaults_already_read= FA /* Which directories are searched for options (and in which order) */ @@ -9,18 +9,48 @@ #define DEFAULT_DIRS_SIZE (MAX_DEFAULT_DIRS + 1) /* Terminate with NULL */ static const char **default_directories = NULL; -@@ -1395,7 +1395,10 @@ +@@ -903,6 +903,14 @@ static int search_default_file_with_ext( + return 1; /* Ignore wrong files */ + } - #if defined(DEFAULT_SYSCONFDIR) - if (DEFAULT_SYSCONFDIR[0]) ++ if (strstr(name, "/etc") == name) + { - errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs); -+ errors += add_directory(alloc, DEFAULT_SYSCONFDIR "/mysql", dirs); ++ fprintf(stderr, ++ "error: Config file %s in invalid location, please move to or merge with /usr/local%s\n", ++ name,name); ++ goto err; + } - #endif /* DEFAULT_SYSCONFDIR */ ++ + while (mysql_file_getline(buff, sizeof(buff) - 1, fp, is_login_file)) + { + line++; +@@ -1241,7 +1249,8 @@ void my_print_default_files(const char * + end[(strlen(end)-1)] = ' '; + else + strxmov(end, conf_file, *ext , " ", NullS); +- fputs(name, stdout); ++ if (strstr(name, "/etc") != name) ++ fputs(name, stdout); + } + } + } +@@ -1400,13 +1409,8 @@ static const char **init_default_directo + + #else + +- errors += add_directory(alloc, "/etc/", dirs); +- errors += add_directory(alloc, "/etc/mysql/", dirs); +- +-#if defined(DEFAULT_SYSCONFDIR) +- if (DEFAULT_SYSCONFDIR[0]) +- errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs); +-#endif /* DEFAULT_SYSCONFDIR */ ++ errors += add_directory(alloc, "/usr/local/etc/", dirs); ++ errors += add_directory(alloc, "/usr/local/etc/mysql/", dirs); #endif -@@ -1466,7 +1469,7 @@ + +@@ -1477,7 +1481,7 @@ int check_file_permissions(const char *f MY_STAT stat_info; if (!my_stat(file_name,&stat_info,MYF(0))) Modified: branches/2017Q1/databases/mysql56-server/pkg-message ============================================================================== --- branches/2017Q1/databases/mysql56-server/pkg-message Thu Jan 26 19:34:46 2017 (r432534) +++ branches/2017Q1/databases/mysql56-server/pkg-message Thu Jan 26 19:58:04 2017 (r432535) @@ -1,6 +1,19 @@ -************************************************************************ +***************************************************************************** Remember to run mysql_upgrade the first time you start the MySQL server after an upgrade from an earlier version. -************************************************************************ +Initial password for first time use of MySQL is saved in $HOME/.mysql_secret +ie. when you want to use "mysql -u root -p" first you should see password +in /root/.mysql_secret + +***************************************************************************** + +***************************************************************************** + +Please keep in mind that the default location for my.cnf will be changed +from "/var/db/mysql/my.cnf" to "/usr/local/etc/mysql/my.cnf" in the near +future. If you do not want to move your my.cnf to the new location then +you must set "mysql_optfile" in /etc/rc.conf to "/var/db/mysql/my.cnf". + +***************************************************************************** Modified: branches/2017Q1/databases/mysql56-server/pkg-plist ============================================================================== --- branches/2017Q1/databases/mysql56-server/pkg-plist Thu Jan 26 19:34:46 2017 (r432534) +++ branches/2017Q1/databases/mysql56-server/pkg-plist Thu Jan 26 19:58:04 2017 (r432535) @@ -27,8 +27,10 @@ lib/mysql/libmysqld.a lib/mysql/plugin/adt_null.so lib/mysql/plugin/auth.so lib/mysql/plugin/auth_test_plugin.so +lib/mysql/plugin/connection_control.so lib/mysql/plugin/daemon_example.ini lib/mysql/plugin/libdaemon_example.so +%%EXAMPLE%%lib/mysql/plugin/ha_example.so lib/mysql/plugin/mypluglib.so lib/mysql/plugin/mysql_no_login.so lib/mysql/plugin/qa_auth_client.so @@ -130,3 +132,7 @@ man/man8/mysqld.8.gz %%DATADIR%%/spanish/errmsg.sys %%DATADIR%%/swedish/errmsg.sys %%DATADIR%%/ukrainian/errmsg.sys +%%ETCDIR%%/my.cnf.sample +@dir(mysql,mysql,0750) %%ETCDIR%%/keyring +@dir(mysql,mysql,0750) %%MY_SECDIR%% +@dir(mysql,mysql,0750) %%MY_TMPDIR%%