[oe-commits] org.oe.dev gsmd: rewrite start script, use start-stop-daemon. fixes OM bugs #704, #751
openmoko commit
openembedded-commits at lists.openembedded.org
Thu Aug 30 07:00:15 UTC 2007
gsmd: rewrite start script, use start-stop-daemon. fixes OM bugs #704, #751
Author: openmoko at openembedded.org
Branch: org.openembedded.dev
Revision: fa056f4e1e3e3e49a96459c011ccfcb235a4f695
ViewMTN: http://monotone.openembedded.org/revision.psp?id=fa056f4e1e3e3e49a96459c011ccfcb235a4f695
Files:
1
packages/gsm/files/gsmd
packages/gsm/libgsmd_svn.bb
Diffs:
#
# mt diff -r7d0e0dda1833d41fc45440f5824943ab387d0698 -rfa056f4e1e3e3e49a96459c011ccfcb235a4f695
#
#
#
# patch "packages/gsm/files/gsmd"
# from [b9a426f81bcbcf52b88fe0e13f66505d4a8ca216]
# to [a0900c11652d1a1755019fc170dcdf36658ef086]
#
# patch "packages/gsm/libgsmd_svn.bb"
# from [9756c419c7d89327186ad79d5a2bdabac11695b0]
# to [e45be6172fbb275631f81e60264fcdf723f81df1]
#
============================================================
--- packages/gsm/files/gsmd b9a426f81bcbcf52b88fe0e13f66505d4a8ca216
+++ packages/gsm/files/gsmd a0900c11652d1a1755019fc170dcdf36658ef086
@@ -1,106 +1,49 @@
-#!/bin/sh
+##!/bin/sh
#
-# gsmd This shell script starts and stops gsmd.
+# gsmd This shell script starts and stops gsmd.
#
# chkconfig: 345 90 40
# description: Gsmd manages access to a serial- or USB-connected GSM
# processname: gsmd
-# Source configuration
-. /etc/default/gsmd
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
-# Source function library.
-#. /etc/rc.d/init.d/functions
+[ -f /etc/default/rcS ] && . /etc/default/rcS
+[ -f /etc/default/gsmd ] && . /etc/default/gsmd
-RETVAL=0
-prog="gsmd"
+case "$1" in
+ start)
+ [ -n $GSM_POW ] && ( echo "0" >$GSM_POW; sleep 1 )
+ [ -n $GSM_POW ] && ( echo "1" >$GSM_POW; sleep 1 )
+ [ -n $GSM_RES ] && ( echo "1" >$GSM_RES; sleep 1 )
+ [ -n $GSM_RES ] && ( echo "0" >$GSM_RES; sleep 2 )
-start() {
- # Hack for broken uboot and/or kernel on the neo1973
- dmesg -n1
+ echo -n "Starting GSM daemon: "
+ start-stop-daemon -S -x /usr/sbin/gsmd -- gsmd -p $GSM_DEV $GSMD_OPTS >/tmp/gsm.log 2>&1 &
- if [ -n "${GSM_POW}" ]
- then
- if [ -e "${GSM_POW}" ]
- then
- echo -n "Powering up GSM device..."
- echo "1" > ${GSM_POW}
- sleep 1
- echo "done"
- else
- echo "GSM device not found. Aborting startup"
- return false
- fi
- fi
- # Start daemons.
- echo -n "Starting $prog: "
- # We don't use the daemon function here because of a known bug
- # in initlog -- it spuriously returns a nonzero status when
- # starting daemons that fork themselves. See
- # http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=130629
- # for discussion. Fortunately:
- #
- # 1. gsmd startup can't fail, or at least not in the absence of
- # much larger resource-exhaustion problems that would be very obvious.
- #
- # 2. We don't need all the logging crud that daemon/initlog sets
- # up -- gsmd does its own syslog calls.
- #
- if [ -e "${GSM_DEV}" ]
- then
- gsmd -p ${GSM_DEV} ${GSMD_OPTS} >/tmp/gsm.log 2>&1 &
- echo "success"
- else
- # User needs to symlink ${GPS_DEV} to the right thing
- echo "No ${GSM_DEV} device, aborting gsmd startup."
- fi
- RETVAL=$?
- echo
- [ $RETVAL -eq 0 ] && touch /var/lock/subsys/gsmd
- return $RETVAL
-}
+ if [ $? = 0 ]; then
+ echo "gsmd."
+ else
+ echo "(failed.)"
+ fi
+ ;;
+ stop)
+ [ -n $GSM_POW ] && echo "0" >$GSM_POW
-stop() {
- # Stop daemons.
- echo -n "Shutting down $prog: "
- killall gsmd
-# killproc gsmd
- RETVAL=$?
- echo
- if [ $RETVAL -eq 0 ]
- then
- rm -f /var/lock/subsys/gsmd;
- fi
- return $RETVAL
-}
-
-# See how we were called.
-case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- restart|reload)
- stop
- start
- RETVAL=$?
- ;;
- condrestart)
- if [ -f /var/lock/subsys/gsmd ]; then
- stop
- start
- RETVAL=$?
- fi
- ;;
- status)
-# status gsmd
-# RETVAL=$?
- ;;
- *)
- echo "Usage: $0 {start|stop|restart|condrestart|status}"
- exit 1
+ echo -n "Stopping GSM daemon: "
+ start-stop-daemon -K -x /usr/sbin/gsmd
+ echo "gsmd."
+ ;;
+ restart|force-reload)
+ $0 stop
+ $0 start
+ exit
+ ;;
+ *)
+ echo "Usage: /etc/init.d/apmd {start|stop|restart|force-reload}"
+ exit 1
+ ;;
esac
+exit 0
+
-exit $RETVAL
============================================================
--- packages/gsm/libgsmd_svn.bb 9756c419c7d89327186ad79d5a2bdabac11695b0
+++ packages/gsm/libgsmd_svn.bb e45be6172fbb275631f81e60264fcdf723f81df1
@@ -1,10 +1,10 @@ PV = "0.1+svn${SRCDATE}"
DESCRIPTION = "GSM libraries and daemons implementing the 07.10 specification"
HOMEPAGE = "http://www.openmoko.org"
LICENSE = "GPL LGPL"
SECTION = "libs/gsm"
PROVIDES += "gsmd"
PV = "0.1+svn${SRCDATE}"
-PR = "r21"
+PR = "r22"
SRC_URI = "svn://svn.openmoko.org/trunk/src/target;module=gsm;proto=http \
file://gsmd \
@@ -46,6 +46,7 @@ RRECOMMENDS_gsmd = "gsmd-plugins"
RDEPENDS_gsmd = "initscripts"
RRECOMMENDS_gsmd = "gsmd-plugins"
+
FILES_${PN}-dbg += "${libdir}/gsmd/.debug/*"
FILES_${PN}-tools = "${bindir}/*"
FILES_gsmd = "${sbindir}/gsmd ${sysconfdir}"
More information about the Openembedded-commits
mailing list