kuksa-dbc-feeder: add recipe and dependencies 60/27560/1
authorScott Murray <scott.murray@konsulko.com>
Thu, 26 May 2022 14:38:07 +0000 (10:38 -0400)
committerScott Murray <scott.murray@konsulko.com>
Thu, 26 May 2022 15:27:50 +0000 (11:27 -0400)
commit63512e51692b48ad645dba0a21858cc48d5b416f
treeb7d86a214d1efd314bdc1f6d8923476eac651fe2
parente7c84a94bb6a28cc560cc3027799bf4ae3c13579
kuksa-dbc-feeder: add recipe and dependencies

Add a kuksa-dbc-feeder recipe to build the sample CAN feeder for the
KUKSA.val Vehicle Information Service (VIS) server and add it to the
agl-demo-platform image by adding it to packagegroup-agl-ivi-services.
Local patches are applied to enable building with OpenEmbedded, make
installation into standard Linux FHS locations feasible, and improve
usability on target with respect to logging and error handling.
These will be discussed with upstream to hopefully get them
integrated.

Additional changes:
- Add a recipe for the required kuksa-viss-client Python module
  included with the KUKSA.val source tree.  The module is also
  available via pypi.org, but keeping all the pieces in lockstep for
  now seems better, so it is built out of a clone of the kuksa.val
  repo using the same SRCREV as the server and kuksa-dbc-feeder.
- Add backports of recipes for required Python modules:
    python3-bitstruct, python3-can, python3-cantools, python3-cmd2,
    python3-diskcache, python3-importlib-metadata,
    python3-setuptools-scm, python3-textparser, python3-toml
  This is required to both add recipes missing from dunfell as well
  as to meet version requirements for kuksa-viss-client and
  kuksa-dbc-feeder.  For the most part the recipes were picked from
  the poky and meta-openembedded kirkstone branches before the
  significant Python module build rework done for the kirkstone M4
  milestone.  There is some potential for updating them to newer
  backports, but this will be a low priority unless there are
  explicit requests.
- Add bbappend for python3-cantools to add some missing runtime
  dependencies discovered during testing.  This will be addressed
  upstream in meta-python as time permits.
- Add new recipes for required Python modules:
    python3-argparse-addons, python3-can-j1939,
    python3-py-expression-eval, python3-setuptools-git-versioning
  These will be upstreamed to meta-python as time permits.
- Add minimal DBC file and mapping configuration.  At present the
  agl-vcar.dbc file only contains the minimum message definitions
  known to be required for the AGL demo platform, namely vehicle
  and engine speeds and the steering wheel events.
- Add can-dev-helper recipe to install a systemd unit and script to
  ensure a CAN interface is available for testing.  This is a tweaked
  version of what was previously used with agl-service-can-low-level.

Bug-AGL: SPEC-4405

Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Change-Id: I4f9fe9c34165da30005d39689739c73dfdbbc615
27 files changed:
recipes-connectivity/kuksa-val/can-dev-helper/can-dev-helper.service [new file with mode: 0644]
recipes-connectivity/kuksa-val/can-dev-helper/can-dev-helper.sh [new file with mode: 0644]
recipes-connectivity/kuksa-val/can-dev-helper_1.0.bb [new file with mode: 0644]
recipes-connectivity/kuksa-val/kuksa-dbc-feeder/0001-dbc2val-add-installation-mechanism.patch [new file with mode: 0644]
recipes-connectivity/kuksa-val/kuksa-dbc-feeder/0002-dbc2val-usability-improvements.patch [new file with mode: 0644]
recipes-connectivity/kuksa-val/kuksa-dbc-feeder/agl-vcar.dbc [new file with mode: 0644]
recipes-connectivity/kuksa-val/kuksa-dbc-feeder/config.ini [new file with mode: 0644]
recipes-connectivity/kuksa-val/kuksa-dbc-feeder/dbc_feeder.json.token [new file with mode: 0644]
recipes-connectivity/kuksa-val/kuksa-dbc-feeder/kuksa-dbc-feeder.service [new file with mode: 0644]
recipes-connectivity/kuksa-val/kuksa-dbc-feeder/mapping.yml [new file with mode: 0644]
recipes-connectivity/kuksa-val/kuksa-dbc-feeder_git.bb [new file with mode: 0644]
recipes-connectivity/kuksa-val/kuksa-viss-client_git.bb [new file with mode: 0644]
recipes-devtools/python/python3-argparse-addons_0.7.0.bb [new file with mode: 0644]
recipes-devtools/python/python3-bitstruct_8.12.1.bb [new file with mode: 0644]
recipes-devtools/python/python3-can-j1939_2.0.6.bb [new file with mode: 0644]
recipes-devtools/python/python3-can_3.3.4.bb [new file with mode: 0644]
recipes-devtools/python/python3-cantools_37.0.1.bb [new file with mode: 0644]
recipes-devtools/python/python3-cantools_37.0.1.bbappend [new file with mode: 0644]
recipes-devtools/python/python3-cmd2_1.4.0.bb [new file with mode: 0644]
recipes-devtools/python/python3-diskcache_5.4.0.bb [new file with mode: 0644]
recipes-devtools/python/python3-importlib-metadata_4.6.4.bb [new file with mode: 0644]
recipes-devtools/python/python3-py-expression-eval_0.3.14.bb [new file with mode: 0644]
recipes-devtools/python/python3-setuptools-git-versioning_1.7.4.bb [new file with mode: 0644]
recipes-devtools/python/python3-setuptools-scm_6.0.1.bb [new file with mode: 0644]
recipes-devtools/python/python3-textparser_0.23.0.bb [new file with mode: 0644]
recipes-devtools/python/python3-toml_0.10.2.bb [new file with mode: 0644]
recipes-platform/packagegroups/packagegroup-agl-ivi-services.bb