include $(TOPDIR)/rules.mk
PKG_NAME:=gpsd
-PKG_VERSION:=2.90
+PKG_VERSION:=2.94
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://download.berlios.de/gpsd/
-PKG_MD5SUM:=a23c728b8734c542d559c485857238d2
+PKG_MD5SUM:=ce70bcd707ac1df861d4c72f503c09d1
-PKG_FIXUP:=libtool-ucxx
PKG_INSTALL:=1
PKG_BUILD_DEPENDS:=libncurses
define Package/gpsd
SECTION:=net
CATEGORY:=Network
- DEPENDS:=+libpthread +uclibcxx
+ DEPENDS:=+libpthread
TITLE:=An interface daemon for GPS receivers
URL:=http://gpsd.berlios.de/
endef
--disable-ubx \
--disable-evermore \
--disable-ntrip \
+ --disable-libgpsmm \
--without-x \
-CONFIGURE_VARS += \
- CXXFLAGS="$$$$CXXFLAGS -fno-builtin -fno-rtti -nostdinc++" \
- CPPFLAGS="$$$$CPPFLAGS -I$(STAGING_DIR)/usr/include/uClibc++ -I$(LINUX_DIR)/include" \
- LDFLAGS="$$$$LDFLAGS -L$(STAGING_DIR)/usr/lib" \
- LIBS="-nodefaultlibs -luClibc++ -lm $(LIBGCC_S)" \
- CC="$(TARGET_CC)" CXX="$(TARGET_CXX)" \
-
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/gps.h $(1)/usr/include/
endef
define Package/gpsd/install
+ $(INSTALL_DIR) $(1)/etc/config
+ $(INSTALL_CONF) ./files/gpsd.config $(1)/etc/config/gpsd
+ $(INSTALL_DIR) $(1)/etc/init.d
+ $(INSTALL_BIN) ./files/gpsd.init $(1)/etc/init.d/gpsd
+ $(INSTALL_DIR) $(1)/etc/hotplug.d/usb
+ $(INSTALL_DATA) ./files/gpsd.hotplug $(1)/etc/hotplug.d/usb/20-gpsd
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libgps.so.* $(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/sbin
--- /dev/null
+config gpsd core
+ option device "/dev/ttyUSB0"
+ option port "2947"
+ option enabled "true"
--- /dev/null
+case "$ACTION" in
+ add)
+ # start process
+ # only pl2303 devices are handled
+ if [ "$PRODUCT" = "67b/2303/300" ] && [ "$TYPE" = "0/0/0" ] && [ "$INTERFACE" = "255/0/0" ]; then
+ sleep 3 && /etc/init.d/gpsd start
+ fi
+ ;;
+ remove)
+ # stop process
+ # only pl2303 devices are handled
+ if [ "$PRODUCT" = "67b/2303/300" ] && [ "$TYPE" = "0/0/0" ] && [ "$INTERFACE" = "255/0/0" ]; then
+ /etc/init.d/gpsd stop
+ fi
+ ;;
+esac
--- /dev/null
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2009 OpenWrt.org
+START=50
+
+NAME=gpsd
+PIDF=/var/run/$NAME.pid
+PROG=/usr/sbin/$NAME
+
+start() {
+ config_load gpsd
+ config_get device core device
+ config_get port core port
+ config_get_bool enabled core enabled
+ [ "$enabled" != "1" ] && exit
+ logger -t "$NAME" "Starting..."
+ [ ! -c "$device" ] && {
+ logger -t "$NAME" "Unable to find device $device. Exiting."
+ exit 1
+ }
+ $PROG -n -P $PIDF -S $port $device
+}
+
+stop() {
+ logger -t "$NAME" "Stopping..."
+ [ -f "$PIDF" ] && {
+ read PID < "$PIDF"
+ kill -9 $PID
+ rm $PIDF
+ }
+}
+++ /dev/null
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -559,7 +559,7 @@
- #
- # Build shared libraries
- #
--libgps_la_LDFLAGS = -version-number 19:0:0
-+libgps_la_LDFLAGS = -version-number 19:0:0 $(LDFLAGS)
- lib_LTLIBRARIES = libgps.la
- libgpsd_c_sources = \
- ais_json.c \
-@@ -616,8 +616,8 @@
- BUILT_SOURCES = packet_names.h gpsd.h revision.h ais_json.i maskdump.c
- libgps_la_SOURCES = $(libgpsd_c_sources) $(libgpsd_h_sources) \
- driver_rtcm2.h packet_states.h $(am__append_2)
--@LIBGPSMM_ENABLE_FALSE@libgps_la_LINK = /bin/sh ./libtool --tag=CC --mode=link gcc $(libgps_la_LDFLAGS) -o $@
--@LIBGPSMM_ENABLE_TRUE@libgps_la_LINK = /bin/sh ./libtool --tag=CXX --mode=link g++ $(libgps_la_LDFLAGS) -o $@
-+@LIBGPSMM_ENABLE_FALSE@libgps_la_LINK = /bin/sh ./libtool --tag=CC --mode=link $(CC) $(libgps_la_LDFLAGS) -o $@
-+@LIBGPSMM_ENABLE_TRUE@libgps_la_LINK = /bin/sh ./libtool --tag=CXX --mode=link $(CXX) $(libgps_la_LDFLAGS) -o $@
- nodist_libgps_la_SOURCES = packet_names.h ais_json.i
- libgps_la_LIBADD = $(LIBM) $(LIBC) $(LIBNSL) $(LIBSOCKET) $(LIBPTHREAD)
-