1
0
mirror of https://git.openwrt.org/feed/packages.git synced 2024-06-14 03:13:54 +02:00
openwrt-packages/utils/gpsd/Makefile
Jeffery To a29905c42b gpsd: Update to 3.20, add/refresh patches
New patches (both for SConstruct):

* Do not import from distutils. Since Python support/modules are not
  built, there is no need to import from distutils. (Importing from
  distutils may prevent the package from being built on systems without
  a full distutils module, e.g. Debian with python3-minimal.)

  I have added back the import in places where it may be helpful to
  have, if scons is run manually.

  Fixes #10993.

* Do not check the size of time_t. The way this is done is to compile
  and run a test program; this fails when cross-compiling[1].

  This doesn't appear to affect any functionality (other than missing a
  compile-time warning that things will fail in 2038 if time_t is too
  small).

[1]: https://gitlab.com/gpsd/gpsd/issues/48

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-01-17 04:42:46 +08:00

147 lines
3.8 KiB
Makefile

#
# Copyright (C) 2006-2015 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:=gpsd
PKG_VERSION:=3.20
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@SAVANNAH/$(PKG_NAME)
PKG_HASH:=3998a5cbb728e97f896f46c3c83301b1e6c5d859393e58c2fad8c5426774d571
PKG_MAINTAINER:=Pushpal Sidhu <psidhu.devel@gmail.com>
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=COPYING
PKG_CPE_ID:=cpe:/a:berlios:gps_daemon
PKG_BUILD_DEPENDS:=scons/host
include $(INCLUDE_DIR)/package.mk
include ../../devel/scons/scons.mk
define Package/gpsd/Default
DEPENDS+= +libusb-1.0
URL:=https://gpsd.gitlab.io/gpsd/
endef
define Package/gpsd/Default/description
gpsd is a userland daemon acting as a translator between GPS and AIS receivers
and their clients. gpsd listens on port 2947 for clients requesting
position/time/velocity information. The receivers are expected to generate
position information in a well-known format -- as NMEA-0183 sentences, SiRF
binary, Rockwell binary, Garmin binary format, or other vendor binary
protocols. gpsd takes this information from the GPS and translates it into
something uniform and easier to understand for clients.
endef
define Package/gpsd
$(call Package/gpsd/Default)
SECTION:=utils
CATEGORY:=Utilities
TITLE:=An interface daemon for GPS receivers
endef
define Package/gpsd/conffiles
/etc/config/gpsd
endef
define Package/gpsd/description
$(call Package/gpsd/Default/description)
This package contains the GPS daemon.
endef
define Package/gpsd-clients
$(call Package/gpsd/Default)
SECTION:=utils
CATEGORY:=Utilities
DEPENDS+= +libncurses
TITLE:=GPS tools and clients
endef
define Package/gpsd-clients/description
$(call Package/gpsd/Default/description)
This package contains auxiliary tools and example clients for monitoring and
testing the GPS daemon.
endef
define Package/libgps
$(call Package/gpsd/Default)
SECTION:=libs
CATEGORY:=Libraries
TITLE:=C service library for communicating with the GPS daemon
endef
define Package/libgps/description
$(call Package/gpsd/Default/description)
This package contains the libgps library.
endef
SCONS_VARS += \
LINKFLAGS="$(TARGET_LDFLAGS)"
SCONS_OPTIONS += \
dbus_export=no \
tsip=no \
fv18=no \
tripmate=no \
earthmate=no \
itrax=no \
navcom=no \
ubx=no \
evermore=no \
ntrip=no \
libgpsmm=no \
libQgpsmm=no \
bluez=no \
nostrip=yes \
python=no \
implicit_link=no \
chrpath=no \
manbuild=no \
target="$(TARGET_CROSS:-=)"
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*.so* $(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libgps.pc $(1)/usr/lib/pkgconfig
$(SED) 's,/usr/include,$$$${prefix}/include,g' $(1)/usr/lib/pkgconfig/libgps.pc
$(SED) 's,/usr/lib,$$$${exec_prefix}/lib,g' $(1)/usr/lib/pkgconfig/libgps.pc
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)/usr/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/gpsd $(1)/usr/sbin/
endef
define Package/gpsd-clients/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) \
$(PKG_INSTALL_DIR)/usr/bin/cgps \
$(PKG_INSTALL_DIR)/usr/bin/gps{ctl,decode,mon,pipe} \
$(PKG_INSTALL_DIR)/usr/bin/gpxlogger \
$(PKG_INSTALL_DIR)/usr/bin/lcdgps \
$(1)/usr/bin/
endef
define Package/libgps/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libgps.so.* $(1)/usr/lib/
endef
$(eval $(call BuildPackage,gpsd))
$(eval $(call BuildPackage,gpsd-clients))
$(eval $(call BuildPackage,libgps))