View | Details | Raw Unified | Return to bug 209338 | Differences between
and this patch

Collapse All | Expand All

(-)mysql56-client/Makefile (-3 / +7 lines)
Lines 2-11 Link Here
2
# $FreeBSD: head/databases/mysql56-client/Makefile 394288 2015-08-15 08:18:31Z ale $
2
# $FreeBSD: head/databases/mysql56-client/Makefile 394288 2015-08-15 08:18:31Z ale $
3
3
4
PORTNAME=	mysql
4
PORTNAME=	mysql
5
PORTREVISION?=	1
5
PKGNAMESUFFIX=	56-client
6
PKGNAMESUFFIX=	56-client
6
7
7
COMMENT=	Multithreaded SQL database (client)
8
COMMENT=	Multithreaded SQL database (client)
8
9
10
LICENSE+=	LGPL21
11
9
MASTERDIR=	${.CURDIR}/../mysql56-server
12
MASTERDIR=	${.CURDIR}/../mysql56-server
10
13
11
PKGMESSAGE=	${.CURDIR}/pkg-message
14
PKGMESSAGE=	${.CURDIR}/pkg-message
Lines 13-24 Link Here
13
PLIST=		${.CURDIR}/pkg-plist
16
PLIST=		${.CURDIR}/pkg-plist
14
17
15
CONFLICTS_INSTALL=	mysql5[0-57-9]-client-* \
18
CONFLICTS_INSTALL=	mysql5[0-57-9]-client-* \
16
			mariadb*-client-* \
19
			mysql[0-46-9][0-9]-client-* \
17
			percona*-client-*
20
			mariadb[0-9][0-9]-client-* \
21
			percona[0-9][0-9]-client-*
18
22
19
CMAKE_ARGS+=	-DWITHOUT_SERVER=1
23
CMAKE_ARGS+=	-DWITHOUT_SERVER=1
20
24
21
USE_LDCONFIG=	${PREFIX}/lib/mysql
25
USE_LDCONFIG+=	${PREFIX}/lib/mysql
22
26
23
MMAN1=		comp_err.1 msql2mysql.1 mysql.1 mysql_config.1 mysql_config_editor.1 mysql_find_rows.1 \
27
MMAN1=		comp_err.1 msql2mysql.1 mysql.1 mysql_config.1 mysql_config_editor.1 mysql_find_rows.1 \
24
		mysql_waitpid.1 mysqlaccess.1 mysqladmin.1 mysqlbinlog.1 \
28
		mysql_waitpid.1 mysqlaccess.1 mysqladmin.1 mysqlbinlog.1 \
(-)mysql56-server/Makefile (-20 / +65 lines)
Lines 1-38 Link Here
1
# Created by: Alex Dupre <ale@FreeBSD.org>
1
# Created by: Alex Dupre <ale@FreeBSD.org>
2
# $FreeBSD: head/databases/mysql56-server/Makefile 413746 2016-04-21 16:43:14Z swills $
2
# $FreeBSD: head/databases/mysql56-server/Makefile 413746 2016-04-21 16:43:14Z swills $
3
3
4
PORTNAME?=	mysql
4
PORTNAME=	mysql
5
PORTVERSION=	5.6.30
5
PORTVERSION=	5.6.30
6
PORTREVISION?=	0
6
PORTREVISION?=	1
7
CATEGORIES=	databases ipv6
7
CATEGORIES=	databases ipv6
8
MASTER_SITES=	MYSQL/MySQL-5.6
8
MASTER_SITES=	MYSQL/MySQL-5.6
9
PKGNAMESUFFIX?=	56-server
9
PKGNAMESUFFIX?=	56-server
10
10
11
MAINTAINER=	ale@FreeBSD.org
11
MAINTAINER=	ale@FreeBSD.org
12
COMMENT?=	Multithreaded SQL database (server)
12
COMMENT=	Multithreaded SQL database (server)
13
14
LICENSE=	GPLv2
13
15
14
BROKEN_powerpc64=	Does not build
16
BROKEN_powerpc64=	Does not build
15
17
16
SLAVEDIRS=	databases/mysql56-client
18
SLAVEDIRS=	databases/mysql56-client
17
USES=		cmake shebangfix
19
USES=		bison:build cmake:outsource compiler:c11 compiler:c++11-lib cpe libedit localbase perl5 shebangfix
20
21
USE_OPENSSL=	yes
22
USE_PERL5=	run
23
24
WITH_OPENSSL_PORT=	yes
25
26
MY_DBDIR=	/var/db/mysql
27
MY_SECDIR=	/var/db/mysql_secure
28
MY_TMPDIR=	/var/db/mysql_tmpdir
29
30
LIB_DEPENDS+=	libevent.so:devel/libevent2 \
31
		liblz4.so:archivers/liblz4
