summaryrefslogtreecommitdiff
path: root/openwrt
diff options
context:
space:
mode:
Diffstat (limited to 'openwrt')
-rw-r--r--openwrt/package/Config.in1
-rw-r--r--openwrt/package/Makefile2
-rw-r--r--openwrt/package/gpsd/Config.in17
-rw-r--r--openwrt/package/gpsd/Makefile89
-rw-r--r--openwrt/package/gpsd/ipkg/gpsd.control9
5 files changed, 118 insertions, 0 deletions
diff --git a/openwrt/package/Config.in b/openwrt/package/Config.in
index 7056560..b5a8e49 100644
--- a/openwrt/package/Config.in
+++ b/openwrt/package/Config.in
@@ -12,6 +12,7 @@ source "package/mtd/Config.in"
comment "Applications"
source "package/deco/Config.in"
+source "package/gpsd/Config.in"
source "package/haserl/Config.in"
source "package/lcd4linux/Config.in"
source "package/less/Config.in"
diff --git a/openwrt/package/Makefile b/openwrt/package/Makefile
index 3e157f9..7779c05 100644
--- a/openwrt/package/Makefile
+++ b/openwrt/package/Makefile
@@ -50,6 +50,7 @@ package-$(BR2_PACKAGE_GLIB) += glib
package-$(BR2_PACKAGE_GMEDIASERVER) += gmediaserver
package-$(BR2_PACKAGE_GMP) += gmp
package-$(BR2_COMPILE_GNUTLS) += gnutls
+package-$(BR2_PACKAGE_GPSD) += gpsd
package-$(BR2_PACKAGE_HASERL) += haserl
package-$(BR2_PACKAGE_HOSTAPD) += hostapd
package-$(BR2_PACKAGE_HOWL) += howl
@@ -235,6 +236,7 @@ fprobe-compile: libpcap-compile
gdbserver-compile: ncurses-compile
gmediaserver-compile: id3lib-compile libupnp-compile
gnutls-compile: libgcrypt-compile opencdk-compile libtasn1-compile
+gpsd-compile: uclibc++-compile
icecast-compile: curl-compile libvorbisidec-compile libxml2-compile libxslt-compile
id3lib-compile: uclibc++-compile zlib-compile
irssi-compile: glib-compile ncurses-compile
diff --git a/openwrt/package/gpsd/Config.in b/openwrt/package/gpsd/Config.in
new file mode 100644
index 0000000..6cf31d5
--- /dev/null
+++ b/openwrt/package/gpsd/Config.in
@@ -0,0 +1,17 @@
+config BR2_PACKAGE_GPSD
+ tristate "gpsd - An interface daemon for GPS receivers"
+ default m if CONFIG_DEVEL
+ select BR2_PACKAGE_LIBPTHREAD
+ select BR2_PACKAGE_UCLIBCXX
+ help
+ gpsd is a monitor daemon that watches a TCP/IP port (2947 by default),
+ waiting for applications to request information from GPSes or
+ differential-GPS radios attached to the host machine. Each GPS or
+ radio is expected to be direct-connected to the host via a USB or
+ RS232C serial port. The port may be specified to gpsd at startup, or
+ it may be set via a command shipped down a local control socket (e.g.
+ by a USB hotplug script). Given a GPS device by either means, gpsd
+ discovers the correct port speed and protocol for it.
+
+ http://gpsd.berlios.de/
+
diff --git a/openwrt/package/gpsd/Makefile b/openwrt/package/gpsd/Makefile
new file mode 100644
index 0000000..56c562d
--- /dev/null
+++ b/openwrt/package/gpsd/Makefile
@@ -0,0 +1,89 @@
+# $Id$
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=gpsd
+PKG_VERSION:=2.30
+PKG_RELEASE:=1
+PKG_MD5SUM:=dde177174878e8ae6db15f8010da46dd
+
+PKG_SOURCE_URL:=http://download.berlios.de/gpsd/
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_CAT:=zcat
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
+
+include $(TOPDIR)/package/rules.mk
+
+$(eval $(call PKG_template,GPSD,gpsd,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+
+$(PKG_BUILD_DIR)/.configured:
+ ( cd $(PKG_BUILD_DIR); rm -rf config.{cache,status}; \
+ $(TARGET_CONFIGURE_OPTS) \
+ CFLAGS="$(TARGET_CFLAGS)" \
+ CXXFLAGS="$(TARGET_CFLAGS) -fno-builtin -nostdinc++" \
+ CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include" \
+ LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" \
+ LIBS="-nodefaultlibs -luClibc++ -lc -lm -lnotimpl" \
+ ./configure \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
+ --build=$(GNU_HOST_NAME) \
+ --program-prefix="" \
+ --program-suffix="" \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --datadir=/usr/share \
+ --includedir=/usr/include \
+ --infodir=/usr/share/info \
+ --libdir=/usr/lib \
+ --libexecdir=/usr/lib \
+ --localstatedir=/var \
+ --mandir=/usr/share/man \
+ --sbindir=/usr/sbin \
+ --sysconfdir=/etc \
+ $(DISABLE_LARGEFILE) \
+ $(DISABLE_NLS) \
+ --enable-shared \
+ --enable-static \
+ --with-gnu-ld \
+ );
+ touch $@
+
+$(PKG_BUILD_DIR)/.built:
+ rm -rf $(PKG_INSTALL_DIR)
+ mkdir -p $(PKG_INSTALL_DIR)
+ $(MAKE) -C $(PKG_BUILD_DIR) \
+ CXXLINK="\$$(LINK)" \
+ DESTDIR="$(PKG_INSTALL_DIR)" \
+ all install
+ touch $@
+
+$(IPKG_GPSD):
+ install -d -m0755 $(IDIR_GPSD)/usr/lib
+ cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libgps.so.* $(IDIR_GPSD)/usr/lib/
+ install -d -m0755 $(IDIR_GPSD)/usr/sbin
+ cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/gpsd $(IDIR_GPSD)/usr/sbin/
+ $(RSTRIP) $(IDIR_GPSD)
+ $(IPKG_BUILD) $(IDIR_GPSD) $(PACKAGE_DIR)
+
+$(STAGING_DIR)/usr/lib/libgps.so: $(PKG_BUILD_DIR)/.built
+ mkdir -p $(STAGING_DIR)/usr/include
+ cp -fpR $(PKG_INSTALL_DIR)/usr/include/gps{,d}.h $(STAGING_DIR)/usr/include/
+ cp -fpR $(PKG_INSTALL_DIR)/usr/include/libgpsmm.h $(STAGING_DIR)/usr/include/
+ mkdir -p $(STAGING_DIR)/usr/lib
+ cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libgps.{a,so*} $(STAGING_DIR)/usr/lib/
+ touch $@
+
+install-dev: $(STAGING_DIR)/usr/lib/libgps.so
+
+uninstall-dev:
+ rm -rf \
+ $(STAGING_DIR)/usr/include/gps{,d}.h \
+ $(STAGING_DIR)/usr/include/libgpsmm.h \
+ $(STAGING_DIR)/usr/lib/libgps.{a,so*} \
+
+compile: install-dev
+clean: uninstall-dev
diff --git a/openwrt/package/gpsd/ipkg/gpsd.control b/openwrt/package/gpsd/ipkg/gpsd.control
new file mode 100644
index 0000000..f9664de
--- /dev/null
+++ b/openwrt/package/gpsd/ipkg/gpsd.control
@@ -0,0 +1,9 @@
+Package: gpsd
+Priority: optional
+Section: net
+Version: [TBDL]
+Architecture: [TBDL]
+Maintainer: OpenWrt Developers Team <openwrt-devel@openwrt.org>
+Source: buildroot internal
+Depends: libpthread, uclibc++
+Description: An interface daemon for GPS receivers.