Bump SRCREV version of xen recipes to use the latest 4.14 release
(4.14.1) and the current status of master.
This allows to remove some patches related to gcc 10 support which have
now been merged in Xen.
Xen-tools is modified to include the latest tools installed with Xen:
- a rename of the bash-completion,
- a new xl example,
- xen-access,
- xen-memshare (only available on x86).
A new patch to fix python and pygrub is added as the makefiles have been
deeply modified in 4.15 which require a new patch (but doing the same).
Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Fix install path for xen python libraries when multilib configuration is
activated (which is mandatory to compile xen for x86_64).
Depending on the version of Xen, the libraries are installed on lib or
on the nonarch lib directory so add both.
Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
Change-Id: I1f7f81a4e9e1420bce55d1e4bfe03d98ac2c93a3
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Python related things are installed in /usr/lib and not /usr/lib64 even
if xen-tools is built for x86_64 with multilib activated.
Use nonarch_libdir variable for all python related files.
Change-Id: I24e4336aaac4477efc5dc7426a6d9e909c98a6af
Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Since the hypervisor recipe does not install init scripts, it does not
include update-rc.d.bbclass, which defines INIT_D_DIR; so move the use
of that and systemd and qemu tools-specific configure settings over into
the tools include file. Fix a hardcoded bindir while at it.
Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Pull to the current tip of the stable 4.13 branch and apply an upstream
4.14-release-acked patch to xen-tools for a compiler warning in kdd.
Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* let TARGET_VENDOR to be set to something else than the default:
meta/conf/bitbake.conf:TARGET_VENDOR = "-oe"
like other architectures use
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
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>
The stubs task was MACHINE-specific due to the OE variables it accessed
which had forced unnecessary rebuild work in OpenXT's multi-MACHINE
builds.
The stubs task was generating a 32-bit header file to satisfy the Xen
tools firmware build to generate the hvmloader binary, which is only
needed on x86-64 targets where HVM-mode guests are enabled.
Remove this header file generation logic and similar in the configure
task, and in the cases where hvmloader is to be built use multilib to
provide a 32-bit sysroot and allow the build to obtain the needed 32-bit
materials from their source: glibc.
Building Xen tools for x86-64 with HVM-guest support enabled now
requires the following to be added to a build conf file
(eg. distro.conf, or local.conf) :
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"
Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
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>
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>
A text editor can interpret /* as the beginning of a comment
and then fail to find the matching */ it expects as a terminator.
This causes it to mishighlight the rest of the file. Avoid this
by using a different matching pattern.
Fixes an annoyance when editing the file. No functional change intended.
Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Launching HVM guest VMs requires a BIOS firmware binary.
Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
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>