Browse Source

add optional support for cvs pserverd

Ralf S. Engelschall 24 years ago
parent
commit
4e40695189
2 changed files with 40 additions and 0 deletions
  1. 8 0
      cvs/cvs.spec
  2. 32 0
      cvs/rc.cvs

+ 8 - 0
cvs/cvs.spec

@@ -53,6 +53,7 @@ Source0:      http://www.cvshome.org/files/19/10/cvs-%{V_cvs}.tar.gz
 Source1:      ftp://riemann.iam.uni-bonn.de/pub/users/roessler/cvslock/cvslock-%{V_cvslock}.tar.gz
 Source2:      http://www.red-bean.com/cvs2cl/cvs2cl.pl
 Source3:      cvs.patches.rse
+Source4:      rc.cvs
 
 #   build information
 Prefix:       %{l_prefix}
@@ -137,6 +138,13 @@ AutoReqProv:  no
     %{l_shtool} install -c -m 755 \
         %{SOURCE cvs2cl.pl} $RPM_BUILD_ROOT%{l_prefix}/bin/cvs2cl
     strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
+%if "%{rse_patches}" == "yes"
+    %{l_shtool} mkdir -f -p -m 755 \
+        $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d \
+        $RPM_BUILD_ROOT%{l_prefix}/var/cvs
+    %{l_shtool} install -c -m 755 \
+        %{SOURCE rc.cvs} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
+%endif
     %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} 
 
 %files -f files

+ 32 - 0
cvs/rc.cvs

@@ -0,0 +1,32 @@
+#!@l_prefix@/lib/openpkg/bash @l_prefix@/etc/rc
+##
+##  rc.cvs -- Run-Commands for CVS pserver Daemon
+##
+
+%config
+    cvs_pserverd_enable="no"
+    cvs_pserverd_gflags=""
+    cvs_pserverd_lflags=""
+    cvs_pserverd_listen="127.0.0.1"
+
+%common
+    cvs_pserverd_pidfile="@l_prefix@/var/cvs/pserverd.pid"
+
+%start -p 200 -u root
+    if opServiceEnabled cvs_pserverd; then
+        rm -f $cvs_pserverd_pidfile >/dev/null 2>&1 || true
+        @l_prefix@/bin/cvs -f $cvs_pserverd_gflags \
+            pserverd -d -p $cvs_pserverd_pidfile \
+                     -l $cvs_pserverd_listen $cvs_pserverd_lflags
+    fi
+
+%stop -p 200 -u root
+    if opServiceEnabled cvs_pserverd; then
+        if [ -f $cvs_pserverd_pidfile ]; then
+            kill -TERM `cat $cvs_pserverd_pidfile`
+            sleep f
+            kill -KILL `cat $cvs_pserverd_pidfile`
+            rm -f $cvs_pserverd_pidfile >/dev/null 2>&1 || true
+        fi
+    fi
+