diff options
author | Jan-Simon Moeller <jsmoeller@linuxfoundation.org> | 2020-12-08 11:12:45 +0100 |
---|---|---|
committer | Jan-Simon Moeller <jsmoeller@linuxfoundation.org> | 2020-12-17 13:59:52 +0000 |
commit | 1c3c06842ac1b9c089d0a08e91c60f44e4844fac (patch) | |
tree | 21e97368be8f78a3e76b66dfda24c1d5e774519f /meta-agl.md | |
parent | c1e048fc05542d859115990312e0753ce2dea72e (diff) |
SPEC-3723: restructure meta-agl
Goal is to reach a minimal meta-agl-core as base for IVI and IC work at the same time.
Trim dependencies and move most 'demo' related recipes to meta-agl-demo.
v2: changed to bbapend + .inc , added description
v3: testbuild of all images
v4: restore -test packagegroup and -qa images, compare manifests and adapt packagegroups.
v5: rebased
v6: merged meta-agl-distro into meta-agl-core,
due to dependency on meta-oe, moved -test packagegroup and -qa images
to own layer meta-agl-core-test
v7: Fixed comments from Paul Barker
v8: Update the markdown files
v9: restore wayland/weston/agl-compositor recipes/appends, reworked to
move app f/w specific changes to bbappends in meta-app-framework and
only demo specific weston-init changes to meta-agl-demo
v10: fix s/agldemo/aglcore/ missed in weston-init.bbappend
Description:
This patch is part 1 out of 2 large patches that implement the layer rework
discussed during the previous workshop. Essentially meta-agl-core is the
small but versatile new core layer of AGL serving as basis for
the work done by the IC and IVI EGs.
All demo related work is moved to meta-agl-demo in the 2nd patchset.
This should be applied together as atomic change.
The resulting meta-agl/* follows these guidelines:
- only bsp adaptations in meta-agl-bsp
- remove the agl-profile-* layers for simplicity
-- the packagegroup-agl(-profile)-graphical and so on
have been kept in meta-agl-demo
- meta-agl-profile-core is now meta-agl-core
- meta-agl-core does pass yocto-check-layer
-- therefore use the bbappend + conditional + .inc file
construct found in meta-virtualization
- meta-agl/meta-security has been merged into meta-agl/meta-app-framework
- meta-netboot does pass yocto-check-layer
- meta-pipewire does pass yocto-check-layer
Migration:
All packagegroups are preserved but they're now enabled by 'agl-demo'.
Bug-AGL: SPEC-3723
Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Change-Id: Ia6c6e5e6ce2b4ffa69ea94959cdc57c310ba7c53
Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25769
Diffstat (limited to 'meta-agl.md')
-rwxr-xr-x | meta-agl.md | 126 |
1 files changed, 54 insertions, 72 deletions
diff --git a/meta-agl.md b/meta-agl.md index 6c3427cd5..565eff5a7 100755 --- a/meta-agl.md +++ b/meta-agl.md @@ -7,9 +7,6 @@ You use this layer as the minimal core on which to build AGL profiles. **NOTE:** The `meta-agl` layer does not include a reference UI. The reference UI is included as part of the [`meta-agl-demo`](./meta-agl-demo.html) layer. - Furthermore, `meta-agl` does not include additional components, such - as security, which are part of the - `meta-agl-extra` layer. ## Sub-Layers @@ -17,59 +14,45 @@ The `meta-agl` layer itself contains many sub-layers and files. Following is a "tree" look at the layer: ``` -. -├── docs -├── meta-agl -├── meta-agl-bsp -├── meta-agl-distro -├── meta-agl-profile-cluster -├── meta-agl-profile-cluster-qt5 -├── meta-agl-profile-core -├── meta-agl-profile-graphical -├── meta-agl-profile-graphical-html5 -├── meta-agl-profile-graphical-qt5 -├── meta-agl-profile-hud -├── meta-agl-profile-telematics -├── meta-app-framework -├── meta-netboot -├── meta-security -├── README-AGL.md -├── README.md -├── scripts -├── templates +|-- LICENSE +|-- LICENSE.GPL-2.0-only +|-- LICENSE.MIT +|-- README-AGL.md +|-- README.md -> meta-agl.md +|-- agl-layers-overview.md +|-- docs +|-- meta-agl-bsp +|-- meta-agl-core +|-- meta-agl-core-test +|-- meta-agl-ic +|-- meta-agl-ivi +|-- meta-agl.md +|-- meta-app-framework +|-- meta-netboot +|-- meta-pipewire +|-- scripts +`-- templates ``` This list provides some overview information on the files and sub-layers in `meta-agl`: +* LICENSE* : licenses of the various components. +* README* : RTFM +* agl-layers-overview.md: references to the various layers that make up AGL * `docs`: Contains files that support AGL documentation. -* `meta-agl`: Contains layer configuration for the `meta-agl` layer. * `meta-agl-bsp`: Contains adaptations for recipes and required packages to boot an AGL distribution on targeted hardware and emulation (i.e. QEMU). -* `meta-agl-distro`: Contains distro configuration and supporting scripts. -* `meta-agl-profile-cluster`: The middleware for the AGL cluster profile. - The set of packages required for AGL Cluster Distribution. - Profiles include support for Wayland images. -* `meta-agl-profile-cluster-qt5`: The middleware for the AGL Qt5-based cluster profile. - The set of packages required for AGL Qt5-based Cluster Distribution. - Profiles include support for Wayland images with Qt5. -* `meta-agl-profile-core`: Configuration and recipes for the AGL core profiles. -* `meta-agl-profile-graphical`: Configuration and recipes supporting graphical user - interfaces. -* `meta-agl-profile-graphical-html5`: Configuration and recipes supporting profiles - with HTML user interface support. -* `meta-agl-profile-graphical-qt5`: Configuration and recipes supporting profiles - with Qt5-based user interface support. -* `meta-agl-profile-hud`: Configuration and recipes supporting profiles with - Head-Up-Display (HUD) support. -* `meta-agl-profile-telematics`: Configuration and recipes supporting profiles with - telematics support. +* `meta-agl-core`: This is the core layer with essential recieps and the distro. +* `meta-agl-core-test`: recipes supporting qa images (separate layer due to external dependencies) +* `meta-agl-ic`: Instrument Cluster platform +* `meta-agl-ivi`: IVI platform * `meta-app-framework`: Configuration and recipes supporting the AGL Application Framework. * `meta-netboot`: Contains recipes and configuration adjustments to allow network boot through network block device (NBD) since network file system (NFS) does not support security labels. -* `meta-security`: Configuration and recipes supporting security applications. +* `meta-pipewire`: Configuration and recipes supporting pipewire as audio manager * `scripts`: AGL development setup and support scripts. * `templates`: Base, feature, and machine templates used in the AGL development environment. @@ -80,41 +63,40 @@ This section describes the AGL [packagegroup](https://yoctoproject.org/docs/2.4.4/dev-manual/dev-manual.html#usingpoky-extend-customimage-customtasks) design: -* packagegroup-agl-image-minimal +### core non-ui packagegroups: +meta-agl-core/recipes-platform/packagegroups/packagegroup-agl-core-connectivity.bb +meta-agl-core/recipes-platform/packagegroups/packagegroup-agl-core-devel.bb +meta-agl-core/recipes-platform/packagegroups/packagegroup-agl-core-security.bb +meta-agl-core/recipes-platform/packagegroups/packagegroup-agl-core-os-commonlibs.bb - packagegroup-agl-core-automotive.bb - packagegroup-agl-core-connectivity.bb - packagegroup-agl-core-graphics.bb - packagegroup-agl-core-kernel.bb - packagegroup-agl-core-multimedia.bb - packagegroup-agl-core-navi-lbs.bb - packagegroup-agl-core-os-commonlibs.bb - packagegroup-agl-core-security.bb - packagegroup-agl-core-speech-services.bb +### graphical subsystem +meta-agl-core/recipes-platform/packagegroups/packagegroup-agl-profile-graphical.bb +meta-agl-core/recipes-platform/packagegroups/packagegroup-agl-graphical-multimedia.bb +meta-agl-core/recipes-platform/packagegroups/packagegroup-agl-graphical-weston.bb - The previous list of Packagegroups are used to create the `agl-image-minimal` image, - which is a small image just capable of allowing a device to boot. +### image-related packagegroups +meta-agl-core/recipes-platform/packagegroups/packagegroup-agl-core-boot.bb +meta-agl-core/recipes-platform/packagegroups/packagegroup-agl-image-boot.bb +meta-agl-core/recipes-platform/packagegroups/packagegroup-agl-image-minimal.bb - Subsystem should maintain packagegroup-agl-core-[subsystem].bb which should - hold sufficient packages to build `agl-image-minimal`. +### QA/Test related packagegroups +meta-agl-core-test/recipes-test/packagegroups +meta-agl-core-test/recipes-test/packagegroups/packagegroup-agl-test.bb -* packagegroup-agl-image-ivi +## Images - packagegroup-agl-ivi-automotive.bb - packagegroup-agl-ivi-connectivity.bb - packagegroup-agl-ivi-graphics.bb - packagegroup-agl-ivi-kernel.bb - packagegroup-agl-ivi-multimedia.bb - packagegroup-agl-ivi-navi-lbs.bb - packagegroup-agl-ivi-os-commonlibs.bb - packagegroup-agl-ivi-security.bb - packagegroup-agl-ivi-speech-services.bb +### (Barely) bootable image +meta-agl-core/recipes-platform/images/agl-image-boot.bb - The previous list of Packagegroups are used to create the `agl-image-ivi` - image, which is a baseline image (i.e. Service Layer and Operating System - Layer defined in AGL Spec v1.0) for the AGL profiles. +### minimal image and SDK (console) +meta-agl-core/recipes-platform/images/agl-image-minimal.bb +meta-agl-core/recipes-platform/images/agl-image-minimal-crosssdk.bb -* packagegroup-agl-test.bb +### weston-based image for re-use +meta-agl-core/recipes-platform/images/agl-image-weston.bb - Additional tools used in QA tests (for agl-image*-qa). +### image for use in the YP autobuilder +meta-agl-core/recipes-platform/images/agl-image-core-autobuilder.bb +### image with extra QA tooling (e.g. to run LTP) +meta-agl-core-test/images/agl-image-minimal-qa.bb |