update to gpsd-3.23, while there fix bad paths in gpsd_config.h (they

included the port WRKDIR) and add an rc script for the daemon.

notably includes a fix for a GPS rollover bug that will be triggered
after 2021-10-23 affecting gpsd 3.20 and above, in code that was doing
sanity checks against leap second numbers; choice comment from the
discussion at https://gitlab.com/gpsd/gpsd/-/issues/144 :-

  "Until last year, leap seconds had been very predicable. The effect of
  global warming on earth rotational speeds was only very recently seen,
  or even predicted. But, yes, going forward, that needs to change."
This commit is contained in:
sthen 2021-08-07 12:41:15 +00:00
parent 166cb1ceb5
commit a77da07fa3
5 changed files with 32 additions and 29 deletions

View File

@ -1,16 +1,16 @@
# $OpenBSD: Makefile,v 1.83 2021/06/30 12:23:50 kirby Exp $
# $OpenBSD: Makefile,v 1.84 2021/08/07 12:41:15 sthen Exp $
COMMENT-main= service daemon that monitors one or more GPSes
COMMENT-x11= GUI test apps using gpsd
COMMENT-php= web-based gpsd monitor in php
VERSION= 3.22
VERSION= 3.23
DISTNAME= gpsd-${VERSION}
PKGNAME-main= gpsd-${VERSION}
PKGNAME-x11= gpsd-x11-${VERSION}
PKGNAME-php= gpsd-php-${VERSION}
SHARED_LIBS += gps 21.0 # 27.0
SHARED_LIBS += gps 22.0 # 29.0
SHARED_LIBS += gpsdpacket 0.0 # 21.0
CATEGORIES= misc geo
@ -23,6 +23,7 @@ MASTER_SITES = ${MASTER_SITE_SAVANNAH:=gpsd/}
# C++11
COMPILER = base-clang ports-gcc
WANTLIB-main += c dbus-1 m curses pthread usb-1.0 ${COMPILER_LIBCXX}
WANTLIB-php =
@ -42,10 +43,7 @@ MULTI_PACKAGES = -main -php -x11
BUILD_DEPENDS= devel/py-gobject3${MODPY_FLAVOR} \
devel/py-serial${MODPY_FLAVOR} \
textproc/xmlto \
textproc/libxslt \
textproc/docbook \
textproc/docbook-xsl
textproc/asciidoctor
TEST_DEPENDS= ${FULLPKGNAME-main}:${FULLPKGPATH-main} \
x11/dbus
@ -69,10 +67,7 @@ PREFIX-php= ${VARBASE}/www
SUBST_VARS += VERSION
pre-configure:
@perl -pi -e "s,/usr/share/gpsd/,," ${WRKSRC}/packaging/X11/*.desktop
@perl -pi -e "s,http://docbook.sourceforge.net/release/xsl/current/,\
${LOCALBASE}/share/xsl/docbook/," \
${WRKSRC}/SConstruct
@sed -i 's,/usr/local,${TRUEPREFIX},' ${WRKSRC}/packaging/X11/*.desktop
${SUBST_CMD} ${WRKSRC}/SConscript
post-install:
@ -85,6 +80,7 @@ post-install:
${PREFIX}/share/applications/
${INSTALL_DATA} ${WRKSRC}/packaging/X11/gpsd-logo.png \
${PREFIX}/share/pixmaps/
sed -i 's,${WRKINST},,' ${PREFIX}/include/gpsd_config.h
@find ${DESTDIR}/${MODPY_SITEPKG}/gps -name "*.py" -exec \
${MODPY_BIN} ${MODPY_LIBDIR}/py_compile.py {} \;

View File

@ -1,2 +1,2 @@
SHA256 (gpsd-3.22.tar.gz) = eD/fKl94pZMjDHv6i0CZVlRXZVYyJMbFatacxsKmN6M=
SIZE (gpsd-3.22.tar.gz) = 4758761
SHA256 (gpsd-3.23.tar.gz) = UiwjYqfrLXrDfqoVBPEq3tHDc0eah7oGzGeVl0tWe7w=
SIZE (gpsd-3.23.tar.gz) = 4893363

View File

@ -1,10 +1,10 @@
$OpenBSD: patch-SConscript,v 1.1 2021/06/30 12:23:50 kirby Exp $
$OpenBSD: patch-SConscript,v 1.2 2021/08/07 12:41:15 sthen Exp $
Index: SConscript
--- SConscript.orig
+++ SConscript
@@ -272,8 +272,7 @@ api_version_minor = 14
libgps_version_current = 28
@@ -209,8 +209,7 @@ api_version_minor = 14
libgps_version_current = 29
libgps_version_revision = 0
libgps_version_age = 0
-libgps_version = "%d.%d.%d" % (libgps_version_current, libgps_version_age,
@ -13,16 +13,7 @@ Index: SConscript
#
# Release identification ends here
@@ -805,7 +804,7 @@ def CheckPKG(context, name):
# Stylesheet URLs for making HTML and man pages from DocBook XML.
-docbook_url_stem = 'http://docbook.sourceforge.net/release/xsl/current/'
+docbook_url_stem = '${LOCALBASE}/share/xsl/docbook/'
docbook_man_uri = docbook_url_stem + 'manpages/docbook.xsl'
docbook_html_uri = docbook_url_stem + 'html/docbook.xsl'
@@ -1440,6 +1439,10 @@ if not cleaning and not helping:
@@ -1343,6 +1342,10 @@ if not cleaning and not helping:
# if not, force qt to off
if config.env["qt"]:
qt_net_name = 'Qt%sNetwork' % config.env["qt_versioned"]
@ -33,7 +24,7 @@ Index: SConscript
qt_network = config.CheckPKG(qt_net_name)
if not qt_network:
config.env["qt"] = False
@@ -1609,20 +1612,6 @@ if not cleaning and not helping and config.env['python
@@ -1508,20 +1511,6 @@ if not cleaning and not helping and config.env['python
config.env['xgps_deps'] = True
@ -54,7 +45,7 @@ Index: SConscript
# gtk+ needed by pygobject
if not config.CheckPKG('gtk+-3.0'):
config.env['xgps_deps'] = False
@@ -1847,7 +1836,7 @@ libgpsd_static = env.StaticLibrary(
@@ -1748,7 +1737,7 @@ libgpsd_static = env.StaticLibrary(
packet_ffi_objects = [env.SharedObject(s) for s in packet_ffi_extension]
packet_ffi_shared = env.SharedLibrary(target="gpsdpacket",
source=packet_ffi_objects,

View File

@ -1,13 +1,15 @@
@comment $OpenBSD: PLIST-main,v 1.14 2021/06/30 12:23:50 kirby Exp $
@comment $OpenBSD: PLIST-main,v 1.15 2021/08/07 12:41:15 sthen Exp $
@conflict gpsd-python-<=2.38p3
@pkgpath misc/gpsd,-python
@newuser _gpsd:551:dialer:daemon:GPS server:/nonexistent:/sbin/nologin
@rcscript ${RCDIR}/gpsd
@bin bin/cgps
bin/gegps
@bin bin/gps2udp
bin/gpscat
bin/gpscsv
@bin bin/gpsctl
bin/gpsdebuginfo
@bin bin/gpsdecode
bin/gpsfake
@bin bin/gpsmon
@ -15,6 +17,7 @@ bin/gpsfake
bin/gpsplot
bin/gpsprof
@bin bin/gpsrinex
@bin bin/gpssnmp
bin/gpssubframe
@bin bin/gpxlogger
@bin bin/lcdgps
@ -67,6 +70,7 @@ lib/python${MODPY_VERSION}/site-packages/gps/watch_options.py
@man man/man1/gpscat.1
@man man/man1/gpscsv.1
@man man/man1/gpsctl.1
@man man/man1/gpsdebuginfo.1
@man man/man1/gpsdecode.1
@man man/man1/gpsfake.1
@man man/man1/gpsmon.1
@ -74,6 +78,7 @@ lib/python${MODPY_VERSION}/site-packages/gps/watch_options.py
@man man/man1/gpsplot.1
@man man/man1/gpsprof.1
@man man/man1/gpsrinex.1
@man man/man1/gpssnmp.1
@man man/man1/gpssubframe.1
@man man/man1/gpxlogger.1
@man man/man1/lcdgps.1
@ -97,5 +102,7 @@ share/gpsd/doc/AUTHORS
share/gpsd/doc/COPYING
share/gpsd/doc/NEWS
share/gpsd/doc/README.adoc
share/gpsd/doc/SUPPORT.adoc
share/gpsd/doc/build.adoc
share/gpsd/doc/example1.c.txt
@comment share/gpsd/icons/

9
misc/gpsd/pkg/gpsd.rc Normal file
View File

@ -0,0 +1,9 @@
#!/bin/ksh
#
# $OpenBSD: gpsd.rc,v 1.1 2021/08/07 12:41:15 sthen Exp $
daemon="${TRUEPREFIX}/sbin/gpsd"
. /etc/rc.d/rc.subr
rc_cmd $1