]> arthur.barton.de Git - netatalk.git/commitdiff
add Gentoo startup scripts, --enable-gentoo
authorbfernhomberg <bfernhomberg>
Sun, 29 Feb 2004 18:42:57 +0000 (18:42 +0000)
committerbfernhomberg <bfernhomberg>
Sun, 29 Feb 2004 18:42:57 +0000 (18:42 +0000)
configure.in
distrib/initscripts/Makefile.am
distrib/initscripts/rc.atalk.gentoo.tmpl [new file with mode: 0644]

index 943a15c6092a8e33990ba01a97e434712dbb1307..fe38511a4733ae0811633c8bc82c3fd7d3b5240d 100644 (file)
@@ -1,4 +1,4 @@
-dnl $Id: configure.in,v 1.179.2.3.2.22 2004-02-29 17:38:03 bfernhomberg Exp $
+dnl $Id: configure.in,v 1.179.2.3.2.23 2004-02-29 18:43:38 bfernhomberg Exp $
 dnl configure.in for netatalk
 
 AC_INIT(etc/afpd/main.c)
@@ -440,6 +440,15 @@ AC_ARG_ENABLE(suse,
        ]
 )
 
+AC_ARG_ENABLE(gentoo,
+       [  --enable-gentoo         use gentoo-style sysv configuration ],[
+       if test "$enableval" = "yes"; then
+               sysv_style=gentoo
+       fi
+       AC_MSG_RESULT([enabling gentoo-style sysv support])
+       ]
+)
+
 AC_ARG_ENABLE(cobalt,
        [  --enable-cobalt         use cobalt-style sysv configuration ],
        if test "$enableval" = "yes"; then
@@ -936,6 +945,7 @@ AM_CONDITIONAL(USE_SUSE, test x$sysv_style = xsuse)
 AM_CONDITIONAL(USE_SHADOWPW, test x$shadowpw = xyes)
 AM_CONDITIONAL(USE_TRU64, test x$sysv_style = xtru64)
 AM_CONDITIONAL(USE_SOLARIS, test x$sysv_style = xsolaris)
+AM_CONDITIONAL(USE_GENTOO, test x$sysv_style = xgentoo)
 AM_CONDITIONAL(USE_UNDEF, test x$sysv_style = x)
 
 dnl --------------------- generate files
index 91d14f02779145569ddc44717ba522c404ed947e..6e14637425223a43ccc71d94a0151cc88cc464a5 100644 (file)
@@ -24,7 +24,8 @@ GENERATED_FILES = \
        rc.cnid_metad.netbsd    \
        rc.papd.netbsd          \
        rc.timelord.netbsd      \
-       rc.atalk.sysv
+       rc.atalk.sysv           \
+       rc.atalk.gentoo
 
 TEMPLATES = \
        rc.afpd.netbsd.tmpl             \
@@ -36,7 +37,8 @@ TEMPLATES = \
        rc.cnid_metad.netbsd.tmpl       \
        rc.papd.netbsd.tmpl             \
        rc.timelord.netbsd.tmpl         \
-       rc.atalk.sysv.tmpl
+       rc.atalk.sysv.tmpl              \
+       rc.atalk.gentoo.tmpl
 
 CLEANFILES = $(GENERATED_FILES) atalk afpd atalkd papd timelord
 EXTRA_DIST = $(TEMPLATES) rc.atalk.cobalt
@@ -100,6 +102,10 @@ atalk: rc.atalk.cobalt
        cp -f rc.atalk.cobalt atalk
        chmod a+x atalk
 
+install-data-hook:
+
+uninstall-hook:
+
 endif
 
 #
@@ -115,6 +121,10 @@ atalk: rc.atalk.tru64
        cp -f rc.atalk.tru64 atalk
        chmod a+x atalk
 
+install-data-hook:
+
+uninstall-hook:
+
 endif
 
 #
@@ -141,6 +151,10 @@ timelord: rc.timelord.netbsd
        cp -f $< $@
        chmod a+x $@
 
+install-data-hook:
+
+uninstall-hook:
+
 endif
 
 #
@@ -167,10 +181,26 @@ uninstall-hook:
 
 endif
 
+if USE_GENTOO
+
+sysvdir = /etc/init.d
+sysv_SCRIPTS = atalk
+
+atalk: rc.atalk.gentoo
+       cp -f rc.atalk.gentoo atalk
+       chmod a+x atalk
+
+install-data-hook:
+
+uninstall-hook:
+
+endif
+
+
 if USE_UNDEF
 
 install-data-hook:
 
-unistall-hook:
+uninstall-hook:
 
 endif
diff --git a/distrib/initscripts/rc.atalk.gentoo.tmpl b/distrib/initscripts/rc.atalk.gentoo.tmpl
new file mode 100644 (file)
index 0000000..fdd9cb6
--- /dev/null
@@ -0,0 +1,86 @@
+#!/sbin/runscript
+
+# AppleTalk daemons. Make sure not to start atalkd in the background:
+# its data structures must have time to stablize before running the
+# other processes.
+
+depend() {
+       need net
+}
+
+start () {
+       . :ETCDIR:/netatalk.conf
+
+       if [ "${ATALKD_RUN}" != "no" ]; then
+               ebegin "Starting atalkd"
+               start-stop-daemon --start --quiet --exec :SBINDIR:/atalkd
+               eend $?
+
+               for reg in \
+                       "${ATALK_NAME}:Workstation${ATALK_ZONE}" \
+                       "${ATALK_NAME}:netatalk${ATALK_ZONE}"
+               do
+                       ebegin "  Registering $reg"
+                       :BINDIR:/nbprgstr "$reg"
+                       eend $?
+               done
+
+               if [ "${PAPD_RUN}" = "yes" ]; then
+                       ebegin "  Starting papd"
+                       start-stop-daemon --start --quiet --exec :SBINDIR:/papd
+                       eend $?
+               fi
+
+       fi
+
+       if [ "${CNID_METAD_RUN}" = "yes" ] ; then
+               ebegin "Starting cnid_metad"
+               start-stop-daemon --start --quiet --exec :SBINDIR:/cnid_metad
+       fi
+
+
+       if [ "${AFPD_RUN}" = "yes" ]; then
+               ebegin "Starting afpd"
+               start-stop-daemon --start --quiet --exec :SBINDIR:/afpd -- \
+                       ${AFPD_UAMLIST} -g ${AFPD_GUEST} -c ${AFPD_MAX_CLIENTS} \
+                       -n "${ATALK_NAME}${ATALK_ZONE}"
+               eend $?
+       fi
+}
+
+
+stop () {
+       . :ETCDIR:/netatalk.conf
+
+       if [ "${ATALKD_RUN}" != "no" ]; then
+               if [ "${PAPD_RUN}" = "yes" ]; then
+                       ebegin "Stopping papd"
+                       start-stop-daemon --stop --quiet --exec :SBINDIR:/papd
+                       eend $?
+               fi
+
+               for reg in \
+                       "${ATALK_NAME}:Workstation${ATALK_ZONE}" \
+                       "${ATALK_NAME}:netatalk${ATALK_ZONE}"
+               do
+                       ebegin "Unregistering $reg"
+                       :BINDIR:/nbpunrgstr "$reg"
+                       eend $?
+               done
+
+               ebegin "Stopping atalkd"
+               start-stop-daemon --stop --quiet --exec :SBINDIR:/atalkd
+               eend $?
+       fi
+
+       if [ "${AFPD_RUN}" = "yes" ]; then
+               ebegin "Stopping afpd"
+               start-stop-daemon --stop --quiet --exec :SBINDIR:/afpd
+               eend $?
+       fi
+
+       if [ "${CNID_METAD_RUN}" = "yes" ] ; then
+               ebegin "Stopping cnid_metad"
+               start-stop-daemon --stop --quiet --exec :SBINDIR:/cnid_metad
+       fi
+}