summaryrefslogtreecommitdiff
path: root/recipes-navigation
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-navigation')
-rw-r--r--recipes-navigation/gpsd/gpsd-3.20/0006-itu_r_tf_460_6.patch12
-rw-r--r--recipes-navigation/gpsd/gpsd-test_1.0.bb37
-rwxr-xr-xrecipes-navigation/gpsd/gpsd/gpsd21
-rwxr-xr-x[-rw-r--r--]recipes-navigation/gpsd/gpsd/gpsd-default77
-rw-r--r--recipes-navigation/gpsd/gpsd_3.16.bb221
-rw-r--r--recipes-navigation/gpsd/gpsd_3.16.bb.old8
-rw-r--r--recipes-navigation/gpsd/gpsd_3.18.1.bb.old (renamed from recipes-navigation/gpsd/gpsd_3.18.1.bb)0
-rw-r--r--recipes-navigation/gpsd/gpsd_3.19.bb.old (renamed from recipes-navigation/gpsd/gpsd_3.19.bb)0
-rw-r--r--recipes-navigation/gpsd/gpsd_3.20.bb54
-rw-r--r--recipes-navigation/gpsd/libgps24_3.18.1.bb142
-rw-r--r--recipes-navigation/gpsd/libgps25_3.20.bb.old (renamed from recipes-navigation/gpsd/libgps25_3.20.bb)0
-rw-r--r--recipes-navigation/gpsd/test/README34
-rw-r--r--recipes-navigation/gpsd/test/gpsd-test-1.0.tar.gzbin0 -> 854 bytes
13 files changed, 208 insertions, 398 deletions
diff --git a/recipes-navigation/gpsd/gpsd-3.20/0006-itu_r_tf_460_6.patch b/recipes-navigation/gpsd/gpsd-3.20/0006-itu_r_tf_460_6.patch
index 8e8d814..f2c814e 100644
--- a/recipes-navigation/gpsd/gpsd-3.20/0006-itu_r_tf_460_6.patch
+++ b/recipes-navigation/gpsd/gpsd-3.20/0006-itu_r_tf_460_6.patch
@@ -1,9 +1,9 @@
-diff -Naur old/ntpshmwrite.c new/ntpshmwrite.c
---- old/ntpshmwrite.c 2017-01-23 10:00:05.497129473 -0600
-+++ new/ntpshmwrite.c 2017-01-23 09:47:58.881627772 -0600
-@@ -32,11 +32,18 @@
- * NTP expects leap pending for only 1 month prior to insertion
- * Per http://bugs.ntp.org/1090 */
+diff -Naru old/ntpshmwrite.c new/ntpshmwrite.c
+--- old/ntpshmwrite.c 2021-03-01 05:18:28.833952716 -0600
++++ new/ntpshmwrite.c 2021-03-01 05:19:48.361954319 -0600
+@@ -40,11 +40,18 @@
+ * in Jun/Dec but may be in March or September
+ */
(void)gmtime_r( &(td->real.tv_sec), &tm);
+/* This code contradicts page 3 section 2.1 of ITU-R RV.460-6 that
+ * leap second may occur at the last second of a month, with
diff --git a/recipes-navigation/gpsd/gpsd-test_1.0.bb b/recipes-navigation/gpsd/gpsd-test_1.0.bb
new file mode 100644
index 0000000..7753bcc
--- /dev/null
+++ b/recipes-navigation/gpsd/gpsd-test_1.0.bb
@@ -0,0 +1,37 @@
+DESCRIPTION = "gpsd reboot testing"
+SECTION = "base"
+PRIORITY = "optional"
+LICENSE = "GPLv2+"
+PR = "r1"
+inherit allarch
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
+FILESEXTRAPATHS_prepend = "${THISDIR}/test:"
+SRC_URI = " \
+ file://gpsd-test-1.0.tar.gz \
+ "
+
+FILES_${PN} = "*"
+
+RDEPENDS_${PN} = "bash"
+
+do_install() {
+ echo "Directory is ${D}"
+ cp -a * ${D}
+ cd ${D}
+ chown -R root:root *
+ chmod 755 ${prefix}/local/bin/*
+ chmod 755 ${sysconfdir}/rc5.d/*
+}
+
+pkg_postinst_${PN}() {
+ if [ -z "$D" ] ; then
+ touch /var/config/reboot
+ fi
+}
+
+
+pkg_prerm_${PN}() {
+ if [ -z "$D" ] ; then
+ rm /var/config/reboot
+ fi
+} \ No newline at end of file
diff --git a/recipes-navigation/gpsd/gpsd/gpsd b/recipes-navigation/gpsd/gpsd/gpsd
index b4068c9..36ca387 100755
--- a/recipes-navigation/gpsd/gpsd/gpsd
+++ b/recipes-navigation/gpsd/gpsd/gpsd
@@ -36,8 +36,25 @@ CAPABILITY=/sys/devices/platform/mts-io/capability/gps
# Exit if we have no GPS capability
( [[ -f $CAPABILITY ]] && (($(cat $CAPABILITY) == 1)) ) || exit 0
-# Exit if no gps found
-([[ -n $GPS_LINE ]] && [[ -c $GPS_LINE ]]) || exit 0
+([[ -n $GPS_LINE ]]) || exit 0
+
+((numtries = 10))
+if [[ $(cat /run/config/gpstype) == u-blox ]] ; then
+ while ((numtries > 0)) ; do
+ if [ -c $GPS_LINE ];then
+ logger -s -t 'gpsd info' -p daemon.info $GPS_LINE" found"
+ break
+ fi
+ sleep 1
+ done
+ if ((numtries == 0));then
+ logger -s -t 'gpsd info' -p daemon.info $GPS_LINE" not found. gpsd will not start"
+ exit 0
+ fi
+else
+ # Exit if no gps found
+ ([[ -c $GPS_LINE ]]) || exit 0
+fi
# Assemble the GPS devices
# PPS device is needed so GPSD finds the PPS.
diff --git a/recipes-navigation/gpsd/gpsd/gpsd-default b/recipes-navigation/gpsd/gpsd/gpsd-default
index fa67fd1..f6995fc 100644..100755
--- a/recipes-navigation/gpsd/gpsd/gpsd-default
+++ b/recipes-navigation/gpsd/gpsd/gpsd-default
@@ -52,25 +52,66 @@ GPSFIX="3"
# should not need to change the baud rate.
#
function SET_GPS_SPEED {
-if [[ $(mts-io-sysfs show hw-version) =~ ^MTHS- ]] ; then
- if gpsctl -t 'u-blox' -D 5 -x '\x06\x41\x00\x00\x03\x1F\x90\x47\x4F\xB1\xFF\xFF\xEA\xFF' $GPS_LINE ; then
- logger -s -t 'gpsd info' -p daemon.info "GPS LNA set high"
- else
- logger -s -t 'gpsd info' -p daemon.alert "ERROR: GPS LNA not set"
- fi
-fi
+((maxtries = 10))
if [[ $(cat /run/config/gpstype) == u-blox ]] ; then
- # Set the baud rate. Works better with ntp at a higher baud rate.
- if ! gpsctl -T 20 -t 'u-blox' -s $GPS_BAUD -b -f $GPS_LINE ; then
- echo 'WARNING: Unable to set GPS serial port speed.'
- else
- # The next line is needed due to a bug in gpsctl.
- # We will go back to the default baud rate if we don't do this step.
- echo Expect a timeout error here. Need this error.
- gpsctl -T 2 -f $GPS_LINE
- stty -F $GPS_LINE $GPS_BAUD
- fi
-fi # End of U-Blox GPS type
+ while ((maxtries > 0)) ; do
+ ((maxtries--))
+ if ((maxtries == 5)) ; then
+ # Not going well, so reset the GPS.
+ logger -s -t 'gpsd info' -p daemon.alert "u-blox is unresponsive, so reset it"
+ mts-io-sysfs store gnss-reset 0
+ usleep 50
+ mts-io-sysfs store gnss-reset 1
+ # Reset terminal to defaults
+ stty -F "$GPS_LINE" '500:5:cbd:8a3b:3:1c:7f:15:4:0:1:0:11:13:1a:0:12:f:17:16:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0'
+ sleep 5
+ fi # Reset at maxtries == 5
+
+ # Set the baud rate to default speed if having issues
+ if ((maxtries < 8)) && ((maxtries % 2 == 1)) ; then
+ stty -F $GPS_LINE 9600
+ fi
+
+ # Set the baud rate. Works better with ntp at a higher baud rate.
+ gpsctlout=$(gpsctl -T 20 -t 'u-blox' -s $GPS_BAUD -b -f $GPS_LINE 2>&1)
+ result=$?
+ if [[ $gpsctlout =~ u-blox.*at[[:space:]]115200 ]] ; then
+ break
+ fi
+
+ if ((result != 0)) ; then
+ echo $gpsctlout
+ echo 'WARNING: Unable to set GPS serial port speed.'
+ else
+ # The next line is needed due to a bug in gpsctl.
+ # We will go back to the default baud rate if we don't do this step.
+ gpsctlout=$(gpsctl -T 2 -f $GPS_LINE 2>&1)
+ if [[ $gpsctlout =~ u-blox.*at[[:space:]]115200 ]] ; then
+ break
+ fi
+ stty -F $GPS_LINE $GPS_BAUD
+ fi
+ speed=$(stty -F $GPS_LINE speed 2>&1)
+ if [[ $speed = 115200 ]] ; then
+ result=$(gpsctl -T 2 -f $GPS_LINE 2>&1)
+ if [[ $result =~ u-blox[[:space:]]at[[:space:]]115200[[:space:]] ]] ; then
+ break
+ fi # gpsctl has a good status
+ fi # gpsd serial port speed is correct
+ done # Loop until maxtries
+
+ if ((maxtries == 0)) && [[ -n $result ]] ; then
+ logger -s -t 'gpsd info' -p daemon.alert "gpsctl -T 2 -f $GPS_LINE"
+ logger -s -t 'gpsd info' -p daemon.alert "$GPS_LINE: $(stty -F $GPS_LINE speed) baud"
+ logger -s -t 'gpsd info' -p daemon.alert "$result"
+ elif [[ $(mts-io-sysfs show hw-version) =~ ^MTHS- ]] ; then
+ if gpsctl -t 'u-blox' -D 5 -x '\x06\x41\x00\x00\x03\x1F\x90\x47\x4F\xB1\xFF\xFF\xEA\xFF' $GPS_LINE ; then
+ logger -s -t 'gpsd info' -p daemon.info "GPS LNA set high"
+ else
+ logger -s -t 'gpsd info' -p daemon.alert "ERROR: GPS LNA not set"
+ fi
+ fi #
+fi # If U-Blox GPS type
}
diff --git a/recipes-navigation/gpsd/gpsd_3.16.bb b/recipes-navigation/gpsd/gpsd_3.16.bb
deleted file mode 100644
index 26a8963..0000000
--- a/recipes-navigation/gpsd/gpsd_3.16.bb
+++ /dev/null
@@ -1,221 +0,0 @@
-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 = "virtual/gpsd"
-PR="m14"
-
-EXTRANATIVEPATH += "chrpath-native"
-
-# file://0002-SConstruct-remove-rpath.patch
-SRC_URI = "${SAVANNAH_GNU_MIRROR}/${BPN}/${BP}.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://0005-suppress-text-in-binary.patch \
- file://0006-ubxtimelps.patch \
- file://0006-itu_r_tf_460_6.patch \
- file://0006-sysclockcrash.patch \
- file://0008-major_gnu.patch \
- file://gpsd-default \
- file://gpsd \
- file://gpsd_ubx_fixed.sh \
- file://gpsd_ubx_settime.sh \
- file://gpsd_settime.sh \
- file://gpsd_fixed.sh \
- file://gpsd.rules \
- file://gpsd.service \
-"
-# Fixed
-# file://0001-Check-for-__STDC_NO_ATOMICS__-before-using-stdatomic.patch
-# file://0002-Add-a-test-for-C11-and-check-we-have-C11-before-usin.patch
-# file://0003-Whoops-check-for-C11-not-for-not-C11-in-stdatomic.h-.patch
-# file://0001-Include-stdatomic.h-only-in-C-mode.patch
-# file://0001-libgpsd-core-Fix-issue-with-ACTIVATE-hook-not-being-.patch
-
-SRC_URI[md5sum] = "68691b5de4c94f82ec4062b042b5eb63"
-SRC_URI[sha256sum] = "03579af13a4d3fe0c5b79fa44b5f75c9f3cac6749357f1d99ce5d38c09bc2029"
-
-
-inherit scons update-rc.d python-dir pythonnative systemd
-
-INITSCRIPT_NAME = "gpsd"
-INITSCRIPT_PARAMS = "defaults 10"
-
-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}' \
- 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='yes' \
- 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' \
- ${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}"
- # 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
- install -d ${D}${sbindir}
- install -m 0755 ${WORKDIR}/gpsd_ubx_fixed.sh ${D}${sbindir}/gpsd_ubx_fixed
- install -m 0755 ${WORKDIR}/gpsd_ubx_settime.sh ${D}${sbindir}/gpsd_ubx_settime
- install -m 0755 ${WORKDIR}/gpsd_fixed.sh ${D}${sbindir}/gpsd_fixed
- install -m 0755 ${WORKDIR}/gpsd_settime.sh ${D}${sbindir}/gpsd_settime
-
- #support for udev
- install -d ${D}/${sysconfdir}/udev/rules.d
- install -m 0644 ${WORKDIR}/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}/${BPN}.service ${D}${systemd_unitdir}/system/${BPN}.service
- install -m 0644 ${S}/systemd/${BPN}.socket ${D}${systemd_unitdir}/system/${BPN}.socket
-
- # support for dev (development)
- mkdir -p -m 0644 ${D}/${includedir}/gps
- install -m 0644 ${S}/gpsd.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
-}
-
-# Use libgps recipe for sysroot.
-do_populate_sysroot() {
-}
-
-RDEPENDS_${PN}-conf += "bash"
-
-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 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} += "${sbindir}/gpsd_*"
-
-FILES_python-pygps-dbg += " ${libdir}/python*/site-packages/gps/.debug"
-
-RDEPENDS_${PN} = "gpsd-gpsctl bash"
-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/*"
-RDEPENDS_${PN}-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_${PN}-conf = "gpsd configuration files and init scripts"
-FILES_${PN}-conf = "${sysconfdir}"
-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-io \
- python-threading \
- python-terminal \
- 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/recipes-navigation/gpsd/gpsd_3.16.bb.old b/recipes-navigation/gpsd/gpsd_3.16.bb.old
index 1464981..26a8963 100644
--- a/recipes-navigation/gpsd/gpsd_3.16.bb.old
+++ b/recipes-navigation/gpsd/gpsd_3.16.bb.old
@@ -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="m12"
+PR="m14"
EXTRANATIVEPATH += "chrpath-native"
@@ -22,6 +22,8 @@ SRC_URI = "${SAVANNAH_GNU_MIRROR}/${BPN}/${BP}.tar.gz \
file://gpsd \
file://gpsd_ubx_fixed.sh \
file://gpsd_ubx_settime.sh \
+ file://gpsd_settime.sh \
+ file://gpsd_fixed.sh \
file://gpsd.rules \
file://gpsd.service \
"
@@ -123,6 +125,8 @@ do_install_append() {
install -d ${D}${sbindir}
install -m 0755 ${WORKDIR}/gpsd_ubx_fixed.sh ${D}${sbindir}/gpsd_ubx_fixed
install -m 0755 ${WORKDIR}/gpsd_ubx_settime.sh ${D}${sbindir}/gpsd_ubx_settime
+ install -m 0755 ${WORKDIR}/gpsd_fixed.sh ${D}${sbindir}/gpsd_fixed
+ install -m 0755 ${WORKDIR}/gpsd_settime.sh ${D}${sbindir}/gpsd_settime
#support for udev
install -d ${D}/${sysconfdir}/udev/rules.d
@@ -169,7 +173,7 @@ PACKAGES =+ "libgps libgpsd python-pygps-dbg python-pygps gpsd-udev gpsd-conf gp
# 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_${PN} += "${sbindir}/gpsd_*"
FILES_python-pygps-dbg += " ${libdir}/python*/site-packages/gps/.debug"
diff --git a/recipes-navigation/gpsd/gpsd_3.18.1.bb b/recipes-navigation/gpsd/gpsd_3.18.1.bb.old
index 0b0a287..0b0a287 100644
--- a/recipes-navigation/gpsd/gpsd_3.18.1.bb
+++ b/recipes-navigation/gpsd/gpsd_3.18.1.bb.old
diff --git a/recipes-navigation/gpsd/gpsd_3.19.bb b/recipes-navigation/gpsd/gpsd_3.19.bb.old
index da03106..da03106 100644
--- a/recipes-navigation/gpsd/gpsd_3.19.bb
+++ b/recipes-navigation/gpsd/gpsd_3.19.bb.old
diff --git a/recipes-navigation/gpsd/gpsd_3.20.bb b/recipes-navigation/gpsd/gpsd_3.20.bb
index 2cf7b67..ba1b33e 100644
--- a/recipes-navigation/gpsd/gpsd_3.20.bb
+++ b/recipes-navigation/gpsd/gpsd_3.20.bb
@@ -4,7 +4,11 @@ LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://COPYING;md5=01764c35ae34d9521944bb6ab312af53"
DEPENDS = "dbus dbus-glib ncurses python3 libusb1 chrpath-replacement-native pps-tools"
PROVIDES = "virtual/gpsd"
-PR="m1"
+PR="m6"
+
+#TODO
+#the recipe generates python2 pygps package for Atmel based devices and python3 pygps package for TI based devices.
+#later when python2 will be removed the recipe should be returned to previous version
EXTRANATIVEPATH += "chrpath-native"
@@ -33,6 +37,7 @@ SRC_URI[sha256sum] = "172a7805068eacb815a3c5225436fcb0be46e7e49a5001a94034eac43d
inherit scons update-rc.d python3-dir python3native systemd
+INITSCRIPT_PACKAGES = "gpsd-conf"
INITSCRIPT_NAME = "gpsd"
INITSCRIPT_PARAMS = "defaults 10"
@@ -49,6 +54,8 @@ PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez',
PACKAGECONFIG[bluez] = "bluez='false',${BLUEZ}"
PACKAGECONFIG[qt] = "qt='yes',qt='no',qt4-x11-free"
+PYTHON2_SITEPACKAGES_DIR="${libdir}/python2.7/site-packages"
+
# Remove unneeded features. netfeed is needed by gpsmon
EXTRA_OESCONS = " \
sysroot=${STAGING_DIR_TARGET} \
@@ -146,6 +153,8 @@ do_install_append() {
#support for python
install -d ${D}/${PYTHON_SITEPACKAGES_DIR}/gps
install -m 755 ${S}/gps/*.py ${D}/${PYTHON_SITEPACKAGES_DIR}/gps
+ install -d ${D}/${PYTHON2_SITEPACKAGES_DIR}/gps
+ install -m 755 ${S}/gps/*.py ${D}/${PYTHON2_SITEPACKAGES_DIR}/gps
#support for systemd
install -d ${D}${systemd_unitdir}/system/
@@ -165,8 +174,12 @@ do_install_append() {
# New ubxtool
install -m 0755 ${S}/ubxtool ${D}/${bindir}
#install -m 0644 ${S}/ubxtool.1 ${D}/${mandir}/man1
+ install -m 0644 ${S}/gps.h ${D}/${includedir}
+ install -m 0644 ${S}/timespec.h ${D}/${includedir}
+ install -m 0644 ${S}/libgpsmm.h ${D}/${includedir}
}
+RDEPENDS_${PN} += "bash"
RDEPENDS_${PN}-conf += "bash"
pkg_postinst_${PN}-conf() {
@@ -177,21 +190,25 @@ pkg_postrm_${PN}-conf() {
update-alternatives --remove gpsd-defaults ${sysconfdir}/default/gpsd.default
}
-PACKAGES =+ "libgps libgpsd python3-pygps-dbg python3-pygps gpsd-udev gpsd-conf gpsd-gpsctl gpspipe gps-utils"
+
+PACKAGES =+ "libgps libgpsd gpsd-udev gpsd-conf gpsd-gpsctl gpspipe gps-utils python-pygps-dbg python-pygps python3-pygps-dbg python3-pygps"
+# PACKAGES =+ "${PN} ${PN}-dbg ${PN}-dev"
# File does not exist: ${libdir}/libQgpsmm.prl
-FILES_${PN}-dev += "${libdir}/pkgconfdir/libgpsd.pc ${libdir}/pkgconfdir/libgps.pc \
+FILES_${PN}-dev += "${libdir}/pkgconfig/libgpsd.pc ${libdir}/pkgconfig/libgps.pc \
${libdir}/libQgpsmm.prl \
${includedir}/gps.h ${includedir}/libgpsmm.h ${includedir}/gps"
FILES_${PN} += "${sbindir}/gpsd_*"
+FILES_${PN}-doc += "${docdir}"
-FILES_python3-pygps-dbg += " ${libdir}/python*/site-packages/gps/.debug"
+FILES_${PN}-conf = "${sysconfdir}/default ${sysconfdir}/init.d"
-RDEPENDS_${PN} = "gpsd-gpsctl bash"
+
+RDEPENDS_${PN}-conf = "gpsd-gpsctl bash"
# gpsd-udev is for USB, which we are not using
-RRECOMMENDS_${PN} = "gpsd-conf 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/*"
@@ -215,11 +232,14 @@ FILES_gpspipe = "${bindir}/gpspipe"
SUMMARY_gps-utils = "Utils used for simulating, monitoring,... a GPS"
FILES_gps-utils = "${bindir}/*"
+RDEPENDS_gps-utils_mtbsp-at91 = "python-pygps"
RDEPENDS_gps-utils = "python3-pygps"
+SUMMARY_python-pygps = "Python bindings to gpsd"
SUMMARY_python3-pygps = "Python bindings to gpsd"
+FILES_python-pygps = "${PYTHON2_SITEPACKAGES_DIR}/*"
FILES_python3-pygps = "${PYTHON_SITEPACKAGES_DIR}/*"
-RDEPENDS_python-pygps = " \
+RDEPENDS_python3-pygps = " \
python3-core \
python3-io \
python3-threading \
@@ -228,6 +248,15 @@ RDEPENDS_python-pygps = " \
gpsd \
python3-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"
RCONFLICTS_${PN} += "${PN}-systemd"
@@ -237,3 +266,14 @@ SYSTEMD_SERVICE_${PN} = "${BPN}.socket ${BPN}ctl@.service"
ALTERNATIVE_${PN} = "gpsd-defaults"
ALTERNATIVE_LINK_NAME[gpsd-defaults] = "${sysconfdir}/default/gpsd"
ALTERNATIVE_TARGET[gpsd-defaults] = "${sysconfdir}/default/gpsd.default"
+
+
+FILES_${PN}-dev_append = " ${includedir}/gps.h ${includedir}/timespec.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"
+
+FILES_${PN}-dbg_replace = "${prefix}/src/* ${libdir}/.debug/*"
diff --git a/recipes-navigation/gpsd/libgps24_3.18.1.bb b/recipes-navigation/gpsd/libgps24_3.18.1.bb
deleted file mode 100644
index 8f1b811..0000000
--- a/recipes-navigation/gpsd/libgps24_3.18.1.bb
+++ /dev/null
@@ -1,142 +0,0 @@
-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 \
-"
diff --git a/recipes-navigation/gpsd/libgps25_3.20.bb b/recipes-navigation/gpsd/libgps25_3.20.bb.old
index eb40643..eb40643 100644
--- a/recipes-navigation/gpsd/libgps25_3.20.bb
+++ b/recipes-navigation/gpsd/libgps25_3.20.bb.old
diff --git a/recipes-navigation/gpsd/test/README b/recipes-navigation/gpsd/test/README
new file mode 100644
index 0000000..d3f3a60
--- /dev/null
+++ b/recipes-navigation/gpsd/test/README
@@ -0,0 +1,34 @@
+To run the test:
+opkg install gpsd-test_1.0-*_all.ipk
+
+/etc/rc5.d/S99zzreboot
+
+
+To shutoff the test:
+
+rm /var/config/reboot
+
+
+To restart the test:
+
+touch /var/config/reboot
+
+/etc/rc5.d/S99zzreboot
+
+
+
+A log of successful tests is kept in:
+/var/config/gpslog.txt.
+
+It contains the seconds since 1-1-1970,
+baud rate, and the ntpq -p output for the
+PPS.
+
+On failure, the test will stop rebooting.
+
+Failure is defined as:
+
+No fix (if we lost reception this could happen)
+
+Bad baud rate (not 115200)
+
diff --git a/recipes-navigation/gpsd/test/gpsd-test-1.0.tar.gz b/recipes-navigation/gpsd/test/gpsd-test-1.0.tar.gz
new file mode 100644
index 0000000..a2eb195
--- /dev/null
+++ b/recipes-navigation/gpsd/test/gpsd-test-1.0.tar.gz
Binary files differ