Add support for the dey-image-webkit image

This image is very similar to dey-image-qt, but it includes the WebKit
packagegroup instead of the Qt one. Said packagegroup contains all of the
elements needed to run a WebKit-based browser environment in DEY.

This image requires the meta-webkit layer, so include it in our default
bblayers template. For now, include all WebKit related recipes in a dynamic
layer, because the ccimx6ul doesn't support WebKit and its projects don't need
meta-webkit at all.

https://jira.digi.com/browse/DEL-7339

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This commit is contained in:
Gabriel Valcazar 2020-12-09 16:28:07 +01:00
parent 8b3b8b5516
commit f91cb8d6bd
19 changed files with 143 additions and 69 deletions

View File

@ -42,6 +42,7 @@ FEATURE_PACKAGES_dey-gstreamer = "packagegroup-dey-gstreamer"
FEATURE_PACKAGES_dey-network = "packagegroup-dey-network" FEATURE_PACKAGES_dey-network = "packagegroup-dey-network"
FEATURE_PACKAGES_dey-qt = "packagegroup-dey-qt" FEATURE_PACKAGES_dey-qt = "packagegroup-dey-qt"
FEATURE_PACKAGES_dey-trustfence = "packagegroup-dey-trustfence" FEATURE_PACKAGES_dey-trustfence = "packagegroup-dey-trustfence"
FEATURE_PACKAGES_dey-webkit = "packagegroup-dey-webkit"
FEATURE_PACKAGES_dey-wireless = "packagegroup-dey-wireless" FEATURE_PACKAGES_dey-wireless = "packagegroup-dey-wireless"
# Our layer only provides version 5.41, which we want to keep because # Our layer only provides version 5.41, which we want to keep because

View File

