diff options
Diffstat (limited to 'extra/gpsd')
-rw-r--r-- | extra/gpsd/LICENSE | 38 | ||||
-rw-r--r-- | extra/gpsd/PKGBUILD | 77 | ||||
-rwxr-xr-x | extra/gpsd/gpsd | 43 | ||||
-rw-r--r-- | extra/gpsd/gpsd.install | 16 |
4 files changed, 174 insertions, 0 deletions
diff --git a/extra/gpsd/LICENSE b/extra/gpsd/LICENSE new file mode 100644 index 000000000..076538678 --- /dev/null +++ b/extra/gpsd/LICENSE @@ -0,0 +1,38 @@ + COPYRIGHTS + +Compilation copyright is held by the GPSD project. All rights reserved. + +GPSD project copyrights are assigned to the project lead, currently +Eric S. Raymond. Other portions of the GPSD code are Copyright (c) +1997, 1998, 1999, 2000, 2001, 2002 by Remco Treffkorn, and others +Copyright (c) 2005 by Eric S. Raymond. For other copyrights, see +individual files. + + BSD LICENSE + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met:<P> + +Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer.<P> + +Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution.<P> + +Neither name of the GPSD project nor the names of its contributors +may be used to endorse or promote products derived from this software +without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/extra/gpsd/PKGBUILD b/extra/gpsd/PKGBUILD new file mode 100644 index 000000000..674351838 --- /dev/null +++ b/extra/gpsd/PKGBUILD @@ -0,0 +1,77 @@ +# $Id: PKGBUILD 116080 2011-03-22 18:18:49Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org +# Contributor: Giacomo Rizzo <alt@free-os.it> + +pkgname=gpsd +pkgver=2.95 +pkgrel=8 +pkgdesc="GPS daemon and library to support USB/serial GPS devices" +arch=('i686' 'x86_64') +url="http://gpsd.berlios.de" +license=('BSD') +depends=('lesstif' 'libxaw' 'python2' 'pth' 'libusb' 'desktop-file-utils') +optdepends=('php: generate a PHP status page for your GPS' + 'php-gd: image support for the PHP status page') +makedepends=('docbook-xsl') +backup=('etc/conf.d/gpsd' 'lib/udev/rules.d/99-gpsd-usb.rules') +options=('!libtool') +install="${pkgname}.install" +source=("http://download.berlios.de/${pkgname}/${pkgname}-${pkgver}.tar.gz" + 'gpsd' 'LICENSE') +md5sums=('12535a9ed9fecf9ea2c5bdc9840da5ae' + 'f929322fc4670543fcb36dafc7bb9e03' + 'd217a23f408e91c94359447735bc1800') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + # install python to the same DESTDIR given make + sed -i 's|--prefix=${prefix} # --root=$(DESTDIR)|--prefix=${prefix} --root=$(DESTDIR)|' Makefile.am Makefile.in + + # fix python 2.7 path + sed -i 's|/usr/bin/python|/usr/bin/python2|' gpsd.hotplug{,.wrapper} + sed -i 's|/usr/bin/python2.6|/usr/bin/python2|' valgrind-audit + sed -i 's|/usr/bin/env python|/usr/bin/env python2|' gpscat \ + gpsfake gpsprof xgps xgpsspeed gps/gps.py + + PYTHON=/usr/bin/python2 ./configure --prefix=/usr \ + --disable-libQgpsmm \ + --disable-static + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + # Fix man pages path (FS#21715) + sed -i 's|.so gps.1|.so man1/gps.1|' cgps.1 lcdgps.1 xgps.1 xgpsspeed.1 + + make DESTDIR="${pkgdir}" install + + # Our own udev-install since the Makefile uses absolute paths + # Original file names are [mostly] unmodified: useful to match process name in case of error + # Following the switch from hotplug to udev helper scripts now live in /lib/udev/ instead of /etc/hotplug/ + sed -i 's|GPSD_OPTIONS=""|GPSD_OPTIONS="-P /var/run/gpsd.pid"|' packaging/deb/etc_default_gpsd + sed -i 's|"/var/run/gpsd.sock"|"/var/run/gpsd/gpsd.sock"|' packaging/deb/etc_default_gpsd + install -D -m644 "packaging/deb/etc_default_gpsd" "${pkgdir}/etc/conf.d/gpsd" + + sed -i 's|Id: gpsd.rules|Id: 99-gpsd-usb.rules|' gpsd.rules + install -D -m644 "gpsd.rules" "${pkgdir}/lib/udev/rules.d/99-gpsd-usb.rules" + + sed -i 's|/etc/default/gpsd|/etc/conf.d/gpsd|' gpsd.hotplug.wrapper + install -D -m755 gpsd.hotplug.wrapper "${pkgdir}/lib/udev/gpsd.hotplug.wrapper" + + # Patch a path bug. Check to see if fixed in ensuing releases + sed -i 's|gpsdcmd = "gpsd %s|gpsdcmd = "/usr/sbin/gpsd %s|' gpsd.hotplug + install -D -m755 gpsd.hotplug "${pkgdir}/lib/udev/gpsd.hotplug" + + install -D -m644 packaging/X11/xgps.desktop ${pkgdir}/usr/share/applications/xgps.desktop + install -D -m644 packaging/X11/xgpsspeed.desktop ${pkgdir}/usr/share/applications/xgpsspeed.desktop + install -D -m644 packaging/X11/gpsd-logo.png ${pkgdir}/usr/share/gpsd/gpsd-logo.png + + install -D -m755 "${srcdir}/gpsd" "${pkgdir}/etc/rc.d/gpsd" + + install -D -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/extra/gpsd/gpsd b/extra/gpsd/gpsd new file mode 100755 index 000000000..b0f22c735 --- /dev/null +++ b/extra/gpsd/gpsd @@ -0,0 +1,43 @@ +#! /bin/sh + +. /etc/rc.conf +. /etc/rc.d/functions +[ -f /etc/conf.d/gpsd ] && . /etc/conf.d/gpsd + +NAME=gpsd +DAEMON=/usr/sbin/$NAME +PID=$(pidof -o %PPID /usr/sbin/gpsd) + +case "$1" in + start) + stat_busy "Starting gpsd" + [ ! -d /var/run/gpsd ] && install -d /var/run/gpsd + [ -z "$PID" ] && "$DAEMON" ${GPSD_OPTIONS} -F ${GPSD_SOCKET} ${DEVICES} + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon gpsd + stat_done + fi + ;; + stop) + stat_busy "Stopping gpsd" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm -f /var/run/$PID.pid &>/dev/null + rm_daemon gpsd + stat_done + fi + ;; + + restart) + $0 stop + sleep 2 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/extra/gpsd/gpsd.install b/extra/gpsd/gpsd.install new file mode 100644 index 000000000..ee661fcb1 --- /dev/null +++ b/extra/gpsd/gpsd.install @@ -0,0 +1,16 @@ +post_install() { + echo ">>> Note: the supplied gpsd udev rules are device-specific, so" + echo ">>> if your device isn't detected correctly, please use lsusb or" + echo ">>> another suitable tool to determine the proper device IDs and" + echo ">>> use the commented rules to fill in the blanks for your device." + + update-desktop-database -q +} + +post_upgrade() { + update-desktop-database -q +} + +post_remove() { + update-desktop-database -q +} |