ports/98582: [patch][maintainer-update] devel/cvsd
Andrey V. Elsukov
bu7cher at yandex.ru
Tue Jun 6 08:18:32 UTC 2006
>Number: 98582
>Category: ports
>Synopsis: [patch][maintainer-update] devel/cvsd
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: maintainer-update
>Submitter-Id: current-users
>Arrival-Date: Tue Jun 06 08:10:23 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator: Andrey V. Elsukov
>Release: FreeBSD
>Organization:
>Environment:
Tested on FreeBSD 6.1 and 4.11
>Description:
Take maintainership for the port devel/cvsd.
Add rc.subr support.
>How-To-Repeat:
>Fix:
--- cvsd.diff begins here ---
--- cvsd/Makefile Tue Jun 6 11:33:45 2006
+++ cvsd/Makefile Tue Jun 6 11:34:58 2006
@@ -8,10 +8,11 @@
PORTNAME= cvsd
PORTVERSION= 1.0.12
+PORTREVISION= 1
CATEGORIES= devel
MASTER_SITES= http://ch.tudelft.nl/~arthur/cvsd/
-MAINTAINER= ports at FreeBSD.org
+MAINTAINER= bu7cher at yandex.ru
COMMENT= CVS pserver daemon
USE_GPG?= yes
@@ -27,16 +28,22 @@
MAN5= cvsd.conf.5
MAN8= cvsd.8 cvsd-buginfo.8 cvsd-buildroot.8 cvsd-passwd.8
PORTDOCS= README
-PLIST_FILES= etc/cvsd/cvsd.conf.sample etc/rc.d/cvsd.sh.sample \
- sbin/cvsd sbin/cvsd-buginfo sbin/cvsd-buildroot sbin/cvsd-passwd
+PLIST_FILES= etc/cvsd/cvsd.conf.sample sbin/cvsd sbin/cvsd-buginfo \
+ sbin/cvsd-buildroot sbin/cvsd-passwd
PLIST_DIRS= etc/cvsd
+USE_RC_SUBR= cvsd.sh
+
+.include <bsd.port.pre.mk>
+
+.if ${OSVERSION} > 500000
+EXTRA_PATCHES+= ${FILESDIR}/extra-cvsd-buildroot.in
+.endif
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/cvsd ${PREFIX}/sbin/cvsd
.for FILE in cvsd-buginfo cvsd-buildroot cvsd-passwd
${INSTALL_SCRIPT} ${WRKSRC}/${FILE} ${PREFIX}/sbin
.endfor
- ${INSTALL_DATA} ${WRKSRC}/cvsd.init ${PREFIX}/etc/rc.d/cvsd.sh.sample
@${MKDIR} ${PREFIX}/etc/cvsd
${INSTALL_DATA} ${WRKSRC}/cvsd.conf-dist ${PREFIX}/etc/cvsd/cvsd.conf.sample
.for FILE in ${MAN5}
@@ -51,4 +58,4 @@
.endif
@${CAT} ${PKGMESSAGE}
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
--- cvsd/files/cvsd.sh.in Thu Jan 1 03:00:00 1970
+++ cvsd/files/cvsd.sh.in Tue Jun 6 11:34:58 2006
@@ -0,0 +1,52 @@
+#!/bin/sh
+# $FreeBSD:
+#
+# PROVIDE: cvsd
+# REQUIRE: NETWORKING
+# KEYWORD: nojail
+
+. %%RC_SUBR%%
+
+name="cvsd"
+rcvar=`set_rcvar`
+command="%%PREFIX%%/sbin/$name"
+
+load_rc_config $name
+
+: ${cvsd_enable="NO"}
+: ${cvsd_config="%%PREFIX%%/etc/$name/$name.conf"}
+
+command_args="-f $cvsd_config"
+
+start_precmd="cvsd_prestart"
+stop_postcmd="cvsd_poststop"
+
+cvsd_prestart()
+{
+ if [ $osreldate -gt 500000 ]; then
+ mount -t devfs devfs $jail/dev
+ devfs -m $jail/dev rule apply hide
+ devfs -m $jail/dev rule apply path null unhide
+ devfs -m $jail/dev rule apply path zero unhide
+ fi
+}
+
+cvsd_poststop()
+{
+ if [ $osreldate -gt 500000 ]; then
+ umount -t devfs $jail/dev
+ fi
+}
+
+jail=`sed -n 's/^ *RootJail *\([^ ]*\) *$/\1/p' < $cvsd_config`
+pidfile=`sed -n 's/^ *PidFile *\([^ ]*\) *$/\1/p' < $cvsd_config`
+osreldate=`sysctl -n kern.osreldate`
+if [ "$jail" = "X$jail" ]; then
+ err 1 "RootJail is not specified in $cvsd_config"
+fi
+if [ "$pidfile" = "X$pidfile" ]; then
+ err 1 "PidFile is not specified in $cvsd_config"
+fi
+
+run_rc_command "$1"
+
--- cvsd/files/extra-cvsd-buildroot.in Thu Jan 1 03:00:00 1970
+++ cvsd/files/extra-cvsd-buildroot.in Tue Jun 6 11:39:24 2006
@@ -0,0 +1,42 @@
+--- cvsd-buildroot.in.orig Thu Jun 1 23:57:20 2006
++++ cvsd-buildroot.in Tue Jun 6 11:38:57 2006
+@@ -212,39 +212,6 @@
+ fi
+ done
+
+-# populate /dev (need root privileges for this)
+-echo $ECHO_N "creating $ROOT/dev devices... $ECHO_C"
+-DEVICES="null zero"
+-MISSINGDEVS=""
+-for d in $DEVICES
+-do
+- if [ -r "$ROOT/dev/$d" ]
+- then
+- :
+- else
+- MISSINGDEVS="$MISSINGDEVS $d"
+- fi
+-done
+-if [ -n "`echo $MISSINGDEVS`" ]
+-then
+- if (cd /dev ; tar chpf - $MISSINGDEVS) | \
+- ( cd "$ROOT/dev" ; tar xpf - > /dev/null 2>&1 )
+- then
+- # check if we can use the devices
+- if ( echo TEST > "$ROOT/dev/null" && \
+- echo TEST > "$ROOT/dev/zero" ) 2> /dev/null
+- then
+- echo "done."
+- else
+- echo "FAILED (unable to use devices)"
+- fi
+- else
+- echo "FAILED."
+- fi
+-else
+- echo "already there."
+-fi
+-
+ # update /etc/passwd
+ echo $ECHO_N "adding users to $ROOT/etc/passwd...$ECHO_C"
+ for i in $USERS
--- cvsd.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list