# Release flags
-DISTRO_CODENAME = "icefish"
+DISTRO_CODENAME = "koi"
AGL_BRANCH = "master"
-AGLVERSION = "8.99.5"
+AGLVERSION = "10.90.0"
# switch devel/release
AGLRELEASETYPE ?= "agldevelopment"
#AGLRELEASETYPE ?= "aglrelease"
AGL_APP_REVISION_aglrelease := "refs/tags/${DISTRO_BRANCH_VERSION_TAG}"
AGL_DEFAULT_REVISION_aglrelease := "refs/tags/${DISTRO_BRANCH_VERSION_TAG}"
+# reproducible builds:
+# enable the flag
+BUILD_REPRODUCIBLE_BINARIES = "1"
+# Set the desired timestamps
+export SOURCE_DATE_EPOCH = "1593400000"
+REPRODUCIBLE_TIMESTAMP_ROOTFS = "1593400000"
+# inherit the class
+INHERIT += "reproducible_build"
+
# SDK
SDK_VENDOR = "-aglsdk"
SDKPATH = "/opt/agl-sdk/${SDK_VERSION}-${DEFAULTTUNE}"
-MAINTAINER = "AGL <automotive-discussions@lists.linuxfoundation.org>"
+MAINTAINER = "AGL https://lists.automotivelinux.org/g/agl-dev-community"
TARGET_VENDOR = "-agl"
# Override these in poky based distros
-AGL_DEFAULT_DISTRO_FEATURES = "largefile systemd opengl wayland pam bluetooth bluez5 3g"
+AGL_DEFAULT_DISTRO_FEATURES = "largefile systemd opengl wayland pam bluetooth bluez5 3g polkit"
POKY_DEFAULT_DISTRO_FEATURES := "${AGL_DEFAULT_DISTRO_FEATURES}"
OVERRIDES .= ":${DISTRO_CODENAME}"
-QEMU_TARGETS ?= "arm aarch64 i386 x86_64"
+QEMU_TARGETS ?= "arm aarch64 i386 x86_64 riscv64"
# Other QEMU_TARGETS "mips mips64 mips64el ppc sh4"
MIRRORS =+ "\
DISTRO_FEATURES_remove = "x11"
DISTRO_FEATURES_BACKFILL_CONSIDERED = "sysvinit pulseaudio"
-# Prefer GStreamer 1.14.x by default
-PREFERRED_VERSION_gstreamer1.0 ?= "1.14.%"
-PREFERRED_VERSION_gstreamer1.0-plugins-bad ?= "1.14.%"
-PREFERRED_VERSION_gstreamer1.0-plugins-base ?= "1.14.%"
-PREFERRED_VERSION_gstreamer1.0-plugins-good ?= "1.14.%"
-PREFERRED_VERSION_gstreamer1.0-plugins-ugly ?= "1.14.%"
-PREFERRED_VERSION_gstreamer1.0-libav ?= "1.14.%"
-PREFERRED_VERSION_gstreamer1.0-omx ?= "1.14.%"
+# Prefer GStreamer 1.16.x by default
+PREFERRED_VERSION_gstreamer1.0 ?= "1.16.%"
+PREFERRED_VERSION_gstreamer1.0-plugins-bad ?= "1.16.%"
+PREFERRED_VERSION_gstreamer1.0-plugins-base ?= "1.16.%"
+PREFERRED_VERSION_gstreamer1.0-plugins-good ?= "1.16.%"
+PREFERRED_VERSION_gstreamer1.0-plugins-ugly ?= "1.16.%"
+PREFERRED_VERSION_gstreamer1.0-libav ?= "1.16.%"
+PREFERRED_VERSION_gstreamer1.0-omx ?= "1.16.%"
# Prefer libjpeg-turbo
PREFERRED_PROVIDER_jpeg = "libjpeg-turbo"
AGL_EXTRA_IMAGE_FSTYPES ??= ""
AGL_EXTRA_INITRAMFS_FSTYPES ??= ""
#
-# Default IMAGE FSTYPES compressed tarball + ext4.xz
-AGL_DEFAULT_IMAGE_FSTYPES ?= "tar.xz ${@bb.utils.contains('DISTRO_FEATURES', 'AGLCI', 'ext4.xz', 'ext4', d)}"
+# Default IMAGE FSTYPES wic.xz
+AGL_DEFAULT_IMAGE_FSTYPES ?= "wic.xz wic.bmap wic.xz.sha256sum"
+AGL_DEFAULT_IMAGE_FSTYPES_qemuall ?= "${@bb.utils.contains('DISTRO_FEATURES', 'AGLCI', 'ext4.xz', 'ext4', d)}"
+AGL_DEFAULT_IMAGE_FSTYPES_append_netboot = " ${@bb.utils.contains('DISTRO_FEATURES', 'AGLCI', 'ext4.xz', 'ext4', d)}"
AGL_DEFAULT_INITRAMFS_FSTYPES ?= "ext4.gz"
# DEFAULT IMAGE_FSTYPES for AGL (no - BSPs should not set this)
PACKAGE_FEED_ARCHS = ""
#${PACKAGE_ARCHS}"
+# Complementary package definitions for agl-test-wgt and agl-devel-wgt
+# image features
+COMPLEMENTARY_GLOB[agl-test-wgt] = '*-test'
+COMPLEMENTARY_GLOB[agl-devel-wgt] = '*-coverage *-debug'
# Fix for rpm metadata clash between nativesdk-cmake and nativesdk-qtbase-tools
# (revalidate after 2017-10-15, 2018-06-12: still required)
# Set preferred provider for low-can device mapping configuration
PREFERRED_RPROVIDER_virtual/low-can-dev-mapping ?= "dev-mapping"
+
+# Mask upstream meta-security bbappend that interferes with non-linux-yocto
+# kernels due to the bug of having two wildcards, which bitbake does not
+# support. Not having it is not an issue, since there is also explicit
+# enabling of required security features done by meta-agl/meta-security.
+BBMASK += "meta-security/recipes-kernel/linux/linux-%_5.%.bbappend"
+
+# Workaround for https://jira.automotivelinux.org/browse/SPEC-3621
+# TLDR: do_image_wic will modify the target's /etc/fstab while
+# do_image_tar and do_image_ext4 can run in parallel
+# This needs to be fixed upstream:
+# See https://bugzilla.yoctoproject.org/show_bug.cgi?id=13994
+# For convenience restricted to ext4 and tar image types.
+AGL_FORBID_FSTAB_UPDATE ?= "${@bb.utils.contains_any('IMAGE_FSTYPES', 'ext4 ext4.xz tar tar.gz tar.bz2 tar.xz', '--no-fstab-update', '', d)}"
+WIC_CREATE_EXTRA_ARGS_append = " ${AGL_FORBID_FSTAB_UPDATE}"