From 95d374053e3cbb537450dbac1bc9bd9e94e02960 Mon Sep 17 00:00:00 2001 From: uriahheep Date: Fri, 18 Sep 2015 00:04:30 +0000 Subject: [PATCH] New package: gpsd-3.15 --- srcpkgs/gpsd-devel | 1 + srcpkgs/gpsd-python | 1 + srcpkgs/gpsd-qt | 1 + srcpkgs/gpsd-qt-devel | 1 + srcpkgs/gpsd-xgps | 1 + srcpkgs/gpsd/patches/musl-gpsmon-ctrl-l.patch | 38 +++++++ srcpkgs/gpsd/patches/musl-sockaddr.patch | 12 ++ srcpkgs/gpsd/patches/ncurses-pkgconfig.patch | 14 +++ srcpkgs/gpsd/template | 105 ++++++++++++++++++ 9 files changed, 174 insertions(+) create mode 120000 srcpkgs/gpsd-devel create mode 120000 srcpkgs/gpsd-python create mode 120000 srcpkgs/gpsd-qt create mode 120000 srcpkgs/gpsd-qt-devel create mode 120000 srcpkgs/gpsd-xgps create mode 100644 srcpkgs/gpsd/patches/musl-gpsmon-ctrl-l.patch create mode 100644 srcpkgs/gpsd/patches/musl-sockaddr.patch create mode 100644 srcpkgs/gpsd/patches/ncurses-pkgconfig.patch create mode 100644 srcpkgs/gpsd/template diff --git a/srcpkgs/gpsd-devel b/srcpkgs/gpsd-devel new file mode 120000 index 00000000000..f2e69cfb352 --- /dev/null +++ b/srcpkgs/gpsd-devel @@ -0,0 +1 @@ +gpsd \ No newline at end of file diff --git a/srcpkgs/gpsd-python b/srcpkgs/gpsd-python new file mode 120000 index 00000000000..f2e69cfb352 --- /dev/null +++ b/srcpkgs/gpsd-python @@ -0,0 +1 @@ +gpsd \ No newline at end of file diff --git a/srcpkgs/gpsd-qt b/srcpkgs/gpsd-qt new file mode 120000 index 00000000000..f2e69cfb352 --- /dev/null +++ b/srcpkgs/gpsd-qt @@ -0,0 +1 @@ +gpsd \ No newline at end of file diff --git a/srcpkgs/gpsd-qt-devel b/srcpkgs/gpsd-qt-devel new file mode 120000 index 00000000000..f2e69cfb352 --- /dev/null +++ b/srcpkgs/gpsd-qt-devel @@ -0,0 +1 @@ +gpsd \ No newline at end of file diff --git a/srcpkgs/gpsd-xgps b/srcpkgs/gpsd-xgps new file mode 120000 index 00000000000..f2e69cfb352 --- /dev/null +++ b/srcpkgs/gpsd-xgps @@ -0,0 +1 @@ +gpsd \ No newline at end of file diff --git a/srcpkgs/gpsd/patches/musl-gpsmon-ctrl-l.patch b/srcpkgs/gpsd/patches/musl-gpsmon-ctrl-l.patch new file mode 100644 index 00000000000..43b15e6c9eb --- /dev/null +++ b/srcpkgs/gpsd/patches/musl-gpsmon-ctrl-l.patch @@ -0,0 +1,38 @@ +From 95c99f69e026e8c57aecba545e51c97f3b284e75 Mon Sep 17 00:00:00 2001 +From: Gary E. Miller +Date: Tue, 23 Jun 2015 21:36:26 +0000 +Subject: Remove a BSD-ism. + +CTRL('L') is a BSD-ism. CTRL() is defined in sys/ttydefaults.h +which does not always exist. Instead of adding scons tests for +needing CTRL() and its include files just replace with a simple +constant. + +Needed for musl and found by Baruch Siach +--- +diff --git a/gpsmon.c b/gpsmon.c +index c3001c8..58c8300 100644 +--- a/gpsmon.c ++++ b/gpsmon.c +@@ -583,6 +583,9 @@ static void select_packet_monitor(struct gps_device_t *device) + (void)wnoutrefresh(devicewin); + } + ++/* Control-L character */ ++#define CTRL_L 0x0C ++ + static char *curses_get_command(void) + /* char-by-char nonblocking input, return accumulated command line on \n */ + { +@@ -591,7 +594,8 @@ static char *curses_get_command(void) + int c; + + c = wgetch(cmdwin); +- if (c == CTRL('L')) { ++ if (CTRL_L == c) { ++ /* ^L is to repaint the screen */ + (void)clearok(stdscr, true); + if (active != NULL && (*active)->initialize != NULL) + (void)(*active)->initialize(); +-- +cgit v0.9.0.2 diff --git a/srcpkgs/gpsd/patches/musl-sockaddr.patch b/srcpkgs/gpsd/patches/musl-sockaddr.patch new file mode 100644 index 00000000000..9caf0e1f6f6 --- /dev/null +++ b/srcpkgs/gpsd/patches/musl-sockaddr.patch @@ -0,0 +1,12 @@ +diff -urN gpsd-3.15-old/SConstruct gpsd-3.15-new/SConstruct +--- gpsd-3.15-old/SConstruct 2015-09-17 01:33:26.227445589 -0400 ++++ gpsd-3.15-new/SConstruct 2015-09-17 01:34:11.761522374 -0400 +@@ -613,7 +613,7 @@ + confdefs.append("#define SUN_LEN(ptr) ((size_t) (((struct sockaddr_un *) 0)->sun_path) + strlen((ptr)->sun_path))\n") + confdefs.append("#endif /* SUN_LEN */\n") + +- if config.CheckHeader(["bits/sockaddr.h", "linux/can.h"]): ++ if config.CheckHeader(["linux/can.h"]): + confdefs.append("#define HAVE_LINUX_CAN_H 1\n") + announce("You have kernel CANbus available.") + else: diff --git a/srcpkgs/gpsd/patches/ncurses-pkgconfig.patch b/srcpkgs/gpsd/patches/ncurses-pkgconfig.patch new file mode 100644 index 00000000000..7bbba0aff0e --- /dev/null +++ b/srcpkgs/gpsd/patches/ncurses-pkgconfig.patch @@ -0,0 +1,14 @@ +diff -urN gpsd-3.15-old/SConstruct gpsd-3.15-new/SConstruct +--- gpsd-3.15-old/SConstruct 2015-06-03 14:09:31.000000000 +0000 ++++ gpsd-3.15-new/SConstruct 2015-09-17 18:17:49.140818485 +0000 +@@ -539,8 +539,8 @@ + # are like FreeBSD. + ncurseslibs= [] + if env['ncurses']: +- if config.CheckPKG('ncurses'): +- ncurseslibs = pkg_config('ncurses') ++ if config.CheckPKG('ncursesw'): ++ ncurseslibs = pkg_config('ncursesw') + elif WhereIs('ncurses5-config'): + ncurseslibs = ['!ncurses5-config --libs --cflags'] + elif WhereIs('ncursesw5-config'): diff --git a/srcpkgs/gpsd/template b/srcpkgs/gpsd/template new file mode 100644 index 00000000000..860805610ad --- /dev/null +++ b/srcpkgs/gpsd/template @@ -0,0 +1,105 @@ +# Template file for 'gpsd' +pkgname=gpsd +version=3.15 +revision=1 +build_style=scons +patch_args=-p1 +make_build_args="dbus_export=0 gpsd_user=gpsd gpsd_group=gpsd sbindir=/usr/bin udevdir=/usr/lib/udev" +make_install_args="${make_build_args}" +short_desc="A GPS/AIS receiver monitoring daemon" +maintainer="uriahheep " +license="BSD" +homepage="http://www.catb.org/gpsd/" +distfiles="http://download-mirror.savannah.gnu.org/releases/gpsd/gpsd-${version}.tar.gz" +checksum="81c89e271ae112313e68655ab30d227bc38fe7841ffbff0f1860b12a9d7696ea" +system_groups="gpsd" +system_accounts="gpsd" +gpsd_pgroup="gpsd" + +depends="virtual?ntp-daemon ncurses libusb libcap libbluetooth pps-tools" +hostmakedepends="scons pkg-config bc python libxslt xmlto asciidoc" +makedepends="libudev-devel ntp libusb-devel python-devel pygtk-devel ncurses-devel pps-tools-devel libcap-devel libbluetooth-devel" + +case "$XBPS_TARGET_MACHINE" in + *-musl) :;; + *) hostmakedepends+=" qt-devel" ;; +esac + +pre_build() { + unset CPPFLAGS +} + +pre_install() { + export DESTDIR=${DESTDIR} +} + +do_install() { + scons ${makejobs} CC=$CC CXX=$CXX CCFLAGS="$CFLAGS" \ + CXXFLAGS="$CXXFLAGS" LINKFLAGS="$LDFLAGS" \ + prefix=/usr destdir=${DESTDIR} DESTDIR=${DESTDIR} \ + ${make_install_args} udev-install +} + +gpsd-python_package() { + short_desc+=" - python tools/bindings" + depends="python gnuplot ${sourcepkg}>=${version}_${revision}" + pycompile_module="gpsd" + pkg_install() { + vmove usr/lib/python2.7 + vmove usr/bin/gegps + vmove usr/bin/gpscat + vmove usr/bin/gpsfake + vmove usr/bin/gpsprof + vmove usr/share/man/man1/gegps.1 + vmove usr/share/man/man1/gpscat.1 + vmove usr/share/man/man1/gpsfake.1 + vmove usr/share/man/man1/gpsprof.1 + } +} + +gpsd-xgps_package() { + short_desc+=" - PyGTK based clients" + depends="pygtk ${sourcepkg}-python>=${version}_${revision}" + pkg_install() { + vmove usr/bin/xgps + vmove usr/bin/xgpsspeed + vmove usr/share/man/man1/xgps* + } +} + +gpsd-qt_package() { + short_desc+=" - Qt bindings" + depends="qt ${sourcepkg}>=${version}_${revision}" + pkg_install() { + case "$XBPS_TARGET_MACHINE" in + *-musl) :;; + *) + vmove usr/lib/libQgpsmm.so.* + vmove usr/lib/pkgconfig/Qgpsmm.pc ;; + esac + vmove usr/share/man/*/libQgpsmm* + } +} + +gpsd-qt-devel_package() { + short_desc+=" - Qt development files" + depends="qt-devel ${sourcepkg}-devel>=${version}_${revision}" + pkg_install() { + case "$XBPS_TARGET_MACHINE" in + *-musl) :;; + *) + vmove usr/lib/libQgpsmm.so + vmove usr/lib/libQgpsmm.prl ;; + esac + } +} + +gpsd-devel_package() { + short_desc+=" - development files" + depends="${sourcepkg}>=${version}_${revision}" + pkg_install() { + vmove usr/include + vmove usr/lib/pkgconfig + vmove usr/lib/*.so + } +}