require conf/distro/poky.conf # Discrete version values. YOCTO_MAJOR = "5" YOCTO_MINOR = "0" DEY_RELEASE = "4" DEY_BUILD = "2" # Firmware version of the system. DEY_FIRMWARE_VERSION ?= "${YOCTO_MAJOR}.${YOCTO_MINOR}.${DEY_RELEASE}.${DEY_BUILD}" # Distribution info. DISTRO = "dey" DISTRO_NAME = "Digi Embedded Yocto" DISTRO_VERSION = "${YOCTO_MAJOR}.${YOCTO_MINOR}-r${DEY_RELEASE}" SDK_VENDOR = "-deysdk" MAINTAINER = "Digi Support " TARGET_VENDOR = "-dey" POKY_DEFAULT_EXTRA_RDEPENDS = "packagegroup-dey-core" POKY_DEFAULT_EXTRA_RRECOMMENDS = "" # # Rework distro features for DEY distribution # MACHINE_DISTRO_FEATURES_ADD ?= "" MACHINE_DISTRO_FEATURES_REMOVE ?= "" DISTRO_FEATURES:append = " cellular gstreamer pam ${MACHINE_DISTRO_FEATURES_ADD}" DISTRO_FEATURES:remove = "3g nfc nfs ptest zeroconf ${MACHINE_DISTRO_FEATURES_REMOVE}" GRAPHICAL_BACKEND = "${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland', \ bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', \ bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', 'fb', d), d), d)}" # Recovery initramfs image name. RECOVERY_INITRAMFS_IMAGE ?= "dey-image-recovery-initramfs" # Add initramfs into FIT image INITRAMFS_IMAGE = '${@bb.utils.contains("KERNEL_IMAGETYPE", "fitImage", "${RECOVERY_INITRAMFS_IMAGE}", "", d)}' # DEY image features (alphabetical order) FEATURE_PACKAGES_dey-audio = "packagegroup-dey-audio" FEATURE_PACKAGES_dey-bluetooth = "packagegroup-dey-bluetooth" FEATURE_PACKAGES_dey-chromium = "packagegroup-dey-chromium" FEATURE_PACKAGES_dey-debug = "packagegroup-dey-debug" FEATURE_PACKAGES_dey-examples = "packagegroup-dey-examples" FEATURE_PACKAGES_dey-flutter = "packagegroup-dey-flutter" FEATURE_PACKAGES_dey-gstreamer = "packagegroup-dey-gstreamer" FEATURE_PACKAGES_dey-lvgl = "packagegroup-dey-lvgl" FEATURE_PACKAGES_dey-network = "packagegroup-dey-network" FEATURE_PACKAGES_dey-qt = "packagegroup-dey-qt" FEATURE_PACKAGES_dey-trustfence = "packagegroup-dey-trustfence" FEATURE_PACKAGES_dey-webkit = "packagegroup-dey-webkit" FEATURE_PACKAGES_dey-wireless = "packagegroup-dey-wireless" # Our layer only provides version 5.41, which we want to keep because # it was used for Bluetooth certification. However by default the newer # 5.72 version should be used, which is provided by the poky layer. PREFERRED_VERSION_bluez5 ?= "5.72" # libdigiapix is not yet compatible with libgpiod 2.x, so until we do the # porting, use version 1.6.x (still provided by meta-openembedded) PREFERRED_VERSION_libgpiod ?= "1.6.%" # Use the FDO backend for WPE WebKit PREFERRED_PROVIDER_virtual/wpebackend = "wpebackend-fdo" SDKPATHINSTALL = "/opt/${DISTRO}/${SDK_VERSION}/${MACHINE}" # Some packages need this (e.g. gstreamer1.0-plugins-ugly) LICENSE_FLAGS_ACCEPTED += "commercial" # Use systemd init manager by default INIT_MANAGER = "systemd" # Enable examples for some QT packages PACKAGECONFIG:append:class-target:pn-qtbase = " examples" PACKAGECONFIG:append:class-target:pn-qtdeclarative = " examples" PACKAGECONFIG:append:class-target:pn-qtquick3d = " examples" PACKAGECONFIG:append:class-target:pn-qtwebengine = " examples" # Remove unnecessary libarchive configurations to trim down the recovery image, # while keeping the "zlib" one to make sure our file update mechanism still # works (libarchive needs to be able to handle .tar.gz files, every other # format can be omitted). PACKAGECONFIG:remove:class-target:pn-libarchive = "bz2 xz lzo zstd acl xattr" # cryptsetup still works as expected in our eMMC partition encryption use case # when udev support is disabled, so remove it to avoid dragging a bunch of # dependencies into the recovery and trustfence initramfs. PACKAGECONFIG:remove:class-target:pn-cryptsetup = "udev" # gstreamer's rsvg plugin is enabled by default in all of our platforms where # gstreamer1.0-plugins-bad is used, which is most of them. This plugin depends # on librsvg, a small library implemented in Rust. For some of our platforms, # it's the only package in our default DEY images that requires bitbake to # generate the Rust compiler, which is a lengthy process. Disable the gstreamer # rsvg plugin to remove this dependency and the Rust compiler overhead. PACKAGECONFIG:remove:pn-gstreamer1.0-plugins-bad = "rsvg"