summaryrefslogtreecommitdiffstats
path: root/testing/gpsd
diff options
context:
space:
mode:
authorNathan Angelacos <nangel@alpinelinux.org>2012-08-01 03:42:51 +0000
committerLeonardo Arena <rnalrd@alpinelinux.org>2012-08-01 07:21:34 +0000
commit6441836fcf060e71c8673b0c6f52bb4178b63556 (patch)
tree97b136980966be530253bddb15046112bbeaf65d /testing/gpsd
parent74b1e1501f27ada52afa50208bff73f79d26bcb3 (diff)
gpsd - interface daemon for GPS receivers
testing/gpsd APKBUILD gpsd.confd gpsd.initd Signed-off-by: Leonardo Arena <rnalrd@alpinelinux.org>
Diffstat (limited to 'testing/gpsd')
-rw-r--r--testing/gpsd/APKBUILD55
-rw-r--r--testing/gpsd/gpsd.confd26
-rw-r--r--testing/gpsd/gpsd.initd36
3 files changed, 117 insertions, 0 deletions
diff --git a/testing/gpsd/APKBUILD b/testing/gpsd/APKBUILD
new file mode 100644
index 00000000000..1a5526ac98f
--- /dev/null
+++ b/testing/gpsd/APKBUILD
@@ -0,0 +1,55 @@
+# Contributor: Nathan Angelacos <nangel@alpinelinux.org>
+# Maintainer: Nathan Angelacos <nangel@alpinelinux.org>
+pkgname=gpsd
+pkgver=3.7
+pkgrel=0
+pkgdesc="A GPS daemon"
+arch=all
+url="http://catb.org/gpsd/"
+license="BSD"
+depends="libcap"
+makedepends="scons python-dev libcap-dev"
+install=
+# subpackages="$pkgname-doc $pkgname-dev"
+source="http://download-mirror.savannah.gnu.org/releases/gpsd/$pkgname-$pkgver.tar.gz
+ gpsd.initd
+ gpsd.confd"
+
+_builddir="$srcdir"/$pkgname-$pkgver
+
+prepare() {
+ local i
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$_builddir"
+ export CPPFLAGS=\"$CPPFLAGS\"
+ scons -j${JOBS:-2} \
+ prefix=/usr \
+ || return 1
+}
+
+package() {
+ cd "$_builddir"
+
+ mkdir -p "$pkgdir"/usr/lib
+ cp "$_builddir"/libgps*.so* "$pkgdir"/usr/lib/
+
+ mkdir -p "$pkgdir"/usr/sbin
+ for a in gpsdecode gpsd gpsctl gpsdctl gpspipe; do
+ install -m755 -D "$_builddir/"$a "$pkgdir"/usr/sbin/
+ done
+
+ install -m755 -D "$srcdir"/gpsd.initd "$pkgdir"/etc/init.d/gpsd
+ install -m644 -D "$srcdir"/gpsd.confd "$pkgdir"/etc/conf.d/gpsd
+}
+
+md5sums="52d9785eaf1a51298bb8900dbde88f98 gpsd-3.7.tar.gz
+ac2c2a034c15df16c28c755d47d3dd74 gpsd.initd
+5ece6caa9e2202984fcf4853ecbe42e6 gpsd.confd"
diff --git a/testing/gpsd/gpsd.confd b/testing/gpsd/gpsd.confd
new file mode 100644
index 00000000000..27bb332ace2
--- /dev/null
+++ b/testing/gpsd/gpsd.confd
@@ -0,0 +1,26 @@
+# /etc/conf.d/gpsd
+
+# The GPS device (/dev/ttyUSB0, /dev/ttyS0, ...)
+
+DEVICE=""
+
+# Optional arguments
+# Options include:
+# -b = bluetooth-safe: open data sources read-only
+# -n = don't wait for client connects to poll GPS
+# -N = don't go into background
+# -F sockfile = specify control socket location
+# -G = make gpsd listen on INADDR_ANY
+# -D integer (default 0) = set debug level
+# -S integer (default 2947) = set port for daemon
+
+ARGS="-n "
+
+# Serial setup
+#
+# For serial interfaces, options such as low_latency are recommended
+# Uncomment the following line to set the /dev/ttySxx device options, if
+# desired:
+
+# /bin/setserial ${DEVICE} low_latency
+
diff --git a/testing/gpsd/gpsd.initd b/testing/gpsd/gpsd.initd
new file mode 100644
index 00000000000..985271f4163
--- /dev/null
+++ b/testing/gpsd/gpsd.initd
@@ -0,0 +1,36 @@
+#!/sbin/runscript
+# Copyright 2012 Nathan Angelacos
+
+depend() {
+ need net
+ after firewall
+ use ntp-server
+}
+
+GPS=${SVCNAME#*.}
+if [ -n "${GPS}" ] && [ ${SVCNAME} != "gpsd" ]; then
+ GPSPID="/var/run/gpsd.${GPS}.pid"
+else
+ GPSPID="/var/run/gpsd.pid"
+fi
+
+start() {
+
+ if [ -z "${DEVICE}" ]; then
+ eerror "Specify a GPS device in /etc/conf.d/${SVCNAME}"
+ return 1
+ fi
+
+ ebegin "Starting gpsd"
+ start-stop-daemon --start --quiet \
+ --exec /usr/sbin/gpsd \
+ -- ${ARGS} -P "${GPSPID}" ${DEVICE}
+ eend $? "Failed to start gpsd"
+}
+
+stop() {
+ ebegin "Stopping gpsd"
+ start-stop-daemon --stop --quiet \
+ --pidfile "${GPSPID}"
+ eend $? "Failed to stop gpsd"
+}