aboutsummaryrefslogtreecommitdiffstats
path: root/package/utils/ugps
diff options
context:
space:
mode:
Diffstat (limited to 'package/utils/ugps')
-rw-r--r--package/utils/ugps/Makefile50
-rw-r--r--package/utils/ugps/files/gps.config2
-rw-r--r--package/utils/ugps/files/ugps.init22
3 files changed, 74 insertions, 0 deletions
diff --git a/package/utils/ugps/Makefile b/package/utils/ugps/Makefile
new file mode 100644
index 0000000..e30578f
--- /dev/null
+++ b/package/utils/ugps/Makefile
@@ -0,0 +1,50 @@
+#
+# Copyright (C) 2014 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=ugps
+PKG_VERSION:=2015-08-17
+PKG_RELEASE=$(PKG_SOURCE_VERSION)
+
+PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
+PKG_SOURCE_URL:=git://git.openwrt.org/project/ugps.git
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_VERSION:=971e6703eb9bed936cc62cd335105bd2acca14ef
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.bz2
+
+PKG_MAINTAINER:=John Crispin <blogic@openwrt.org>
+PKG_LICENSE:=GPL-2.0+
+
+include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
+
+define Package/ugps
+ SECTION:=utils
+ CATEGORY:=Utilities
+ TITLE:=OpenWrt GPS Daemon
+ DEPENDS:=+libubox +libubus
+endef
+
+TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include
+
+ifneq ($(CONFIG_USE_GLIBC),)
+ TARGET_CFLAGS += -D_DEFAULT_SOURCE
+endif
+
+define Package/ugps/conffiles
+/etc/config/gps
+endef
+
+define Package/ugps/install
+ $(INSTALL_DIR) $(1)/usr/sbin $(1)/etc/init.d $(1)/etc/config
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/ugps $(1)/usr/sbin/
+ $(INSTALL_BIN) ./files/ugps.init $(1)/etc/init.d/ugps
+ $(INSTALL_CONF) ./files/gps.config $(1)/etc/config/gps
+endef
+
+$(eval $(call BuildPackage,ugps))
diff --git a/package/utils/ugps/files/gps.config b/package/utils/ugps/files/gps.config
new file mode 100644
index 0000000..d997a59
--- /dev/null
+++ b/package/utils/ugps/files/gps.config
@@ -0,0 +1,2 @@
+config gps
+ option 'tty' 'ttyACM0'
diff --git a/package/utils/ugps/files/ugps.init b/package/utils/ugps/files/ugps.init
new file mode 100644
index 0000000..621d017
--- /dev/null
+++ b/package/utils/ugps/files/ugps.init
@@ -0,0 +1,22 @@
+#!/bin/sh /etc/rc.common
+# Copyright (c) 2014 OpenWrt.org
+
+START=80
+
+USE_PROCD=1
+PROG=/usr/sbin/ugps
+
+service_triggers() {
+ procd_add_reload_trigger gps
+}
+
+start_service() {
+ local tty="$(uci get gps.@gps[-1].tty)"
+
+ [ -d "/sys/class/tty/$tty/" ] || return
+
+ procd_open_instance
+ procd_set_param command "$PROG" "/dev/$tty"
+ procd_set_param respawn
+ procd_close_instance
+}