require conf/distro/poky.conf # AGL specific derivations DISTRO = "poky-agl" DISTRO_NAME = "Automotive Grade Linux" # Release flags DISTRO_CODENAME = "jellyfish" AGL_BRANCH = "jellyfish" AGLVERSION = "10.0.2" # 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 = "1593400000" REPRODUCIBLE_TIMESTAMP_ROOTFS = "1593400000" # inherit the class INHERIT += "reproducible_build" # SDK SDK_VENDOR = "-aglsdk" SDK_VERSION := "${@'${DISTRO_VERSION}'.replace('snapshot-${DATE}','snapshot')}" # SDKPATH 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. SDKPATH = "/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 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" # 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 ?= "" PREFERRED_PROVIDER_udev ?= "systemd" PREFERRED_PROVIDER_udev-utils ?= "systemd" VIRTUAL-RUNTIME_init_manager = "systemd" VIRTUAL-RUNTIME_initscripts = "" # network manager to use (possible values: systemd, connman) VIRTUAL-RUNTIME_net_manager = "connman" DISTRO_FEATURES_APPEND = " " DISTRO_FEATURES_remove = "x11" DISTRO_FEATURES_BACKFILL_CONSIDERED = "sysvinit pulseaudio" # 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" # 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 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" # enable the packagemanagement IMAGE_FEATURES =+ "package-management" PACKAGE_FEED_URIS = "http://192.168.7.1:8000/tmp/deploy/" PACKAGE_FEED_BASE_PATHS = "rpm" 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) 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 ?= "${@bb.utils.contains('DISTRO_FEATURES', 'AGLCI', 'dev-mapping-ci', 'dev-mapping', d)}" # 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}"