From 1d1687a068ccb95fd2f33fde9d371c9b795ff76a Mon Sep 17 00:00:00 2001 From: rodent Date: Mon, 14 Apr 2014 00:02:49 +0000 Subject: Don't hardcode PID file. Instead, give the user the option to set it. The rc.d script overrides my.cnf directives. Hardcoding the PID can cause a problem on systems transitioning to MySQL packages from pkgsrc. --- databases/mysql51-server/Makefile | 13 +++++++------ databases/mysql51-server/files/mysqld.sh | 11 ++++++----- 2 files changed, 13 insertions(+), 11 deletions(-) (limited to 'databases/mysql51-server') diff --git a/databases/mysql51-server/Makefile b/databases/mysql51-server/Makefile index 4a54acadeba..8ec9494f62d 100644 --- a/databases/mysql51-server/Makefile +++ b/databases/mysql51-server/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.20 2014/03/11 14:34:36 jperkin Exp $ +# $NetBSD: Makefile,v 1.21 2014/04/14 00:02:49 rodent Exp $ PKGNAME= ${DISTNAME:S/-/-server-/} PKGREVISION= 1 @@ -55,11 +55,12 @@ RCD_SCRIPTS= mysqld SMF_NAME= mysql SMF_METHODS= ${RCD_SCRIPTS} -FILES_SUBST+= HOSTNAME_CMD=${HOSTNAME_CMD:Q} \ - MYSQL_DATADIR=${MYSQL_DATADIR} \ - MYSQL_USER=${MYSQL_USER} MYSQL_GROUP=${MYSQL_GROUP} -MESSAGE_SUBST+= MYSQL_DATADIR=${MYSQL_DATADIR} \ - MYSQL_USER=${MYSQL_USER} MYSQL_GROUP=${MYSQL_GROUP} +FILES_SUBST+= HOSTNAME_CMD=${HOSTNAME_CMD:Q} +FILES_SUBST+= MYSQL_DATADIR=${MYSQL_DATADIR} +FILES_SUBST+= MYSQL_USER=${MYSQL_USER} MYSQL_GROUP=${MYSQL_GROUP} +FILES_SUBST+= MYSQL_PIDFILE=${MYSQL_PIDFILE} +MESSAGE_SUBST+= MYSQL_DATADIR=${MYSQL_DATADIR} +MESSAGE_SUBST+= MYSQL_USER=${MYSQL_USER} MYSQL_GROUP=${MYSQL_GROUP} BUILD_DEFS+= MYSQL_DATADIR BUILD_DIRS= . man diff --git a/databases/mysql51-server/files/mysqld.sh b/databases/mysql51-server/files/mysqld.sh index a4b262074bd..d392aed7b0a 100644 --- a/databases/mysql51-server/files/mysqld.sh +++ b/databases/mysql51-server/files/mysqld.sh @@ -1,6 +1,6 @@ #!@RCD_SCRIPTS_SHELL@ # -# $NetBSD: mysqld.sh,v 1.1.1.1 2010/03/04 16:28:58 taca Exp $ +# $NetBSD: mysqld.sh,v 1.2 2014/04/14 00:02:49 rodent Exp $ # # PROVIDE: mysqld # REQUIRE: DAEMON LOGIN mountall @@ -14,7 +14,7 @@ # # mysqld_user="mysql" # user to run mysqld as # mysqld_datadir="/path/to/home" # path to MySQL database directory -# +# mysqld_pidfile="/path/to/p.pid" # path to MySQL PID file if [ -f /etc/rc.subr ]; then . /etc/rc.subr @@ -27,6 +27,7 @@ procname="@PREFIX@/libexec/${name}" : ${mysqld_user:=@MYSQL_USER@} : ${mysqld_group:=@MYSQL_GROUP@} : ${mysqld_datadir:=@MYSQL_DATADIR@} +: ${mysqld_pidfile:=@MYSQL_PIDFILE@} extra_commands="initdb" initdb_cmd="mysqld_initdb" @@ -81,19 +82,19 @@ mysqld_start() ulimit -n 4096 cd @PREFIX@ ${command} --user=${mysqld_user} --datadir=${mysqld_datadir} \ - --pid-file=${pidfile} ${mysqld_flags} \ + --pid-file=${mysqld_pidfile} ${mysqld_flags} \ ${thread_flags} & } if [ -f /etc/rc.subr -a -d /etc/rc.d -a -f /etc/rc.d/DAEMON ]; then load_rc_config $name - pidfile="${mysqld_datadir}/`@HOSTNAME_CMD@`.pid" + pidfile="${mysqld_pidfile}" run_rc_command "$1" else if [ -f /etc/rc.conf ]; then . /etc/rc.conf fi - pidfile="${mysqld_datadir}/`@HOSTNAME_CMD@`.pid" + pidfile="${mysqld_pidfile}" case "$1" in initdb) eval ${initdb_cmd} -- cgit v1.2.3