View | Details | Raw Unified | Return to bug 144887
Collapse All | Expand All

(-)Makefile (-2 / +5 lines)
Lines 20-25 Link Here
20
SLAVEDIRS=	databases/mysql55-client databases/mysql55-scripts
20
SLAVEDIRS=	databases/mysql55-client databases/mysql55-scripts
21
GNU_CONFIGURE=	yes
21
GNU_CONFIGURE=	yes
22
MAKE_JOBS_SAFE=	yes
22
MAKE_JOBS_SAFE=	yes
23
USE_LDCONFIG=	yes
23
24
24
CONFIGURE_ARGS=	--localstatedir=/var/db/mysql \
25
CONFIGURE_ARGS=	--localstatedir=/var/db/mysql \
25
		--without-debug \
26
		--without-debug \
Lines 30-35 Link Here
30
		--with-comment='FreeBSD port: ${PKGNAME}' \
31
		--with-comment='FreeBSD port: ${PKGNAME}' \
31
		--enable-thread-safe-client
32
		--enable-thread-safe-client
32
33
34
USERS=		mysql
35
GROUPS=		mysql
36
33
.ifdef USE_MYSQL
37
.ifdef USE_MYSQL
34
.error You have `USE_MYSQL' variable defined either in environment or in make(1) arguments. Please undefine and try again.
38
.error You have `USE_MYSQL' variable defined either in environment or in make(1) arguments. Please undefine and try again.
35
.endif
39
.endif
Lines 99-105 Link Here
99
103
100
CONFLICTS=	mysql-server-[34].* mysql-server-5.[0-46-9].*
104
CONFLICTS=	mysql-server-[34].* mysql-server-5.[0-46-9].*
101
105
102
USE_RC_SUBR=	mysql-server.sh
106
USE_RC_SUBR=	mysql-server
103
107
104
.if defined(WITH_NDB)
108
.if defined(WITH_NDB)
105
PLIST_SUB+=	NDB=""
109
PLIST_SUB+=	NDB=""
Lines 161-167 Link Here
161
165
162
post-install:
166
post-install:
163
.if !defined(PACKAGE_BUILDING)
167
.if !defined(PACKAGE_BUILDING)
164
	@${SETENV} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
165
	@${CAT} ${PKGMESSAGE}
168
	@${CAT} ${PKGMESSAGE}
166
.endif
169
.endif
167
170
(-)pkg-install (-36 lines)
Removed Link Here
1
#!/bin/sh
2
3
PATH=/bin:/usr/sbin
4
5
case $2 in
6
POST-INSTALL)
7
	USER=mysql
8
	GROUP=${USER}
9
	UID=88
10
	GID=${UID}
11
12
	if pw group show "${GROUP}" 2>/dev/null; then
13
		echo "You already have a group \"${GROUP}\", so I will use it."
14
	else
15
		if pw groupadd ${GROUP} -g ${GID}; then
16
			echo "Added group \"${GROUP}\"."
17
		else
18
			echo "Adding group \"${GROUP}\" failed..."
19
			exit 1
20
		fi
21
	fi
22
23
	if pw user show "${USER}" 2>/dev/null; then
24
		echo "You already have a user \"${USER}\", so I will use it."
25
	else
26
		if pw useradd ${USER} -u ${UID} -g ${GROUP} -h - \
27
			-d /nonexistent -s /sbin/nologin -c "MySQL Daemon"
28
		then
29
			echo "Added user \"${USER}\"."
30
		else
31
			echo "Adding user \"${USER}\" failed..."
32
			exit 1
33
		fi
34
	fi
35
	;;
