Index: head/databases/mysql56-server/Makefile =================================================================== --- head/databases/mysql56-server/Makefile (revision 466504) +++ head/databases/mysql56-server/Makefile (revision 466505) @@ -1,154 +1,163 @@ # Created by: Alex Dupre # $FreeBSD$ PORTNAME?= mysql PORTVERSION= 5.6.39 -PORTREVISION?= 1 +PORTREVISION?= 2 CATEGORIES= databases ipv6 MASTER_SITES= MYSQL/MySQL-5.6 PKGNAMESUFFIX?= 56-server MAINTAINER= mmokhi@FreeBSD.org COMMENT?= Multithreaded SQL database (server) LICENSE= GPLv2 SLAVEDIRS= databases/mysql56-client USES= bison:build cmake:outsource,noninja compiler:c11 compiler:c++11-lib \ cpe libedit localbase perl5 shebangfix ssl 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/libevent \ 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="${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_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 .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} # MySQL-Server part .if !defined(CLIENT_ONLY) USES+= mysql:56 CONFLICTS_INSTALL= mysql5[0-57-9]-server-* \ mysql[0-46-9][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= 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 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} < 1101514 || \ + ${OSVERSION} >= 1200000 && ${OSVERSION} < 1200057 +SUB_LIST+= LEGACY_LIMITS="" MODERN_LIMITS="@comment " +.else +SUB_LIST+= LEGACY_LIMITS="@comment " MODERN_LIMITS="" .endif .include post-patch: @${REINPLACE_CMD} 's/*.1/${MMAN1}/' ${WRKSRC}/man/CMakeLists.txt .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 || ${ARCH} == armv7 EXTRA_PATCHES+= ${FILESDIR}/extra-patch-config.h.cmake .endif .include Index: head/databases/mysql56-server/files/mysql-server.in =================================================================== --- head/databases/mysql56-server/files/mysql-server.in (revision 466504) +++ head/databases/mysql56-server/files/mysql-server.in (revision 466505) @@ -1,94 +1,92 @@ #!/bin/sh # # $FreeBSD$ # # PROVIDE: mysql # REQUIRE: LOGIN # KEYWORD: shutdown # # Add the following line to /etc/rc.conf to enable mysql: # mysql_enable (bool): Set to "NO" by default. # Set it to "YES" to enable MySQL. -# mysql_limits (bool): Set to "NO" by default. -# Set it to yes to run `limits -e -U mysql` -# just before mysql starts. +%%LEGACY_LIMITS%%# mysql_limits (bool): Set to "NO" by default. +%%LEGACY_LIMITS%%# Set it to yes to run `limits -e -U mysql` +%%LEGACY_LIMITS%%# just before mysql starts. # mysql_dbdir (str): Default to "%%MY_DBDIR%%" # Base database directory. # mysql_confdir (str): Default to "%%ETCDIR%%" # Base configuration directory. # mysql_optfile (str): Server-specific option file. # Set it in the rc.conf or default behaviour of # `mysqld_safe` itself, will be picking # ${mysql_confdir}/my.cnf if it exists. # mysql_pidfile (str): Custum PID file path and name. # Default to "${mysql_dbdir}/${hostname}.pid". # mysql_args (str): Custom additional arguments to be passed # to mysqld_safe (default empty). # . /etc/rc.subr name="mysql" rcvar=mysql_enable load_rc_config $name : ${mysql_enable="NO"} -: ${mysql_limits="NO"} +%%LEGACY_LIMITS%%: ${mysql_limits="NO"} : ${mysql_dbdir="%%MY_DBDIR%%"} : ${mysql_confdir="%%ETCDIR%%"} if [ -f "${mysql_confdir}/my.cnf" ]; then : ${mysql_optfile="${mysql_confdir}/my.cnf"} elif [ -f "${mysql_dbdir}/my.cnf" ]; then : ${mysql_optfile="${mysql_dbdir}/my.cnf"} fi if [ ! -z "${mysql_optfile}" ]; then mysql_extra="--defaults-extra-file=${mysql_optfile}" fi -if [ "${mysql_limits}" = "NO" ]; then -mysql_limits="" -fi mysql_user="mysql" -mysql_limits_args="-e -U ${mysql_user}" +%%LEGACY_LIMITS%%mysql_limits_args="-e -U ${mysql_user}" : ${hostname:=`/bin/hostname`} pidfile=${mysql_pidfile:-"${mysql_dbdir}/${hostname}.pid"} command="/usr/sbin/daemon" command_args="-c -f %%PREFIX%%/bin/mysqld_safe ${mysql_extra} --basedir=%%PREFIX%% --datadir=${mysql_dbdir} --pid-file=${pidfile} --user=${mysql_user} ${mysql_args} %%FEDER%% %%PERFSCHEMRC%%" procname="%%PREFIX%%/libexec/mysqld" start_precmd="${name}_prestart" start_postcmd="${name}_poststart" mysql_install_db="%%PREFIX%%/bin/mysql_install_db" mysql_install_db_args="${mysql_extra} --basedir=%%PREFIX%% --datadir=${mysql_dbdir} --force" mysql_create_auth_tables() { eval $mysql_install_db $mysql_install_db_args >/dev/null 2>/dev/null [ $? -eq 0 ] && chown -R ${mysql_user}:${mysql_user} ${mysql_dbdir} } mysql_prestart() { if [ ! -d "${mysql_dbdir}/mysql/." ]; then mysql_create_auth_tables || return 1 fi - if [ -z "$mysql_limits" ] || checkyesno mysql_limits; then - eval `/usr/bin/limits ${mysql_limits_args}` 2>/dev/null - else - return 0 - fi +%%LEGACY_LIMITS%% if checkyesno mysql_limits; then +%%LEGACY_LIMITS%% eval `/usr/bin/limits ${mysql_limits_args}` 2>/dev/null +%%LEGACY_LIMITS%% else +%%LEGACY_LIMITS%% return 0 +%%LEGACY_LIMITS%% fi +%%MODERN_LIMITS%% return 0 } mysql_poststart() { local timeout=15 while [ ! -f "${pidfile}" -a ${timeout} -gt 0 ]; do timeout=$(( timeout - 1 )) sleep 1 done return 0 } run_rc_command "$1" Index: head/databases/mysql56-server/pkg-plist =================================================================== --- head/databases/mysql56-server/pkg-plist (revision 466504) +++ head/databases/mysql56-server/pkg-plist (revision 466505) @@ -1,138 +1,138 @@ bin/innochecksum bin/my_print_defaults bin/myisam_ftdump bin/myisamchk bin/myisamlog bin/myisampack bin/mysql_convert_table_format bin/mysql_fix_extensions bin/mysql_install_db bin/mysql_plugin bin/mysql_secure_installation bin/mysql_setpermission bin/mysql_tzinfo_to_sql bin/mysql_upgrade bin/mysql_zap bin/mysqlbug bin/mysqld_multi bin/mysqld_safe bin/mysqldumpslow bin/mysqlhotcopy bin/mysqltest bin/perror bin/replace bin/resolve_stack_dump bin/resolveip 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 lib/mysql/plugin/qa_auth_interface.so lib/mysql/plugin/qa_auth_server.so lib/mysql/plugin/semisync_master.so lib/mysql/plugin/semisync_slave.so lib/mysql/plugin/test_udf_services.so lib/mysql/plugin/validate_password.so libexec/mysqld 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.server.1.gz man/man1/mysql_convert_table_format.1.gz man/man1/mysql_fix_extensions.1.gz man/man1/mysql_install_db.1.gz man/man1/mysql_plugin.1.gz man/man1/mysql_secure_installation.1.gz man/man1/mysql_setpermission.1.gz man/man1/mysql_tzinfo_to_sql.1.gz man/man1/mysql_upgrade.1.gz man/man1/mysql_zap.1.gz man/man1/mysqlbug.1.gz man/man1/mysqld_multi.1.gz man/man1/mysqld_safe.1.gz man/man1/mysqldumpslow.1.gz man/man1/mysqlhotcopy.1.gz man/man1/mysqlman.1.gz man/man1/mysqltest.1.gz man/man1/perror.1.gz man/man1/replace.1.gz man/man1/resolve_stack_dump.1.gz man/man1/resolveip.1.gz man/man8/mysqld.8.gz %%DATADIR%%/binary-configure %%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%%/fill_help_tables.sql %%DATADIR%%/french/errmsg.sys %%DATADIR%%/german/errmsg.sys %%DATADIR%%/greek/errmsg.sys %%DATADIR%%/hungarian/errmsg.sys %%DATADIR%%/innodb_memcached_config.sql %%DATADIR%%/italian/errmsg.sys %%DATADIR%%/japanese/errmsg.sys %%DATADIR%%/korean/errmsg.sys %%DATADIR%%/magic %%DATADIR%%/my-default.cnf %%DATADIR%%/mysql-log-rotate %%DATADIR%%/mysql.server %%DATADIR%%/mysql_security_commands.sql %%DATADIR%%/mysql_system_tables.sql %%DATADIR%%/mysql_system_tables_data.sql %%DATADIR%%/mysql_test_data_timezone.sql %%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 -%%ETCDIR%%/my.cnf.sample +@(mysql,mysql,0644) %%ETCDIR%%/my.cnf.sample @dir(mysql,mysql,0750) %%ETCDIR%%/keyring @dir(mysql,mysql,0750) %%MY_SECDIR%% @dir(mysql,mysql,0750) %%MY_TMPDIR%%