opentapi: add (untested) initscript
authorKoen Kooi <koen@openembedded.org>
Tue, 2 Jan 2007 14:15:19 +0000 (14:15 +0000)
committerKoen Kooi <koen@openembedded.org>
Tue, 2 Jan 2007 14:15:19 +0000 (14:15 +0000)
packages/ezx/opentapi/.mtn2git_empty [new file with mode: 0644]
packages/ezx/opentapi/opentapi.init [new file with mode: 0644]
packages/ezx/opentapi_svn.bb

diff --git a/packages/ezx/opentapi/.mtn2git_empty b/packages/ezx/opentapi/.mtn2git_empty
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/packages/ezx/opentapi/opentapi.init b/packages/ezx/opentapi/opentapi.init
new file mode 100644 (file)
index 0000000..6b78c15
--- /dev/null
@@ -0,0 +1,82 @@
+#! /bin/sh
+# -*- coding: utf-8 -*-
+# init.d script for opentapi
+
+set -e
+
+DAEMON=/usr/bin/opentapi
+NAME=opentapi
+PIDDIR=/var/run/opentapi
+PIDFILE=$PIDDIR/pid
+DESC="OpenTAPI server"
+
+test -x $DAEMON || exit 0
+
+# Source defaults file; edit that file to configure this script.
+ENABLED=1
+PARAMS=""
+if [ -e /etc/default/opentapi ]; then
+  . /etc/default/opentapis
+fi
+
+test "$ENABLED" != "0" || exit 0
+
+start_it_up()
+{
+  if [ ! -d $PIDDIR ]; then
+    mkdir -p $PIDDIR
+  fi
+  if [ -e $PIDFILE ]; then
+    PIDDIR=/proc/$(cat $PIDFILE)
+    if [ -d ${PIDDIR} -a  "$(readlink -f ${PIDDIR}/exe)" = "${DAEMON}" ]; then 
+      echo "$DESC already started; not starting."
+    else
+      echo "Removing stale PID file $PIDFILE."
+      rm -f $PIDFILE
+    fi
+  fi
+
+  echo -n "Starting $DESC: "
+  start-stop-daemon --start --quiet --pidfile $PIDFILE \
+    -exec $DAEMON -- --system $PARAMS
+  echo "$NAME."
+  if [ -d $EVENTDIR ]; then
+      run-parts --arg=start $EVENTDIR
+  fi
+}
+
+shut_it_down()
+{
+  if [ -d $EVENTDIR ]; then
+      run-parts --reverse --arg=stop $EVENTDIR
+  fi
+  echo -n "Stopping $DESC: "
+  start-stop-daemon --stop  --quiet --pidfile $PIDFILE 
+   
+  # We no longer include these arguments so that start-stop-daemon
+  # can do its job even given that we may have been upgraded.
+  # We rely on the pidfile being sanely managed
+  # --exec $DAEMON -- --system $PARAMS
+  echo "$NAME."
+  rm -f $PIDFILE
+}
+
+case "$1" in
+  start)
+    start_it_up
+  ;;
+  stop)
+    shut_it_down
+  ;;
+  restart|force-reload)
+    shut_it_down
+    sleep 1
+    start_it_up
+  ;;
+  *)
+    echo "Usage: /etc/init.d/$NAME {start|stop|restart|force-reload}" >&2
+    exit 1
+  ;;
+esac
+
+exit 0
index e27aa68..a617f5b 100644 (file)
@@ -3,12 +3,23 @@ LICENSE = "GPLv2"
 
 PV = "0.0+svn${SRCDATE}"
 
-SRC_URI = "svn://svn.openezx.org/trunk/src/userspace/;module=opentapi;proto=http"
+SRC_URI = "svn://svn.openezx.org/trunk/src/userspace/;module=opentapi;proto=http \
+           file://opentapi.init \
+          "
+
+inherit update-rc.d
+
+INITSCRIPT_NAME = "opentapi"
+INITSCRIPT_PARAMS = "defaults"
+
 
 S = "${WORKDIR}/${PN}"
 
 do_install() {
        install -d ${D}${bindir}
        install -m 755 opentapi ${D}${bindir}
+        
+       install -d ${D}${sysconfdir}/init.d
+        install -m 0755 ${WORKDIR}/opentapi.init ${D}${sysconfdir}/init.d/opentapi
 }