summaryrefslogtreecommitdiff
path: root/sci-geosciences/gpsd/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /sci-geosciences/gpsd/files
reinit the tree, so we can have metadata
Diffstat (limited to 'sci-geosciences/gpsd/files')
-rw-r--r--sci-geosciences/gpsd/files/gpsd-3.10-dbus.patch32
-rw-r--r--sci-geosciences/gpsd/files/gpsd-3.10-nmea-disabled.patch54
-rw-r--r--sci-geosciences/gpsd/files/gpsd-3.10-rpath.patch13
-rw-r--r--sci-geosciences/gpsd/files/gpsd-3.10-udev-install.patch40
-rw-r--r--sci-geosciences/gpsd/files/gpsd-3.15-broken-install.patch28
-rw-r--r--sci-geosciences/gpsd/files/gpsd-3.15-dynamic-libs.patch100
-rw-r--r--sci-geosciences/gpsd/files/gpsd-3.15-libgpsd.patch81
-rw-r--r--sci-geosciences/gpsd/files/gpsd-3.15-timebase.patch12
-rw-r--r--sci-geosciences/gpsd/files/gpsd-3.16-sysmacros.patch31
-rw-r--r--sci-geosciences/gpsd/files/gpsd-3.17-do_not_rm_library.patch12
-rw-r--r--sci-geosciences/gpsd/files/gpsd-3.3-setup.py17
-rw-r--r--sci-geosciences/gpsd/files/gpsd-3.8-ldflags.patch15
-rw-r--r--sci-geosciences/gpsd/files/gpsd-9999-do_not_rm_library.patch12
-rw-r--r--sci-geosciences/gpsd/files/gpsd.conf-27
-rw-r--r--sci-geosciences/gpsd/files/gpsd.init-238
15 files changed, 492 insertions, 0 deletions
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.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..77ba8a7966f6
--- /dev/null
+++ b/sci-geosciences/gpsd/files/gpsd-3.15-libgpsd.patch
@@ -0,0 +1,81 @@
+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,12 @@ 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"])
++env.Depends(compiled_gpsdlib, [compiled_gpslib])
+
+ 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_gpsdlib, compiled_gpslib])
+
+ gpsmon = env.Program('gpsmon', gpsmon_sources,
+ LIBS=['gpsd'], parse_flags=gpsdflags+gpslibs + ncurseslibs)
+-env.Depends(gpsmon, [compiled_gpslib])
++env.Depends(gpsmon, [compiled_gpsdlib, 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.15-timebase.patch b/sci-geosciences/gpsd/files/gpsd-3.15-timebase.patch
new file mode 100644
index 000000000000..2477d30ce6cc
--- /dev/null
+++ b/sci-geosciences/gpsd/files/gpsd-3.15-timebase.patch
@@ -0,0 +1,12 @@
+don't always rebuild this header as it won't change between compile & install
+
+--- a/SConstruct
++++ b/SConstruct
+@@ -1174,7 +1174,6 @@
+ f.close()
+ timebase = env.Command(target="timebase.h",
+ source=["leapseconds.cache"], action=timebase_h)
+-env.AlwaysBuild(timebase)
+
+ env.Textfile(target="gpsd_config.h", source=confdefs)
+ env.Textfile(target="gpsd.h", source=[File("gpsd.h-head"), File("gpsd_config.h"), File("gpsd.h-tail")])
diff --git a/sci-geosciences/gpsd/files/gpsd-3.16-sysmacros.patch b/sci-geosciences/gpsd/files/gpsd-3.16-sysmacros.patch
new file mode 100644
index 000000000000..d9863c9280f5
--- /dev/null
+++ b/sci-geosciences/gpsd/files/gpsd-3.16-sysmacros.patch
@@ -0,0 +1,31 @@
+https://bugs.gentoo.org/581740
+
+From 87027243d101cfa7e01d9b697f890ea7b247449b Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Mon, 9 May 2016 14:33:06 -0400
+Subject: [PATCH] include sys/sysmacros.h for major
+
+These functions are not part of any official spec, and Linux C libs have
+always kept them in sys/sysmacros.h. Include the header directly to fix
+builds w/alternative C libs, and to work with future glibc versions.
+---
+ serial.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/serial.c b/serial.c
+index d8bdd8c..b748cab 100644
+--- a/serial.c
++++ b/serial.c
+@@ -14,6 +14,9 @@
+ #include <unistd.h>
+ #include <sys/socket.h>
+ #include <sys/param.h> /* defines BSD */
++#ifdef __linux__
++#include <sys/sysmacros.h>
++#endif
+
+ #include "gpsd_config.h"
+ #ifdef ENABLE_BLUEZ
+--
+2.7.4
+
diff --git a/sci-geosciences/gpsd/files/gpsd-3.17-do_not_rm_library.patch b/sci-geosciences/gpsd/files/gpsd-3.17-do_not_rm_library.patch
new file mode 100644
index 000000000000..83e2907fca5b
--- /dev/null
+++ b/sci-geosciences/gpsd/files/gpsd-3.17-do_not_rm_library.patch
@@ -0,0 +1,12 @@
+diff --git a/SConstruct b/SConstruct
+index c0f083a..4a98580 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -1646,7 +1646,6 @@ binaryinstall.append(env.Install(installdir('sbindir'), sbin_binaries))
+ binaryinstall.append(env.Install(installdir('bindir'), bin_binaries))
+ binaryinstall.append(LibraryInstall(env, installdir('libdir'), compiled_gpslib, libgps_version))
+ # Work around 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))
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.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-9999-do_not_rm_library.patch b/sci-geosciences/gpsd/files/gpsd-9999-do_not_rm_library.patch
new file mode 100644
index 000000000000..83e2907fca5b
--- /dev/null
+++ b/sci-geosciences/gpsd/files/gpsd-9999-do_not_rm_library.patch
@@ -0,0 +1,12 @@
+diff --git a/SConstruct b/SConstruct
+index c0f083a..4a98580 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -1646,7 +1646,6 @@ binaryinstall.append(env.Install(installdir('sbindir'), sbin_binaries))
+ binaryinstall.append(env.Install(installdir('bindir'), bin_binaries))
+ binaryinstall.append(LibraryInstall(env, installdir('libdir'), compiled_gpslib, libgps_version))
+ # Work around 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))
diff --git a/sci-geosciences/gpsd/files/gpsd.conf-2 b/sci-geosciences/gpsd/files/gpsd.conf-2
new file mode 100644
index 000000000000..0f52aa9b5e06
--- /dev/null
+++ b/sci-geosciences/gpsd/files/gpsd.conf-2
@@ -0,0 +1,7 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+# 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 100644
index 000000000000..d2a30071a22b
--- /dev/null
+++ b/sci-geosciences/gpsd/files/gpsd.init-2
@@ -0,0 +1,38 @@
+#!/sbin/openrc-run
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+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}
+}