pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

gpsd: Add 3.18 package (doesn't work yet)



Module Name:	pkgsrc-wip
Committed By:	Greg Troxel <gdt%lexort.com@localhost>
Pushed By:	gdt
Date:		Tue Apr 30 14:32:50 2019 -0400
Changeset:	d1651b8561077ea63330364c91783a3199fe7dc9

Modified Files:
	Makefile
Added Files:
	gpsd/DESCR
	gpsd/Makefile
	gpsd/PLIST
	gpsd/buildlink3.mk
	gpsd/distinfo
	gpsd/patches/patch-gpspipe.c
	gpsd/patches/patch-serial.c

Log Message:
gpsd: Add 3.18 package (doesn't work yet)

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=d1651b8561077ea63330364c91783a3199fe7dc9

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile                     |  1 +
 gpsd/DESCR                   | 10 ++++++
 gpsd/Makefile                | 74 ++++++++++++++++++++++++++++++++++++++++++++
 gpsd/PLIST                   | 53 +++++++++++++++++++++++++++++++
 gpsd/buildlink3.mk           | 15 +++++++++
 gpsd/distinfo                |  8 +++++
 gpsd/patches/patch-gpspipe.c | 22 +++++++++++++
 gpsd/patches/patch-serial.c  | 15 +++++++++
 8 files changed, 198 insertions(+)

diffs:
diff --git a/Makefile b/Makefile
index 55888b8091..3676fc06da 100644
--- a/Makefile
+++ b/Makefile
@@ -1192,6 +1192,7 @@ SUBDIR+=	googlecl
 SUBDIR+=	gopass
 SUBDIR+=	gopkgdep
 SUBDIR+=	gpak
+SUBDIR+=	gpsd
 SUBDIR+=	gplbasic
 SUBDIR+=	gpsbabel
 SUBDIR+=	gpsdrive
diff --git a/gpsd/DESCR b/gpsd/DESCR
new file mode 100644
index 0000000000..5df8eb1048
--- /dev/null
+++ b/gpsd/DESCR
@@ -0,0 +1,10 @@
+Gpsd is a user land daemon acting as a liason between a gps or
+Loran-C receiver and clients. The receiver is expected to generate
+position information as NMEA-0183 sentences, or Rockwell binary format,
+although that can be changed.
+
+Gpsd listens on port 2947 for clients requesting position, time,
+velocity or altitude information.
+
+Gpsd can take information from the gps and translate it into
+something easier to understand for clients.
diff --git a/gpsd/Makefile b/gpsd/Makefile
new file mode 100644
index 0000000000..49d3147230
--- /dev/null
+++ b/gpsd/Makefile
@@ -0,0 +1,74 @@
+# $NetBSD: Makefile,v 1.41 2019/04/26 14:12:39 maya Exp $
+
+DISTNAME=	gpsd-3.18
+CATEGORIES=	geography
+MASTER_SITES=	http://download-mirror.savannah.gnu.org/releases/gpsd/
+
+MAINTAINER=	gdt%NetBSD.org@localhost
+HOMEPAGE=	https://savannah.nongnu.org/projects/gpsd
+COMMENT=	GPS information daemon
+
+LICENSE=	modified-bsd
+
+PY_PATCHPLIST=	yes
+#PYTHON_VERSIONS_INCOMPATIBLE=	36 37 # not yet ported as of 2.96
+
+USE_TOOLS+=	pkg-config gmake
+USE_LIBTOOL=	yes
+USE_LANGUAGES=	c99 c++
+
+NO_CONFIGURE=	yes
+
+
+# gpsd looks for ncurses but not curses. (Not yet filed upstream.)
+FAKE_NCURSES=	yes
+
+# gpsd uses syncok
+USE_CURSES=	syncok
+
+# \todo Add a USE_TOOLS entry for scons.  SCONSBIN is open-coded
+# because using the bl3 depends on a python that is incompatible with
+# gpsd's python version, and we are using a tool, not buildlinking.
+#BUILD_DEPENDS+=		py*-scons-[0-9]*:../../devel/scons
+#SCONSBIN=		${PREFIX}/bin/scons
+
+# \todo In theory this is not necessary.
+BUILD_DEPENDS+=	xmlto-[0-9]*:../../textproc/xmlto
+
+CFLAGS.SunOS=	-DLOG_PERROR=0
+
+# \todo Resolve options
+# nmea2000 = False (default True): NMEA2000/CAN support
+# rtcm104v2 = False (default True): rtcm104v2 support
+# pps = False (default True): PPS time syncing support
+# dbus_export = False (default True): enable DBUS export support
+# libgpsmm = False (default True): build C++ bindings
+# qt?
+
+# \todo: Separate configure phase
+
+WRAPPER_DEBUG=	yes
+
+do-build:
+	cd ${WRKSRC} && \
+	${SETENV} ${MAKE_ENV} ${SCONSBIN} \
+	-j${MAKE_JOBS:U1}
+#	CC=${CC:Q} CXX=${CXX:Q} \
+
+do-install:
+	cd ${WRKSRC} && ./install.sh ${DESTDIR}${PREFIX}
+
+#INSTALLATION_DIRS=	sbin
+
+#TEST_TARGET=	check
+
+PYTHON_FOR_BUILD_ONLY?=	yes
+.include "../../devel/scons/buildlink3.mk"
+
+.include "../../devel/libusb1/buildlink3.mk"
+.include "../../devel/py-gobject/buildlink3.mk"
+.include "../../graphics/py-cairo/buildlink3.mk"
+.include "../../lang/python/extension.mk"
+.include "../../mk/curses.buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/gpsd/PLIST b/gpsd/PLIST
new file mode 100644
index 0000000000..c19e8b0351
--- /dev/null
+++ b/gpsd/PLIST
@@ -0,0 +1,53 @@
+@comment $NetBSD: PLIST,v 1.10 2011/03/23 16:08:34 gdt Exp $
+bin/cgps
+bin/gpscat
+bin/gpsctl
+bin/gpsdecode
+bin/gpsfake
+bin/gpsmon
+bin/gpspipe
+bin/gpsprof
+bin/gpxlogger
+bin/lcdgps
+bin/xgps
+bin/xgpsspeed
+include/gps.h
+include/gpsd.h
+include/libgpsmm.h
+lib/libgps.la
+lib/libgpsd.la
+lib/pkgconfig/libgps.pc
+lib/pkgconfig/libgpsd.pc
+${PYSITELIB}/gps/__init__.py
+${PYSITELIB}/gps/__init__.pyc
+${PYSITELIB}/gps/client.py
+${PYSITELIB}/gps/client.pyc
+${PYSITELIB}/gps/clienthelpers.so
+${PYSITELIB}/gps/fake.py
+${PYSITELIB}/gps/fake.pyc
+${PYSITELIB}/gps/gps.py
+${PYSITELIB}/gps/gps.pyc
+${PYSITELIB}/gps/misc.py
+${PYSITELIB}/gps/misc.pyc
+${PYSITELIB}/gps/packet.so
+${PYSITELIB}/gpscap.py
+${PYSITELIB}/gpscap.pyc
+${PYSITELIB}/gpscap.pyo
+man/man1/cgps.1
+man/man1/gps.1
+man/man1/gpscat.1
+man/man1/gpsctl.1
+man/man1/gpsdecode.1
+man/man1/gpsfake.1
+man/man1/gpsmon.1
+man/man1/gpspipe.1
+man/man1/gpsprof.1
+man/man1/lcdgps.1
+man/man1/xgps.1
+man/man1/xgpsspeed.1
+man/man3/libgps.3
+man/man3/libgpsd.3
+man/man3/libgpsmm.3
+man/man5/srec.5
+man/man8/gpsd.8
+sbin/gpsd
diff --git a/gpsd/buildlink3.mk b/gpsd/buildlink3.mk
new file mode 100644
index 0000000000..61b4dc50bb
--- /dev/null
+++ b/gpsd/buildlink3.mk
@@ -0,0 +1,15 @@
+# $NetBSD: buildlink3.mk,v 1.5 2012/05/07 01:53:31 dholland Exp $
+
+BUILDLINK_TREE+=	gpsd
+
+.if !defined(GPSD_BUILDLINK3_MK)
+GPSD_BUILDLINK3_MK:=
+
+# 2.90 is the beginning of withdrawing of interfaces.  Plus
+# it's an ABI.
+BUILDLINK_API_DEPENDS.gpsd+=	gpsd>=2.90
+BUILDLINK_ABI_DEPENDS.gpsd+=	gpsd>=2.96
+BUILDLINK_PKGSRCDIR.gpsd?=	../../geography/gpsd
+.endif # GPSD_BUILDLINK3_MK
+
+BUILDLINK_TREE+=	-gpsd
diff --git a/gpsd/distinfo b/gpsd/distinfo
new file mode 100644
index 0000000000..55023b1ed3
--- /dev/null
+++ b/gpsd/distinfo
@@ -0,0 +1,8 @@
+$NetBSD: distinfo,v 1.22 2015/11/03 00:08:42 agc Exp $
+
+SHA1 (gpsd-3.18.tar.gz) = 9785ca861dc2fc3373119b8067f3b420c564c4c4
+RMD160 (gpsd-3.18.tar.gz) = 8499ad1637bf6dbf6b7349d74b0dd6317771e87b
+SHA512 (gpsd-3.18.tar.gz) = c80f2ef6856faa0b38f3d258be9801982588916677401654902ef0b8ec9e62c8b3cb9421f41b4a1e2e27a15a3f3562cbf68ce7bf03a19746ab62f80172d85434
+Size (gpsd-3.18.tar.gz) = 9020649 bytes
+SHA1 (patch-gpspipe.c) = 43d9e99867175418874adaaf210a429819c3ea9a
+SHA1 (patch-serial.c) = b28f1d209ecf27fcd7a98dcacb201632f3667d56
diff --git a/gpsd/patches/patch-gpspipe.c b/gpsd/patches/patch-gpspipe.c
new file mode 100644
index 0000000000..06b6cc496a
--- /dev/null
+++ b/gpsd/patches/patch-gpspipe.c
@@ -0,0 +1,22 @@
+$NetBSD: patch-gpspipe.c,v 1.1 2013/12/10 12:22:52 jperkin Exp $
+
+cfmakeraw compatability for SunOS.
+
+--- gpspipe.c.orig	2018-09-22 23:24:39.000000000 +0000
++++ gpspipe.c
+@@ -97,7 +97,15 @@ static void open_serial(char *device)
+     memset(&newtio, 0, sizeof(newtio));
+ 
+     /* make it raw */
++#if defined(__sun)
++    newtio.c_iflag &= ~(IMAXBEL|IGNBRK|BRKINT|PARMRK|ISTRIP|INLCR|IGNCR|ICRNL|IXON);
++    newtio.c_oflag &= ~OPOST;
++    newtio.c_lflag &= ~(ECHO|ECHONL|ICANON|ISIG|IEXTEN);
++    newtio.c_cflag &= ~(CSIZE|PARENB);
++    newtio.c_cflag |= CS8;
++#else
+     (void)cfmakeraw(&newtio);
++#endif
+     /* set speed */
+     (void)cfsetospeed(&newtio, BAUDRATE);
+ 
diff --git a/gpsd/patches/patch-serial.c b/gpsd/patches/patch-serial.c
new file mode 100644
index 0000000000..b1c41fb029
--- /dev/null
+++ b/gpsd/patches/patch-serial.c
@@ -0,0 +1,15 @@
+$NetBSD: patch-serial.c,v 1.1 2013/12/10 12:22:52 jperkin Exp $
+
+Need cfmakeraw on SunOS.
+
+--- serial.c.orig	2018-09-22 23:24:39.000000000 +0000
++++ serial.c
+@@ -173,7 +173,7 @@ void gpsd_tty_init(struct gps_device_t *
+     session->reawake = (time_t)0;
+ }
+ 
+-#if defined(__CYGWIN__)
++#if defined(__CYGWIN__) || defined(__sun)
+ /* Workaround for Cygwin, which is missing cfmakeraw */
+ /* Pasted from man page; added in serial.c arbitrarily */
+ void cfmakeraw(struct termios *termios_p)


Home | Main Index | Thread Index | Old Index