r1392 - in trunk/oe/packages: . gsm gsm/files

mickey at sita.openmoko.org mickey at sita.openmoko.org
Sat Mar 17 19:14:51 CET 2007


Author: mickey
Date: 2007-03-17 19:14:51 +0100 (Sat, 17 Mar 2007)
New Revision: 1392

Added:
   trunk/oe/packages/gsm/
   trunk/oe/packages/gsm/files/
   trunk/oe/packages/gsm/files/gsmd
   trunk/oe/packages/gsm/libgsmd_svn.bb
Log:
oe/packages: add startscript for gsm daemon


Added: trunk/oe/packages/gsm/files/gsmd
===================================================================
--- trunk/oe/packages/gsm/files/gsmd	2007-03-17 18:14:14 UTC (rev 1391)
+++ trunk/oe/packages/gsm/files/gsmd	2007-03-17 18:14:51 UTC (rev 1392)
@@ -0,0 +1,109 @@
+#!/bin/sh
+#
+# 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
+
+# If you must specify special options, uncomment and modify the next line
+#GSMD_OPTS=
+# If your GSM device needs to be powered up, uncommend and modify the next line
+GSM_POW="/sys/bus/platform/devices/gta01-pm-gsm.0/power_on"
+GSM_DEV="/dev/ttySAC0"
+
+# Source function library.
+#. /etc/rc.d/init.d/functions
+
+RETVAL=0
+prog="gsmd"
+
+start() {
+	# FIXME add check whether GSM_POW is set at all, otherwise don't try to power on
+	# Power on GSM device
+	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
+	# 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 "${GPS_DEV}" ]
+	then
+		chown uucp.uucp ${GSM_DEV}
+		mkdir -fp /usr/spool/uucp
+		chown uucp.uucp /usr/spool/uucp
+		stty -F /dev/ttySAC0 crtscts
+	    gsmd ${GPSD_OPTS} -p ${GPS_DEV}
+		echo "success"
+	else
+	    # User needs to symlink ${GPS_DEV} to the right thing
+	    echo "No ${GPS_DEV} device, aborting gsmd startup."
+	fi
+	RETVAL=$?
+	echo
+	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/gsmd
+	return $RETVAL
+}
+
+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
+esac
+
+exit $RETVAL


Property changes on: trunk/oe/packages/gsm/files/gsmd
___________________________________________________________________
Name: svn:executable
   + *

Added: trunk/oe/packages/gsm/libgsmd_svn.bb
===================================================================
--- trunk/oe/packages/gsm/libgsmd_svn.bb	2007-03-17 18:14:14 UTC (rev 1391)
+++ trunk/oe/packages/gsm/libgsmd_svn.bb	2007-03-17 18:14:51 UTC (rev 1392)
@@ -0,0 +1,32 @@
+DESCRIPTION = "GSM libraries and daemons implementing the 07.10 specification"
+HOMEPAGE = "http://www.openmoko.org"
+LICENSE = "GPL"
+SECTION = "libs/gsm"
+PROVIDES += "gsmd"
+PV = "0.0+svn${SRCDATE}"
+PR = "r3"
+
+SRC_URI = "svn://svn.openmoko.org/trunk/src/target;module=gsm;proto=http"
+S = "${WORKDIR}/gsm"
+
+inherit autotools pkgconfig update-rc.d
+
+INITSCRIPT_NAME = "gsmd"
+INITSCRIPT_PARAMS = "defaults 35"
+
+do_stage() {
+    autotools_stage_all
+}
+
+do_install_append() {
+	install -d ${D}/${sysconfdir}/init.d
+	install -m 0755 ${WORKDIR}/gsmd ${D}/${sysconfdir}/init.d/
+}
+
+PACKAGES =+ "${PN}-tools gsmd"
+RDEPENDS_${PN} = "gsmd"
+FILES_${PN}-tools = "${bindir}/*"
+FILES_gsmd = "${sbindir}/gsmd ${sysconfdir}"
+
+PACKAGES_DYNAMIC = "libgsmd* gsmd"
+





More information about the commitlog mailing list