diff options
author | John Klug <john.klug@multitech.com> | 2019-05-02 17:03:07 -0500 |
---|---|---|
committer | John Klug <john.klug@multitech.com> | 2019-07-03 12:35:42 -0500 |
commit | 250d9c4286d9b7a64776914c1dee9af570270561 (patch) | |
tree | 01e3348087371a9152afa88ba7650b7404a13449 | |
parent | ac936ddaa8b17c39a3ab1a5f470d639f6eadbc04 (diff) | |
download | meta-mlinux-250d9c4286d9b7a64776914c1dee9af570270561.tar.gz meta-mlinux-250d9c4286d9b7a64776914c1dee9af570270561.tar.bz2 meta-mlinux-250d9c4286d9b7a64776914c1dee9af570270561.zip |
moved mLinux to gpsd 3.16 to improve gpsctl reliablity4.1.9
-rw-r--r-- | conf/distro/mlinux.conf | 4 | ||||
-rw-r--r-- | recipes-connectivity/lora/lora-gateway_5.0.1.bb | 3 | ||||
-rw-r--r-- | recipes-core/images/mlinux-factory-image.bb | 2 | ||||
-rw-r--r-- | recipes-navigation/gpsd/gpsd_3.16.bb | 51 | ||||
-rw-r--r-- | recipes-navigation/gpsd/gpsd_3.18.1.bb.save (renamed from recipes-navigation/gpsd/gpsd_3.18.1.bb) | 0 | ||||
-rw-r--r-- | recipes-navigation/gpsd/libgps24_3.18.1.bb | 142 |
6 files changed, 192 insertions, 10 deletions
diff --git a/conf/distro/mlinux.conf b/conf/distro/mlinux.conf index a98bbbb..1b128b7 100644 --- a/conf/distro/mlinux.conf +++ b/conf/distro/mlinux.conf @@ -1,7 +1,7 @@ DISTRO = "mlinux" DISTRO_NAME = "mLinux" DISTRO_BASE_VERSION = "4.1" -DISTRO_VERSION = "${DISTRO_BASE_VERSION}.7" +DISTRO_VERSION = "${DISTRO_BASE_VERSION}.9" DISTRO_CODENAME = "" SDK_VENDOR = "-mlinux" SDK_VERSION := "${@'${DISTRO_VERSION}'.replace('snapshot-${DATE}','snapshot')}" @@ -72,4 +72,4 @@ require java.inc PREFERRED_VERSION_nodejs ?= "0.10.%" PREFERRED_VERSION_nodejs-native ?= "0.10.%" -PREFERRED_VERSION_gpsd ?= "3.18.1" +PREFERRED_VERSION_gpsd ?= "3.16" diff --git a/recipes-connectivity/lora/lora-gateway_5.0.1.bb b/recipes-connectivity/lora/lora-gateway_5.0.1.bb index c8f1ffc..23538a9 100644 --- a/recipes-connectivity/lora/lora-gateway_5.0.1.bb +++ b/recipes-connectivity/lora/lora-gateway_5.0.1.bb @@ -5,7 +5,8 @@ SECTION = "console/utils" # Semtech license is a modified BSD-style license LICENSE = "Proprietary" LIC_FILES_CHKSUM = "file://LICENSE;md5=a2bdef95625509f821ba00460e3ae0eb" -DEPENDS = "gpsd" +DEPENDS = "libgps24" +RDEPENDS_${PN} = "libgps24" PR = "r11" SRCREV = "v${PV}" diff --git a/recipes-core/images/mlinux-factory-image.bb b/recipes-core/images/mlinux-factory-image.bb index 37a6533..b7406f1 100644 --- a/recipes-core/images/mlinux-factory-image.bb +++ b/recipes-core/images/mlinux-factory-image.bb @@ -92,6 +92,6 @@ IMAGE_INSTALL += "pps-tools" IMAGE_INSTALL += "dnsmasq bluez5-pand bluez5-rfcomm" # When ntp is to use the GPS, gps-utils is required -IMAGE_INSTALL += "gpsd libgps ntp ntp-utils gpspipe gps-utils" +IMAGE_INSTALL += "gpsd libgps24 ntp ntp-utils gpspipe gps-utils" IMAGE_INSTALL += "lxfp uvccapture" diff --git a/recipes-navigation/gpsd/gpsd_3.16.bb b/recipes-navigation/gpsd/gpsd_3.16.bb index 56fd8e4..62fe633 100644 --- a/recipes-navigation/gpsd/gpsd_3.16.bb +++ b/recipes-navigation/gpsd/gpsd_3.16.bb @@ -4,7 +4,7 @@ LICENSE = "BSD" LIC_FILES_CHKSUM = "file://COPYING;md5=d217a23f408e91c94359447735bc1800" DEPENDS = "dbus dbus-glib ncurses python libusb1 chrpath-replacement-native pps-tools" PROVIDES = "virtual/gpsd" -PR="m9" +PR="m11" EXTRANATIVEPATH += "chrpath-native" @@ -60,8 +60,33 @@ EXTRA_OESCONS = " \ chrpath='yes' \ systemd='${SYSTEMD_OESCONS}' \ libdir='${libdir}' \ + ashtech='no' \ + earthmate='no' \ + evermore='no' \ + fury='no' \ + fv18='no' \ + garmin='no' \ + garmintxt='no' \ + geostar='no' \ + greis='no' \ + itrax='no' \ + mtk3301='no' \ + navcom='no' \ + nmea0183='yes' \ + nmea2000='no' \ + oncore='no' \ + sirf='no' \ + skytraq='no' \ + superstar2='no' \ + tnt='no' \ + tripmate='no' \ + tsip='no' \ ublox='yes' \ ubloxtimels='yes' \ + aivdm='no' \ + gpsclock='no' \ + oceanserver='no' \ + fixed_stop_bits='1' \ pps='yes' \ gpsd_group='gps' \ ntpshm='yes' \ @@ -123,6 +148,10 @@ do_install_append() { install -m 0644 ${S}/ppsthread.h ${D}/${includedir}/gps } +# Use libgps recipe for sysroot. +do_populate_sysroot() { +} + RDEPENDS_${PN}-conf += "bash" pkg_postinst_${PN}-conf() { @@ -133,18 +162,18 @@ 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" +PACKAGES =+ "libgps libgpsd python-pygps-dbg python-pygps gpsd-udev gpsd-conf gpsd-gpsctl gpspipe gps-utils" # File does not exist: ${libdir}/libQgpsmm.prl -FILES_${PN}-dev += "${libdir}/pkgconfdir/libgpsd.pc ${libdir}/pkgconfdir/libgps.pc \ - ${includedir}/gps.h ${includedir}/libgpsmm.h ${includedir}/gps" +# FILES_${PN}-dev += "${libdir}/pkgconfdir/libgpsd.pc ${libdir}/pkgconfdir/libgps.pc \ +# ${includedir}/gps.h ${includedir}/libgpsmm.h ${includedir}/gps" FILES_${PN} += "${sbindir}/gpsd_ubx_fixed ${sbindir}/gpsd_ubx_settime" FILES_python-pygps-dbg += " ${libdir}/python*/site-packages/gps/.debug" RDEPENDS_${PN} = "gpsd-gpsctl bash" -RRECOMMENDS_${PN} = "gpsd-conf gpsd-udev gpsd-machine-conf" +RRECOMMENDS_${PN} = "gpsd-conf gpsd-machine-conf" SUMMARY_${PN}-udev = "udev relevant files to use gpsd hotplugging" FILES_${PN}-udev = "${base_libdir}/udev ${sysconfdir}/udev/*" @@ -163,13 +192,23 @@ CONFFILES_${PN}-conf = "${sysconfdir}/default/gpsd.default" SUMMARY_${PN}-gpsctl = "Tool for tweaking GPS modes" FILES_${PN}-gpsctl = "${bindir}/gpsctl" +SUMMARY_gpspipe = "Tool to connectg to gpsd and retrieve sentences" +FILES_gpspipe = "${bindir}/gpspipe" + 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" +RDEPENDS_python-pygps = " \ + python-core \ + python-io \ + python-threading \ + python-terminal \ + python-curses \ + gpsd \ + python-json" RPROVIDES_${PN} += "${PN}-systemd" RREPLACES_${PN} += "${PN}-systemd" diff --git a/recipes-navigation/gpsd/gpsd_3.18.1.bb b/recipes-navigation/gpsd/gpsd_3.18.1.bb.save index 053a639..053a639 100644 --- a/recipes-navigation/gpsd/gpsd_3.18.1.bb +++ b/recipes-navigation/gpsd/gpsd_3.18.1.bb.save diff --git a/recipes-navigation/gpsd/libgps24_3.18.1.bb b/recipes-navigation/gpsd/libgps24_3.18.1.bb new file mode 100644 index 0000000..8f1b811 --- /dev/null +++ b/recipes-navigation/gpsd/libgps24_3.18.1.bb @@ -0,0 +1,142 @@ +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 pps-tools" +PROVIDES = "${PN} ${PN}-dbg ${PN}-dev" +PR="m5" +#BPN="gpsd" +#BP="${BPN}-${PV}" + +EXTRANATIVEPATH += "chrpath-native" +FILESEXTRAPATHS_prepend = "${THISDIR}/gpsd-${PV}:" +# sysclockcrash is fixed for gpsd +# suppress text in binary is fixed for gpsctl + +S = "${WORKDIR}/gpsd-${PV}" + +SRC_URI = "${SAVANNAH_GNU_MIRROR}/gpsd/gpsd-${PV}.tar.gz \ + file://0001-SConstruct-prefix-includepy-with-sysroot-and-drop-sy.patch \ + file://0004-SConstruct-disable-html-and-man-docs-building-becaus.patch \ + file://0001-include-sys-ttydefaults.h.patch \ + file://0006-ubxtimelps.patch \ + file://0006-itu_r_tf_460_6.patch \ +" +SRC_URI[md5sum] = "3b11f26b295010666b1767b308f90bc5" +SRC_URI[sha256sum] = "5cb1e6d880ec9a52c62492dd0e3d77451b7c7ad625895bd652f6354215aec23e" + +inherit scons python-dir pythonnative systemd + +SYSTEMD_OESCONS = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false',d)}" + +export STAGING_INCDIR +export STAGING_LIBDIR + +# Necessary for python +export BUILD_SYS +export HOST_SYS + +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)}" +PACKAGECONFIG[bluez] = "bluez='false',${BLUEZ}" +PACKAGECONFIG[qt] = "qt='yes',qt='no',qt4-x11-free" +EXTRA_OESCONS = " \ + sysroot=${STAGING_DIR_TARGET} \ + libQgpsmm='false' \ + debug='true' \ + strip='false' \ + chrpath='yes' \ + systemd='${SYSTEMD_OESCONS}' \ + ashtech='no' \ + earthmate='no' \ + evermore='no' \ + fury='no' \ + fv18='no' \ + garmin='no' \ + garmintxt='no' \ + geostar='no' \ + greis='no' \ + itrax='no' \ + mtk3301='no' \ + navcom='no' \ + nmea0183='yes' \ + nmea2000='no' \ + oncore='no' \ + sirf='no' \ + skytraq='no' \ + superstar2='no' \ + tnt='no' \ + tripmate='no' \ + tsip='no' \ + ublox='yes' \ + ubloxtimels='yes' \ + aivdm='no' \ + gpsclock='no' \ + oceanserver='no' \ + libdir='${libdir}' \ + fixed_stop_bits='1' \ + pps='yes' \ + gpsd_group='gps' \ + ntpshm='yes' \ + prefix='usr' \ + ${PACKAGECONFIG_CONFARGS} \ +" +# 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 LINKFLAGS="${LDFLAGS}" +} +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 LINKFLAGS="${LDFLAGS}" + + export DESTDIR="${D}" + install -d 755 ${D}${libdir} + install libgps.so.24.* ${D}${libdir} + cp -a libgps.so.24 ${D}${libdir} + (cd ${D}${libdir};ln -sf libgps.so.24.* libgps.so) + + # support for dev (development) + mkdir -p -m 0644 ${D}/${includedir}/gps + install -m 0644 ${S}/gpsd.h ${D}/${includedir}/gps + install -m 0644 ${S}/os_compat.h ${D}/${includedir}/gps + install -m 0644 ${S}/revision.h ${D}/${includedir}/gps + install -m 0644 ${S}/gpsdclient.h ${D}/${includedir}/gps + install -m 0644 ${S}/gpsd_config.h ${D}/${includedir}/gps + install -m 0644 ${S}/compiler.h ${D}/${includedir}/gps + install -m 0644 ${S}/ppsthread.h ${D}/${includedir}/gps + install -m 0644 ${S}/gps.h ${D}/${includedir} + install -m 0644 ${S}/libgpsmm.h ${D}/${includedir} +} + + +FILES_${PN}-dev_append = " ${includedir}/gps.h ${includedir}/libgpsmm.h ${includedir}/gps ${libdir}/libgps.so" +FILES_${PN}-dev_remove = "${includedir} ${FILES_SOLIBSDEV} \ + ${libdir}/*.la ${libdir}/*.o ${libdir}/pkgconfig \ + ${datadir}/pkgconfig ${datadir}/aclocal \ + ${base_libdir}/*.o ${libdir}/${BPN}/*.la ${base_libdir}/*.la" + +SUMMARY_${PN}-dbg = "Debug the C service library used for communicating with gpsd" +PACKAGES = "${PN} ${PN}-dbg ${PN}-dev" + +FILES_${PN}-dbg_replace = "${prefix}/src/* ${libdir}/.debug/*" + +SUMMARY_${PN} = "C service library used for communicating with gpsd" + +RDEPENDS_${PN} += "dbus-lib" + +FILES_${PN}_append = " ${libdir}/libgps.so.* " +FILES_${PN}_remove = "${bindir}/* ${sbindir}/* ${libexecdir}/* \ + ${libdir}/lib*${SOLIBS} ${sysconfdir} ${sharedstatedir} \ + ${localstatedir} ${base_bindir}/* ${base_sbindir}/* \ + ${base_libdir}/*${SOLIBS} ${base_prefix}/lib/udev \ + ${prefix}/lib/udev ${base_libdir}/udev ${libdir}/udev \ + ${datadir}/${BPN} ${libdir}/${BPN}/* ${datadir}/pixmaps \ + ${datadir}/applications ${datadir}/idl ${datadir}/omf \ + ${datadir}/sounds ${libdir}/bonobo/servers \ +" |