require conf/distro/poky.conf # AGL specific derivations DISTRO = "poky-agl" DISTRO_NAME = "Automotive Grade Linux" # Release flags DISTRO_CODENAME = "lamprey" AGL_BRANCH = "lamprey" AGLVERSION = "12.1.0" # switch devel/release #AGLRELEASETYPE ?= "agldevelopment" AGLRELEASETYPE ?= "aglrelease" OVERRIDES .= ":${AGLRELEASETYPE}" # #for development DISTRO_VERSION:agldevelopment := "${AGLVERSION}+snapshot-${DATE}" AGL_APP_REVISION:agldevelopment = "${AUTOREV}" AGL_DEFAULT_REVISION:agldevelopment = "${AUTOREV}" #for release DISTRO_VERSION:aglrelease := "${AGLVERSION}" DISTRO_BRANCH_VERSION_TAG = "${DISTRO_CODENAME}/${@'${DISTRO_VERSION}'.replace('+snapshot-${DATE}','')}" 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 = "1638397300" REPRODUCIBLE_TIMESTAMP_ROOTFS = "1638397300" # inherit the class INHERIT += "reproducible_build" # SDK SDK_VENDOR = "-aglsdk" # SDKPATHINSTALL is the folder where the SDK is going to be installed # Due to an issue with the qt5 environment (see SPEC-1667), # we add DEFAULTTUNE to the SDKPATH to mitigate the issue. SDKPATHINSTALL = "/opt/agl-sdk/${SDK_VERSION}-${DEFAULTTUNE}" MAINTAINER = "AGL https://lists.automotivelinux.org/g/agl-dev-community" TARGET_VENDOR = "-agl" # Override these in poky based distros AGL_DEFAULT_DISTRO_FEATURES = "largefile opengl wayland pam bluetooth bluez5 3g polkit" POKY_DEFAULT_DISTRO_FEATURES := "${AGL_DEFAULT_DISTRO_FEATURES}" OVERRIDES .= ":${DISTRO_CODENAME}" DISTRO_FEATURES:remove = "x11" DISTRO_FEATURES_BACKFILL_CONSIDERED = "pulseaudio" INIT_MANAGER = "systemd" # Override default of "systemd-compat-units" VIRTUAL-RUNTIME_initscripts = "" # Override default of "busybox-syslog" VIRTUAL-RUNTIME_base-utils-syslog = "" # network manager to use (possible values: systemd, connman) VIRTUAL-RUNTIME_net_manager = "connman" QEMU_TARGETS ?= "arm aarch64 i386 x86_64 riscv64" # Other QEMU_TARGETS "mips mips64 mips64el ppc sh4" MIRRORS =+ "\ bzr://.*/.* https://download.automotivelinux.org/AGL/mirror/ \n \ cvs://.*/.* https://download.automotivelinux.org/AGL/mirror/ \n \ git://.*/.* https://download.automotivelinux.org/AGL/mirror/ \n \ gitsm://.*/.* https://download.automotivelinux.org/AGL/mirror/ \n \ hg://.*/.* https://download.automotivelinux.org/AGL/mirror/ \n \ osc://.*/.* https://download.automotivelinux.org/AGL/mirror/ \n \ p4://.*/.* https://download.automotivelinux.org/AGL/mirror/ \n \ svn://.*/.* https://download.automotivelinux.org/AGL/mirror/ \n \ bzr://.*/.* http://download.automotivelinux.org/AGL/mirror/ \n \ cvs://.*/.* http://download.automotivelinux.org/AGL/mirror/ \n \ git://.*/.* http://download.automotivelinux.org/AGL/mirror/ \n \ gitsm://.*/.* http://download.automotivelinux.org/AGL/mirror/ \n \ hg://.*/.* http://download.automotivelinux.org/AGL/mirror/ \n \ osc://.*/.* http://download.automotivelinux.org/AGL/mirror/ \n \ p4://.*/.* http://download.automotivelinux.org/AGL/mirror/ \n \ svn://.*/.* http://download.automotivelinux.org/AGL/mirror/ \n \ \ ftp://.*/.* https://download.automotivelinux.org/AGL/mirror/ \n \ http://.*/.* https://download.automotivelinux.org/AGL/mirror/ \n \ https://.*/.* https://download.automotivelinux.org/AGL/mirror/ \n \ ftp://.*/.* http://download.automotivelinux.org/AGL/mirror/ \n \ http://.*/.* http://download.automotivelinux.org/AGL/mirror/ \n \ https://.*/.* http://download.automotivelinux.org/AGL/mirror/ \n \ " # The CONNECTIVITY_CHECK_URI's are used to test whether we can succesfully # fetch from the network (and warn you if not). To disable the test set # the variable to be empty. # Git example url: git://git.yoctoproject.org/yocto-firewall-test;protocol=git;rev=HEAD CONNECTIVITY_CHECK_URIS ?= "" # using multiple BSP layers causes dangling bbappends in meta-agl-bsp # turn it into a warning #BB_DANGLINGAPPENDS_WARNONLY = "1" # Not yet upstreamed; should be submitted. SECURITY_CFLAGS:pn-qtwebengine = "${SECURITY_NO_PIE_CFLAGS}" #Redefined USER_CLASSES #Disable prelink. It is unmaintained and likely will go away. #default: USER_CLASSES ?= "buildstats image-mklibs image-prelink" USER_CLASSES = "buildstats image-mklibs" # AGL uses 4 optimization levels # 2 for ARM 32bit # - a high and a medium setting for the CCARGS # - the high setting is default (needs >= cortex-a15) # - the medium setting is enabled with: DISTRO_FEATURES:append = " agl-medium-arm-compiler " # 1 for ARM 64bit / AARCH64 # 1 for x86-64 # 1 for RISC-V 64-bit require conf/distro/include/${TARGET_ARCH}-tune.inc # Generic qemu and qemuboot (runqemu) enhancements # check qemuboot.bbclass # - use 2G RAM by default QB_MEM ?= "-m 2048" # use pulseaudio on the host side - off as qemu-native is built with alsa #QB_AUDIO_DRV = "pa" # expose a virtual 'hda' sound card to the guest (arm/aarch64/x86-64) QB_AUDIO_OPT = "-soundhw hda" # Board templates can add extra IMAGE_FSTYPES through this. # It is added (late) through the AGL image recipes. AGL_EXTRA_IMAGE_FSTYPES ??= "" AGL_EXTRA_INITRAMFS_FSTYPES ??= "" # # 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) # IMAGE_FSTYPES = "${AGL_DEFAULT_IMAGE_FSTYPES} ${AGL_EXTRA_IMAGE_FSTYPES}" INITRAMFS_FSTYPES = "${AGL_DEFAULT_INITRAMFS_FSTYPES} ${AGL_EXTRA_INITRAMFS_FSTYPES}" # # THE FUTURE is 'wic' # IMAGE_FSTYPES:append = " wic" # 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) DIRFILES:pn-nativesdk-cmake = "1" # For https://jira.automotivelinux.org/browse/SPEC-1629 : # We exclude the conflicting vars from the sstate task hash. # This needs to be verified. do_package_write_rpm[vardepsexclude] += "ARCHIVER_TOPDIR PF" # Set preferred provider to new navi application PREFERRED_RPROVIDER_virtual/navigation ?= "ondemandnavi" # 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 INHERIT += "image_types_wic_workaround"