@ -5,10 +5,10 @@ BBPATH .= ":${LAYERDIR}"
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
${LAYERDIR}/recipes-*/*/*.bbappend" ${LAYERDIR}/recipes-*/*/*.bbappend"
# Let us add layer-specific bbappends which are only applied when that BBFILES_DYNAMIC += " \
# layer is included in our configuration webkit:${LAYERDIR}/dynamic-layers/webkit/*/*/*.bb \
BBFILES += "${@' '.join('${LAYERDIR}/other-layers/%s/recipes*/*/*.bbappend' % layer \ webkit:${LAYERDIR}/dynamic-layers/webkit/*/*/*.bbappend \
for layer in BBFILE_COLLECTIONS.split())}" "
BBFILE_COLLECTIONS += "digi-dey" BBFILE_COLLECTIONS += "digi-dey"
BBFILE_PATTERN_digi-dey := "^${LAYERDIR}/" BBFILE_PATTERN_digi-dey := "^${LAYERDIR}/"

View File

@ -0,0 +1,13 @@
#
# Copyright (C) 2020, Digi International Inc.
#
SUMMARY = "WebKit packagegroup for DEY image"
PACKAGE_ARCH = "${MACHINE_ARCH}"
inherit packagegroup
# Include WPE WebKit and launcher (cog)
RDEPENDS_${PN} += " \
cog \
wpewebkit \
"

View File

@ -0,0 +1,10 @@
#
# Copyright (C) 2020 Digi International.
#
require recipes-core/images/dey-image-graphical.inc
DESCRIPTION = "DEY image with WebKit browser engine support"
GRAPHICAL_CORE = "webkit"
COMPATIBLE_MACHINE = "(ccimx8x|ccimx8m|ccimx6$)"

View File

@ -0,0 +1,8 @@
# Copyright (C) 2020 Digi International Inc.
require recipes-digi/swu-images/swu.inc
# Point to the SRC_URI files in the original swu-images directory
FILESEXTRAPATHS_prepend := "${THISDIR}/../../../../recipes-digi/swu-images/files:"
IMG_NAME = "${@get_baseimg_pn(d)}-${GRAPHICAL_BACKEND}"

View File

@ -0,0 +1,64 @@
#
# Copyright (C) 2016-2020 Digi International.
#
DESCRIPTION = "DEY image with graphical libraries"
LICENSE = "MIT"
GRAPHICAL_CORE ??= "qt"
SOC_PACKAGES = ""
SOC_PACKAGES_ccimx6 = "imx-gpu-viv-demos imx-gpu-viv-tools"
IMAGE_INSTALL = " \
packagegroup-dey-core \
${CORE_IMAGE_EXTRA_INSTALL} \
${SOC_PACKAGES} \
"
IMAGE_FEATURES += " \
dey-network \
dey-${GRAPHICAL_CORE} \
eclipse-debug \
package-management \
ssh-server-dropbear \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '', \
bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11-base x11-sato', \
'', d), d)} \
${@bb.utils.contains('MACHINE_FEATURES', 'accel-video', 'dey-gstreamer', '', d)} \
${@bb.utils.contains('MACHINE_FEATURES', 'alsa', 'dey-audio', '', d)} \
${@bb.utils.contains('MACHINE_FEATURES', 'bluetooth', 'dey-bluetooth', '', d)} \
${@bb.utils.contains('MACHINE_FEATURES', 'wifi', 'dey-wireless', '', d)} \
"
# Separately add 'dey-gstreamer' to ccimx6ulsbc platform.
# This platform does not have 'accel-video' but we want gstreamer for using
# it with video/camera
IMAGE_FEATURES_append_ccimx6ulsbc = " dey-gstreamer"
# Remove some features to reduce the rootfs size to fit in the internal storage.
IMAGE_FEATURES_remove_ccimx6ul = "package-management"
# SDK features (for toolchains generated from an image with populate_sdk)
SDKIMAGE_FEATURES ?= "dev-pkgs dbg-pkgs staticdev-pkgs"
IMAGE_LINGUAS = ""
inherit core-image
inherit dey-image
inherit distro_features_check
CONFLICT_DISTRO_FEATURES = "directfb"
IMAGE_ROOTFS_SIZE = "8192"
# Do not install udev-cache
BAD_RECOMMENDATIONS += "udev-cache"
BAD_RECOMMENDATIONS += "eudev-hwdb"
export IMAGE_BASENAME = "dey-image-${GRAPHICAL_CORE}-${GRAPHICAL_BACKEND}"
CORE_IMAGE_EXTRA_INSTALL += " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'weston-init weston-examples gtk+3-demo clutter-1.0-examples', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'weston-xwayland xterm', '', d)} \
dey-examples-digiapix \
"

View File

@ -1,62 +1,8 @@
# #
# Copyright (C) 2016-2018 Digi International. # Copyright (C) 2016-2020 Digi International.
# #
require dey-image-graphical.inc
DESCRIPTION = "DEY image with QT graphical libraries" DESCRIPTION = "DEY image with QT graphical libraries"
LICENSE = "MIT"
SOC_PACKAGES = "" GRAPHICAL_CORE = "qt"
SOC_PACKAGES_ccimx6 = "imx-gpu-viv-demos imx-gpu-viv-tools"
IMAGE_INSTALL = " \
packagegroup-dey-core \
${CORE_IMAGE_EXTRA_INSTALL} \
${SOC_PACKAGES} \
"
IMAGE_FEATURES += " \
dey-network \
dey-qt \
eclipse-debug \
package-management \
ssh-server-dropbear \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '', \
bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11-base x11-sato', \
'', d), d)} \
${@bb.utils.contains('MACHINE_FEATURES', 'accel-video', 'dey-gstreamer', '', d)} \
${@bb.utils.contains('MACHINE_FEATURES', 'alsa', 'dey-audio', '', d)} \
${@bb.utils.contains('MACHINE_FEATURES', 'bluetooth', 'dey-bluetooth', '', d)} \
${@bb.utils.contains('MACHINE_FEATURES', 'wifi', 'dey-wireless', '', d)} \
"
# Separately add 'dey-gstreamer' to ccimx6ulsbc platform.
# This platform does not have 'accel-video' but we want gstreamer for using
# it with video/camera
IMAGE_FEATURES_append_ccimx6ulsbc = " dey-gstreamer"
# Remove some features to reduce the rootfs size to fit in the internal storage.
IMAGE_FEATURES_remove_ccimx6ul = "package-management"
# SDK features (for toolchains generated from an image with populate_sdk)
SDKIMAGE_FEATURES ?= "dev-pkgs dbg-pkgs staticdev-pkgs"
IMAGE_LINGUAS = ""
inherit core-image
inherit dey-image
inherit distro_features_check
CONFLICT_DISTRO_FEATURES = "directfb"
IMAGE_ROOTFS_SIZE = "8192"
# Do not install udev-cache
BAD_RECOMMENDATIONS += "udev-cache"
BAD_RECOMMENDATIONS += "eudev-hwdb"
export IMAGE_BASENAME = "dey-image-qt-${GRAPHICAL_BACKEND}"
CORE_IMAGE_EXTRA_INSTALL += " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'weston-init weston-examples gtk+3-demo clutter-1.0-examples', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'weston-xwayland xterm', '', d)} \
dey-examples-digiapix \
"

View File

@ -29,7 +29,7 @@ MANIFEST_URL="https://github.com/digi-embedded/dey-manifest.git"
RM_WORK_CFG=" RM_WORK_CFG="
INHERIT += \"rm_work\" INHERIT += \"rm_work\"
# Exclude rm_work for some key packages (for debugging purposes) # Exclude rm_work for some key packages (for debugging purposes)
RM_WORK_EXCLUDE += \"dey-image-qt linux-dey qtbase u-boot-dey\" RM_WORK_EXCLUDE += \"dey-image-qt dey-image-webkit linux-dey qtbase u-boot-dey\"
" "
ZIP_INSTALLER_CFG=" ZIP_INSTALLER_CFG="
@ -91,6 +91,7 @@ purge_sstate() {
packagegroup-dey-gstreamer \ packagegroup-dey-gstreamer \
packagegroup-dey-network \ packagegroup-dey-network \
packagegroup-dey-qt \ packagegroup-dey-qt \
packagegroup-dey-webkit \
packagegroup-dey-wireless \ packagegroup-dey-wireless \
" "
bitbake -k -c cleansstate ${PURGE_PKGS} >/dev/null 2>&1 || true bitbake -k -c cleansstate ${PURGE_PKGS} >/dev/null 2>&1 || true

View File

@ -42,7 +42,7 @@ BB_GENERATE_MIRROR_TARBALLS = \"1\"
RM_WORK_CFG=" RM_WORK_CFG="
INHERIT += \"rm_work\" INHERIT += \"rm_work\"
# Exclude rm_work for some key packages (for debugging purposes) # Exclude rm_work for some key packages (for debugging purposes)
RM_WORK_EXCLUDE += \"dey-image-qt linux-dey qtbase u-boot-dey\" RM_WORK_EXCLUDE += \"dey-image-qt dey-image-webkit linux-dey qtbase u-boot-dey\"
" "
ZIP_INSTALLER_CFG=" ZIP_INSTALLER_CFG="
@ -109,6 +109,7 @@ purge_sstate() {
packagegroup-dey-gstreamer \ packagegroup-dey-gstreamer \
packagegroup-dey-network \ packagegroup-dey-network \
packagegroup-dey-qt \ packagegroup-dey-qt \
packagegroup-dey-webkit \
packagegroup-dey-wireless \ packagegroup-dey-wireless \
" "
bitbake -k -c cleansstate ${PURGE_PKGS} >/dev/null 2>&1 || true bitbake -k -c cleansstate ${PURGE_PKGS} >/dev/null 2>&1 || true
@ -173,11 +174,11 @@ while read _pl _var _tgt; do
eval "${_pl//-/_}_var=\"${_var//,/ }\"" eval "${_pl//-/_}_var=\"${_var//,/ }\""
eval "${_pl//-/_}_tgt=\"${_tgt//,/ }\"" eval "${_pl//-/_}_tgt=\"${_tgt//,/ }\""
done<<-_EOF_ done<<-_EOF_
ccimx8mn-dvk DONTBUILDVARIANTS dey-image-qt,dey-image-aws ccimx8mn-dvk DONTBUILDVARIANTS dey-image-qt,dey-image-webkit,dey-image-aws
ccimx8x-sbc-pro DONTBUILDVARIANTS dey-image-qt,dey-image-aws ccimx8x-sbc-pro DONTBUILDVARIANTS dey-image-qt,dey-image-webkit,dey-image-aws
ccimx8x-sbc-express DONTBUILDVARIANTS dey-image-qt,dey-image-aws ccimx8x-sbc-express DONTBUILDVARIANTS dey-image-qt,dey-image-webkit,dey-image-aws
ccimx6qpsbc DONTBUILDVARIANTS dey-image-qt,dey-image-aws ccimx6qpsbc DONTBUILDVARIANTS dey-image-qt,dey-image-webkit,dey-image-aws
ccimx6sbc DONTBUILDVARIANTS dey-image-qt,dey-image-aws ccimx6sbc DONTBUILDVARIANTS dey-image-qt,dey-image-webkit,dey-image-aws
ccimx6ulsbc DONTBUILDVARIANTS dey-image-qt,dey-image-aws ccimx6ulsbc DONTBUILDVARIANTS dey-image-qt,dey-image-aws
ccimx6ulstarter DONTBUILDVARIANTS core-image-base,dey-image-aws ccimx6ulstarter DONTBUILDVARIANTS core-image-base,dey-image-aws
ccimx6ulsom DONTBUILDVARIANTS dey-image-mft-module-min ccimx6ulsom DONTBUILDVARIANTS dey-image-mft-module-min

View File

@ -17,6 +17,7 @@ BBLAYERS ?= " \
##DIGIBASE##/meta-swupdate \ ##DIGIBASE##/meta-swupdate \
##DIGIBASE##/meta-freescale \ ##DIGIBASE##/meta-freescale \
##DIGIBASE##/meta-fsl-demos \ ##DIGIBASE##/meta-fsl-demos \
##DIGIBASE##/meta-webkit \
##DIGIBASE##/meta-digi/meta-digi-arm \ ##DIGIBASE##/meta-digi/meta-digi-arm \
##DIGIBASE##/meta-digi/meta-digi-dey \ ##DIGIBASE##/meta-digi/meta-digi-dey \
" "

View File

@ -10,6 +10,11 @@ Digi Embedded Yocto provides the following image recipes:
DISTRO_FEATURES_remove = "x11 wayland" DISTRO_FEATURES_remove = "x11 wayland"
* dey-image-webkit: graphical WebKit image
By default the image is XWayland-based so it provides a full Weston
desktop environment.
* dey-image-aws: console-only image supporting Amazon Web Services IoT * dey-image-aws: console-only image supporting Amazon Web Services IoT
This image includes the AWS Greengrass Core and an AWS IoT platform This image includes the AWS Greengrass Core and an AWS IoT platform

View File

@ -17,6 +17,7 @@ BBLAYERS ?= " \
##DIGIBASE##/meta-swupdate \ ##DIGIBASE##/meta-swupdate \
##DIGIBASE##/meta-freescale \ ##DIGIBASE##/meta-freescale \
##DIGIBASE##/meta-fsl-demos \ ##DIGIBASE##/meta-fsl-demos \
##DIGIBASE##/meta-webkit \
##DIGIBASE##/meta-digi/meta-digi-arm \ ##DIGIBASE##/meta-digi/meta-digi-arm \
##DIGIBASE##/meta-digi/meta-digi-dey \ ##DIGIBASE##/meta-digi/meta-digi-dey \
" "

View File

@ -10,6 +10,11 @@ Digi Embedded Yocto provides the following image recipes:
DISTRO_FEATURES_remove = "x11 wayland" DISTRO_FEATURES_remove = "x11 wayland"
* dey-image-webkit: graphical WebKit image
By default the image is XWayland-based so it provides a full Weston
desktop environment.
* dey-image-aws: console-only image supporting Amazon Web Services IoT * dey-image-aws: console-only image supporting Amazon Web Services IoT
This image includes the AWS Greengrass Core and an AWS IoT platform This image includes the AWS Greengrass Core and an AWS IoT platform

View File

@ -17,6 +17,7 @@ BBLAYERS ?= " \
##DIGIBASE##/meta-swupdate \ ##DIGIBASE##/meta-swupdate \
##DIGIBASE##/meta-freescale \ ##DIGIBASE##/meta-freescale \
##DIGIBASE##/meta-fsl-demos \ ##DIGIBASE##/meta-fsl-demos \
##DIGIBASE##/meta-webkit \
##DIGIBASE##/meta-digi/meta-digi-arm \ ##DIGIBASE##/meta-digi/meta-digi-arm \
##DIGIBASE##/meta-digi/meta-digi-dey \ ##DIGIBASE##/meta-digi/meta-digi-dey \
" "

View File

@ -10,6 +10,11 @@ Digi Embedded Yocto provides the following image recipes:
DISTRO_FEATURES_remove = "x11 wayland vulkan" DISTRO_FEATURES_remove = "x11 wayland vulkan"
* dey-image-webkit: graphical WebKit image
By default the image is XWayland-based so it provides a full Weston
desktop environment.
* dey-image-aws: console-only image supporting Amazon Web Services IoT * dey-image-aws: console-only image supporting Amazon Web Services IoT
This image includes the AWS Greengrass Core and an AWS IoT platform This image includes the AWS Greengrass Core and an AWS IoT platform

View File

@ -17,6 +17,7 @@ BBLAYERS ?= " \
##DIGIBASE##/meta-swupdate \ ##DIGIBASE##/meta-swupdate \
##DIGIBASE##/meta-freescale \ ##DIGIBASE##/meta-freescale \
##DIGIBASE##/meta-fsl-demos \ ##DIGIBASE##/meta-fsl-demos \
##DIGIBASE##/meta-webkit \
##DIGIBASE##/meta-digi/meta-digi-arm \ ##DIGIBASE##/meta-digi/meta-digi-arm \
##DIGIBASE##/meta-digi/meta-digi-dey \ ##DIGIBASE##/meta-digi/meta-digi-dey \
" "

View File

@ -10,6 +10,11 @@ Digi Embedded Yocto provides the following image recipes:
DISTRO_FEATURES_remove = "x11 wayland vulkan" DISTRO_FEATURES_remove = "x11 wayland vulkan"
* dey-image-webkit: graphical WebKit image
By default the image is XWayland-based so it provides a full Weston
desktop environment.
* dey-image-aws: console-only image supporting Amazon Web Services IoT * dey-image-aws: console-only image supporting Amazon Web Services IoT
This image includes the AWS Greengrass Core and an AWS IoT platform This image includes the AWS Greengrass Core and an AWS IoT platform

View File

@ -17,6 +17,7 @@ BBLAYERS ?= " \
##DIGIBASE##/meta-swupdate \ ##DIGIBASE##/meta-swupdate \
##DIGIBASE##/meta-freescale \ ##DIGIBASE##/meta-freescale \
##DIGIBASE##/meta-fsl-demos \ ##DIGIBASE##/meta-fsl-demos \
##DIGIBASE##/meta-webkit \
##DIGIBASE##/meta-digi/meta-digi-arm \ ##DIGIBASE##/meta-digi/meta-digi-arm \
##DIGIBASE##/meta-digi/meta-digi-dey \ ##DIGIBASE##/meta-digi/meta-digi-dey \
" "

View File

@ -10,6 +10,11 @@ Digi Embedded Yocto provides the following image recipes:
DISTRO_FEATURES_remove = "x11 wayland vulkan" DISTRO_FEATURES_remove = "x11 wayland vulkan"
* dey-image-webkit: graphical WebKit image
By default the image is XWayland-based so it provides a full Weston
desktop environment.
* dey-image-aws: console-only image supporting Amazon Web Services IoT * dey-image-aws: console-only image supporting Amazon Web Services IoT
This image includes the AWS Greengrass Core and an AWS IoT platform This image includes the AWS Greengrass Core and an AWS IoT platform