Missing subject line and please squash 2/2 into this. Please reply when you were able to test it (build-time and run-time).
On Tue, May 20, 2014 at 12:54:47PM -0700, Rob Calhoun wrote: > TODO: identify when udev is in use and add support for it automatically > --- > ...prefix-includepy-with-sysroot-and-drop-sy.patch | 71 ++++++++ > ...struct-respect-sysroot-also-in-SPLINTOPTS.patch | 30 ++++ > .../gpsd-3.10/0004-SConstruct-remove-rpath.patch | 42 +++++ > meta-oe/recipes-navigation/gpsd/gpsd.inc | 179 > +++++++++++++++++++++ > meta-oe/recipes-navigation/gpsd/gpsd_3.10.bb | 15 ++ > meta-oe/recipes-navigation/gpsd/gpsd_3.7.bb | 140 +--------------- > .../recipes-navigation/gpsd/supported-chipsets.inc | 28 ++++ > 7 files changed, 372 insertions(+), 133 deletions(-) > create mode 100644 > meta-oe/recipes-navigation/gpsd/gpsd-3.10/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch > create mode 100644 > meta-oe/recipes-navigation/gpsd/gpsd-3.10/0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch > create mode 100644 > meta-oe/recipes-navigation/gpsd/gpsd-3.10/0004-SConstruct-remove-rpath.patch > create mode 100644 meta-oe/recipes-navigation/gpsd/gpsd.inc > create mode 100644 meta-oe/recipes-navigation/gpsd/gpsd_3.10.bb > create mode 100644 meta-oe/recipes-navigation/gpsd/supported-chipsets.inc > > diff --git > a/meta-oe/recipes-navigation/gpsd/gpsd-3.10/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch > > b/meta-oe/recipes-navigation/gpsd/gpsd-3.10/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch > new file mode 100644 > index 0000000..e557703 > --- /dev/null > +++ > b/meta-oe/recipes-navigation/gpsd/gpsd-3.10/0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch > @@ -0,0 +1,71 @@ > +From dd3ca38b27cce93f7e932abaa27b41371234fa90 Mon Sep 17 00:00:00 2001 > +From: Martin Jansa <[email protected]> > +Date: Tue, 24 Apr 2012 18:45:14 +0200 > +Subject: [PATCH] SConstruct: prefix includepy with sysroot and drop sysroot > + from python_lib_dir > + > +* without PYTHONPATH, distutil's sysconfig returns INCLUDEPY without sysroot > prefix > + and with PYTHONPATH from OE it's pointing to native python dir > + > + $ export > PYTHONPATH=/OE/shr-core/tmp-eglibc/sysroots/om-gta02/usr/lib/python2.7/ > + $ python > + Python 2.7.2 (default, Apr 18 2012, 09:19:59) > + [GCC 4.6.2] on linux2 > + Type "help", "copyright", "credits" or "license" for more information. > + >>> from distutils import sysconfig > + >>> sysconfig.get_config_vars('INCLUDEPY') > + ['/OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/python2.7'] > + >>> > + $ unset PYTHONPATH > + $ python > + Python 2.7.2 (default, Apr 18 2012, 09:19:59) > + [GCC 4.6.2] on linux2 > + Type "help", "copyright", "credits" or "license" for more information. > + >>> from distutils import sysconfig > + >>> sysconfig.get_config_vars('INCLUDEPY') > + ['/python2.7'] > + >>> import sysconfig > + >>> sysconfig.get_config_vars('INCLUDEPY') > + ['/OE/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/python2.7'] > +* python_lib_dir = python_lib_dir.replace(env['sysroot'], '') > + returns path to target sysroot > + > +Signed-off-by: Martin Jansa <[email protected]> > +--- > + SConstruct | 9 +++++++++ > + 1 files changed, 9 insertions(+), 0 deletions(-) > + > +diff --git a/SConstruct b/SConstruct > +index 14e2f59..47c5753 100644 > +--- a/SConstruct > ++++ b/SConstruct > +@@ -1084,6 +1084,10 @@ else: > + if vars[i] is None: > + vars[i] = [] > + (cc, cxx, opt, basecflags, ccshared, ldshared, so_ext, includepy, > ldflags) = vars > ++ if env['sysroot']: > ++ print "Prefixing includepy '%s' with sysroot prefix" % includepy > ++ includepy = os.path.normpath("%s/%s/%s/%s" % (env['sysroot'], > env['prefix'], env['includedir'], includepy)) > ++ print "'%s'" % includepy > + # FIXME: build of python wrappers doesn't pickup flags set for > coveraging, manually add them here > + if env['coveraging']: > + basecflags += ' -coverage' > +@@ -1350,11 +1358,14 @@ if not env['python']: > + python_install = [] > + else: > + python_lib_dir = sysconfig.get_python_lib(plat_specific=1) > ++ python_lib_dir = python_lib_dir.replace(env['sysroot'], '') > + python_module_dir = python_lib_dir + os.sep + 'gps' > + python_extensions_install = python_env.Install( DESTDIR + > python_module_dir, > + python_built_extensions) > + if not env['debug'] and not env['profiling'] and env['strip']: > + python_env.AddPostAction(python_extensions_install, '$STRIP > $TARGET') > ++ env.AddPostAction(python_extensions_install, '$CHRPATH -r "%s" > "$TARGET"' \ > ++ % (python_lib_dir, )) > + > + python_modules_install = python_env.Install( DESTDIR + > python_module_dir, > + python_modules) > + > +-- > +1.7.8.5 > + > diff --git > a/meta-oe/recipes-navigation/gpsd/gpsd-3.10/0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch > > b/meta-oe/recipes-navigation/gpsd/gpsd-3.10/0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch > new file mode 100644 > index 0000000..06dd6e7 > --- /dev/null > +++ > b/meta-oe/recipes-navigation/gpsd/gpsd-3.10/0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch > @@ -0,0 +1,30 @@ > +From f5f262be8ae54bd0c0f52802f2007ec89163756f Mon Sep 17 00:00:00 2001 > +From: Martin Jansa <[email protected]> > +Date: Tue, 24 Apr 2012 11:52:35 +0200 > +Subject: [PATCH 1/2] SConstruct: respect sysroot also in SPLINTOPTS > + > +Signed-off-by: Martin Jansa <[email protected]> > +Signed-off-by: Denis 'GNUtoo' Carikli <[email protected]> > +--- > + SConstruct | 5 ++++- > + 1 files changed, 4 insertions(+), 1 deletions(-) > + > +diff --git a/SConstruct b/SConstruct > +index 14e2f59..47c5753 100644 > +--- a/SConstruct > ++++ b/SConstruct > +@@ -1414,7 +1425,10 @@ def Utility(target, source, action): > + # Report splint warnings > + # Note: test_bits.c is unsplintable because of the PRI64 macros. > + # If you get preprocessor or fatal errors, add +showscan. > +-splintopts = "-I/usr/include/libusb-1.0 +quiet" > ++if not env['sysroot']: > ++ splintopts = "-I/usr/include/libusb-1.0 +quiet" > ++else: > ++ splintopts = "-I%s/usr/include/libusb-1.0 +quiet" % env['sysroot'] > + # splint does not know about multi-arch, work around that > + ma_status, ma = _getstatusoutput('dpkg-architecture -qDEB_HOST_MULTIARCH') > + if ma_status == 0: > +-- > +1.7.5.4 > + > diff --git > a/meta-oe/recipes-navigation/gpsd/gpsd-3.10/0004-SConstruct-remove-rpath.patch > > b/meta-oe/recipes-navigation/gpsd/gpsd-3.10/0004-SConstruct-remove-rpath.patch > new file mode 100644 > index 0000000..83b98bb > --- /dev/null > +++ > b/meta-oe/recipes-navigation/gpsd/gpsd-3.10/0004-SConstruct-remove-rpath.patch > @@ -0,0 +1,42 @@ > +From 7d736bbd517c12d19d7b85a5b0db84732b2f86da Mon Sep 17 00:00:00 2001 > +From: Martin Jansa <[email protected]> > +Date: Tue, 24 Apr 2012 16:24:35 +0200 > +Subject: [PATCH 2/2] SConstruct: remove rpath > + > +* even with correct prefix (without DESTDIR) included it's redundant > + WARNING: QA Issue: libgps: > + > /work/armv4t-oe-linux-gnueabi/gpsd/gpsd-3.5-r0/packages-split/libgps/usr/lib/libgps.so.20.0 > + contains probably-redundant RPATH /usr/lib > +* and with prefix from scons.bbclass it's invalid > + WARNING: QA Issue: package libgps contains bad RPATH > + > /OE/shr-core/tmp-eglibc/work/armv4t-oe-linux-gnueabi/gpsd/gpsd-3.5-r0/image/usr/lib > + in file > + > /OE/shr-core/tmp-eglibc/work/armv4t-oe-linux-gnueabi/gpsd/gpsd-3.5-r0/packages-split/libgps/usr/lib/libgps.so.20.0 > + > +Signed-off-by: Martin Jansa <[email protected]> > +Signed-off-by: Denis 'GNUtoo' Carikli <[email protected]> > +--- > + SConstruct | 7 +++++-- > + 1 files changed, 5 insertions(+), 2 deletions(-) > + > +diff --git a/SConstruct b/SConstruct > +index a1bddb9..3e7c607 100644 > +--- a/SConstruct > ++++ b/SConstruct > +@@ -1205,8 +1205,11 @@ if qt_env: > + > + # We don't use installdir here in order to avoid having DESTDIR affect the > rpath > + if env["shared"] and env["chrpath"]: > +- env.AddPostAction(binaryinstall, '$CHRPATH -r "%s" "$TARGET"' \ > +- % (installdir('libdir', False), )) > ++ if not env['sysroot']: > ++ env.AddPostAction(binaryinstall, '$CHRPATH -r "%s" "$TARGET"' \ > ++ % (installdir('libdir', False), )) > ++ else: > ++ env.AddPostAction(binaryinstall, '$CHRPATH -d "$TARGET"') > + > + if not env['debug'] and not env['profiling'] and env['strip']: > + env.AddPostAction(binaryinstall, '$STRIP $TARGET') > +-- > +1.7.5.4 > + > diff --git a/meta-oe/recipes-navigation/gpsd/gpsd.inc > b/meta-oe/recipes-navigation/gpsd/gpsd.inc > new file mode 100644 > index 0000000..ecff14c > --- /dev/null > +++ b/meta-oe/recipes-navigation/gpsd/gpsd.inc > @@ -0,0 +1,179 @@ > +SUMMARY = "Daemon that parses and shares GPS devices" > +DESCRIPTION = "gpsd is a service daemon that monitors one or more GPSes or > AIS receivers attached to a host computer \ > +through serial or USB ports, making all data on the location/course/velocity > of the sensors available to be queried \ > +via TCP, messagebus, or shared memory" > +AUTHOR = "Authors: Eric S. Raymond, Chris Kuethe, Gary Miller. Former > authors whose bits have been plowed under by \ > +code turnover: Remco Treffcorn, Derrick Brashear, Russ Nelson." > +HOMEPAGE = "http://www.catb.org/gpsd/" > +SECTION = "console/network" > +LICENSE = "BSD" > +LIC_FILES_CHKSUM = "file://COPYING;md5=d217a23f408e91c94359447735bc1800" > +DEPENDS = "dbus dbus-glib ncurses python libusb1 chrpath-replacement-native" > +PROVIDES = "virtual/gpsd" > + > +EXTRANATIVEPATH += "chrpath-native" > + > +# override gpsd-default to select device other than /dev/ttyS0 > + > +SRC_URI = "http://download.savannah.gnu.org/releases/${PN}/${P}.tar.gz \ > + file://gpsd-default \ > + file://gpsd \ > + file://60-gpsd.rules \ > + file://gpsd.service \ > +" > + > +inherit scons update-rc.d python-dir pythonnative systemd > + > +INITSCRIPT_NAME = "gpsd" > +INITSCRIPT_PARAMS = "defaults 35" > + > +export STAGING_INCDIR > +export STAGING_LIBDIR > + > + > +SYSTEMD_OESCONS = "${@base_contains('DISTRO_FEATURES', 'systemd', 'true', > 'false',d)}" > + > +PACKAGECONFIG += "${@base_contains('DISTRO_FEATURES', 'bluetooth', 'bluez', > '', d)}" > +PACKAGECONFIG += "${@base_contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', > d)}" > +PACKAGECONFIG += "${@base_contains('DISTRO_FEATURES', 'usbhost', 'usb', '', > d)}" > +# TODO: handle udev support automatically > + > +include supported-chipsets.inc > + > +# CONNECTIVITY > +PACKAGECONFIG[bluez] = "bluez='true',bluez='false',bluez4" > +PACKAGECONFIG[ipv6] = "ipv6='true',ipv6='false'," > +PACKAGECONFIG[usb] = "usb='true',usb='false',udev libusb" > + > +# RECEIVERS > +PACKAGECONFIG[ashtech] = "ashtech='true',ashtech='false'" > +PACKAGECONFIG[earthmate] = "earthmate='true',earthmate='false'" > +PACKAGECONFIG[evermore] = "evermore='true',evermore='false'" > +PACKAGECONFIG[fury] = "fury='true',fury='false'" > +PACKAGECONFIG[fv18] = "fv18='true',fv18='false'" > +PACKAGECONFIG[garmin] = "garmin='true',garmin='false'" > +PACKAGECONFIG[garmintxt] = "garmintxt='true',garmintxt='false'" > +PACKAGECONFIG[geostar] = "geostar='true',geostar='false'" > +PACKAGECONFIG[itrax] = "itrax='true',itrax='false'" > +PACKAGECONFIG[mtk3301] = "mtk3301='true',mtk3301='false'" > +PACKAGECONFIG[navcom] = "navcom='true',navcom='false'" > +PACKAGECONFIG[ntrip] = "ntrip='true',ntrip='false'" > +PACKAGECONFIG[oceanserver] = "oceanserver='true',oceanserver='false'" > +PACKAGECONFIG[oncore] = "oncore='true',oncore='false'" > +PACKAGECONFIG[rtcm104v2] = "rtcm104v2='true',rtcm104v2='false'" > +PACKAGECONFIG[rtcm104v3] = "rtcm104v3='true',rtcm104v3='false'" > +PACKAGECONFIG[sirf] = "sirf='true',sirf='false'" > +PACKAGECONFIG[superstar2] = "superstar2='true',superstar2='false'" > +PACKAGECONFIG[tnt] = "tnt='true',tnt='false'" > +PACKAGECONFIG[tripmate] = "tripmate='true',tripmate='false'" > +PACKAGECONFIG[tsip] = "tsip='true',tsip='false'" > +PACKAGECONFIG[ublox] = "ublox='true',ublox='false'" > + > + > +EXTRA_OESCONS = " \ > + sysroot=${STAGING_DIR_TARGET} \ > + libQgpsmm='false' \ > + debug='true' \ > + strip='false' \ > + systemd='${SYSTEMD_OESCONS}' \ > + ${EXTRA_OECONF} \ > +" > +# this cannot be used, because then chrpath is not found and only static lib > is built > +# target=${HOST_SYS} > + > +do_compile_prepend() { > + export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}" > + export PKG_CONFIG="PKG_CONFIG_SYSROOT_DIR=\"${PKG_CONFIG_SYSROOT_DIR}\" > pkg-config" > + export STAGING_PREFIX="${STAGING_DIR_HOST}/${prefix}" > + > + export BUILD_SYS="${BUILD_SYS}" > + export HOST_SYS="${HOST_SYS}" > +} > + > +do_install() { > + export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}" > + export PKG_CONFIG="PKG_CONFIG_SYSROOT_DIR=\"${PKG_CONFIG_SYSROOT_DIR}\" > pkg-config" > + export STAGING_PREFIX="${STAGING_DIR_HOST}/${prefix}" > + > + export BUILD_SYS="${BUILD_SYS}" > + export HOST_SYS="${HOST_SYS}" > + > + export DESTDIR="${D}" > + # prefix is used for RPATH and DESTDIR/prefix for instalation > + ${STAGING_BINDIR_NATIVE}/scons prefix=${prefix} install > ${EXTRA_OESCONS}|| \ > + bbfatal "scons install execution failed." > +} > + > +do_install_append() { > + install -d ${D}/${sysconfdir}/init.d > + install -m 0755 ${WORKDIR}/gpsd ${D}/${sysconfdir}/init.d/ > + install -d ${D}/${sysconfdir}/default > + install -m 0644 ${WORKDIR}/gpsd-default > ${D}/${sysconfdir}/default/gpsd.default > + > + #support for udev > + install -d ${D}/${sysconfdir}/udev/rules.d > + install -m 0644 ${WORKDIR}/60-gpsd.rules ${D}/${sysconfdir}/udev/rules.d > + install -d ${D}${base_libdir}/udev/ > + install -m 0755 ${S}/gpsd.hotplug ${D}${base_libdir}/udev/ > + > + #support for python > + install -d ${D}/${PYTHON_SITEPACKAGES_DIR}/gps > + install -m 755 ${S}/gps/*.py ${D}/${PYTHON_SITEPACKAGES_DIR}/gps > + > + #support for systemd > + install -d ${D}${systemd_unitdir}/system/ > + install -m 0644 ${WORKDIR}/${PN}.service > ${D}${systemd_unitdir}/system/${PN}.service > + install -m 0644 ${S}/systemd/${PN}.socket > ${D}${systemd_unitdir}/system/${PN}.socket > +} > + > +pkg_postinst_${PN}-conf() { > + update-alternatives --install ${sysconfdir}/default/gpsd gpsd-defaults > ${sysconfdir}/default/gpsd.default 10 > +} > + > +pkg_postrm_${PN}-conf() { > + update-alternatives --remove gpsd-defaults > ${sysconfdir}/default/gpsd.default > +} > + > +# Note: you probably want executables "gpsd", "gpsctl", "gpsmon" and library > "libgps". > +# Select package "gpsd" for the former; add "libgps" for library support. > "libgpsd" is generally not needed. > +# Add "gpsd-udev" for hot-plug support. TODO: automatically add udev support > when udev is a DISTRO_FEATURE. > + > +PACKAGES =+ "libgps libgpsd python-pygps-dbg python-pygps gpsd-udev > gpsd-conf gpsd-gpsctl gps-utils" > + > +FILES_${PN}-dev += "${libdir}/pkgconfdir/libgpsd.pc > ${libdir}/pkgconfdir/libgps.pc" > + > +FILES_python-pygps-dbg += " ${libdir}/python*/site-packages/gps/.debug" > + > +RDEPENDS_${PN} = "gpsd-gpsctl" > +RRECOMMENDS_${PN} = "gpsd-conf" > + > +SUMMARY_gpsd-udev = "udev relevant files to use gpsd hotplugging" > +FILES_gpsd-udev = "${base_libdir}/udev ${sysconfdir}/udev/*" > +RDEPENDS_gpsd-udev += "udev gpsd-conf" > + > +SUMMARY_libgpsd = "C service library which supports querying GPS devices > directly; used by gpsd." > +FILES_libgpsd = "${libdir}/libgpsd.so.*" > + > +SUMMARY_libgps = "C service library which supports communicating with an > instance of the gpsd; almost certainly what you want." > +FILES_libgps = "${libdir}/libgps.so.*" > + > +SUMMARY_gpsd-conf = "gpsd configuration files and init scripts" > +FILES_gpsd-conf = "${sysconfdir}" > +CONFFILES_gpsd-conf = "${sysconfdir}/default/gpsd.default" > + > +SUMMARY_gpsd-gpsctl = "Tools for controlling GPS via gpsd or directly and > monitoring PPS status" > +FILES_gpsd-gpsctl = "${bindir}/gpsctl ${bindir}/gpsmon" > + > +SUMMARY_gps-utils = "Utils used for simulating, monitoring,... a GPS > (requires python)" > +FILES_gps-utils = "${bindir}/*" > +RDEPENDS_gps-utils = "python-pygps" > + > +SUMMARY_python-pygps = "Python bindings to gpsd" > +FILES_python-pygps = "${PYTHON_SITEPACKAGES_DIR}/*" > +RDEPENDS_python-pygps = "python-core python-curses gpsd python-json" > + > + > +RPROVIDES_${PN} += "${PN}-systemd" > +RREPLACES_${PN} += "${PN}-systemd" > +RCONFLICTS_${PN} += "${PN}-systemd" > +SYSTEMD_SERVICE_${PN} = "${PN}.socket" > diff --git a/meta-oe/recipes-navigation/gpsd/gpsd_3.10.bb > b/meta-oe/recipes-navigation/gpsd/gpsd_3.10.bb > new file mode 100644 > index 0000000..715b5a7 > --- /dev/null > +++ b/meta-oe/recipes-navigation/gpsd/gpsd_3.10.bb > @@ -0,0 +1,15 @@ > +include gpsd.inc > + > +# patches are version-specific, although currently these are the same as > those in 3.7 > +SRC_URI_append = "\ > + file://0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch \ > + file://0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch \ > + file://0004-SConstruct-remove-rpath.patch \ > +" > + > +PR = "r1" > + > +SRC_URI[md5sum] = "fc5b03aae38b9b5b6880b31924d0ace3" > +SRC_URI[sha256sum] = > "706fc2c1cf3dfbf87c941f543381bccc9c4dc9f8240eec407dcbf2f70b854320" > + > + > diff --git a/meta-oe/recipes-navigation/gpsd/gpsd_3.7.bb > b/meta-oe/recipes-navigation/gpsd/gpsd_3.7.bb > index 97f3354..6b5e456 100644 > --- a/meta-oe/recipes-navigation/gpsd/gpsd_3.7.bb > +++ b/meta-oe/recipes-navigation/gpsd/gpsd_3.7.bb > @@ -1,139 +1,13 @@ > -SUMMARY = "A TCP/IP Daemon simplifying the communication with GPS devices" > -SECTION = "console/network" > -LICENSE = "BSD" > -LIC_FILES_CHKSUM = "file://COPYING;md5=d217a23f408e91c94359447735bc1800" > -DEPENDS = "dbus dbus-glib ncurses python libusb1 chrpath-replacement-native" > -PROVIDES = "virtual/gpsd" > +include gpsd.inc > > -EXTRANATIVEPATH += "chrpath-native" > - > -PR = "r14" > - > -SRC_URI = "http://download.savannah.gnu.org/releases/${PN}/${P}.tar.gz \ > +# assume patches are version-specific > +SRC_URI_append = "\ > + file://0001-SConstruct-disable-html-and-man-docs-building-becaus.patch \ > + file://0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch \ > file://0002-SConstruct-respect-sysroot-also-in-SPLINTOPTS.patch \ > file://0004-SConstruct-remove-rpath.patch \ > - file://0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch \ > - file://0001-SConstruct-disable-html-and-man-docs-building-becaus.patch \ > - file://gpsd-default \ > - file://gpsd \ > - file://60-gpsd.rules \ > - file://gpsd.service \ > " > +PR = "r15" > + > SRC_URI[md5sum] = "52d9785eaf1a51298bb8900dbde88f98" > SRC_URI[sha256sum] = > "7800c478ee9d7ca7a502b0f892828561b1fbf7bc69d9d38c447c82c3628302ac" > - > -inherit scons update-rc.d python-dir pythonnative systemd > - > -INITSCRIPT_NAME = "gpsd" > -INITSCRIPT_PARAMS = "defaults 35" > - > -SYSTEMD_OESCONS = "${@base_contains('DISTRO_FEATURES', 'systemd', 'true', > 'false',d)}" > - > -export STAGING_INCDIR > -export STAGING_LIBDIR > - > -PACKAGECONFIG ??= "bluez" > -PACKAGECONFIG[bluez] = "bluez='true',bluez='false',bluez4" > - > -EXTRA_OESCONS = " \ > - sysroot=${STAGING_DIR_TARGET} \ > - libQgpsmm='false' \ > - debug='true' \ > - strip='false' \ > - systemd='${SYSTEMD_OESCONS}' \ > - ${EXTRA_OECONF} \ > -" > -# this cannot be used, because then chrpath is not found and only static lib > is built > -# target=${HOST_SYS} > - > -do_compile_prepend() { > - export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}" > - export PKG_CONFIG="PKG_CONFIG_SYSROOT_DIR=\"${PKG_CONFIG_SYSROOT_DIR}\" > pkg-config" > - export STAGING_PREFIX="${STAGING_DIR_HOST}/${prefix}" > - > - export BUILD_SYS="${BUILD_SYS}" > - export HOST_SYS="${HOST_SYS}" > -} > - > -do_install() { > - export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}" > - export PKG_CONFIG="PKG_CONFIG_SYSROOT_DIR=\"${PKG_CONFIG_SYSROOT_DIR}\" > pkg-config" > - export STAGING_PREFIX="${STAGING_DIR_HOST}/${prefix}" > - > - export BUILD_SYS="${BUILD_SYS}" > - export HOST_SYS="${HOST_SYS}" > - > - export DESTDIR="${D}" > - # prefix is used for RPATH and DESTDIR/prefix for instalation > - ${STAGING_BINDIR_NATIVE}/scons prefix=${prefix} install > ${EXTRA_OESCONS}|| \ > - bbfatal "scons install execution failed." > -} > - > -do_install_append() { > - install -d ${D}/${sysconfdir}/init.d > - install -m 0755 ${WORKDIR}/gpsd ${D}/${sysconfdir}/init.d/ > - install -d ${D}/${sysconfdir}/default > - install -m 0644 ${WORKDIR}/gpsd-default > ${D}/${sysconfdir}/default/gpsd.default > - > - #support for udev > - install -d ${D}/${sysconfdir}/udev/rules.d > - install -m 0644 ${WORKDIR}/60-gpsd.rules ${D}/${sysconfdir}/udev/rules.d > - install -d ${D}${base_libdir}/udev/ > - install -m 0755 ${S}/gpsd.hotplug ${D}${base_libdir}/udev/ > - > - #support for python > - install -d ${D}/${PYTHON_SITEPACKAGES_DIR}/gps > - install -m 755 ${S}/gps/*.py ${D}/${PYTHON_SITEPACKAGES_DIR}/gps > - > - #support for systemd > - install -d ${D}${systemd_unitdir}/system/ > - install -m 0644 ${WORKDIR}/${PN}.service > ${D}${systemd_unitdir}/system/${PN}.service > - install -m 0644 ${S}/systemd/${PN}.socket > ${D}${systemd_unitdir}/system/${PN}.socket > -} > - > -pkg_postinst_${PN}-conf() { > - update-alternatives --install ${sysconfdir}/default/gpsd gpsd-defaults > ${sysconfdir}/default/gpsd.default 10 > -} > - > -pkg_postrm_${PN}-conf() { > - update-alternatives --remove gpsd-defaults > ${sysconfdir}/default/gpsd.default > -} > - > -PACKAGES =+ "libgps libgpsd python-pygps-dbg python-pygps gpsd-udev > gpsd-conf gpsd-gpsctl gps-utils" > - > -FILES_${PN}-dev += "${libdir}/pkgconfdir/libgpsd.pc > ${libdir}/pkgconfdir/libgps.pc" > - > -FILES_python-pygps-dbg += " ${libdir}/python*/site-packages/gps/.debug" > - > -RDEPENDS_${PN} = "gpsd-gpsctl" > -RRECOMMENDS_${PN} = "gpsd-conf gpsd-udev gpsd-machine-conf" > - > -SUMMARY_gpsd-udev = "udev relevant files to use gpsd hotplugging" > -FILES_gpsd-udev = "${base_libdir}/udev ${sysconfdir}/udev/*" > -RDEPENDS_gpsd-udev += "udev gpsd-conf" > - > -SUMMARY_libgpsd = "C service library used for communicating with gpsd" > -FILES_libgpsd = "${libdir}/libgpsd.so.*" > - > -SUMMARY_libgps = "C service library used for communicating with gpsd" > -FILES_libgps = "${libdir}/libgps.so.*" > - > -SUMMARY_gpsd-conf = "gpsd configuration files and init scripts" > -FILES_gpsd-conf = "${sysconfdir}" > -CONFFILES_gpsd-conf = "${sysconfdir}/default/gpsd.default" > - > -SUMMARY_gpsd-gpsctl = "Tool for tweaking GPS modes" > -FILES_gpsd-gpsctl = "${bindir}/gpsctl" > - > -SUMMARY_gps-utils = "Utils used for simulating, monitoring,... a GPS" > -FILES_gps-utils = "${bindir}/*" > -RDEPENDS_gps-utils = "python-pygps" > - > -SUMMARY_python-pygps = "Python bindings to gpsd" > -FILES_python-pygps = "${PYTHON_SITEPACKAGES_DIR}/*" > -RDEPENDS_python-pygps = "python-core python-curses gpsd python-json" > - > -RPROVIDES_${PN} += "${PN}-systemd" > -RREPLACES_${PN} += "${PN}-systemd" > -RCONFLICTS_${PN} += "${PN}-systemd" > -SYSTEMD_SERVICE_${PN} = "${PN}.socket" > diff --git a/meta-oe/recipes-navigation/gpsd/supported-chipsets.inc > b/meta-oe/recipes-navigation/gpsd/supported-chipsets.inc > new file mode 100644 > index 0000000..dee898b > --- /dev/null > +++ b/meta-oe/recipes-navigation/gpsd/supported-chipsets.inc > @@ -0,0 +1,28 @@ > +# gpsd probes for various binary chipsets in a predefined search order. To > minimize build size > +# and protocol probe time, override this file using .bbappend and remove any > unwanted chipsets > +# For a list of all features run "scons -h" > +# "nmea", "nmea2000" and "aivdm" (required for nmea2000) are always included > + > +PACKAGECONFIG += "ashtech" > +PACKAGECONFIG += "earthmate" > +PACKAGECONFIG += "evermore" > +PACKAGECONFIG += "fury" > +PACKAGECONFIG += "fv18" > +PACKAGECONFIG += "garmin" > +PACKAGECONFIG += "garmintxt" > +PACKAGECONFIG += "geostar" > +PACKAGECONFIG += "itrax" > +PACKAGECONFIG += "mtk3301" > +PACKAGECONFIG += "navcom" > +PACKAGECONFIG += "ntrip" > +PACKAGECONFIG += "oceanserver" > +PACKAGECONFIG += "oncore" > +PACKAGECONFIG += "rtcm104v2" > +PACKAGECONFIG += "rtcm104v3" > +PACKAGECONFIG += "sirf" > +PACKAGECONFIG += "superstar2" > +PACKAGECONFIG += "tnt" > +PACKAGECONFIG += "tripmate" > +PACKAGECONFIG += "tsip" > +PACKAGECONFIG += "ublox" > + > -- > 1.9.1 > -- Martin 'JaMa' Jansa jabber: [email protected]
signature.asc
Description: Digital signature
-- _______________________________________________ Openembedded-devel mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-devel