18
32
19
CMAKE_ARGS+=	-DINSTALL_DOCDIR="share/doc/mysql" \
33
CMAKE_BUILD_TYPE=	Release
34
35
CMAKE_ARGS+=	-DINSTALL_LAYOUT=FREEBSD \
36
		-DINSTALL_LDCONFIGDIR="${LOCALBASE}/libdata/ldconfig" \
37
		-DINSTALL_PKGCONFIGDIR="${LOCALBASE}/libdata/pkgconfig" \
38
		-DINSTALL_DOCDIR="share/doc/mysql" \
20
		-DINSTALL_DOCREADMEDIR="share/doc/mysql" \
39
		-DINSTALL_DOCREADMEDIR="share/doc/mysql" \
21
		-DINSTALL_INCLUDEDIR="include/mysql" \
40
		-DINSTALL_INCLUDEDIR="include/mysql" \
22
		-DINSTALL_INFODIR="info" \
41
		-DINSTALL_INFODIR="info" \
23
		-DINSTALL_LIBDIR="lib/mysql" \
42
		-DINSTALL_LIBDIR="lib/mysql" \
24
		-DINSTALL_MANDIR="man" \
43
		-DINSTALL_MANDIR="man" \
25
		-DINSTALL_MYSQLDATADIR="/var/db/mysql" \
44
		-DINSTALL_MYSQLDATADIR="${MY_DBDIR}" \
26
		-DINSTALL_MYSQLSHAREDIR="share/mysql" \
45
		-DINSTALL_MYSQLSHAREDIR="share/mysql" \
27
		-DINSTALL_MYSQLTESTDIR="share/mysql/tests" \
46
		-DINSTALL_MYSQLTESTDIR="share/mysql/tests" \
28
		-DINSTALL_PLUGINDIR="lib/mysql/plugin" \
47
		-DINSTALL_PLUGINDIR="lib/mysql/plugin" \
29
		-DINSTALL_SBINDIR="libexec" \
48
		-DINSTALL_SBINDIR="libexec" \
30
		-DINSTALL_SCRIPTDIR="bin" \
49
		-DINSTALL_SCRIPTDIR="bin" \
50
		-DINSTALL_SECURE_FILE_PRIVDIR="${MY_SECDIR}" \
31
		-DINSTALL_SHAREDIR="share" \
51
		-DINSTALL_SHAREDIR="share" \
32
		-DINSTALL_SQLBENCHDIR="share/mysql" \
52
		-DINSTALL_SQLBENCHDIR="share/mysql" \
33
		-DINSTALL_SUPPORTFILESDIR="share/mysql" \
53
		-DINSTALL_SUPPORTFILESDIR="share/mysql" \
54
		-DSYSCONFDIR="${ETCDIR}" \
34
		-DWITH_EDITLINE=system \
55
		-DWITH_EDITLINE=system \
35
		-DWITH_LIBWRAP=1
56
		-DWITH_LIBEVENT=system \
57
		-DWITH_LZ4=system \
58
		-DWITH_ZLIB=system \
59
		-DWITH_SSL=${OPENSSLBASE} \
60
		-DWITH_PIC=1
