diff options
Diffstat (limited to 'meta-agl-demo/recipes-platform')
15 files changed, 412 insertions, 0 deletions
diff --git a/meta-agl-demo/recipes-platform/images/agl-demo-platform-crosssdk.bb b/meta-agl-demo/recipes-platform/images/agl-demo-platform-crosssdk.bb new file mode 100755 index 00000000..088b4cc4 --- /dev/null +++ b/meta-agl-demo/recipes-platform/images/agl-demo-platform-crosssdk.bb @@ -0,0 +1,65 @@ +SUMMARY = "Cross SDK of Full AGL Distribution for IVI profile" + +DESCRIPTION = "SDK image for full AGL Distribution for IVI profile. \ +It includes the full meta-toolchain, plus developement headers and libraries \ +to form a standalone cross SDK." + +require agl-demo-platform.bb + +LICENSE = "MIT" + +IMAGE_FEATURES_append = " dev-pkgs" +IMAGE_INSTALL_append = " kernel-dev kernel-devsrc" + +inherit populate_sdk populate_sdk_qt5 + +# Task do_populate_sdk and do_rootfs can't be exec simultaneously. +# Both exec "createrepo" on the same directory, and so one of them +# can failed (randomly). +addtask do_populate_sdk after do_rootfs + +# native tools to support Chromium build inside SDK (SPEC-942) +TOOLCHAIN_HOST_TASK += " \ + nativesdk-gn \ + nativesdk-ninja \ + nativesdk-gperf \ + nativesdk-zlib \ + nativesdk-xz \ + nativesdk-nspr-dev \ + nativesdk-nss-dev \ + nativesdk-lua \ + " + +# required dependencies for Chromium build inside SDK (SPEC-942) +TOOLCHAIN_TARGET_TASK += " \ + pciutils-dev \ + ${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio-dev' , '', d)} \ + cairo-dev \ + nss-dev \ + cups-dev \ + gconf-dev \ + libexif-dev \ + pango-dev \ + libdrm-dev \ + lua-dev \ + lua-staticdev \ + libafb-helpers-staticdev \ + libafb-helpers-qt-staticdev \ + libappcontroller-staticdev \ + ${@bb.utils.contains('LICENSE_FLAGS_WHITELIST', 'commercial', 'ffmpeg-dev', '', d)} \ + " + +# Add wayland-scanner to SDK (SPEC-945) +# Use TOOLCHAIN_HOST_TASK instead of adding to the packagegroup +# wayland-scanner is in nativesdk-wayland-dev ! +# option: add also nativesdk-qtwayland-tools +TOOLCHAIN_HOST_TASK_append = " nativesdk-wayland nativesdk-wayland-dev" + +TOOLCHAIN_HOST_TASK_append = " nativesdk-perl-modules " + +# Add mosquitto to support building the telematics demo application. +# This is currently required for CI, as it uses agl-demo-platform-crosssdk +# to build everything. An agenda item has been tabled for the May 2019 F2F +# meeting to discuss the path forward (separate versus superset SDKs), this +# should be reviewed after that. +TOOLCHAIN_TARGET_TASK += "mosquitto-dev" diff --git a/meta-agl-demo/recipes-platform/images/agl-demo-platform-qa.bb b/meta-agl-demo/recipes-platform/images/agl-demo-platform-qa.bb new file mode 100644 index 00000000..fa3f717d --- /dev/null +++ b/meta-agl-demo/recipes-platform/images/agl-demo-platform-qa.bb @@ -0,0 +1,13 @@ +SUMMARY = "A full set of AGL Distribution for testing as Quality Assurance" + +DESCRIPTION = "A full set of AGL Distribution. This image also has additional \ +packages (e.g. commandline tools) for Quality Assurance(QA)." + +LICENSE = "MIT" + +require agl-demo-platform.bb + +IMAGE_INSTALL_append = " \ + packagegroup-ivi-common-test \ + packagegroup-agl-demo-platform-qa \ + " diff --git a/meta-agl-demo/recipes-platform/images/agl-demo-platform.bb b/meta-agl-demo/recipes-platform/images/agl-demo-platform.bb new file mode 100644 index 00000000..297cb706 --- /dev/null +++ b/meta-agl-demo/recipes-platform/images/agl-demo-platform.bb @@ -0,0 +1,15 @@ +DESCRIPTION = "AGL Demo Platform image currently contains a simple HMI and \ +demos." + +require agl-demo-platform.inc + +LICENSE = "MIT" + +IMAGE_FEATURES_append = " \ + " + +# add packages for demo platform (include demo apps) here +IMAGE_INSTALL_append = " \ + packagegroup-agl-demo-platform \ + " + diff --git a/meta-agl-demo/recipes-platform/images/agl-demo-platform.inc b/meta-agl-demo/recipes-platform/images/agl-demo-platform.inc new file mode 100644 index 00000000..203fcc07 --- /dev/null +++ b/meta-agl-demo/recipes-platform/images/agl-demo-platform.inc @@ -0,0 +1,3 @@ +# Base image +require recipes-platform/images/agl-image-ivi.inc + diff --git a/meta-agl-demo/recipes-platform/images/agl-image-ivi-qa.bb b/meta-agl-demo/recipes-platform/images/agl-image-ivi-qa.bb new file mode 100644 index 00000000..01743945 --- /dev/null +++ b/meta-agl-demo/recipes-platform/images/agl-image-ivi-qa.bb @@ -0,0 +1,14 @@ +SUMMARY = "A basic system of AGL distribution of IVI profile for Quality Assurance(QA)" + +DESCRIPTION = "A basic set of AGL Distribution. This image also has additional \ +packages (e.g. commandline tools) for Quality Assurance(QA)." + +require agl-image-ivi.bb + +LICENSE = "MIT" + +IMAGE_INSTALL_append = " \ + packagegroup-agl-test \ + packagegroup-ivi-common-test \ + " + diff --git a/meta-agl-demo/recipes-platform/images/agl-image-ivi.bb b/meta-agl-demo/recipes-platform/images/agl-image-ivi.bb new file mode 100644 index 00000000..dd4f89b1 --- /dev/null +++ b/meta-agl-demo/recipes-platform/images/agl-image-ivi.bb @@ -0,0 +1,17 @@ +SUMMARY = "A basic system of AGL distribution of IVI profile" + +DESCRIPTION = "Basic image for baseline of AGL Distribution for IVI profile." + +require agl-image-ivi.inc + +LICENSE = "MIT" + +IMAGE_INSTALL_append = "\ + packagegroup-agl-image-ivi \ + " + +DISTRO_FEATURES_append = " agl-core-image-profile" + +IMAGE_INSTALL += "\ + agl-desktop-config \ + " diff --git a/meta-agl-demo/recipes-platform/images/agl-image-ivi.inc b/meta-agl-demo/recipes-platform/images/agl-image-ivi.inc new file mode 100644 index 00000000..610d4e46 --- /dev/null +++ b/meta-agl-demo/recipes-platform/images/agl-image-ivi.inc @@ -0,0 +1,3 @@ +require recipes-platform/images/agl-image-minimal.inc + +IMAGE_FEATURES += "splash package-management ssh-server-dropbear" diff --git a/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-demo-platform-qa.bb b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-demo-platform-qa.bb new file mode 100644 index 00000000..739f859b --- /dev/null +++ b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-demo-platform-qa.bb @@ -0,0 +1,15 @@ +SUMMARY = "The software for DEMO platform of AGL IVI profile" +DESCRIPTION = "A set of packages belong to AGL Demo Platform includes utilities for testing distribution as Quality Assurance" + +LICENSE = "MIT" + +inherit packagegroup + +PACKAGES = "\ + packagegroup-agl-demo-platform-qa \ + " + +ALLOW_EMPTY_${PN} = "1" + +RDEPENDS_${PN} += "\ + " diff --git a/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-demo-platform.bb b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-demo-platform.bb new file mode 100644 index 00000000..128d4d7e --- /dev/null +++ b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-demo-platform.bb @@ -0,0 +1,92 @@ +SUMMARY = "The software for DEMO platform of AGL IVI profile" +DESCRIPTION = "A set of packages belong to AGL Demo Platform" + +LICENSE = "MIT" + +inherit packagegroup + +PACKAGES = "\ + packagegroup-agl-demo-platform \ + " + +ALLOW_EMPTY_${PN} = "1" + +RDEPENDS_${PN} += "\ + packagegroup-agl-image-ivi \ + " + +RDEPENDS_${PN} += "\ + packagegroup-agl-profile-graphical-qt5 \ + packagegroup-agl-demo \ + " + +MOST_DRIVERS = " \ + most \ + " +MOST_DRIVERS_append_m3ulcb = " sllin" + +# HVAC dependencies depend on drivers above +MOST_HVAC = " " +MOST_HVAC_append = " \ + ${MOST_DRIVERS} \ + unicens-config \ + agl-service-unicens \ + " + +# @Chris: This needs to be checked! +MOST_HVAC_dra7xx-evm = "" +MOST_HVAC_dragonboard-410c = "" + +AGL_APPS = " \ + dashboard \ + hvac \ + mediaplayer \ + virtual/navigation \ + phone \ + poiapp \ + radio \ + settings \ + ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'taskmanager' , '', d)} \ + high-level-viwi-service \ + agl-service-signal-composer \ + low-can-demo \ + virtual/mixer \ + " + +AGL_APIS = " \ + libnaviapi-agl \ + " + +QTAGLEXTRAS = "${@bb.utils.contains("DISTRO_FEATURES", "agl-hmi-framework", " qtaglextras", "",d)}" + +# Cluster demo support. +# ATM mapviewer is required for navigation map viewing when doing cluster +# demos with the older navigation application. +MAPVIEWER = "${@bb.utils.contains("PREFERRED_PROVIDER_virtual/navigation", "navigation", "mapviewer", "",d)}" +CLUSTER_SUPPORT = "${@bb.utils.contains("DISTRO_FEATURES", "agl-cluster-demo-support", "${MAPVIEWER} cluster-demo-network-config", "",d)}" + +# Preload poi API key for demo if requested, and potentially maps for older +# navigation application if it is configured. +DEMO_MAPS_LOCALE ?= "uk" +DEMO_PRELOAD_MAPS = "${@bb.utils.contains("PREFERRED_PROVIDER_virtual/navigation", "navigation", " navigation-maps-${DEMO_MAPS_LOCALE}", "",d)}" +DEMO_PRELOAD = "${@bb.utils.contains("DISTRO_FEATURES", "agl-demo-preload", " ${DEMO_PRELOAD_MAPS} poiapp-api-key", "",d)}" + +# Hook for demo platform configuration +# ATM, only used to disable btwilink module on M3ULCB + Kingfisher by default, +# setting DEMO_ENABLE_BTWILINK to "true" in local.conf / site.conf re-enables. +DEMO_ENABLE_BTWILINK ?= "" +DEMO_PLATFORM_CONF = "" +DEMO_PLATFORM_CONF_append_m3ulcb = "${@bb.utils.contains("DEMO_ENABLE_BTWILINK", "true", "", " btwilink-disable-conf", d)}" + +RDEPENDS_${PN}_append = " \ + qtquickcontrols2-agl \ + qtquickcontrols2-agl-style \ + linux-firmware-ralink \ + ${MOST_HVAC} \ + ${AGL_APPS} \ + ${AGL_APIS} \ + ${QTAGLEXTRAS} \ + ${CLUSTER_SUPPORT} \ + ${DEMO_PRELOAD} \ + ${DEMO_PLATFORM_CONF} \ + " diff --git a/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-demo.bb b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-demo.bb new file mode 100644 index 00000000..59757819 --- /dev/null +++ b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-demo.bb @@ -0,0 +1,63 @@ +SUMMARY = "The software for AGL IVI DEMO profile" +DESCRIPTION = "A set of packages belong to AGL Demo" + +LICENSE = "MIT" + +inherit packagegroup + +PACKAGES = "\ + packagegroup-agl-demo \ + " + +ALLOW_EMPTY_${PN} = "1" + +SMARTDEVICELINK = "${@bb.utils.contains('DISTRO_FEATURES', 'agl-sdl', \ + 'packagegroup-agl-smartdevicelink', '', d)}" + +# packages from hmi-framework aka homescreen-2017 +HOMESCREEN = "packagegroup-hmi-framework" + +# removed: now all enablers are in meta-agl-devel/meta-audio-soundmanager-framework +# old audio package +# AUDIO-OLD = "audiomanager" + +RDEPENDS_${PN} += "\ + libqtappfw \ + ${HOMESCREEN} \ + udisks \ + ${SMARTDEVICELINK} \ + " + +# fonts +TTF_FONTS = " \ + ttf-bitstream-vera \ + ttf-dejavu-sans \ + ttf-dejavu-sans-mono \ + ttf-dejavu-serif \ + source-han-sans-cn-fonts \ + source-han-sans-jp-fonts \ + source-han-sans-tw-fonts \ + noto-emoji \ + " + +#EXTRA_APPS_append = " ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', 'qtwebengine', '', d)}" +#EXTRA_APPS_append = " qtsmarthome cinematicexperience qt5everywheredemo qt5-demo-extrafiles" +#IMAGE_INSTALL_append = " qtwebengine-examples" + +# add support for websocket in Qt and QML +EXTRA_APPS_append = " qtwebsockets qtwebsockets-qmlplugins" +PREFERRED_PROVIDER_virtual/webruntime = "web-runtime" + + +RDEPENDS_${PN} += " \ + linux-firmware-ath9k \ + can-utils \ + iproute2 \ + python-curses \ + dhcp-client \ + ${TTF_FONTS} \ + ${EXTRA_APPS} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'webruntime', 'virtual/webruntime', '', d)} \ + " + + diff --git a/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-image-ivi.bb b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-image-ivi.bb new file mode 100644 index 00000000..0edc600c --- /dev/null +++ b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-image-ivi.bb @@ -0,0 +1,32 @@ +SUMMARY = "The middlewares for AGL IVI profile" +DESCRIPTION = "The set of packages required for AGL Distribution" +LICENSE = "MIT" + +inherit packagegroup + +PACKAGES = "\ + packagegroup-agl-image-ivi \ + " + +ALLOW_EMPTY_${PN} = "1" + +RDEPENDS_${PN} += "\ + packagegroup-agl-image-minimal \ +" + +RDEPENDS_${PN} += "\ + packagegroup-agl-ivi-connectivity \ + packagegroup-agl-ivi-graphics \ + packagegroup-agl-ivi-multimedia \ + " +# packagegroup-agl-ivi-automotive \ +# packagegroup-agl-ivi-speech-services \ +# packagegroup-agl-ivi-navi-lbs \ +# packagegroup-agl-ivi-security \ +# packagegroup-agl-ivi-os-commonlibs \ +# packagegroup-agl-ivi-kernel \ +# + +RDEPENDS_${PN} += "\ + agl-login-manager \ + " diff --git a/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-ivi-connectivity.bb b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-ivi-connectivity.bb new file mode 100644 index 00000000..2d45986d --- /dev/null +++ b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-ivi-connectivity.bb @@ -0,0 +1,15 @@ +SUMMARY = "The middlewares for AGL IVI profile" +DESCRIPTION = "The set of packages required by Connectivity Subsystem" +LICENSE = "MIT" + +inherit packagegroup + +PACKAGES = "\ + packagegroup-agl-ivi-connectivity \ + " + +ALLOW_EMPTY_${PN} = "1" + +RDEPENDS_${PN} += "\ + ofono \ + " diff --git a/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-ivi-graphics.bb b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-ivi-graphics.bb new file mode 100644 index 00000000..8831e10a --- /dev/null +++ b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-ivi-graphics.bb @@ -0,0 +1,15 @@ +SUMMARY = "The middlewares for AGL IVI profile" +DESCRIPTION = "The set of packages required by Graphics Subsystem" +LICENSE = "MIT" + +inherit packagegroup + +PACKAGES = "\ + packagegroup-agl-ivi-graphics \ + " + +ALLOW_EMPTY_${PN} = "1" + +RDEPENDS_${PN} += "\ + opencv \ + " diff --git a/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-ivi-multimedia.bb b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-ivi-multimedia.bb new file mode 100644 index 00000000..34622efd --- /dev/null +++ b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-agl-ivi-multimedia.bb @@ -0,0 +1,27 @@ +SUMMARY = "The middlewares for AGL IVI profile" +DESCRIPTION = "The set of packages required by Multimedia Subsystem" +LICENSE = "MIT" + +inherit packagegroup + +PACKAGES = "\ + packagegroup-agl-ivi-multimedia \ + " + +ALLOW_EMPTY_${PN} = "1" + +RDEPENDS_${PN} += "\ + gstreamer1.0-plugins-base-meta \ + gstreamer1.0-plugins-good-meta \ + lightmediascanner-meta \ + " + +# for now: enable here for the AGL IVI demo (image-ivi and demo-platform) +# tbd: change based on usage in profiles +PIPEWIRE = "\ + ${@bb.utils.contains('DISTRO_FEATURES', 'pipewire', 'packagegroup-pipewire', '', d)}\ + " + +RDEPENDS_${PN} += "\ + ${PIPEWIRE} \ + " diff --git a/meta-agl-demo/recipes-platform/packagegroups/packagegroup-hmi-framework.bb b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-hmi-framework.bb new file mode 100644 index 00000000..cf704e63 --- /dev/null +++ b/meta-agl-demo/recipes-platform/packagegroups/packagegroup-hmi-framework.bb @@ -0,0 +1,23 @@ +SUMMARY = "The software for the AGL hmi framework 2017" +DESCRIPTION = "A set of packages belong to the hmi framework 2017" + +LICENSE = "MIT" + +# need to bump manually due to: +# - nothing provides libqthomescreenwrapper0 needed by packagegroup-hmi-framework-1.0-r0.noarch +PR = "2" + +inherit packagegroup + +RDEPENDS_${PN} += " \ + agl-service-windowmanager \ + agl-service-homescreen \ + homescreen \ + libwindowmanager \ + qlibwindowmanager \ + libhomescreen \ + qlibhomescreen \ + runxdg \ + hmi-debug \ + launcher \ +" |