diff options
author | Jan-Simon Moeller <jsmoeller@linuxfoundation.org> | 2020-12-08 11:15:02 +0100 |
---|---|---|
committer | Jan-Simon Moeller <jsmoeller@linuxfoundation.org> | 2020-12-17 13:58:05 +0000 |
commit | 41591d4f8c586aa801220fac0924556f406c58bd (patch) | |
tree | 85a2803d48a094fb0ba3a76b9e3d0870a4e5edc2 /recipes-navigation | |
parent | 4830bcef14e7f49cdc851c646a69c9bb9bd92e82 (diff) |
SPEC-3723: restructure meta-agl-demo
All demo related components should be in here now.
We keep the packagegroups on purpose for now to stay backward-compatible.
v2: layer does pass yocto-check-layer, dependencies adapted
v3: remove the dynamic-layer setup, use all-in-one approach
v4: Fixed comments from Paul Barker. Tnx!
v5: Removed wayland/weston/agl-compositor additions, except for demo
specific weston-init bbappend
Follow-up changes required later:
- massaging packagegroups
- scrub of recipes
Bug-AGL: SPEC-3723
Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Change-Id: I47cefd8c23d46b2cdd063470e3f7d97d5ad952d8
Diffstat (limited to 'recipes-navigation')
-rw-r--r-- | recipes-navigation/geoclue/files/org.freedesktop.GeoClue2.Client.conf | 8 | ||||
-rw-r--r-- | recipes-navigation/geoclue/geoclue_%.bbappend | 1 | ||||
-rw-r--r-- | recipes-navigation/geoclue/geoclue_agldemo.inc | 11 | ||||
-rw-r--r-- | recipes-navigation/gpsd/gpsd/sw-device-hook | 23 | ||||
-rw-r--r-- | recipes-navigation/gpsd/gpsd_%.bbappend | 1 | ||||
-rw-r--r-- | recipes-navigation/gpsd/gpsd_agldemo.inc | 28 |
6 files changed, 72 insertions, 0 deletions
diff --git a/recipes-navigation/geoclue/files/org.freedesktop.GeoClue2.Client.conf b/recipes-navigation/geoclue/files/org.freedesktop.GeoClue2.Client.conf new file mode 100644 index 000000000..a7486d055 --- /dev/null +++ b/recipes-navigation/geoclue/files/org.freedesktop.GeoClue2.Client.conf @@ -0,0 +1,8 @@ +<!DOCTYPE busconfig PUBLIC + "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN" + "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"> +<busconfig> + <policy user="root"> + <allow receive_type="signal" receive_interface="org.freedesktop.GeoClue2.Client" /> + </policy> +</busconfig> diff --git a/recipes-navigation/geoclue/geoclue_%.bbappend b/recipes-navigation/geoclue/geoclue_%.bbappend new file mode 100644 index 000000000..eb1eef6b9 --- /dev/null +++ b/recipes-navigation/geoclue/geoclue_%.bbappend @@ -0,0 +1 @@ +require ${@bb.utils.contains('AGL_FEATURES', 'agldemo', 'geoclue_agldemo.inc', '', d)} diff --git a/recipes-navigation/geoclue/geoclue_agldemo.inc b/recipes-navigation/geoclue/geoclue_agldemo.inc new file mode 100644 index 000000000..24936e5cc --- /dev/null +++ b/recipes-navigation/geoclue/geoclue_agldemo.inc @@ -0,0 +1,11 @@ +inherit gobject-introspection + +FILESEXTRAPATHS_prepend := "${THISDIR}/files:" +SRC_URI_append = " file://org.freedesktop.GeoClue2.Client.conf" + +PACKAGECONFIG = "nmea lib" + +do_install_append() { + install -d ${D}/etc/dbus-1/system.d + install -m 0644 ${WORKDIR}/org.freedesktop.GeoClue2.Client.conf ${D}/etc/dbus-1/system.d/org.freedesktop.GeoClue2.Client.conf +} diff --git a/recipes-navigation/gpsd/gpsd/sw-device-hook b/recipes-navigation/gpsd/gpsd/sw-device-hook new file mode 100644 index 000000000..e1e6f7a41 --- /dev/null +++ b/recipes-navigation/gpsd/gpsd/sw-device-hook @@ -0,0 +1,23 @@ +#!/bin/sh + +# Figure out the parent usb device +USBDEV=`ls -l "$1" |sed -ne 's!^c[^ ]* [0-9]* [^ ]* [^ ]* \([0-9]*\), \([0-9]*\) .*!/sys/dev/char/\1:\2/device/../..!p'` + +# Silently ignore any non-USB ports +if [ ! -r "$USBDEV/idVendor" ] || [ ! -r "$USBDEV/idProduct" ]; then + exit 0 +fi + +VID=`cat "$USBDEV/idVendor"` +PID=`cat "$USBDEV/idProduct"` +case "$2" in + ACTIVATE) CMD=START ;; + *) CMD=STOP ;; +esac + +case "$VID:$PID" in + "1199:9071"|"1199:9079") echo \$GPS_$CMD >"$1" ;; + *) ;; +esac + +exit 0 diff --git a/recipes-navigation/gpsd/gpsd_%.bbappend b/recipes-navigation/gpsd/gpsd_%.bbappend new file mode 100644 index 000000000..ac56bfb82 --- /dev/null +++ b/recipes-navigation/gpsd/gpsd_%.bbappend @@ -0,0 +1 @@ +require ${@bb.utils.contains('AGL_FEATURES', 'agldemo', 'gpsd_agldemo.inc', '', d)} diff --git a/recipes-navigation/gpsd/gpsd_agldemo.inc b/recipes-navigation/gpsd/gpsd_agldemo.inc new file mode 100644 index 000000000..5899505bc --- /dev/null +++ b/recipes-navigation/gpsd/gpsd_agldemo.inc @@ -0,0 +1,28 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/gpsd:" + +SRC_URI += "file://sw-device-hook" + +do_install_append() { + # Install device-hook script for starting NMEA output on Sierra Wireless modems + install -d ${D}${sysconfdir}/gpsd + install -m 0755 ${WORKDIR}/sw-device-hook ${D}${sysconfdir}/gpsd/device-hook +} + + + +SYSTEMD_SERVICE_${PN}_append = " gpsdctl@.service" + +RPROVIDES_${PN}-conf_append = " virtual/gpsd-conf" + +do_install_append() { + # use the systemd compatible gpsd.rules + install -d ${D}/${sysconfdir}/udev/rules.d + install -m 0644 ${S}/gpsd.rules ${D}/${sysconfdir}/udev/rules.d/60-gpsd.rules + + #support for systemd + install -d ${D}${systemd_unitdir}/system/ + install -m 0644 ${S}/systemd/gpsdctl@.service ${D}${systemd_unitdir}/system + + #autoprobe usb gps devices + echo 'USBAUTO="true"' >> ${D}${sysconfdir}/default/gpsd.default +} |