36
esac
(-)files/mysql-server.in (+74 lines)
Added Link Here
1
#!/bin/sh
2
#
3
# $FreeBSD: ports/databases/mysql55-server/files/mysql-server.sh.in,v 1.7 2010/01/04 10:05:52 ale Exp $
4
#
5
6
# PROVIDE: mysql
7
# REQUIRE: LOGIN
8
# KEYWORD: shutdown
9
10
#
11
# Add the following line to /etc/rc.conf to enable mysql:
12
# mysql_enable (bool):	Set to "NO" by default.
13
#			Set it to "YES" to enable MySQL.
14
# mysql_limits (bool):	Set to "NO" by default.
15
#			Set it to yes to run `limits -e -U mysql`
16
#			just before mysql starts.
17
# mysql_dbdir (str):	Default to "/var/db/mysql"
18
#			Base database directory.
19
# mysql_args (str):	Custom additional arguments to be passed
20
#			to mysqld_safe (default empty).
21
#
22
23
. %%RC_SUBR%%
24
25
name="mysql"
26
rcvar=`set_rcvar`
27
28
load_rc_config $name
29
30
: ${mysql_enable="NO"}
31
: ${mysql_limits="NO"}
32
: ${mysql_dbdir="/var/db/mysql"}
33
: ${mysql_args=""}
34
35
mysql_user="mysql"
36
mysql_limits_args="-e -U ${mysql_user}"
37
pidfile="${mysql_dbdir}/`/bin/hostname`.pid"
38
command="%%PREFIX%%/bin/mysqld_safe"
39
command_args="--defaults-extra-file=${mysql_dbdir}/my.cnf --user=${mysql_user} --datadir=${mysql_dbdir} --pid-file=${pidfile} ${mysql_args} > /dev/null 2>&1 &"
40
procname="%%PREFIX%%/libexec/mysqld"
41
start_precmd="${name}_prestart"
42
start_postcmd="${name}_poststart"
43
mysql_install_db="%%PREFIX%%/bin/mysql_install_db"
44
mysql_install_db_args="--ldata=${mysql_dbdir}"
45
46
mysql_create_auth_tables()
47
{
48
	eval $mysql_install_db $mysql_install_db_args >/dev/null 2>/dev/null
49
        [ $? -eq 0 ] && chown -R ${mysql_user}:${mysql_user} ${mysql_dbdir}
50
}
51
52
mysql_prestart()
53
{
54
	if [ ! -d "${mysql_dbdir}/mysql/." ]; then
55
		mysql_create_auth_tables || return 1
56
	fi
57
	if checkyesno mysql_limits; then
58
		eval `/usr/bin/limits ${mysql_limits_args}` 2>/dev/null
59
	else
60
		return 0
61
	fi
62
}
63
64
mysql_poststart()
65
{
66
	local timeout=15
67
	while [ ! -f "${pidfile}" -a ${timeout} -gt 0 ]; do
68
		timeout=$(( timeout - 1 ))
69
		sleep 1
70
	done
71
	return 0
72
}
73
74
run_rc_command "$1"
(-)files/mysql-server.sh.in (-74 lines)
Removed Link Here
1
#!/bin/sh
2
#
3
# $FreeBSD: ports/databases/mysql55-server/files/mysql-server.sh.in,v 1.7 2010/01/04 10:05:52 ale Exp $
4
#
5
6
# PROVIDE: mysql
7
# REQUIRE: LOGIN
8
# KEYWORD: shutdown
9
10
#
11
# Add the following line to /etc/rc.conf to enable mysql:
12
# mysql_enable (bool):	Set to "NO" by default.
13
#			Set it to "YES" to enable MySQL.
14
# mysql_limits (bool):	Set to "NO" by default.
15
#			Set it to yes to run `limits -e -U mysql`
16
#			just before mysql starts.
17
# mysql_dbdir (str):	Default to "/var/db/mysql"
18
#			Base database directory.
19
# mysql_args (str):	Custom additional arguments to be passed
20
#			to mysqld_safe (default empty).
21
#
22
23
. %%RC_SUBR%%
24
25
name="mysql"
26
rcvar=`set_rcvar`
27
28
load_rc_config $name
29
30
: ${mysql_enable="NO"}
31
: ${mysql_limits="NO"}
32
: ${mysql_dbdir="/var/db/mysql"}
33
: ${mysql_args=""}
34
35
mysql_user="mysql"
36
mysql_limits_args="-e -U ${mysql_user}"
37
pidfile="${mysql_dbdir}/`/bin/hostname`.pid"
38
command="%%PREFIX%%/bin/mysqld_safe"
39
command_args="--defaults-extra-file=${mysql_dbdir}/my.cnf --user=${mysql_user} --datadir=${mysql_dbdir} --pid-file=${pidfile} ${mysql_args} > /dev/null 2>&1 &"
40
procname="%%PREFIX%%/libexec/mysqld"
41
start_precmd="${name}_prestart"
42
start_postcmd="${name}_poststart"
43
mysql_install_db="%%PREFIX%%/bin/mysql_install_db"
44
mysql_install_db_args="--ldata=${mysql_dbdir}"
45
46
mysql_create_auth_tables()
47
{
48
	eval $mysql_install_db $mysql_install_db_args >/dev/null 2>/dev/null
49
        [ $? -eq 0 ] && chown -R ${mysql_user}:${mysql_user} ${mysql_dbdir}
50
}
51
52
mysql_prestart()
53
{
54
	if [ ! -d "${mysql_dbdir}/mysql/." ]; then
55
		mysql_create_auth_tables || return 1
56
	fi
57
	if checkyesno mysql_limits; then
58
		eval `/usr/bin/limits ${mysql_limits_args}` 2>/dev/null
59
	else
60
		return 0
61
	fi
62
}
63
64
mysql_poststart()
65
{
66
	local timeout=15
67
	while [ ! -f "${pidfile}" -a ${timeout} -gt 0 ]; do
68
		timeout=$(( timeout - 1 ))
69
		sleep 1
70
	done
71
	return 0
72
}
73
74
run_rc_command "$1"

Return to bug 144887