From butcher@heavennet.ru  Tue Jun  6 08:09:52 2006
Return-Path: <butcher@heavennet.ru>
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 3B1D416BA98
	for <FreeBSD-gnats-submit@freebsd.org>; Tue,  6 Jun 2006 08:04:51 +0000 (UTC)
	(envelope-from butcher@heavennet.ru)
Received: from mail.insysnet.ru (ns2.insysnet.ru [81.18.141.4])
	by mx1.FreeBSD.org (Postfix) with SMTP id 7C0AE43D48
	for <FreeBSD-gnats-submit@freebsd.org>; Tue,  6 Jun 2006 08:04:49 +0000 (GMT)
	(envelope-from butcher@heavennet.ru)
Received: (qmail 65841 invoked by uid 3005); 6 Jun 2006 08:04:47 -0000
Received: from butcher@heavennet.ru by mail.insysnet.ru by uid 3002 with qmail-scanner-1.15 
 (Virus scan  Clear:. 
 Processed in 0.194348 secs); 06 Jun 2006 08:04:47 -0000
Received: from unknown (HELO mail.heavennet.ru) (81.18.141.41)
  by mail.insysnet.ru with SMTP; 6 Jun 2006 08:04:47 -0000
Received: by mail.heavennet.ru (Postfix, from userid 1000)
	id E83E415C4A; Tue,  6 Jun 2006 12:04:46 +0400 (MSD)
Message-Id: <20060606080446.E83E415C4A@mail.heavennet.ru>
Date: Tue,  6 Jun 2006 12:04:46 +0400 (MSD)
From: Andrey V. Elsukov <bu7cher@yandex.ru>
Reply-To: Andrey V. Elsukov <bu7cher@yandex.ru>
To: FreeBSD-gnats-submit@freebsd.org
Cc:
Subject: [patch][maintainer-update] devel/cvsd
X-Send-Pr-Version: 3.113
X-GNATS-Notify:

>Number:         98582
>Category:       ports
>Synopsis:       [patch][maintainer-update] devel/cvsd
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Tue Jun 06 08:10:23 GMT 2006
>Closed-Date:    Tue Jun 06 09:35:23 GMT 2006
>Last-Modified:  Tue Jun 06 09:35:23 GMT 2006
>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@FreeBSD.org
+MAINTAINER=	bu7cher@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:
State-Changed-From-To: open->closed 
State-Changed-By: ijliao 
State-Changed-When: Tue Jun 6 09:35:12 UTC 2006 
State-Changed-Why:  
committed, thanks 

http://www.freebsd.org/cgi/query-pr.cgi?pr=98582 
>Unformatted:
