aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-extended/xen/xen-hypervisor.inc
AgeCommit message (Collapse)Author
2022-03-10xen: Override CC and CPP in make command lineMichal Orzel
After 4.16 release, Xen build system has been changed significantly. When building latest status of Xen it was observed that commit 317c98cb91 broke the hypervisor build on arm32 due to the change in handling Rules.mk that xen.inc modifies to override CC and CPP. In order to fix the issue this patch moves overriding CC and CPP from Rules.mk to make command line by adding them to EXTRA_OEMAKE:arm. Take the opportunity to bump SRCREV of xen_git.bb and xen-tools_git.bb to the current status of master. Signed-off-by: Michal Orzel <michal.orzel@arm.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2022-01-18xen: Clear TUNE_CCARGS for Xen build for aarch64 machinesKamil Dziezyk
Xen build may fail for arm machines that have enabled extra flags, that can be enabled only for specific architecture version, e.g. armv8-2a. Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com> Acked-by: Christopher Clark <christopher.w.clark@gmail.com> Signed-off-by: Kamil Dziezyk <kamil.dziezyk@arm.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-08-02global: overrides syntax conversionBruce Ashfield
OEcore/bitbake are moving to use the clearer ":" as an overrides separator. This is pass one of updating the meta-virt recipes to use that syntax. This has only been minimally build/runtime tested, more changes will be required for missed overrides, or incorrect conversions Note: A recent bitbake is required: commit 75fad23fc06c008a03414a1fc288a8614c6af9ca Author: Richard Purdie <richard.purdie@linuxfoundation.org> Date: Sun Jul 18 12:59:15 2021 +0100 bitbake: data_smart/parse: Allow ':' characters in variable/function names It is becomming increasingly clear we need to find a way to show what is/is not an override in our syntax. We need to do this in a way which is clear to users, readable and in a way we can transition to. The most effective way I've found to this is to use the ":" charater to directly replace "_" where an override is being specified. This includes "append", "prepend" and "remove" which are effectively special override directives. This patch simply adds the character to the parser so bitbake accepts the value but maps it back to "_" internally so there is no behaviour change. This change is simple enough it could potentially be backported to older version of bitbake meaning layers using the new syntax/markup could work with older releases. Even if other no other changes are accepted at this time and we don't backport, it does set us on a path where at some point in future we could require a more explict syntax. I've tested this patch by converting oe-core/meta-yocto to the new syntax for overrides (9000+ changes) and then seeing that builds continue to work with this patch. (Bitbake rev: 0dbbb4547cb2570d2ce607e9a53459df3c0ac284) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-07-14xen, xen-tools: fix build and passing of CFLAGS via Xen varsChristopher Clark
Ensure that the Xen build system variables EXTRA_CFLAGS_XEN_CORE and EXTRA_CFLAGS_XEN_TOOLS are passed into the compile steps. Update the hypervisor compilation to avoid passing in most compile flags from the build environment via EXTRA_CFLAGS_XEN_CORE -- prefer the compiler defaults and the flags set by the Xen build system, so only the debug prefix flags are provided. Observeration derived from the prior commit e99974aa, so: Reported-by: Diego Sueiro <diego.sueiro@arm.com> Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com> Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2020-11-03xen: extend SYSROOT_DIRS to include installed binariesDiego Sueiro
If a recipe DEPENDS on xen we should include its binaries in the sysroot. The do_install task also ships files to /boot and /usr/lib64. Hence, extend SYSROOT_DIRS to include these paths. Signed-off-by: Diego Sueiro <diego.sueiro@arm.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2020-11-03xen: run do_deploy after do_compile and do_populate_sysrootDiego Sueiro
When having rm_work and bitbake needs to re-run do_deploy, we need to ensure that the ${B} is re-generated, otherwise the deploy-xen will be empty. Signed-off-by: Diego Sueiro <diego.sueiro@arm.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2020-08-27xen: Fix menuconfig and add support for config fragments and diffconfigDiego Sueiro
This patch introduces the following changes: 1. When building in OE environment the linker path needs to be passed when buildind the Kconfig tool in order to get the menuconfig task properly working. 2. By inheriting cml1.bbclass we can drop some environment variables settings in xen-hypervisor.inc for the menuconfig task, and also be able to search for config fragmens and use the diffconfig task. Also, there is no need to have a custom do_menuconfig task anymore. Change-Id: I8d61ec76d92de7d1613b79edf55b4868fe712334 Signed-off-by: Diego Sueiro <diego.sueiro@arm.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2020-04-26xen-hypervisor: Check for the right image in uncompressed deployCorey Minyard
The deploy for the uncompressed image was checking if a .gz file exists, it should instead check for a straight xen file. Signed-off-by: Corey Minyard <cminyard@mvista.com> Signed-off-by: Jeremy A. Puhlman <jpuhlman@mvista.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2020-02-27xen, xen-tools: updates to the deploy taskChristopher Clark
Amend addtask for deploy in both recipes: add deploy before do_build to ensure that it completes before the build step stamp is written. Suggested-by: Bertrand Marquis <bertrand.marquis@arm.com> Add comments explaining the scheduling of the deploy task to both the hypervisor and tools recipes. In the hypervisor build, change deploy to obtain files from ${B} rather than ${D}, since it allows a bbappend to modify boot binary file destinations in do_install without breaking do_deploy. To ensure that a deployed hypervisor has matching tools in any image being built, add a dependency to make sure that the tools have built and been staged first: do_deploy[depends] += "xen-tools:do_populate_sysroot" Also add a dependency to ensure that anything that the tools recipe deploys, such as a XSM policy file, has been deployed first: do_deploy[depends] += "xen-tools:do_deploy" Schedule deploy tasks after populate_sysroot to ensure that deployed binaries match those staged for inclusion in the image rootfs. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2020-02-27xen, xen-tools: separate COMPATIBLE_HOST for hypervisor and toolsChristopher Clark
The tools have broader platform compatibility than the hypervisor. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2020-02-27xen, xen-tools: update recipes for python3Christopher Clark
Adds patches for packaged scripts to enable deployment with python3 where they have been ported to python 3 upstream. setuptools3 inherits distutils3 which modifies ${B}, so cd ${S} is needed in the do_configure, do_compile and do_install steps. Remove python 2 dependency from the Xen recipes by adding a new separate recipe, xen-python2, for packaging the remaining optional scripts which are yet to be ported to python 3. Package naming in the separate recipe is chosen to support transition back into the xen-tools recipe if the scripts are ported later. Use RSUGGESTS to support inclusion of the xen-python2 scripts in images that include python 2. Drop the remus package python dependency since the script was removed in 2014: commit 5b66f84e37a45038f9e5dae7a5768a5525d1e6ba Add python3 RDEPENDS needed to run xenmon. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2020-02-27xen: separate recipes for hypervisor and tools; switch to git as sourceChristopher Clark
This change changes the names of many packages produced: the xen-tools recipe now builds packages previous built by the xen recipe, so the package prefix changes from "xen-" to "xen-tools-". A temporary bbappend is provided for qemu to ease the transition. Multiple motivations for recipe separation: - improves efficiency of incremental build and development - supports building the hypervisor and tools with different toolchains and for different architectures Switch to using a git recipe on the Xen stable branch: - enables easier tracking of critical XSA security updates applied upstream by just advancing SRCREV along the branch Revision has been set to the tip of the stable-4.12 branch, which has the one XSA-312 patch applied on top of RELEASE-4.12.2. The recipe refactor externalizes the block tap components, to enable optional building of blktap in a separate recipe outside xen-tools, needed by OpenXT. xenstored is made a virtual package to support switching between alternative implementations (several exist). Update xen-image-minimal to install the xen-tools package, which replaces what was previously xen-base. Determine the flask policy filename, which is Xen-version specific, using the same method as the Xen build system. qemu: update PACKAGECONFIG[xen] for xen package renaming: allows builds to continue correctly in the meantime while openembedded core and poky are updated. OpenXT ticket reference: OXT-1694 Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>