Update gpsd

This commit is contained in:
Manuel 2012-04-08 22:24:04 +00:00
parent d210d2ef5d
commit f79044c153
4 changed files with 59 additions and 90 deletions

View File

@ -1,38 +0,0 @@
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.

View File

@ -1,45 +1,46 @@
# #
# KDE SC Packages for Chakra, part of chakra-project.org # KDE SC Packages for Chakra, part of chakra-project.org
# #
# maintainer (i686): Phil Miller <philm[at]chakra-project[dog]org>
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org> # maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
pkgname=gpsd pkgname=gpsd
pkgver=2.95 pkgver=3.4
pkgrel=1 pkgrel=1
pkgdesc="GPS daemon and library to support USB/serial GPS devices" pkgdesc="GPS daemon and library to support USB/serial GPS devices"
arch=('i686' 'x86_64') arch=('i686' 'x86_64')
url="http://gpsd.berlios.de" url="http://catb.org/gpsd/"
screenshot="http://www.catb.org/gpsd/gpsd2.png"
license=('BSD') license=('BSD')
depends=('lesstif' 'libxaw' 'python2' 'pth' 'libusb' 'desktop-file-utils') depends=('python2' 'libusb' 'bluez' 'desktop-file-utils')
optdepends=('php: generate a PHP status page for your GPS' optdepends=('php: generate a PHP status page for your GPS'
'php-gd: image support for the PHP status page') 'php-gd: image support for the PHP status page'
makedepends=('docbook-xsl') 'pygtk: GUI frontends')
backup=('etc/conf.d/gpsd' 'lib/udev/rules.d/99-gpsd-usb.rules') makedepends=('scons' 'docbook-xsl' 'chrpath')
backup=('etc/conf.d/gpsd')
options=('!libtool') options=('!libtool')
install="${pkgname}.install" install="${pkgname}.install"
source=("http://download.berlios.de/${pkgname}/${pkgname}-${pkgver}.tar.gz" source=("http://download.savannah.gnu.org/releases/${pkgname}/${pkgname}-${pkgver}.tar.gz"{,.sig}
'gpsd' 'LICENSE') 'gpsd' 'gpsd.conf.d')
md5sums=('12535a9ed9fecf9ea2c5bdc9840da5ae' md5sums=('c01353459faa68834309109d4e868460'
'f929322fc4670543fcb36dafc7bb9e03' '8aea27e1b0c23f254f94861f7d898106'
'd217a23f408e91c94359447735bc1800') '1f3402f8e33a7032b9ae6dfd077234f7'
'3e963df3f9f7ef3572ecc648ae829315')
build() { build() {
cd "${srcdir}/${pkgname}-${pkgver}" 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 # fix python 2.7 path
sed -i 's|/usr/bin/python|/usr/bin/python2|' gpsd.hotplug{,.wrapper} sed -i -e "s|#![ ]*/usr/bin/python$|#!/usr/bin/python2|" \
sed -i 's|/usr/bin/python2.6|/usr/bin/python2|' valgrind-audit -e "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" \
sed -i 's|/usr/bin/env python|/usr/bin/env python2|' gpscat \ $(find . -name '*.py')
gpsfake gpsprof xgps xgpsspeed gps/gps.py sed -i 's|/usr/bin/env python|/usr/bin/env python2|' gegps \
gpscat gpsfake gpsprof xgps xgpsspeed
PYTHON=/usr/bin/python2 ./configure --prefix=/usr \
--disable-libQgpsmm \ scons prefix=/usr \
--disable-static systemd=yes \
make libQgpsmm=no \
PYTHONPATH=/usr/bin/python2
scons build
} }
package() { package() {
@ -48,30 +49,30 @@ package() {
# Fix man pages path (FS#21715) # Fix man pages path (FS#21715)
sed -i 's|.so gps.1|.so man1/gps.1|' cgps.1 lcdgps.1 xgps.1 xgpsspeed.1 sed -i 's|.so gps.1|.so man1/gps.1|' cgps.1 lcdgps.1 xgps.1 xgpsspeed.1
make DESTDIR="${pkgdir}" install export DESTDIR="${pkgdir}"
scons install
# Our own udev-install since the Makefile uses absolute paths install -D -m644 "${srcdir}/gpsd.conf.d" "${pkgdir}/etc/conf.d/gpsd"
# 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}/usr/lib/udev/rules.d/99-gpsd-usb.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 sed -i 's|/etc/default/gpsd|/etc/conf.d/gpsd|' gpsd.hotplug
install -D -m755 gpsd.hotplug.wrapper "${pkgdir}/lib/udev/gpsd.hotplug.wrapper" install -D -m755 gpsd.hotplug "${pkgdir}/usr/lib/udev/gpsd.hotplug"
# Patch a path bug. Check to see if fixed in ensuing releases # GPSD needs RPATH
sed -i 's|gpsdcmd = "gpsd %s|gpsdcmd = "/usr/sbin/gpsd %s|' gpsd.hotplug chrpath -r /usr/lib/ "${pkgdir}"/usr/lib/libgps{,d}.so.20.0.0
install -D -m755 gpsd.hotplug "${pkgdir}/lib/udev/gpsd.hotplug" chrpath -r /usr/lib/ "${pkgdir}"/usr/bin/{gpsdecode,gpsctl,gpspipe,gpxlogger,lcdgps}
chrpath -r /usr/lib/ "${pkgdir}"/usr/sbin/{gpsd,gpsdctl}
chrpath -r /usr/lib/ "${pkgdir}"/usr/lib/python2.7/site-packages/gps/{clienthelpers,packet}.so
install -D -m644 packaging/X11/xgps.desktop ${pkgdir}/usr/share/applications/xgps.desktop install -D -m644 packaging/X11/xgps.desktop \
install -D -m644 packaging/X11/xgpsspeed.desktop ${pkgdir}/usr/share/applications/xgpsspeed.desktop "${pkgdir}/usr/share/applications/xgps.desktop"
install -D -m644 packaging/X11/gpsd-logo.png ${pkgdir}/usr/share/gpsd/gpsd-logo.png 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 -m755 "${srcdir}/gpsd" "${pkgdir}/etc/rc.d/gpsd"
install -D -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
} }

21
support-pkg-gpsd/gpsd Executable file → Normal file
View File

@ -1,4 +1,4 @@
#! /bin/sh #!/bin/bash
. /etc/rc.conf . /etc/rc.conf
. /etc/rc.d/functions . /etc/rc.d/functions
@ -6,29 +6,30 @@
NAME=gpsd NAME=gpsd
DAEMON=/usr/sbin/$NAME DAEMON=/usr/sbin/$NAME
PID=$(pidof -o %PPID /usr/sbin/gpsd) PIDFILE=/var/run/$NAME/$NAME.pid
PID=$(cat $PIDFILE 2>/dev/null)
case "$1" in case "$1" in
start) start)
stat_busy "Starting gpsd" stat_busy "Starting $NAME"
[ ! -d /var/run/gpsd ] && install -d /var/run/gpsd [ ! -d /var/run/$NAME ] && install -d /var/run/$NAME
[ -z "$PID" ] && "$DAEMON" ${GPSD_OPTIONS} -F ${GPSD_SOCKET} ${DEVICES} [ -z "$PID" ] && "$DAEMON" -P $PIDFILE -F /var/run/$NAME/$NAME.sock ${GPSD_OPTIONS} ${DEVICES}
if [ $? -gt 0 ]; then if [ $? -gt 0 ]; then
stat_fail stat_fail
else else
add_daemon gpsd add_daemon $NAME
stat_done stat_done
fi fi
;; ;;
stop) stop)
stat_busy "Stopping gpsd" stat_busy "Stopping $NAME"
[ ! -z "$PID" ] && kill $PID &> /dev/null [ ! -z "$PID" ] && kill $PID &> /dev/null
if [ $? -gt 0 ]; then if [ $? -gt 0 ]; then
stat_fail stat_fail
else else
rm -f /var/run/$PID.pid &>/dev/null rm -f $PIDFILE &>/dev/null
rm_daemon gpsd rm_daemon $NAME
stat_done stat_done
fi fi
;; ;;

View File

@ -0,0 +1,5 @@
# Default settings for gpsd.
START_DAEMON="true"
GPSD_OPTIONS=""
DEVICES=""
USBAUTO="true"