diff --git a/openwrt/package/Config.in b/openwrt/package/Config.in index 70565604b..b5a8e49eb 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 3e157f9cb..7779c0556 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 000000000..6cf31d51a --- /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 000000000..56c562d34 --- /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 000000000..f9664de12 --- /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 +Source: buildroot internal +Depends: libpthread, uclibc++ +Description: An interface daemon for GPS receivers.