ports/75516: [PATCH] make net/mpd rcNG compliant

Jimmy Olgeni olgeni at FreeBSD.org
Sun Dec 26 15:20:17 UTC 2004


>Number:         75516
>Category:       ports
>Synopsis:       [PATCH] make net/mpd rcNG compliant
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sun Dec 26 15:20:15 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator:     Jimmy Olgeni
>Release:        any
>Organization:
>Environment:
>Description:

The attached patch makes net/mpd rcNG compliant.

>How-To-Repeat:
>Fix:

diff -ruN --exclude CVS mpd.orig/Makefile mpd/Makefile
--- mpd.orig/Makefile	Tue Dec 21 17:32:28 2004
+++ mpd/Makefile	Tue Dec 21 17:33:29 2004
@@ -21,6 +21,7 @@
 MANCOMPRESSED=	maybe
 
 USE_OPENSSL	=yes
+USE_RC_SUBR=    yes
 MAKE_ENV=	COPTS="${COPTS} -I${OPENSSLINC}" LDADD="${LDADD} -L${OPENSSLLIB}"
 
 .include <bsd.port.pre.mk>
@@ -31,6 +32,9 @@
 	@${ECHO}
 
 post-install:
-	@${INSTALL_SCRIPT} -m 751 ${FILESDIR}/mpd.sh ${PREFIX}/etc/rc.d/mpd.sh.sample
+	@${SED} -e "s=%%RC_SUBR%%=${RC_SUBR}=" \
+		-e "s=%%PREFIX%%=${PREFIX}=" \
+		< ${FILESDIR}/mpd.sh > ${WRKSRC}/mpd.sh
+	@${INSTALL_SCRIPT} ${WRKSRC}/mpd.sh ${PREFIX}/etc/rc.d/mpd.sh
 
 .include <bsd.port.post.mk>
diff -ruN --exclude CVS mpd.orig/files/mpd.sh mpd/files/mpd.sh
--- mpd.orig/files/mpd.sh	Sat Nov 22 21:51:05 2003
+++ mpd/files/mpd.sh	Sun Jun 20 17:04:52 2004
@@ -1,37 +1,29 @@
 #!/bin/sh
+#
 # $FreeBSD: ports/net/mpd/files/mpd.sh,v 1.1 2003/11/22 20:51:05 archie Exp $
+#
+# PROVIDE: mpd
+# REQUIRE: NETWORKING
+# KEYWORD: FreeBSD
+#
+# Add the following line to /etc/rc.conf to enable mpd:
+#
+# mpd_enable="YES"
+#
 
-DAEMON=/usr/local/sbin/mpd
-PIDFILE=/var/run/mpd.pid
+mpd_flags="-b"
+mpd_enable="NO"
 
-case "$1" in
-start)
-	if [ -f "${DAEMON}" -a -x "${DAEMON}" ]; then
-		if [ -f "${PIDFILE}" ]; then
-			echo ' mpd PID file found - not starting'
-		else
-			"${DAEMON}" -b -p "${PIDFILE}"
-			echo -n ' mpd'
-		fi
-	else
-		echo ' "${DAEMON}" executable not found - mpd not starting'
-	fi
-	;;
-stop)
-	if [ -f "${PIDFILE}" ]; then
-		read -r pid junk < "${PIDFILE}"
-		kill ${pid}
-	else
-		echo ' mpd PID file not found - not killing'
-	fi
-	;;
-restart)
-	$0 stop
-	sleep 2
-	$0 start
-	;;
-*)
-	echo "usage: ${0##*/} {start|stop|restart}" >&2
-	;;
-esac
+. %%RC_SUBR%%
 
+name=mpd
+rcvar=`set_rcvar`
+
+prefix=%%PREFIX%%
+procname=${prefix}/sbin/mpd
+pidfile=/var/run/mpd.pid
+required_files="${prefix}/etc/mpd/mpd.conf ${prefix}/etc/mpd/mpd.links"
+command="${prefix}/sbin/mpd"
+
+load_rc_config ${name}
+run_rc_command "$1"
diff -ruN --exclude CVS mpd.orig/pkg-plist mpd/pkg-plist
--- mpd.orig/pkg-plist	Wed Oct 13 10:43:47 2004
+++ mpd/pkg-plist	Tue Dec 21 17:32:54 2004
@@ -2,7 +2,7 @@
 etc/mpd/mpd.links.sample
 etc/mpd/mpd.secret.sample
 etc/mpd/mpd.script.sample
-etc/rc.d/mpd.sh.sample
+etc/rc.d/mpd.sh
 sbin/mpd
 %%PORTDOCS%%%%DOCSDIR%%/README
 %%PORTDOCS%%%%DOCSDIR%%/mpd.ps

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list