36
61
37
SHEBANG_FILES=	scripts/*.pl* scripts/*.sh
62
SHEBANG_FILES=	scripts/*.pl* scripts/*.sh
38
63
Lines 40-62 Link Here
40
.error You have `USE_MYSQL' variable defined either in environment or in make(1) arguments. Please undefine and try again.
65
.error You have `USE_MYSQL' variable defined either in environment or in make(1) arguments. Please undefine and try again.
41
.endif
66
.endif
42
67
68
SUB_LIST=	MY_DBDIR=${MY_DBDIR} \
69
		MY_SECDIR=${MY_SECDIR} \
70
		MY_TMPDIR=${MY_TMPDIR}
71
72
PLIST_SUB=	MY_DBDIR=${MY_DBDIR} \
73
		MY_SECDIR=${MY_SECDIR} \
74
		MY_TMPDIR=${MY_TMPDIR}
75
43
# MySQL-Server part
76
# MySQL-Server part
44
.if !defined(CLIENT_ONLY)
77
.if !defined(CLIENT_ONLY)
45
USE_MYSQL=	yes
78
USES+=		mysql:56
46
WANT_MYSQL_VER=	56
47
48
USES+=		perl5
49
USE_PERL5=	run
50
79
51
CONFLICTS_INSTALL=	mysql5[0-57-9]-server-* \
80
CONFLICTS_INSTALL=	mysql5[0-57-9]-server-* \
52
			mariadb*-server-* \
81
			mysql[0-46-9][0-9]-server-* \
53
			percona*-server-*
82
			mariadb[0-9][0-9]-server-* \
83
			percona[0-9][0-9]-server-*
54
84
55
USE_RC_SUBR=	mysql-server
85
USE_RC_SUBR=	mysql-server
56
86
87
SUB_FILES=	my.cnf.sample
88
57
USERS=		mysql
89
USERS=		mysql
58
GROUPS=		mysql
90
GROUPS=		mysql
59
91
92
USE_LDCONFIG+=	${PREFIX}/lib/mysql/plugin
93
60
MMAN1=		my_print_defaults.1 myisam_ftdump.1 myisamchk.1 myisamlog.1 myisampack.1 \
94
MMAN1=		my_print_defaults.1 myisam_ftdump.1 myisamchk.1 myisamlog.1 myisampack.1 \
61
		mysql.server.1 mysql_convert_table_format.1 mysql_fix_extensions.1 \
95
		mysql.server.1 mysql_convert_table_format.1 mysql_fix_extensions.1 \
62
		mysql_install_db.1 mysql_plugin.1 mysql_secure_installation.1 mysql_setpermission.1 \
96
		mysql_install_db.1 mysql_plugin.1 mysql_secure_installation.1 mysql_setpermission.1 \
Lines 65-81 Link Here
65
		mysqltest.1 perror.1 replace.1 resolve_stack_dump.1 resolveip.1
99
		mysqltest.1 perror.1 replace.1 resolve_stack_dump.1 resolveip.1
66
100
67
CMAKE_ARGS+=	-DWITH_EMBEDDED_SERVER="ON"
101
CMAKE_ARGS+=	-DWITH_EMBEDDED_SERVER="ON"
68
.else
69
USES+=		libedit
70
.endif
102
.endif
71
103
72
post-patch:
73
	@${REINPLACE_CMD} 's/*.1/${MMAN1}/' ${WRKSRC}/man/CMakeLists.txt
74
75
.include <bsd.port.pre.mk>
104
.include <bsd.port.pre.mk>
76
105
77
.if ${ARCH} == "armv6"
106
.if ${ARCH} == "armv6"
78
EXTRA_PATCHES+=		${FILESDIR}/extra-patch-config.h.cmake
107
EXTRA_PATCHES+=	${PATCHDIR}/extra-patch-config.h.cmake
108
.endif
109
110
post-extract:
111
	@${RM} -rvf ${WRKSRC}/sql/sql_hints.yy.cc ${WRKSRC}/sql/sql_hints.yy.h
112
113
post-patch:
114
	@${REINPLACE_CMD} 's/*.1/${MMAN1}/' ${WRKSRC}/man/CMakeLists.txt
115
116
.if !defined(CLIENT_ONLY)
117
post-install:
118
	${MKDIR} ${STAGEDIR}${ETCDIR}
119
	${INSTALL_DATA} ${WRKDIR}/my.cnf.sample ${STAGEDIR}${ETCDIR}/my.cnf.sample
120
121
post-stage:
122
	${MKDIR} ${STAGEDIR}${MY_SECDIR}
123
	${MKDIR} ${STAGEDIR}${MY_TMPDIR}
79
.endif
124
.endif
80
125
81
.include <bsd.port.post.mk>
126
.include <bsd.port.post.mk>
(-)mysql56-server/files/my.cnf.sample.in (+64 lines)
Line 0 Link Here
1
# $FreeBSD$
2
3
[client]
4
port                            = 3306
5
socket                          = /tmp/mysql.sock
6
7
[mysql]
8
prompt                          = \u@\h [\d]>\_
9
no_auto_rehash
10
11
[mysqld]
12
user                            = mysql
13
port                            = 3306
14
socket                          = /tmp/mysql.sock
15
bind-address                    = 127.0.0.1
16
basedir                         = %%PREFIX%%
17
datadir                         = %%MY_DBDIR%%
18
tmpdir                          = %%MY_TMPDIR%%
19
slave-load-tmpdir               = %%MY_TMPDIR%%
20
secure-file-priv                = %%MY_SECDIR%%
21
log-bin                         = mysql-bin
22
log-output                      = TABLE
23
master-info-repository          = TABLE
24
relay-log-info-repository       = TABLE
25
relay-log-recovery              = 1
26
slow-query-log                  = 1
27
server-id                       = 1
28
sync_binlog                     = 1
29
sync_relay_log                  = 1
30
binlog_cache_size               = 16M
31
expire_logs_days                = 30
32
default_password_lifetime       = 0
33
enforce-gtid-consistency        = 1
34
gtid-mode                       = ON
35
safe-user-create                = 1
36
lower_case_table_names          = 1
37
explicit-defaults-for-timestamp = 1
38
myisam-recover-options          = BACKUP,FORCE
39
open_files_limit                = 32768
40
table_open_cache                = 16384
41
table_definition_cache          = 8192
42
net_retry_count                 = 16384
43
key_buffer_size                 = 256M
44
max_allowed_packet              = 64M
45
query_cache_type                = 0
46
query_cache_size                = 0
47
long_query_time                 = 0.5
48
innodb_buffer_pool_size         = 1G
49
innodb_data_home_dir            = %%MY_DBDIR%%
50
innodb_log_group_home_dir       = %%MY_DBDIR%%
51
innodb_data_file_path           = ibdata1:128M:autoextend
52
innodb_temp_data_file_path      = ibtmp1:128M:autoextend
53
innodb_flush_method             = O_DIRECT
54
innodb_log_file_size            = 256M
55
innodb_log_buffer_size          = 16M
56
innodb_write_io_threads         = 8
57
innodb_read_io_threads          = 8
58
innodb_autoinc_lock_mode        = 2
59
skip-symbolic-links
60
61
[mysqldump]
62
max_allowed_packet              = 256M
63
quote_names
64
quick
(-)mysql56-server/files/mysql-server.in (-7 / +22 lines)
Lines 14-23 Link Here
14
# mysql_limits (bool):	Set to "NO" by default.
14
# mysql_limits (bool):	Set to "NO" by default.
15
#			Set it to yes to run `limits -e -U mysql`
15
#			Set it to yes to run `limits -e -U mysql`
16
#			just before mysql starts.
16
#			just before mysql starts.
17
# mysql_dbdir (str):	Default to "/var/db/mysql"
17
# mysql_dbdir (str):	Default to "%%MY_DBDIR%%"
18
#			Base database directory.
18
#			Base database directory.
19
# mysql_confdir (str):	Default to "%%ETCDIR%%"
20
#			Base configuration directory.
19
# mysql_optfile (str):	Server-specific option file.
21
# mysql_optfile (str):	Server-specific option file.
20
#			Default to "${mysql_dbdir}/my.cnf".
22
#			Default to "${mysql_confdir}/my.cnf".
21
# mysql_pidfile (str):	Custum PID file path and name.
23
# mysql_pidfile (str):	Custum PID file path and name.
22
#			Default to "${mysql_dbdir}/${hostname}.pid".
24
#			Default to "${mysql_dbdir}/${hostname}.pid".
23
# mysql_args (str):	Custom additional arguments to be passed
25
# mysql_args (str):	Custom additional arguments to be passed
Lines 33-62 Link Here
33
35
34
: ${mysql_enable="NO"}
36
: ${mysql_enable="NO"}
35
: ${mysql_limits="NO"}
37
: ${mysql_limits="NO"}
36
: ${mysql_dbdir="/var/db/mysql"}
38
: ${mysql_dbdir="%%MY_DBDIR%%"}
39
: ${mysql_confdir="%%ETCDIR%%"}
40
if [ -f "${mysql_dbdir}/my.cnf" ]; then
37
: ${mysql_optfile="${mysql_dbdir}/my.cnf"}
41
: ${mysql_optfile="${mysql_dbdir}/my.cnf"}
42
else
43
: ${mysql_optfile="${mysql_confdir}/my.cnf"}
44
fi
38
45
39
mysql_user="mysql"
46
mysql_user="mysql"
40
mysql_limits_args="-e -U ${mysql_user}"
47
mysql_limits_args="-e -U ${mysql_user}"
41
: ${hostname:=`/bin/hostname`}
48
: ${hostname:=`/bin/hostname`}
42
pidfile=${mysql_pidfile:-"${mysql_dbdir}/${hostname}.pid"}
49
pidfile=${mysql_pidfile:-"${mysql_dbdir}/${hostname}.pid"}
43
command="/usr/sbin/daemon"
50
command="/usr/sbin/daemon"
44
command_args="-c -f %%PREFIX%%/bin/mysqld_safe --defaults-extra-file=${mysql_optfile} --user=${mysql_user} --datadir=${mysql_dbdir} --pid-file=${pidfile} ${mysql_args}"
51
command_args="-c -f %%PREFIX%%/bin/mysqld_safe --defaults-extra-file=${mysql_optfile} --basedir=%%PREFIX%% --datadir=${mysql_dbdir} --pid-file=${pidfile} --user=${mysql_user} ${mysql_args}"
45
procname="%%PREFIX%%/libexec/mysqld"
52
procname="%%PREFIX%%/libexec/mysqld"
46
start_precmd="${name}_prestart"
53
start_precmd="${name}_prestart"
47
start_postcmd="${name}_poststart"
54
start_postcmd="${name}_poststart"
48
mysql_install_db="%%PREFIX%%/bin/mysql_install_db"
55
mysql_install_db="%%PREFIX%%/bin/mysql_install_db"
49
mysql_install_db_args="--basedir=%%PREFIX%% --defaults-extra-file=${mysql_optfile} --datadir=${mysql_dbdir} --force"
56
mysql_install_db_args="--defaults-extra-file=${mysql_optfile} --basedir=%%PREFIX%% --datadir=${mysql_dbdir} --mysqld-file=${procname} --user=${mysql_user}"
50
57
51
mysql_create_auth_tables()
58
mysql_create_auth_tables()
52
{
59
{
53
	eval $mysql_install_db $mysql_install_db_args >/dev/null 2>/dev/null
60
	eval $mysql_install_db $mysql_install_db_args >/dev/null 2>/dev/null
54
        [ $? -eq 0 ] && chown -R ${mysql_user}:${mysql_user} ${mysql_dbdir}
55
}
61
}
56
62
57
mysql_prestart()
63
mysql_prestart()
58
{
64
{
59
	if [ ! -d "${mysql_dbdir}/mysql/." ]; then
65
	if [ -f "${mysql_dbdir}/my.cnf" ]; then
66
		echo ""
67
		echo "Please keep in mind that the default location for my.cnf will be changed"
68
		echo "from \"%%MY_DBDIR%%/my.cnf\" to \"%%ETCDIR%%/my.cnf\" in the near"
69
		echo "future.  If you do not want to move your my.cnf to the new location then"
70
		echo "you must set \"mysql_optfile\" in /etc/rc.conf to \"/var/db/mysql/my.cnf\"."
71
		echo ""
72
	fi
73
74
	if [ ! -d "${mysql_dbdir}/mysql" ]; then
60
		mysql_create_auth_tables || return 1
75
		mysql_create_auth_tables || return 1
61
	fi
76
	fi
62
	if checkyesno mysql_limits; then
77
	if checkyesno mysql_limits; then
(-)mysql56-server/pkg-plist (+3 lines)
Lines 129-131 Link Here
129
%%DATADIR%%/spanish/errmsg.sys
129
%%DATADIR%%/spanish/errmsg.sys
130
%%DATADIR%%/swedish/errmsg.sys
130
%%DATADIR%%/swedish/errmsg.sys
131
%%DATADIR%%/ukrainian/errmsg.sys
131
%%DATADIR%%/ukrainian/errmsg.sys
132
@sample(root,wheel,0640) %%ETCDIR%%/my.cnf.sample
133
@dir(mysql,mysql,0750) %%MY_SECDIR%%
134
@dir(mysql,mysql,0750) %%MY_TMPDIR%%

Return to bug 209338