Dump gpsd to version 2.94 and add config, init, and hotplug scripts.

Tested only on x86 target.

Signed-off-by: Roberto Riggio <roberto.rig...@create-net.org>

--

Index: net/gpsd/files/gpsd.init
===================================================================
--- net/gpsd/files/gpsd.init    (revision 0)
+++ net/gpsd/files/gpsd.init    (revision 0)
@@ -0,0 +1,30 @@
+#!/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
+    }
+}
Index: net/gpsd/files/gpsd.config
===================================================================
--- net/gpsd/files/gpsd.config    (revision 0)
+++ net/gpsd/files/gpsd.config    (revision 0)
@@ -0,0 +1,4 @@
+config gpsd core
+    option device    "/dev/ttyUSB0"
+    option port    "2947"
+    option enabled    "true"
Index: net/gpsd/files/gpsd.hotplug
===================================================================
--- net/gpsd/files/gpsd.hotplug    (revision 0)
+++ net/gpsd/files/gpsd.hotplug    (revision 0)
@@ -0,0 +1,16 @@
+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
Index: net/gpsd/patches/001-fix-libtool-link.patch
===================================================================
--- net/gpsd/patches/001-fix-libtool-link.patch    (revision 21756)
+++ net/gpsd/patches/001-fix-libtool-link.patch    (working copy)
@@ -1,22 +0,0 @@
---- 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)
-
Index: net/gpsd/Makefile
===================================================================
--- net/gpsd/Makefile    (revision 21756)
+++ net/gpsd/Makefile    (working copy)
@@ -8,18 +8,15 @@
 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
-
 include $(INCLUDE_DIR)/package.mk

 define Package/gpsd
@@ -41,27 +38,27 @@
         --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 -lgcc" \
-    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/
-    $(INSTALL_DIR) $(1)/usr/lib
-    $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgps.{a,so*} $(1)/usr/lib/
+define Build/InstallDev
+    $(INSTALL_DIR) $(1)/usr/include
+    $(CP) $(PKG_INSTALL_DIR)/usr/include/gps.h $(1)/usr/include/
+    $(INSTALL_DIR) $(1)/usr/lib
+    $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgps.{a,so*} $(1)/usr/lib/
 endef

 define Package/gpsd/install
+    $(INSTALL_DIR) $(1)/etc/config
+    $(CP) ./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
-    $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/gpsd $(1)/usr/sbin/
+    $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/gpsd $(1)/usr/sbin/
 endef

 $(eval $(call BuildPackage,gpsd))
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to