diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /sci-geosciences/gpsd/files | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'sci-geosciences/gpsd/files')
40 files changed, 1597 insertions, 0 deletions
diff --git a/sci-geosciences/gpsd/files/2.95-disable-strip.patch b/sci-geosciences/gpsd/files/2.95-disable-strip.patch new file mode 100644 index 000000000000..734853968b71 --- /dev/null +++ b/sci-geosciences/gpsd/files/2.95-disable-strip.patch @@ -0,0 +1,10 @@ +--- gpsd-2.95/Makefile.am 2010-07-12 02:40:22.000000000 +0200 ++++ gpsd-2.95.new/Makefile.am 2010-10-03 18:04:10.000000000 +0200 +@@ -340,6 +340,7 @@ + "QMAKE_CC=$(CC)" \ + "QMAKE_CFLAGS+=$(CFLAGS)" \ + "QMAKE_LFLAGS+=$(LDFLAGS)" \ ++ "QMAKE_STRIP=" \ + "VERSION=$(libgps_VERSION)" \ + "TARGET_LIBDIR=${libdir}" \ + "TARGET_INCLUDEDIR=${includedir}" diff --git a/sci-geosciences/gpsd/files/2.95-fix-ldflags.patch b/sci-geosciences/gpsd/files/2.95-fix-ldflags.patch new file mode 100644 index 000000000000..bcb8bdb3a1e8 --- /dev/null +++ b/sci-geosciences/gpsd/files/2.95-fix-ldflags.patch @@ -0,0 +1,12 @@ +diff -urN gpsd-2.95//Makefile.am gpsd-2.95.new//Makefile.am +--- gpsd-2.95//Makefile.am 2010-07-12 02:40:22.000000000 +0200 ++++ gpsd-2.95.new//Makefile.am 2010-10-03 18:12:23.000000000 +0200 +@@ -137,7 +137,7 @@ + libgps_VERSION__REVISION = 0 + libgps_VERSION_AGE = 0 + libgps_VERSION_NUMBER = $(libgps_VERSION_AGE):$(libgps_VERSION__REVISION):$(libgps_VERSION_AGE) +-libgps_la_LDFLAGS = -version-number $(libgps_VERSION_CURRENT):$(libgps_VERSION__REVISION):$(libgps_VERSION_AGE) ++libgps_la_LDFLAGS = ${LDFLAGS} -version-number $(libgps_VERSION_CURRENT):$(libgps_VERSION__REVISION):$(libgps_VERSION_AGE) + lib_LTLIBRARIES = libgps.la libgpsd.la + + libgps_SONAME = $(shell expr $(libgps_VERSION_CURRENT) - $(libgps_VERSION_AGE)) diff --git a/sci-geosciences/gpsd/files/2.96-fix-ldflags.patch b/sci-geosciences/gpsd/files/2.96-fix-ldflags.patch new file mode 100644 index 000000000000..f643a359df8f --- /dev/null +++ b/sci-geosciences/gpsd/files/2.96-fix-ldflags.patch @@ -0,0 +1,21 @@ +diff -urN gpsd-2.96.old/Makefile.am gpsd-2.96/Makefile.am +--- gpsd-2.96.old/Makefile.am 2011-05-16 11:41:11.763256750 +0200 ++++ gpsd-2.96/Makefile.am 2011-05-16 11:44:02.742119221 +0200 +@@ -130,7 +130,7 @@ + libgps_VERSION_REVISION = 0 + libgps_VERSION_AGE = 0 + libgps_VERSION_NUMBER = $(libgps_VERSION_CURRENT):$(libgps_VERSION_REVISION):$(libgps_VERSION_AGE) +-libgps_la_LDFLAGS = -version-number $(libgps_VERSION_NUMBER) ++libgps_la_LDFLAGS = $(LDFLAGS) -version-number $(libgps_VERSION_NUMBER) + lib_LTLIBRARIES = libgps.la libgpsd.la + + libgps_SONAME = $(shell expr $(libgps_VERSION_CURRENT) - $(libgps_VERSION_AGE)) +@@ -425,7 +425,7 @@ + # Build test_qgpsmm + # + test_qgpsmm_SOURCES = test_gpsmm.cpp +-test_qgpsmm_LDFLAGS = -Wl,-rpath,$(srcdir)/libQgpsmm/binaries ++test_qgpsmm_LDFLAGS = $(LDFLAGS) -Wl,-rpath,$(srcdir)/libQgpsmm/binaries + test_qgpsmm_LDADD = $(LIBC) $(LIBUSB) $(QtNetwork_LIBS) libgps.la -LlibQgpsmm/binaries -lQgpsmm + test_qgpsmm_DEPENDENCIES = libQgpsmm/binaries/libQgpsmm.so + endif diff --git a/sci-geosciences/gpsd/files/2.96-fix-tests.patch b/sci-geosciences/gpsd/files/2.96-fix-tests.patch new file mode 100644 index 000000000000..38aec0024b0c --- /dev/null +++ b/sci-geosciences/gpsd/files/2.96-fix-tests.patch @@ -0,0 +1,23 @@ +diff -urN gpsd-2.96.old//Makefile.am gpsd-2.96//Makefile.am +--- gpsd-2.96.old//Makefile.am 2011-05-16 11:41:11.763256750 +0200 ++++ gpsd-2.96//Makefile.am 2011-05-16 12:37:34.095971771 +0200 +@@ -615,8 +615,8 @@ + pkgconfigdir = $(libdir)/pkgconfig + + # These are not distributed +-libgps: libgps_core.c gps.h .libs/libgps.a +- $(CC) $(CFLAGS) -o libgps $(LIBM) -DTESTMAIN $(LIBPTHREAD) -g libgps_core.c .libs/libgps.a ++libgps: libgps_core.c gps.h .libs/libgps.so ++ $(CC) $(CFLAGS) $(LDFLAGS) -o libgps $(LIBM) -DTESTMAIN $(LIBPTHREAD) -g libgps_core.c .libs/libgps.so + + + # Report splint warnings +@@ -720,7 +720,7 @@ + + # Use make REGRESSOPTS=-u to force running with UDP rather than pty devices + +-run_regress_driver = PYTHON=$(PYTHON) $(srcdir)/regress-driver $(REGRESSOPTS) ++run_regress_driver = PYTHON=$(PYTHON) LD_LIBRARY_PATH="./.libs/" $(srcdir)/regress-driver $(REGRESSOPTS) + + # Regression-test the daemon + gps-regress: gpsd stamp-python diff --git a/sci-geosciences/gpsd/files/2.96-pkgconfig.patch b/sci-geosciences/gpsd/files/2.96-pkgconfig.patch new file mode 100644 index 000000000000..b829c4730111 --- /dev/null +++ b/sci-geosciences/gpsd/files/2.96-pkgconfig.patch @@ -0,0 +1,37 @@ +Index: gpsd-2.96/configure.ac +=================================================================== +--- gpsd-2.96.orig/configure.ac ++++ gpsd-2.96/configure.ac +@@ -687,12 +687,7 @@ AC_MSG_CHECKING([for BlueZ support]) + if test x"$ac_bluetooth" = x"yes"; then + AC_MSG_RESULT([yes]) + AC_DEFINE(HAVE_BLUEZ,1,[Define if we have Bluez]) +- # Older versions of autotools barf and die on this. +- #PKG_CHECK_MODULES(BLUEZ, bluez ) +- BLUEZ_CFLAGS=`pkg-config --cflags bluez` +- BLUEZ_LIBS=`pkg-config --libs bluez` +- AC_SUBST(BLUEZ_CFLAGS) +- AC_SUBST(BLUEZ_LIBS) ++ PKG_CHECK_MODULES(BLUEZ, bluez ) + else + AC_MSG_RESULT([no]) + fi +@@ -709,16 +704,8 @@ AC_MSG_CHECKING([for DBUS support]) + if test x"$ac_dbus" = "xyes"; then + AC_MSG_RESULT([yes]) + AC_DEFINE([DBUS_ENABLE], 1, [DBUS support]) +- # Older versions of autotools barf and die on this. +- #PKG_CHECK_MODULES(DBUS, dbus-1 >= 0.23.4 ) +- DBUS_CFLAGS=`pkg-config --cflags dbus-glib-1` +- DBUS_LIBS=`pkg-config --libs dbus-1` +- AC_SUBST(DBUS_CFLAGS) +- AC_SUBST(DBUS_LIBS) +- #PKG_CHECK_MODULES(DBUS_GLIB, dbus-glib-1 >= 0.22 ) +- DBUS_GLIB_LIBS=`pkg-config --libs dbus-glib-1` +- AC_SUBST(DBUS_GLIB_CFLAGS) +- AC_SUBST(DBUS_GLIB_LIBS) ++ PKG_CHECK_MODULES(DBUS, dbus-1 >= 0.23.4 ) ++ PKG_CHECK_MODULES(DBUS_GLIB, dbus-glib-1 >= 0.22 ) + else + AC_MSG_RESULT([no]) + fi diff --git a/sci-geosciences/gpsd/files/gpsd-3.10-dbus.patch b/sci-geosciences/gpsd/files/gpsd-3.10-dbus.patch new file mode 100644 index 000000000000..3ea68386e2f1 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.10-dbus.patch @@ -0,0 +1,32 @@ +From efaf7972ca95ff52464dedfe30bafa45095d299e Mon Sep 17 00:00:00 2001 +From: Bernd Zeimetz <bernd@bzed.de> +Date: Sat, 23 Nov 2013 02:56:22 +0100 +Subject: [PATCH] Make it build abain with dbus enabled. + +This reverts a bad change to SConstruct in 57e9bdea. + +It still leaves the issue that scons links all file sstaically now. +--- + SConstruct | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/SConstruct b/SConstruct +index 290910b..51b07e1 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -968,7 +968,11 @@ gpsdlibs = ["-lgpsd"] + usblibs + bluezlibs + gpslibs + # linking + # The final executable will build but not be portable. + +-env.StaticLibrary(target = 'libgps.a', source = libgps_sources) ++env.StaticLibrary(target='libgps.a', ++ source=libgps_sources, ++ parse_flags=dbus_libs + rtlibs) ++ ++ + + # Source groups + +-- +1.8.4.3 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.10-nmea-disabled.patch b/sci-geosciences/gpsd/files/gpsd-3.10-nmea-disabled.patch new file mode 100644 index 000000000000..e87eff8a5644 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.10-nmea-disabled.patch @@ -0,0 +1,54 @@ +https://bugs.gentoo.org/493022 + +From c31095e1562494a74d56b46fcc01541d1444cd5c Mon Sep 17 00:00:00 2001 +From: Simon Dawson <spdawson@gmail.com> +Date: Sun, 8 Dec 2013 10:31:25 +0000 +Subject: [PATCH] gpsmon: fix build when nmea is false + +When nmea is False and ncurses support is enabled, the build fails as +follows. + +gpsmon.o: In function `gpsmon_hook': +gpsmon.c:(.text+0x974): undefined reference to `driver_nmea0183' +collect2: error: ld returned 1 exit status +scons: *** [gpsmon] Error 1 +scons: building terminated because of errors. + +The problem appears to be a failure to protect use of the driver_nmea0183 +variable with appropriate #ifdef guards. + +Signed-off-by: Simon Dawson <spdawson@gmail.com> +Signed-off-by: Eric S. Raymond <esr@thyrsus.com> +--- + gpsmon.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/gpsmon.c b/gpsmon.c +index de1f14b..b030979 100644 +--- a/gpsmon.c ++++ b/gpsmon.c +@@ -36,7 +36,9 @@ extern struct monitor_object_t garmin_mmt, garmin_bin_ser_mmt; + extern struct monitor_object_t italk_mmt, ubx_mmt, superstar2_mmt; + extern struct monitor_object_t fv18_mmt, gpsclock_mmt, mtk3301_mmt; + extern struct monitor_object_t oncore_mmt, tnt_mmt, aivdm_mmt; ++#ifdef NMEA_ENABLE + extern const struct gps_type_t driver_nmea0183; ++#endif /* NMEA_ENABLE */ + + /* These are public */ + struct gps_device_t session; +@@ -477,9 +479,11 @@ static void select_packet_monitor(struct gps_device_t *device) + */ + if (device->packet.type != last_type) { + const struct gps_type_t *active_type = device->device_type; ++#ifdef NMEA_ENABLE + if (device->packet.type == NMEA_PACKET + && ((device->device_type->flags & DRIVER_STICKY) != 0)) + active_type = &driver_nmea0183; ++#endif /* NMEA_ENABLE */ + if (!switch_type(active_type)) + longjmp(terminate, TERM_DRIVER_SWITCH); + else { +-- +2.1.2 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.10-rpath.patch b/sci-geosciences/gpsd/files/gpsd-3.10-rpath.patch new file mode 100644 index 000000000000..8d4a309f0957 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.10-rpath.patch @@ -0,0 +1,13 @@ +don't set the -rpath flag to the install dir as this breaks DESTDIR + +--- a/SConstruct ++++ b/SConstruct +@@ -287,7 +287,7 @@ def installdir(dir, add_destdir=True): + # Honor the specified installation prefix in link paths. + if env["sysroot"]: + env.Prepend(LIBPATH=[env["sysroot"] + installdir('libdir', add_destdir=False)]) +-if env["shared"]: ++if env["shared"] and env["chrpath"]: + env.Prepend(RPATH=[installdir('libdir')]) + + # Give deheader a way to set compiler flags diff --git a/sci-geosciences/gpsd/files/gpsd-3.10-udev-install.patch b/sci-geosciences/gpsd/files/gpsd-3.10-udev-install.patch new file mode 100644 index 000000000000..5d81466b9709 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.10-udev-install.patch @@ -0,0 +1,40 @@ +From 6821edb2d40956e5f93a80420ae1dbf825b95281 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Mon, 11 Mar 2013 13:26:57 -0400 +Subject: [PATCH] fix DESTDIR handling with udev rules install again + +Commit 102e29d16c3fd9b414eeac53c794302f902ae8da reverted the DESTDIR +logic when upgrading the udev path handling. + +I fixed that with commit a41cd69c87e312198834a2e6232134176c9352e5. + +It's been reverted yet again in an unrelated commit +57e9bdeae2f00664616ee1d9a936a5cfe27bfd30. Why do people keep doing this? + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + SConstruct | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/SConstruct b/SConstruct +index 51b07e1..caed21e 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -1790,10 +1790,10 @@ if env['python']: + # is plugged in. + + Utility('udev-install', 'install', [ +- 'mkdir -p ' + env['udevdir'], +- 'cp $SRCDIR/gpsd.rules ' + env['udevdir'] + '/rules.d/25-gpsd.rules', +- 'cp $SRCDIR/gpsd.hotplug ' + env['udevdir'], +- 'chmod a+x ' + env['udevdir'] + '/gpsd.hotplug', ++ 'mkdir -p ' + DESTDIR + env['udevdir'] + '/rules.d', ++ 'cp $SRCDIR/gpsd.rules ' + DESTDIR + env['udevdir'] + '/rules.d/25-gpsd.rules', ++ 'cp $SRCDIR/gpsd.hotplug ' + DESTDIR + env['udevdir'], ++ 'chmod a+x ' + DESTDIR + env['udevdir'] + '/gpsd.hotplug', + ]) + + Utility('udev-uninstall', '', [ +-- +1.8.4.3 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.11-hotplug-config.patch b/sci-geosciences/gpsd/files/gpsd-3.11-hotplug-config.patch new file mode 100644 index 000000000000..a2b96f4d01af --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.11-hotplug-config.patch @@ -0,0 +1,27 @@ +https://bugs.gentoo.org/511584 + +From 2c0c2d90cbe450d208b320359b55089a441ff52a Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Thu, 30 Oct 2014 17:17:41 -0400 +Subject: [PATCH] udev rules: source Gentoo config files + +--- + gpsd.hotplug | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/gpsd.hotplug b/gpsd.hotplug +index dd0deaf..5f4ce13 100644 +--- a/gpsd.hotplug ++++ b/gpsd.hotplug +@@ -24,6 +24,8 @@ export PATH + + if [ -r /etc/default/gpsd ]; then + . /etc/default/gpsd ++elif [ -r /etc/conf.d/gpsd ]; then ++ . /etc/conf.d/gpsd + elif [ -r /etc/sysconfig/gpsd ]; then + . /etc/sysconfig/gpsd + GPSD_OPTIONS=$OPTIONS +-- +2.1.2 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.11-no-ntpshm.patch b/sci-geosciences/gpsd/files/gpsd-3.11-no-ntpshm.patch new file mode 100644 index 000000000000..c53eeca907b0 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.11-no-ntpshm.patch @@ -0,0 +1,97 @@ +From 80cd103396fcd1185a476761bfb267ce12f64b32 Mon Sep 17 00:00:00 2001 +From: Simon Dawson <spdawson@gmail.com> +Date: Mon, 25 Aug 2014 10:31:18 +0100 +Subject: [PATCH] Fix build error when ntpshm is false + +The build fails as follows + +libgpsd_core.c: In function 'ntpshm_latch': +libgpsd_core.c:1660:24: error: 'const struct gps_type_t' has no member named 'time_offset' + || device->device_type->time_offset == NULL) + ^ +libgpsd_core.c:1663:33: error: 'const struct gps_type_t' has no member named 'time_offset' + fix_time += device->device_type->time_offset(device); + ^ +scons: *** [libgpsd_core.os] Error 1 + +The solution is to wrap #ifdef NTPSHM_ENABLE around the ntpshm_latch function + +Signed-off-by: Simon Dawson <spdawson@gmail.com> +--- + libgpsd_core.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/libgpsd_core.c b/libgpsd_core.c +index 6ec08a4..f7e8075 100644 +--- a/libgpsd_core.c ++++ b/libgpsd_core.c +@@ -1638,6 +1638,7 @@ void gpsd_zero_satellites( /*@out@*/ struct gps_data_t *out) + #endif + } + ++#ifdef NTPSHM_ENABLE + void ntpshm_latch(struct gps_device_t *device, struct timedrift_t /*@out@*/*td) + /* latch the fact that we've saved a fix */ + { +@@ -1668,5 +1669,6 @@ void ntpshm_latch(struct gps_device_t *device, struct timedrift_t /*@out@*/*td) + device->last_fixtime.clock = td->clock.tv_sec + td->clock.tv_nsec / 1e9; + #endif /* S_SPLINT_S */ + } ++#endif /* NTPSHM_ENABLE */ + + /* end */ +-- +2.1.2 + +From 48caee55069bdb7f7115e1930ace3914f4ddfe3b Mon Sep 17 00:00:00 2001 +From: Simon Dawson <spdawson@gmail.com> +Date: Wed, 3 Sep 2014 18:43:31 +0100 +Subject: [PATCH] Complete wrapping of ntpshm_latch function in #ifdef + NTPSHM_ENABLE + +Currently, the build fails as follows + +gpsmon.o: In function `gpsmon_hook': +gpsmon.c:(.text+0x8b0): undefined reference to `ntpshm_latch' +collect2: error: ld returned 1 exit status +scons: *** [gpsmon] Error 1 + +Addresses Sacannah bug #43129: ntpshm patch is incomplete. + +Signed-off-by: Simon Dawson <spdawson@gmail.com> +--- + gpsd.h-tail | 2 ++ + gpsmon.c | 2 ++ + 2 files changed, 4 insertions(+) + +diff --git a/gpsd.h-tail b/gpsd.h-tail +index 7b62ce1..7b44f91 100644 +--- a/gpsd.h-tail ++++ b/gpsd.h-tail +@@ -857,7 +857,9 @@ extern unsigned int ais_binary_encode(struct ais_t *ais, /*@out@*/unsigned char + extern void ntpshm_context_init(struct gps_context_t *); + extern void ntpshm_session_init(struct gps_device_t *); + extern int ntpshm_put(struct gps_device_t *, int, struct timedrift_t *); ++#ifdef NTPSHM_ENABLE + extern void ntpshm_latch(struct gps_device_t *device, /*@out@*/struct timedrift_t *td); ++#endif /* NTPSHM_ENABLE */ + extern void ntpshm_link_deactivate(struct gps_device_t *); + extern void ntpshm_link_activate(struct gps_device_t *); + +diff --git a/gpsmon.c b/gpsmon.c +index c812063..909f271 100644 +--- a/gpsmon.c ++++ b/gpsmon.c +@@ -734,8 +734,10 @@ static void gpsmon_hook(struct gps_device_t *device, gps_mask_t changed UNUSED) + + report_unlock(); + ++#ifdef NTPSHM_ENABLE + /* Update the last fix time seen for PPS. FIXME: do this here? */ + ntpshm_latch(device, &td); ++#endif /* NTPSHM_ENABLE */ + } + /*@+observertrans +nullpass +globstate +compdef +uniondef@*/ + +-- +2.1.2 diff --git a/sci-geosciences/gpsd/files/gpsd-3.11-rpath.patch b/sci-geosciences/gpsd/files/gpsd-3.11-rpath.patch new file mode 100644 index 000000000000..7615b8b5d73f --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.11-rpath.patch @@ -0,0 +1,12 @@ +don't set the -rpath flag to the install dir as this breaks DESTDIR + +--- a/SConstruct ++++ b/SConstruct +@@ -287,7 +287,7 @@ + + # Don't hack RPATH unless libdir points somewhere that is not on the + # minimum default load path. +-if env["shared"]: ++if env["shared"] and env["chrpath"]: + if env["libdir"] not in ["/usr/lib", "/lib"]: + env.Prepend(RPATH=[installdir('libdir')]) diff --git a/sci-geosciences/gpsd/files/gpsd-3.13-ntpshm.patch b/sci-geosciences/gpsd/files/gpsd-3.13-ntpshm.patch new file mode 100644 index 000000000000..c931ad1aa21f --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.13-ntpshm.patch @@ -0,0 +1,25 @@ +From 861d148321aafa3f7dadb1da4f507da83ba2f846 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Thu, 26 Feb 2015 17:39:23 -0500 +Subject: [PATCH] ntpshm: fix status type + +--- + ntpshm.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/ntpshm.h b/ntpshm.h +index c8cd3b6..45648a8 100644 +--- a/ntpshm.h ++++ b/ntpshm.h +@@ -60,7 +60,7 @@ enum segstat_t { + OK, NO_SEGMENT, NOT_READY, BAD_MODE, CLASH}; + + struct shm_stat_t { +- int status; ++ enum segstat_t status; + struct timespec tvc, tvr, tvt; + int precision; + int leap; +-- +2.3.0 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.15-broken-install.patch b/sci-geosciences/gpsd/files/gpsd-3.15-broken-install.patch new file mode 100644 index 000000000000..ec68a3c21a9c --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.15-broken-install.patch @@ -0,0 +1,28 @@ +From 798629da485b9504dbb5bd5c96c9ea1d3454ebe3 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Sun, 7 Jun 2015 13:39:55 -0400 +Subject: [PATCH] Revert "# Work arount a minor bug in InstallSharedLib() link + handling" + +This reverts commit 0532106c1ea0807922ea6f868fcde384f22d4e92 as it breaks +parallel installs. The original commit itself contains no real details. +--- + SConstruct | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/SConstruct b/SConstruct +index 39a6b6a..c8a977e 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -1336,8 +1336,6 @@ if env["ncurses"]: + binaryinstall.append(env.Install(installdir('bindir'), [cgps, gpsmon])) + binaryinstall.append(LibraryInstall(env, installdir('libdir'), compiled_gpslib, libgps_version)) + binaryinstall.append(LibraryInstall(env, installdir('libdir'), compiled_gpsdlib, libgps_version)) +-# Work arount a minor bug in InstallSharedLib() link handling +-env.AddPreAction(binaryinstall, 'rm -f %s/libgps.*' % (installdir('libdir'), )) + + if qt_env: + binaryinstall.append(LibraryInstall(qt_env, installdir('libdir'), compiled_qgpsmmlib, libgps_version)) +-- +2.4.1 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.15-dynamic-libs.patch b/sci-geosciences/gpsd/files/gpsd-3.15-dynamic-libs.patch new file mode 100644 index 000000000000..9461a666b031 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.15-dynamic-libs.patch @@ -0,0 +1,100 @@ +From ac48583654e97ef04e8cbb52c2ae77a617c7add3 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Sun, 7 Jun 2015 01:08:39 -0400 +Subject: [PATCH] reenable dynamic libs + +Upstream decided to staticly link their own programs against their libs +instead of using the shared ones. Restore dynamic linking to save space +and such. +--- + SConstruct | 64 ++++++++++++++++++++++++++++++++++---------------------------- + 1 file changed, 35 insertions(+), 29 deletions(-) + +diff --git a/SConstruct b/SConstruct +index 28cebf0..a050f38 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -961,6 +961,9 @@ if qt_env: + gpsflags = ["-lm"] + rtlibs + dbusflags + gpsdflags = usbflags + bluezflags + gpsflags + ++gpslibs = ["-lgps"] + gpsflags ++gpsdlibs = ["-lgpsd"] + gpsdflags + gpslibs ++ + # Source groups + + gpsd_sources = ['gpsd.c','timehint.c', 'shmexport.c','dbusexport.c'] +@@ -983,38 +986,41 @@ gpsmon_sources = [ + ## Production programs + + gpsd = env.Program('gpsd', gpsd_sources, +- LIBS=['gpsd', 'gps_static'], LIBPATH='.', +- parse_flags=gpsdflags+gpsflags) ++ LIBS=['gpsd'], parse_flags=gpsdflags+gpslibs) ++env.Depends(gpsd, [compiled_gpslib]) ++ + gpsdecode = env.Program('gpsdecode', ['gpsdecode.c'], +- LIBS=['gpsd', 'gps_static'], LIBPATH='.', +- parse_flags=gpsdflags+gpsflags) ++ LIBS=['gpsd'], parse_flags=gpsdflags+gpslibs) ++env.Depends(gpsdecode, [compiled_gpslib]) ++ + gpsctl = env.Program('gpsctl', ['gpsctl.c'], +- LIBS=['gpsd', 'gps_static'], LIBPATH='.', +- parse_flags=gpsdflags+gpsflags) ++ LIBS=['gpsd'], parse_flags=gpsdflags+gpslibs) ++env.Depends(gpsctl, [compiled_gpslib]) ++ + gpsmon = env.Program('gpsmon', gpsmon_sources, +- LIBS=['gpsd', 'gps_static'], LIBPATH='.', +- parse_flags=gpsdflags + gpsflags + ncurseslibs) +-gpsdctl = env.Program('gpsdctl', ['gpsdctl.c'], +- LIBS=['gps_static'], LIBPATH='.', +- parse_flags=gpsflags) +-gpspipe = env.Program('gpspipe', ['gpspipe.c'], +- LIBS=['gps_static'], LIBPATH='.', +- parse_flags=gpsflags) +-gps2udp = env.Program('gps2udp', ['gps2udp.c'], +- LIBS=['gps_static'], LIBPATH='.', +- parse_flags=gpsflags) +-gpxlogger = env.Program('gpxlogger', ['gpxlogger.c'], +- LIBS=['gps_static'], LIBPATH='.', +- parse_flags=gpsflags) +-lcdgps = env.Program('lcdgps', ['lcdgps.c'], +- LIBS=['gps_static'], LIBPATH='.', +- parse_flags=gpsflags) +-cgps = env.Program('cgps', ['cgps.c'], +- LIBS=['gps_static'], LIBPATH='.', +- parse_flags=gpsflags + ncurseslibs) +-ntpshmmon = env.Program('ntpshmmon', ['ntpshmmon.c'], +- LIBS=['gps_static'], LIBPATH='.', +- parse_flags=gpsflags) ++ LIBS=['gpsd'], parse_flags=gpsdflags+gpslibs + ncurseslibs) ++env.Depends(gpsmon, [compiled_gpslib]) ++ ++gpsdctl = env.Program('gpsdctl', ['gpsdctl.c'], parse_flags=gpslibs) ++env.Depends(gpsdctl, compiled_gpslib) ++ ++gpspipe = env.Program('gpspipe', ['gpspipe.c'], parse_flags=gpslibs) ++env.Depends(gpspipe, compiled_gpslib) ++ ++gps2udp = env.Program('gps2udp', ['gps2udp.c'], parse_flags=gpslibs) ++env.Depends(gps2udp, compiled_gpslib) ++ ++gpxlogger = env.Program('gpxlogger', ['gpxlogger.c'], parse_flags=gpslibs) ++env.Depends(gpxlogger, compiled_gpslib) ++ ++lcdgps = env.Program('lcdgps', ['lcdgps.c'], parse_flags=gpslibs) ++env.Depends(lcdgps, compiled_gpslib) ++ ++cgps = env.Program('cgps', ['cgps.c'], parse_flags=gpslibs + ncurseslibs) ++env.Depends(cgps, compiled_gpslib) ++ ++ntpshmmon = env.Program('ntpshmmon', ['ntpshmmon.c'], parse_flags=gpslibs) ++env.Depends(ntpshmmon, compiled_gpslib) + + binaries = [gpsd, gpsdecode, gpsctl, gpsdctl, gpspipe, gps2udp, gpxlogger, lcdgps, ntpshmmon] + if env["ncurses"]: +-- +2.4.1 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.15-libgpsd.patch b/sci-geosciences/gpsd/files/gpsd-3.15-libgpsd.patch new file mode 100644 index 000000000000..b8d2cf02ee8b --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.15-libgpsd.patch @@ -0,0 +1,80 @@ +From 7b29fcb88a476daab12957ac22512edf66aee813 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Sun, 7 Jun 2015 01:08:48 -0400 +Subject: [PATCH] reenable libgpsd + +Upstream has decided to drop the shared libgpsd (since it wasn't used +externally anymore), but this also meant they statically link the code +into every app. Re-enable the shared lib so that the various runtime +programs can continue to share and save on resources. +--- + SConstruct | 25 +++++++++++++------------ + 1 file changed, 13 insertions(+), 12 deletions(-) + +diff --git a/SConstruct b/SConstruct +index a050f38..53f697d 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -903,7 +903,7 @@ else: + obj_list = [] + for s in Flatten(sources): + if type(s) is str: +- obj_list.append(env.SharedObject(s)) ++ obj_list.append(env.SharedObject(s, parse_flags=parse_flags)) + else: + obj_list.append(s) + return env.SharedLibrary(target=target, +@@ -925,9 +925,11 @@ static_gpslib = env.StaticLibrary("gps_static", + [env.StaticObject(s) for s in libgps_sources], + rtlibs) + +-compiled_gpsdlib = env.StaticLibrary(target="gpsd", +- source=[env.StaticObject(s, parse_flags=usbflags + bluezflags) for s in libgpsd_sources], +- parse_flags=usbflags + bluezflags) ++compiled_gpsdlib = Library(env=env, ++ target="gpsd", ++ sources=libgpsd_sources, ++ version=libgps_version, ++ parse_flags=usbflags + rtlibs + bluezflags + ["-lgps"]) + + libraries = [compiled_gpslib, compiled_gpsdlib] + +@@ -985,21 +987,19 @@ gpsmon_sources = [ + + ## Production programs + +-gpsd = env.Program('gpsd', gpsd_sources, +- LIBS=['gpsd'], parse_flags=gpsdflags+gpslibs) +-env.Depends(gpsd, [compiled_gpslib]) ++gpsd = env.Program('gpsd', gpsd_sources, parse_flags=gpsdlibs) ++env.Depends(gpsd, [compiled_gpsdlib, compiled_gpslib]) + +-gpsdecode = env.Program('gpsdecode', ['gpsdecode.c'], +- LIBS=['gpsd'], parse_flags=gpsdflags+gpslibs) +-env.Depends(gpsdecode, [compiled_gpslib]) ++gpsdecode = env.Program('gpsdecode', ['gpsdecode.c'], parse_flags=gpsdlibs) ++env.Depends(gpsdecode, [compiled_gpsdlib, compiled_gpslib]) + + gpsctl = env.Program('gpsctl', ['gpsctl.c'], + LIBS=['gpsd'], parse_flags=gpsdflags+gpslibs) +-env.Depends(gpsctl, [compiled_gpslib]) ++env.Depends(gpsctl, [compiled_gpslib, compiled_gpslib]) + + gpsmon = env.Program('gpsmon', gpsmon_sources, + LIBS=['gpsd'], parse_flags=gpsdflags+gpslibs + ncurseslibs) +-env.Depends(gpsmon, [compiled_gpslib]) ++env.Depends(gpsmon, [compiled_gpslib, compiled_gpslib]) + + gpsdctl = env.Program('gpsdctl', ['gpsdctl.c'], parse_flags=gpslibs) + env.Depends(gpsdctl, compiled_gpslib) +@@ -1339,6 +1339,7 @@ binaryinstall.append(env.Install(installdir('bindir'), [gpsdecode, gpsctl, gpsp + if env["ncurses"]: + binaryinstall.append(env.Install(installdir('bindir'), [cgps, gpsmon])) + binaryinstall.append(LibraryInstall(env, installdir('libdir'), compiled_gpslib, libgps_version)) ++binaryinstall.append(LibraryInstall(env, installdir('libdir'), compiled_gpsdlib, libgps_version)) + # Work arount a minor bug in InstallSharedLib() link handling + env.AddPreAction(binaryinstall, 'rm -f %s/libgps.*' % (installdir('libdir'), )) + +-- +2.4.1 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.3-ldflags.patch b/sci-geosciences/gpsd/files/gpsd-3.3-ldflags.patch new file mode 100644 index 000000000000..867b96b2da50 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.3-ldflags.patch @@ -0,0 +1,15 @@ +https://bugs.gentoo.org/391299 + +split up linking flags into multiple arguments + +--- gpsd-3.3/SConstruct ++++ gpsd-3.3/SConstruct +@@ -214,7 +214,7 @@ + env.Replace(**{j: os.getenv(i)}) + for flags in ["LDFLAGS", "LINKFLAGS", "SHLINKFLAGS", "CPPFLAGS"]: + if os.environ.has_key(flags): +- env.MergeFlags({flags : [os.getenv(flags)]}) ++ env.MergeFlags({flags : Split(os.getenv(flags))}) + + + # Placeholder so we can kluge together something like VPATH builds. diff --git a/sci-geosciences/gpsd/files/gpsd-3.3-msocks-init.patch b/sci-geosciences/gpsd/files/gpsd-3.3-msocks-init.patch new file mode 100644 index 000000000000..6b06864448cb --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.3-msocks-init.patch @@ -0,0 +1,33 @@ +fix from upstream git repo + +From e3d7f8b3f35442ae71dc95d776c900d2c29b215c Mon Sep 17 00:00:00 2001 +From: Yufeng Shen <miletus@chromium.org> +Date: Tue, 15 Nov 2011 17:29:49 -0500 +Subject: [PATCH] Initialize msocks[2] to -1 + +When SOCKET_EXPORT_ENABLE is not defined, msocks[2] can reach the +point where it is used (put into all_fds to be monitored by select()), +without initilization. + +Signed-off-by: Eric S. Raymond <esr@thyrsus.com> +--- + gpsd.c | 3 ++- + 1 files changed, 2 insertions(+), 1 deletions(-) + +diff --git a/gpsd.c b/gpsd.c +index 2d4090f..d342f5a 100644 +--- a/gpsd.c ++++ b/gpsd.c +@@ -1762,7 +1762,8 @@ int main(int argc, char *argv[]) + static char *pid_file = NULL; + struct gps_device_t *device; + fd_set rfds; +- int i, option, msocks[2], dfd; ++ int i, option, dfd; ++ int msocks[2] = {-1, -1}; + bool go_background = true; + struct timeval tv; + const struct gps_type_t **dp; +-- +1.7.6.1 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.3-pkg-config.patch b/sci-geosciences/gpsd/files/gpsd-3.3-pkg-config.patch new file mode 100644 index 000000000000..0bb4b3c8e0aa --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.3-pkg-config.patch @@ -0,0 +1,49 @@ +From b6ef265b49d973acc2295f46f0518e0644ba7dbb Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Mon, 21 Nov 2011 16:05:27 -0500 +Subject: [PATCH] respect PKG_CONFIG in the build env + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + SConstruct | 9 +++++---- + 1 files changed, 5 insertions(+), 4 deletions(-) + +diff --git a/SConstruct b/SConstruct +index cb578fe..5bb0fed 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -214,8 +214,9 @@ env['PYTHON'] = sys.executable + # explicitly quote them or (better yet) use the "=" form of GNU option + # settings. + env['STRIP'] = "strip" ++env['PKG_CONFIG'] = "pkg-config" + env['CHRPATH'] = 'chrpath' +-for i in ["AR", "ARFLAGS", "CCFLAGS", "CFLAGS", "CC", "CXX", "CXXFLAGS", "STRIP", "CHRPATH", "LD", "TAR"]: ++for i in ["AR", "ARFLAGS", "CCFLAGS", "CFLAGS", "CC", "CXX", "CXXFLAGS", "STRIP", "PKG_CONFIG", "CHRPATH", "LD", "TAR"]: + if os.environ.has_key(i): + j = i + if i == "LD": +@@ -407,9 +408,9 @@ cxx = config.CheckCXX() + # define a helper function for pkg-config - we need to pass + # --static for static linking, too. + if env["shared"]: +- pkg_config = lambda pkg: ['!pkg-config --cflags --libs %s' %(pkg, )] ++ pkg_config = lambda pkg: ['!%s --cflags --libs %s' %(env['PKG_CONFIG'], pkg, )] + else: +- pkg_config = lambda pkg: ['!pkg-config --cflags --libs --static %s' %(pkg, )] ++ pkg_config = lambda pkg: ['!%s --cflags --libs --static %s' %(env['PKG_CONFIG'], pkg, )] + + # GCC isn't always named gcc, alas. + if env['CC'] == 'gcc' or (sys.platform.startswith('freebsd') and env['CC'] == 'cc'): +@@ -339,7 +340,7 @@ if "help" in ARGLIST: + + def CheckPKG(context, name): + context.Message( 'Checking for %s... ' % name ) +- ret = context.TryAction('pkg-config --exists \'%s\'' % name)[0] ++ ret = context.TryAction('%s --exists \'%s\'' % (env['PKG_CONFIG'], name))[0] + context.Result( ret ) + return ret + +-- +1.7.6.1 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.3-release-rev.patch b/sci-geosciences/gpsd/files/gpsd-3.3-release-rev.patch new file mode 100644 index 000000000000..29415590caee --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.3-release-rev.patch @@ -0,0 +1,39 @@ +taken from upstream repo & tweaked; drop with 3.4 release + +From c96ffb7733b56a8c5c20d473d8fd83b62b6abfde Mon Sep 17 00:00:00 2001 +From: Bernd Zeimetz <bernd@bzed.de> +Date: Thu, 10 Nov 2011 22:18:07 +0100 +Subject: [PATCH] SConstruct: Use gpsd_version as revision for releases. + +--- + SConstruct | 13 ++++++++----- + 1 files changed, 8 insertions(+), 5 deletions(-) + +diff --git a/SConstruct b/SConstruct +index d367403..3d95e7e 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -978,12 +978,15 @@ env.Command(target="ais_json.i", source="jsongen.py", action='''\ + chmod a-w $TARGET''') + + # generate revision.h +-(st, rev) = commands.getstatusoutput('git describe') +-if st != 0: +- from datetime import datetime +- rev = datetime.now().isoformat()[:-4] ++if 'dev' in gpsd_version: ++ (st, rev) = commands.getstatusoutput('git describe') ++ if st != 0: ++ from datetime import datetime ++ rev = datetime.now().isoformat()[:-4] ++else: ++ rev = gpsd_version + revision='#define REVISION "%s"\n' %(rev.strip(),) +-env.NoClean(env.Textfile(target="revision.h", source=[revision])) ++env.Textfile(target="revision.h", source=[revision]) + + # generate pps_pin.h + pps_pin = env['pps_pin'] +-- +1.7.6.1 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.3-setup.py b/sci-geosciences/gpsd/files/gpsd-3.3-setup.py new file mode 100644 index 000000000000..93cc5e8f2149 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.3-setup.py @@ -0,0 +1,17 @@ +from distutils.core import setup, Extension + +setup( + name = "gps", + version = @VERSION@, + description = 'Python libraries for the gpsd service daemon', + url = @URL@, + author = 'the GPSD project', + author_email = @EMAIL@, + license = "BSD", + ext_modules=[ + Extension("gps.packet", @GPS_PACKET_SOURCES@, include_dirs=["."]), + Extension("gps.clienthelpers", @GPS_CLIENT_SOURCES@, include_dirs=["."]), + ], + packages = ['gps'], + scripts = @SCRIPTS@, +) diff --git a/sci-geosciences/gpsd/files/gpsd-3.3-udev-install.patch b/sci-geosciences/gpsd/files/gpsd-3.3-udev-install.patch new file mode 100644 index 000000000000..ef000bc27068 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.3-udev-install.patch @@ -0,0 +1,31 @@ +From b0513cd2e44705058ffdaa7a9c3f32371e9fcd5b Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Thu, 17 Nov 2011 23:44:06 -0500 +Subject: [PATCH] use DESTDIR with udev install + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + SConstruct | 7 ++++--- + 1 files changed, 4 insertions(+), 3 deletions(-) + +diff --git a/SConstruct b/SConstruct +index 1f99740..b7a98e4 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -1505,9 +1505,10 @@ if env['python']: + # is plugged in. + + Utility('udev-install', '', [ +- 'cp $SRCDIR/gpsd.rules /lib/udev/rules.d/25-gpsd.rules', +- 'cp $SRCDIR/gpsd.hotplug /lib/udev/', +- 'chmod a+x /lib/udev/gpsd.hotplug', ++ 'mkdir -p ' + DESTDIR + '/lib/udev/rules.d', ++ 'cp $SRCDIR/gpsd.rules ' + DESTDIR + '/lib/udev/rules.d/25-gpsd.rules', ++ 'cp $SRCDIR/gpsd.hotplug ' + DESTDIR + '/lib/udev/', ++ 'chmod a+x ' + DESTDIR + '/lib/udev/gpsd.hotplug', + ]) + + Utility('udev-uninstall', '', [ +-- +1.7.6.1 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.4-always-install-man-pages.patch b/sci-geosciences/gpsd/files/gpsd-3.4-always-install-man-pages.patch new file mode 100644 index 000000000000..c9c1c7d109ad --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.4-always-install-man-pages.patch @@ -0,0 +1,36 @@ +From 918d6d8e5bac3981126cb01e673430cb7c96ec02 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Thu, 9 Feb 2012 16:51:24 -0500 +Subject: [PATCH] always install the man pages + +Since we maintain local copies, don't require xmlto/xsltproc in +order to install them. This makes packaging simpler. + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + SConstruct | 9 ++++----- + 1 files changed, 4 insertions(+), 5 deletions(-) + +diff --git a/SConstruct b/SConstruct +index ab85b7d..fb08779 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -1186,11 +1186,10 @@ if qt_env: + + + maninstall = [] +-if manbuilder: +- for manpage in base_manpages.keys() + python_manpages.keys(): +- section = manpage.split(".")[1] +- dest = os.path.join(installdir('mandir'), "man"+section, manpage) +- maninstall.append(env.InstallAs(source=manpage, target=dest)) ++for manpage in base_manpages.keys() + python_manpages.keys(): ++ section = manpage.split(".")[1] ++ dest = os.path.join(installdir('mandir'), "man"+section, manpage) ++ maninstall.append(env.InstallAs(source=manpage, target=dest)) + install = env.Alias('install', binaryinstall + maninstall + python_install + pc_install + headerinstall) + + def Uninstall(nodes): +-- +1.7.8.4 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.4-cfgetispeed.patch b/sci-geosciences/gpsd/files/gpsd-3.4-cfgetispeed.patch new file mode 100644 index 000000000000..02abcb0e95d2 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.4-cfgetispeed.patch @@ -0,0 +1,47 @@ +From 38702bf0f4aaafdddde51393106eeaf720c1fc63 Mon Sep 17 00:00:00 2001 +From: Manuel Lauss <manuel.lauss@googlemail.com> +Date: Fri, 13 Jan 2012 11:59:55 -0500 +Subject: [PATCH] serial: use cfgetispeed helpers + +Rather than poking c_ispeed directly, use the cfgetispeed helper. This +is part of POSIX, and we already use cfsetispeed, so there shouldn't be +any portability issues here. + +Signed-off-by: Manuel Lauss <manuel.lauss@googlemail.com> +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + serial.c | 9 +-------- + 1 files changed, 1 insertions(+), 8 deletions(-) + +diff --git a/serial.c b/serial.c +index c1464dd..8eb03ce 100644 +--- a/serial.c ++++ b/serial.c +@@ -594,13 +594,8 @@ void gpsd_close(struct gps_device_t *session) + * them the first time. Economical, and avoids tripping over an + * obscure Linux 2.6 kernel bug that disables threaded + * ioctl(TIOCMWAIT) on a device after tcsetattr() is called. +- * +- * Unfortunately the termios struct doesn't have c_ispeed/c_ospeed +- * on all architectures. Its missing on sparc, mips/mispel and hurd-i386 at least. + */ +-#if defined(_HAVE_STRUCT_TERMIOS_C_ISPEED) +- if (session->ttyset_old.c_ispeed != session->ttyset.c_ispeed || (session->ttyset_old.c_cflag & CSTOPB) != (session->ttyset.c_cflag & CSTOPB)) { +-#endif ++ if (cfgetispeed(&session->ttyset_old) != cfgetispeed(&session->ttyset) || (session->ttyset_old.c_cflag & CSTOPB) != (session->ttyset.c_cflag & CSTOPB)) { + /*@ ignore @*/ + (void)cfsetispeed(&session->ttyset_old, + (speed_t) session->gpsdata.dev.baudrate); +@@ -609,9 +604,7 @@ void gpsd_close(struct gps_device_t *session) + /*@ end @*/ + (void)tcsetattr(session->gpsdata.gps_fd, TCSANOW, + &session->ttyset_old); +-#if defined(_HAVE_STRUCT_TERMIOS_C_ISPEED) + } +-#endif + gpsd_report(LOG_SPIN, "close(%d) in gpsd_close(%s)\n", + session->gpsdata.gps_fd, session->gpsdata.dev.path); + (void)close(session->gpsdata.gps_fd); +-- +1.7.8.3 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.4-chrpath.patch b/sci-geosciences/gpsd/files/gpsd-3.4-chrpath.patch new file mode 100644 index 000000000000..c509e2d29968 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.4-chrpath.patch @@ -0,0 +1,69 @@ +From 63a44d0cb5494ed1078de411b55cb1c9a8307cec Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Fri, 18 Nov 2011 19:09:27 -0500 +Subject: [PATCH] make chrpath optional + +There's no reason to require chrpath for distributions who only want to +compile locally and then install elsewhere for packaging. So allow them +to specify CHRPATH='' via the env to disable this requirement. + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + SConstruct | 27 ++++++++++++++------------- + 1 files changed, 14 insertions(+), 13 deletions(-) + +diff --git a/SConstruct b/SConstruct +index ccaca7d..68bf367 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -270,7 +270,7 @@ def installdir(dir, add_destdir=True): + + # Honor the specified installation prefix in link paths. + env.Prepend(LIBPATH=[installdir('libdir')]) +-if env["shared"]: ++if env["shared"] and env['CHRPATH']: + env.Prepend(RPATH=[installdir('libdir')]) + + # Give deheader a way to set compiler flags +@@ -390,17 +390,18 @@ config = Configure(env, custom_tests = { 'CheckPKG' : CheckPKG, + 'CheckXsltproc' : CheckXsltproc}) + + env.Prepend(LIBPATH=[os.path.realpath(os.curdir)]) +-if config.CheckExecutable('$CHRPATH -v', 'chrpath'): +- # Tell generated binaries to look in the current directory for +- # shared libraries so we can run tests without hassle. Should be +- # handled sanely by scons on all systems. Not good to use '.' or +- # a relative path here; it's a security risk. At install time we +- # use chrpath to edit this out of RPATH. +- if env["shared"]: +- env.Prepend(RPATH=[os.path.realpath(os.curdir)]) +-else: +- print "chrpath is not available, forcing static linking." +- env["shared"] = False ++if env['CHRPATH']: ++ if config.CheckExecutable('$CHRPATH -v', 'chrpath'): ++ # Tell generated binaries to look in the current directory for ++ # shared libraries so we can run tests without hassle. Should be ++ # handled sanely by scons on all systems. Not good to use '.' or ++ # a relative path here; it's a security risk. At install time we ++ # use chrpath to edit this out of RPATH. ++ if env["shared"]: ++ env.Prepend(RPATH=[os.path.realpath(os.curdir)]) ++ else: ++ print "chrpath is not available, forcing static linking." ++ env["shared"] = False + + confdefs = ["/* gpsd_config.h. Generated by scons, do not hand-hack. */\n"] + +@@ -1140,7 +1141,7 @@ if qt_env: + binaryinstall.append(LibraryInstall(qt_env, installdir('libdir'), compiled_qgpsmmlib)) + + # We don't use installdir here in order to avoid having DESTDIR affect the rpath +-if env["shared"]: ++if env['CHRPATH']: + env.AddPostAction(binaryinstall, '$CHRPATH -r "%s" "$TARGET"' \ + % (installdir('libdir', False), )) + +-- +1.7.8.3 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.4-gpsmon-lm.patch b/sci-geosciences/gpsd/files/gpsd-3.4-gpsmon-lm.patch new file mode 100644 index 000000000000..a749fcf05100 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.4-gpsmon-lm.patch @@ -0,0 +1,29 @@ +From 55131187b6a0290f99d1dd70b5cce48040bba7bb Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Fri, 13 Jan 2012 11:53:39 -0500 +Subject: [PATCH] gpsmon: always link with -lm + +Since the gpsmon pkg uses math funcs itself (and not just via libgps), +we need to link in -lm for the app. + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + SConstruct | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/SConstruct b/SConstruct +index 68bf367..a5249c1 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -851,7 +851,7 @@ gpsdctl = env.Program('gpsdctl', ['gpsdctl.c'], parse_flags=gpslibs) + env.Depends(gpsdctl, compiled_gpslib) + + gpsmon = env.Program('gpsmon', gpsmon_sources, +- parse_flags=gpsdlibs + ncurseslibs) ++ parse_flags=gpsdlibs + ncurseslibs + ['-lm']) + env.Depends(gpsmon, [compiled_gpsdlib, compiled_gpslib]) + + gpspipe = env.Program('gpspipe', ['gpspipe.c'], parse_flags=gpslibs) +-- +1.7.8.3 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.4-no-man-gen.patch b/sci-geosciences/gpsd/files/gpsd-3.4-no-man-gen.patch new file mode 100644 index 000000000000..20a3b707a4c3 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.4-no-man-gen.patch @@ -0,0 +1,13 @@ +the scons logic is dumb and will always regenerate the man pages. +forcibly disable that as the releases contain the man pages. + +--- a/SConstruct ++++ b/SConstruct +@@ -575,6 +575,7 @@ + manbuilder = "xmlto man $SOURCE; mv `basename $TARGET` $TARGET" + else: + announce("Neither xsltproc nor xmlto found, documentation cannot be built.") ++manbuilder = htmlbuilder = False + if manbuilder: + env['BUILDERS']["Man"] = Builder(action=manbuilder) + env['BUILDERS']["HTML"] = Builder(action=htmlbuilder, diff --git a/sci-geosciences/gpsd/files/gpsd-3.4-strptime.patch b/sci-geosciences/gpsd/files/gpsd-3.4-strptime.patch new file mode 100644 index 000000000000..50a2b2755956 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.4-strptime.patch @@ -0,0 +1,26 @@ +From 083ee79e5b6acbd08008965cbca496eb61957fa4 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Fri, 13 Jan 2012 11:56:12 -0500 +Subject: [PATCH] fix missing strptime prototype + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + gpsutils.c | 2 ++ + 1 files changed, 2 insertions(+), 0 deletions(-) + +diff --git a/gpsutils.c b/gpsutils.c +index a1530ec..cc47d52 100644 +--- a/gpsutils.c ++++ b/gpsutils.c +@@ -3,6 +3,8 @@ + * This file is Copyright (c) 2010 by the GPSD project + * BSD terms apply: see the file COPYING in the distribution root for details. + */ ++#define _XOPEN_SOURCE 700 ++ + #include <stdio.h> + #include <time.h> + #include <sys/time.h> +-- +1.7.8.3 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.5-clock.patch b/sci-geosciences/gpsd/files/gpsd-3.5-clock.patch new file mode 100644 index 000000000000..478b12a48194 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.5-clock.patch @@ -0,0 +1,42 @@ +From f9f9bb6c10102f3d69a7f50e758a3a9256bf8744 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Mon, 21 May 2012 16:27:36 -0400 +Subject: [PATCH] fix building with clock_gettime and newer glibc + +Building with recent glibc versions fails in gpsutils.c due to missing +definitions related to clock_gettime. This is because we define the +_XOPEN_SOURCE macro, but not to a new enough value. So set it to a +recent spec value that satisfies both strptime and clock_gettime. + +Example build failure with glibc-2.15: +gpsutils.c: In function 'timestamp': +gpsutils.c:299:22: error: storage size of 'ts' isn't known +gpsutils.c:300:14: warning: implicit declaration of function 'clock_gettime' [-Wimplicit-function-declaration] +gpsutils.c:300:34: error: 'CLOCK_REALTIME' undeclared (first use in this function) +gpsutils.c:300:34: note: each undeclared identifier is reported only once for each function it appears in + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + gpsutils.c | 6 ++++-- + 1 files changed, 4 insertions(+), 2 deletions(-) + +diff --git a/gpsutils.c b/gpsutils.c +index 523838a..3b4990a 100644 +--- a/gpsutils.c ++++ b/gpsutils.c +@@ -5,8 +5,10 @@ + */ + + /* The strptime prototype is not provided unless explicitly requested. +- * So add the define that POSIX says to to avoid: */ +-#define _XOPEN_SOURCE ++ * We also need to set the value high enough to signal inclusion of ++ * newer features (like clock_gettime). See the POSIX spec for more info: ++ * http://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_02_01_02 */ ++#define _XOPEN_SOURCE 600 + + #include <stdio.h> + #include <time.h> +-- +1.7.8.6 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.6-debug.patch b/sci-geosciences/gpsd/files/gpsd-3.6-debug.patch new file mode 100644 index 000000000000..ecaf717b7391 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.6-debug.patch @@ -0,0 +1,221 @@ +From 07ecfcc72d977cfd364f0337032d5be7a0ff64e0 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Wed, 23 May 2012 10:09:26 -0400 +Subject: [PATCH] nmea2000: fix build failures when debugging is disabled + +When debugging is disabled, there is no libgps_debuglevel, so building +this driver fails with: +driver_nmea2000.c: In function 'print_data': +driver_nmea2000.c:50:10: error: 'libgps_debuglevel' undeclared (first use in this function) + +Add some ifdef to this driver to fix that, and change the return type +of print_data to void since it always returns 0 and no one ever checks +the return value. + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + driver_nmea2000.c | 45 +++++++++++++++++++++++---------------------- + 1 files changed, 23 insertions(+), 22 deletions(-) + +diff --git a/driver_nmea2000.c b/driver_nmea2000.c +index 1db6686..b3d2734 100644 +--- a/driver_nmea2000.c ++++ b/driver_nmea2000.c +@@ -44,8 +44,9 @@ typedef struct PGN + FILE *logFile = NULL; + #endif /* of if LOG_FILE */ + +-static int print_data(unsigned char *buffer, int len, PGN *pgn) ++static void print_data(unsigned char *buffer, int len, PGN *pgn) + { ++#ifdef LIBGPS_DEBUG + /*@-bufferoverflowhigh@*/ + if ((libgps_debuglevel >= LOG_IO) != 0) { + int l1, l2, ptr; +@@ -67,7 +68,7 @@ static int print_data(unsigned char *buffer, int len, PGN *pgn) + gpsd_report(LOG_IO,"%s\n", bu); + } + /*@+bufferoverflowhigh@*/ +- return(0); ++#endif + } + + static gps_mask_t get_mode(struct gps_device_t *session) +@@ -84,7 +85,7 @@ static gps_mask_t get_mode(struct gps_device_t *session) + + static gps_mask_t hnd_059392(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + return(0); + } +@@ -92,7 +93,7 @@ static gps_mask_t hnd_059392(unsigned char *bu, int len, PGN *pgn, struct gps_de + + static gps_mask_t hnd_060928(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + return(0); + } +@@ -100,7 +101,7 @@ static gps_mask_t hnd_060928(unsigned char *bu, int len, PGN *pgn, struct gps_de + + static gps_mask_t hnd_126208(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + return(0); + } +@@ -108,7 +109,7 @@ static gps_mask_t hnd_126208(unsigned char *bu, int len, PGN *pgn, struct gps_de + + static gps_mask_t hnd_126464(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + return(0); + } +@@ -116,7 +117,7 @@ static gps_mask_t hnd_126464(unsigned char *bu, int len, PGN *pgn, struct gps_de + + static gps_mask_t hnd_126996(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + return(0); + } +@@ -124,7 +125,7 @@ static gps_mask_t hnd_126996(unsigned char *bu, int len, PGN *pgn, struct gps_de + + static gps_mask_t hnd_129025(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + + /*@-type@*//* splint has a bug here */ +@@ -140,7 +141,7 @@ static gps_mask_t hnd_129025(unsigned char *bu, int len, PGN *pgn, struct gps_de + + static gps_mask_t hnd_129026(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + + session->driver.nmea2000.sid[0] = bu[0]; +@@ -161,10 +162,10 @@ static gps_mask_t hnd_126992(unsigned char *bu, int len, PGN *pgn, struct gps_de + //uint8_t sid; + //uint8_t source; + +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + + //sid = bu[0]; +@@ -187,7 +188,7 @@ static gps_mask_t hnd_129539(unsigned char *bu, int len, PGN *pgn, struct gps_de + { + gps_mask_t mask; + +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + + mask = 0; +@@ -222,7 +223,7 @@ static gps_mask_t hnd_129540(unsigned char *bu, int len, PGN *pgn, struct gps_de + { + int l1, l2; + +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + + session->driver.nmea2000.sid[2] = bu[0]; +@@ -261,7 +262,7 @@ static gps_mask_t hnd_129029(unsigned char *bu, int len, PGN *pgn, struct gps_de + { + gps_mask_t mask; + +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + + mask = 0; +@@ -326,7 +327,7 @@ static gps_mask_t hnd_129029(unsigned char *bu, int len, PGN *pgn, struct gps_de + + static gps_mask_t hnd_129038(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + return(0); + } +@@ -334,7 +335,7 @@ static gps_mask_t hnd_129038(unsigned char *bu, int len, PGN *pgn, struct gps_de + + static gps_mask_t hnd_129039(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + return(0); + } +@@ -342,7 +343,7 @@ static gps_mask_t hnd_129039(unsigned char *bu, int len, PGN *pgn, struct gps_de + + static gps_mask_t hnd_129040(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + return(0); + } +@@ -350,7 +351,7 @@ static gps_mask_t hnd_129040(unsigned char *bu, int len, PGN *pgn, struct gps_de + + static gps_mask_t hnd_129794(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + return(0); + } +@@ -358,7 +359,7 @@ static gps_mask_t hnd_129794(unsigned char *bu, int len, PGN *pgn, struct gps_de + + static gps_mask_t hnd_129798(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + return(0); + } +@@ -366,7 +367,7 @@ static gps_mask_t hnd_129798(unsigned char *bu, int len, PGN *pgn, struct gps_de + + static gps_mask_t hnd_129802(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + return(0); + } +@@ -374,7 +375,7 @@ static gps_mask_t hnd_129802(unsigned char *bu, int len, PGN *pgn, struct gps_de + + static gps_mask_t hnd_129809(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + return(0); + } +@@ -382,7 +383,7 @@ static gps_mask_t hnd_129809(unsigned char *bu, int len, PGN *pgn, struct gps_de + + static gps_mask_t hnd_129810(unsigned char *bu, int len, PGN *pgn, struct gps_device_t *session) + { +- (void)print_data(bu, len, pgn); ++ print_data(bu, len, pgn); + gpsd_report(LOG_DATA, "pgn %6d(%3d):\n", pgn->pgn, session->driver.nmea2000.unit); + return(0); + } +-- +1.7.8.6 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.6-rpath.patch b/sci-geosciences/gpsd/files/gpsd-3.6-rpath.patch new file mode 100644 index 000000000000..ecff094e4a9f --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.6-rpath.patch @@ -0,0 +1,13 @@ +don't set the -rpath flag to the install dir as this breaks DESTDIR + +--- a/SConstruct ++++ b/SConstruct +@@ -268,7 +268,7 @@ def installdir(dir, add_destdir=True): + + # Honor the specified installation prefix in link paths. + env.Prepend(LIBPATH=[installdir('libdir')]) +-if env["shared"]: ++if env["shared"] and env["chrpath"]: + env.Prepend(RPATH=[installdir('libdir')]) + + # Give deheader a way to set compiler flags diff --git a/sci-geosciences/gpsd/files/gpsd-3.7-gps_regress.patch b/sci-geosciences/gpsd/files/gpsd-3.7-gps_regress.patch new file mode 100644 index 000000000000..018431e1d6b9 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.7-gps_regress.patch @@ -0,0 +1,63 @@ +https://bugs.gentoo.org/441760 + +From 52dedf2ca8b31a8d113a1d9b14977d5d9b782744 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Wed, 27 Mar 2013 16:13:30 -0400 +Subject: [PATCH] fix build error when socket_export is disabled + +If you try to build with socket_export disabled, you'll hit a build +failure due to gps_regress being undefined: + +NameError: name 'gps_regress' is not defined: + File "SConstruct", line 1519: + gps_regress, + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + SConstruct | 9 +++++---- + 1 file changed, 5 insertions(+), 4 deletions(-) + +diff --git a/SConstruct b/SConstruct +index 1c187f3..a2b7a4c 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -1394,8 +1394,8 @@ else: + # using regress-drivers requires socket_export being enabled. + if env['socket_export']: + # Regression-test the daemon +- gps_regress = Utility("gps-regress", [gpsd, python_built_extensions], +- '$SRCDIR/regress-driver test/daemon/*.log') ++ gps_regress = [Utility("gps-regress", [gpsd, python_built_extensions], ++ '$SRCDIR/regress-driver test/daemon/*.log')] + + # Test that super-raw mode works. Compare each logfile against itself + # dumped through the daemon running in R=2 mode. (This test is not +@@ -1410,6 +1410,8 @@ if env['socket_export']: + # offset from subframe data. + Utility('gps-makeregress', [gpsd, python_built_extensions], + '$SRCDIR/regress-driver -b test/daemon/*.log') ++else: ++ gps_regress = [] + + # To build an individual test for a load named foo.log, put it in + # test/daemon and do this: +@@ -1550,7 +1552,6 @@ flocktest = Utility("flocktest", [], "cd devtools; ./flocktest " + gitrepo) + check = env.Alias('check', [ + python_compilation_regress, + bits_regress, +- gps_regress, + rtcm_regress, + aivdm_regress, + packet_regress, +@@ -1559,7 +1560,7 @@ check = env.Alias('check', [ + time_regress, + unpack_regress, + json_regress, +- ]) ++ ] + gps_regress) + + env.Alias('testregress', check) + +-- +1.8.1.2 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.7-no-export-t.patch b/sci-geosciences/gpsd/files/gpsd-3.7-no-export-t.patch new file mode 100644 index 000000000000..bcfcaf185580 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.7-no-export-t.patch @@ -0,0 +1,44 @@ +From b605a5fb47ab73412071b6571afcaef4b03c389d Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Sat, 30 Mar 2013 16:35:42 -0400 +Subject: [PATCH] punt export_t + +Nothing is actually following the convention laid out by this enum, +so punt it. + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + libgps.h | 17 ----------------- + 1 file changed, 17 deletions(-) + +diff --git a/libgps.h b/libgps.h +index c16b6aa..d30353f 100644 +--- a/libgps.h ++++ b/libgps.h +@@ -6,23 +6,6 @@ + #ifndef _GPSD_LIBGPS_H_ + #define _GPSD_LIBGPS_H_ + +-/* +- * first member of each kind of privdata structure must be named +- * 'export_type' and must be of this type. It's how we do runtime +- * dispatch to the different transports. +- */ +-enum export_t { +-#ifdef SOCKET_EXPORT_ENABLE +- sockets, +-#endif /* SOCKET_EXPORT_ENABLE */ +-#ifdef SHM_EXPORT_ENABLE +- shm, +-#endif /* SHM_EXPORT_ENABLE */ +-#ifdef DBUS_EXPORT_ENABLE +- dbus, +-#endif /* DBUS_EXPORT_ENABLE */ +-}; +- + /* values to poke in the gps_fd member if we get it via something special */ + #define SHM_PSEUDO_FD -1 + #define DBUS_PSEUDO_FD -2 +-- +1.8.1.2 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.7-rpath.patch b/sci-geosciences/gpsd/files/gpsd-3.7-rpath.patch new file mode 100644 index 000000000000..5419cd31f637 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.7-rpath.patch @@ -0,0 +1,17 @@ +don't set the -rpath/-L flags to the install dir as this breaks DESTDIR + +--- a/SConstruct ++++ b/SConstruct +@@ -268,11 +268,7 @@ + return wrapped + + # Honor the specified installation prefix in link paths. +-if not env["sysroot"]: +- env.Prepend(LIBPATH=[installdir('libdir')]) +-else: +- env.Prepend(LIBPATH=[env["sysroot"] + installdir('libdir')]) +-if env["shared"]: ++if env["shared"] and env["chrpath"]: + env.Prepend(RPATH=[installdir('libdir')]) + + # Give deheader a way to set compiler flags diff --git a/sci-geosciences/gpsd/files/gpsd-3.8-ldflags.patch b/sci-geosciences/gpsd/files/gpsd-3.8-ldflags.patch new file mode 100644 index 000000000000..b41be8b66e54 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.8-ldflags.patch @@ -0,0 +1,15 @@ +https://bugs.gentoo.org/391299 + +split up linking flags into multiple arguments + +--- gpsd-3.8/SConstruct ++++ gpsd-3.8/SConstruct +@@ -214,7 +214,7 @@ + env.Replace(**{j: os.getenv(i)}) + for flag in ["LDFLAGS", "LINKFLAGS", "SHLINKFLAGS", "CPPFLAGS"]: + if os.environ.has_key(flag): +- env.MergeFlags({flag : [os.getenv(flag)]}) ++ env.MergeFlags({flag : Split(os.getenv(flag))}) + + + # Placeholder so we can kluge together something like VPATH builds. diff --git a/sci-geosciences/gpsd/files/gpsd-3.8-libgps.patch b/sci-geosciences/gpsd/files/gpsd-3.8-libgps.patch new file mode 100644 index 000000000000..ba22d2bda0e0 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.8-libgps.patch @@ -0,0 +1,38 @@ +From da2369a8e72578b5c5636adb78accd8bf66b3311 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Mon, 11 Mar 2013 12:35:34 -0400 +Subject: [PATCH] libgps.a: fix building w/dbus support + +The current libgps.a logic doesn't pass down pkg-config output from +dbus and such which breaks building when compiling: + +gcc -o libgps_dbus.o -c -D_GNU_SOURCE -Wextra -Wall -Wno-uninitialized \ + -Wno-missing-field-initializers -Wcast-align -Wmissing-declarations \ + -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith -Wreturn-type \ + -O2 libgps_dbus.c +libgps_dbus.c:26:23: fatal error: dbus/dbus.h: No such file or directory +compilation terminated. + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + SConstruct | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/SConstruct b/SConstruct +index e5d1f54..a56fa9b 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -886,7 +886,9 @@ gpsdlibs = ["-lgpsd"] + usblibs + bluezlibs + gpslibs + caplibs + # linking + # The final executable will build but not be portable. + +-env.StaticLibrary(target = 'libgps.a', source = libgps_sources) ++env.StaticLibrary(target='libgps.a', ++ source=libgps_sources, ++ parse_flags=dbus_libs + rtlibs) + + # Source groups + +-- +1.8.1.2 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.8-no-export-t.patch b/sci-geosciences/gpsd/files/gpsd-3.8-no-export-t.patch new file mode 100644 index 000000000000..c56929abb14a --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.8-no-export-t.patch @@ -0,0 +1,44 @@ +From b605a5fb47ab73412071b6571afcaef4b03c389d Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Sat, 30 Mar 2013 16:35:42 -0400 +Subject: [PATCH] punt export_t + +Nothing is actually following the convention laid out by this enum, +so punt it. + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + libgps.h | 17 ----------------- + 1 file changed, 17 deletions(-) + +diff --git a/libgps.h b/libgps.h +index c16b6aa..d30353f 100644 +--- a/libgps.h ++++ b/libgps.h +@@ -6,23 +6,6 @@ + #ifndef _GPSD_LIBGPS_H_ + #define _GPSD_LIBGPS_H_ + +-/* +- * first member of each kind of privdata structure must be named +- * 'export_type' and must be of this type. It's how we do runtime +- * dispatch to the different transports. +- */ +-enum export_t { +-#ifdef SOCKET_EXPORT_ENABLE +- sockets, +-#endif /* SOCKET_EXPORT_ENABLE */ +-#ifdef SHM_EXPORT_ENABLE +- shm, +-#endif /* SHM_EXPORT_ENABLE */ +-#ifdef DBUS_EXPORT_ENABLE +- dbus, +-#endif /* DBUS_EXPORT_ENABLE */ +-}; +- + /* values to poke in the gps_fd member if we get it via something special */ + #define SHM_PSEUDO_FD -1 + #define DBUS_PSEUDO_FD -2 +-- +1.8.1.2 + diff --git a/sci-geosciences/gpsd/files/gpsd-3.8-udev.patch b/sci-geosciences/gpsd/files/gpsd-3.8-udev.patch new file mode 100644 index 000000000000..f6b783e5c3cf --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd-3.8-udev.patch @@ -0,0 +1,38 @@ +From 2e7d2e22935950ece32ff3acd6837c79800752dd Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Mon, 11 Mar 2013 13:21:14 -0400 +Subject: [PATCH] fix DESTDIR handling with udev rules install again + +Commit 102e29d16c3fd9b414eeac53c794302f902ae8da reverted the DESTDIR +logic when upgrading the udev path handling. + +It also slightly broke the mkdir setup by not creating the rules.d +subdir under the udev path. + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> +--- + SConstruct | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/SConstruct b/SConstruct +index a56fa9b..1c187f3 100644 +--- a/SConstruct ++++ b/SConstruct +@@ -1662,10 +1662,10 @@ if env['python']: + # is plugged in. + + Utility('udev-install', 'install', [ +- 'mkdir -p ' + env['udevdir'], +- 'cp $SRCDIR/gpsd.rules ' + env['udevdir'] + '/rules.d/25-gpsd.rules', +- 'cp $SRCDIR/gpsd.hotplug ' + env['udevdir'], +- 'chmod a+x ' + env['udevdir'] + '/gpsd.hotplug', ++ 'mkdir -p ' + DESTDIR + env['udevdir'] + '/rules.d', ++ 'cp $SRCDIR/gpsd.rules ' + DESTDIR + env['udevdir'] + '/rules.d/25-gpsd.rules', ++ 'cp $SRCDIR/gpsd.hotplug ' + DESTDIR + env['udevdir'], ++ 'chmod a+x ' + DESTDIR + env['udevdir'] + '/gpsd.hotplug', + ]) + + Utility('udev-uninstall', '', [ +-- +1.8.1.2 + diff --git a/sci-geosciences/gpsd/files/gpsd.conf-2 b/sci-geosciences/gpsd/files/gpsd.conf-2 new file mode 100644 index 000000000000..b077fdbf9cde --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd.conf-2 @@ -0,0 +1,8 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +# Config file for gpsd server +GPSD_OPTIONS="" +DEVICES="" +GPSD_SOCKET="/var/run/gpsd.sock" diff --git a/sci-geosciences/gpsd/files/gpsd.init-2 b/sci-geosciences/gpsd/files/gpsd.init-2 new file mode 100755 index 000000000000..ad734e34d987 --- /dev/null +++ b/sci-geosciences/gpsd/files/gpsd.init-2 @@ -0,0 +1,39 @@ +#!/sbin/runscript +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +depend() { + after dbus + before ntpd +} + +PIDFILE=/var/run/${SVCNAME}.pid +DAEMON=/usr/sbin/gpsd + +checkconfig() { + # Note: these GPSD_xxx var names should be kept in sync with the udev rules. + if [ -z "${GPSD_SOCKET}" ] && [ -z "${DEVICES}" ]; then + GPSD_SOCKET="/var/run/gpsd.sock" + fi + + if [ -n "${GPSD_SOCKET}" ]; then + GPSD_OPTIONS="${GPSD_OPTIONS} -F ${GPSD_SOCKET}" + fi +} + +start() { + checkconfig + ebegin "Starting gpsd" + + start-stop-daemon --start --quiet --pidfile ${PIDFILE} --exec ${DAEMON} -- \ + ${GPSD_OPTIONS} -P ${PIDFILE} ${DEVICES} + eend $? +} + +stop() { + ebegin "Stopping gpsd" + start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile ${PIDFILE} + eend $? + rm -f ${PIDFILE} +} |