summaryrefslogtreecommitdiffstats
path: root/recipes-extended/xen/xen.inc
Commit message (Collapse)AuthorAgeFilesLines
* xen, xen-tools: reproducible build compiler flagsChristopher Clark2020-03-131-6/+6
| | | | | | | | | | | | The change to the method of passing compiler flags into the Xen build system in 6b697676 omitted passing the compiler flags for improving build reproducibility, so this commit returns them and includes a change to use the -ffile-prefix-map compiler option to remove host filesystem artefacts instead of the prior method of redefining the __FILE__ builtin macro. Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen, xen-tools: bug fix to post_patch taskChristopher Clark2020-02-271-1/+1
| | | | | | | Patch needs to be applied to tree in ${S}. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen, xen-tools: remove stubs task and use multilib when necessaryChristopher Clark2020-02-271-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* xen, xen-tools: separate COMPATIBLE_HOST for hypervisor and toolsChristopher Clark2020-02-271-2/+0
| | | | | | | 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>
* xen, xen-tools: update recipes for python3Christopher Clark2020-02-271-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | 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>
* xen: separate recipes for hypervisor and tools; switch to git as sourceChristopher Clark2020-02-271-837/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* xen: retire Qemu packaging from the Xen recipeChristopher Clark2020-02-271-87/+0
| | | | | | | | Modern Qemu supports Xen and the qemu binary to be used with Xen should be built with the Qemu recipe. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: add RDEPENDS for xen-pygrub and xen-python packagesChristopher Clark2020-02-271-0/+8
| | | | | Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: package the EFI hypervisor binary /boot/xen.efiChristopher Clark2020-02-271-0/+1
| | | | | Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: pass compiler flags via Xen-provided variablesChristopher Clark2020-02-271-10/+25
| | | | | | | | | | | | | | | | | | | Fix the method of passing compiler flags into the Xen build, which is needed to fix compilation of hvmloader, a 32-bit firmware binary that is required for Xen to be able to run HVM-mode guest VMs. It must not be compiled with SSE compiler options enabled, so the Xen build clears CFLAGS, which is a problem with _FORTIFY_SOURCE present in CC because it must be paired with a compiler optimization flag that was in CFLAGS. This change fixes the compilation failure that stated "_FORTIFY_SOURCE requires compiling with optimization (-O)". 32-bit ARM needs the TUNE_CCARGS to be retained as passed via CC to ensure that configure is able to generate binaries for the correct ABI, so is handled as a separate case. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Reviewed-by: Jason Andryuk <jandryuk@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: trivial: allow parsing in python3 only oe-coreBruce Ashfield2020-01-221-1/+1
| | | | Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: update packaging for pkgconfig files in libdirChristopher Clark2019-05-211-0/+19
| | | | | | | | Xen commit a0f98145 changed the installation directory for pkgconfig files, so update recipe to include the .pc files at their new location. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: make the dev86-native dependency specific to x86-64 targetChristopher Clark2019-04-181-1/+1
| | | | | | | Remove the requirement for x86 tools when building for ARM platforms. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: upgrade to 4.12.0Christopher Clark2019-04-181-2/+12
| | | | | Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: Amend do_install for FHS 3.0.Eric Chanudet2018-12-121-5/+6
| | | | | | | | | | | | | | Under FHS 3.0: /var/run -> /run http://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch03s15.html systemd-tmpfiles throws some warnings with /var/run in xen.conf: systemd-tmpfiles[981]: [/etc/tmpfiles.d/xen.conf:1] Line references path below legacy directory /var/run/, updating /var/run/xenstored → /run/xenstored; please update the tmpfiles.d/ drop-in file accordingly. systemd-tmpfiles[981]: [/etc/tmpfiles.d/xen.conf:2] Line references path below legacy directory /var/run/, updating /var/run/xend → /run/xend; please update the tmpfiles.d/ drop-in file accordingly. systemd-tmpfiles[981]: [/etc/tmpfiles.d/xen.conf:3] Line references path below legacy directory /var/run/, updating /var/run/xend/boot → /run/xend/boot; please update the tmpfiles.d/ drop-in file accordingly. systemd-tmpfiles[981]: [/etc/tmpfiles.d/xen.conf:4] Line references path below legacy directory /var/run/, updating /var/run/xen → /run/xen; please update the tmpfiles.d/ drop-in file accordingly. Signed-off-by: Eric Chanudet <chanudete@ainfosec.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: remove sse tuning flagBrendan Kerrigan2018-11-081-0/+1
| | | | | | | | | Strip out the sse4.2 tuning flag to prevent sse instructions from being generated in the build, which breaks the hvmloader on some machine types (specifically core-i7 from meta-intel). Signed-off-by: Brendan Kerrigan <kerriganb@ainfosec.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: fix building with BASELIB=lib64Maciej Pijanowski2018-10-221-4/+5
| | | | | | | | | | | | | | | | | | | Many "real" (other then genericx86-64) x86-64 target machine configurations set BASELIB to lib64. For example the intel-corei7-64 or the AMD machines. In such case packaging xen-python fails because items are installed to /usr/lib/, but FILES_xen-python points to package /usr/lib64/ items. Exposing the DISTUTILS variables from OE build makes the python installation somewhat similar to what happens in the distutils class and python items are installed to the /usr/lib64 as expected. Another issue was that the xen-efi package was picking up too much stuff from the /usr/lib64 path on such machines. Being more explicit at least allows to package things correctly. Signed-off-by: Maciej Pijanowski <maciej.pijanowski@3mdeb.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* iasl: remove iasl in favor of acpica in openembedded-coreChris Patterson2018-10-111-1/+1
| | | | | | | | | | It is out of date, causes compilation errors, and is replacable with acpica. This commit removes the iasl recipe as well as updating references within seabios and xen, even though acpcica PROVIDES iasl. Signed-off-by: Chris Patterson <pattersonc@ainfosec.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: fix build with _FORTIFY_SOURCE, gcc 8.2 and glibc 2.28Christopher Clark2018-09-251-0/+6
| | | | | | | | | | | | | Apply upstream-reviewed patch to fix compilation. Patch reorders header includes to issue a pragma to disable SSE before including any potentially always_inline functions that would use SSE. Also modify the recipe to supply compiler flags via the tools variables where they will get used, necessary as _FORTIFY_SOURCE requires optimization flags to be supplied. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: enable 32-bit ARM buildsChristopher Clark2018-08-201-1/+6
| | | | | | | | Enable recipe for COMPATIBLE_HOST = 'arm-.*-linux-gnueabi' Tested with a cubietruck, upstream's reference device for this class. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* Xen: improve build reproducibilityChristopher Clark2018-08-141-0/+27
| | | | | | | | Enable reproducible builds of the hypervisor binaries by defining build variables and setting compiler flags to support this. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: package depriv-fd-checkerChristopher Clark2018-08-021-0/+1
| | | | | | | A new tool introduced in the Xen 4.12 dev cycle. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: upgrade to 4.10.1, and apply patches for gcc 8.1 compatibilityChristopher Clark2018-08-021-0/+14
| | | | | | | | | | Adds packaging for new binary: xen-shim. Builds the hypervisor before building the tools to workaround an upstream parallel build bug that causes the shim to be rebuilt during install. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: add xendriverdomain systemd unit to devdChris Patterson2018-05-211-1/+3
| | | | | | | Matches sysvinit packaging. Signed-off-by: Chris Patterson <pattersonc@ainfosec.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: use oe.utils.str_filter_outRicardo Salveti2018-01-301-1/+1
| | | | | | | | oe_filter_out is not available in oe-core anymore so use oe.utils.str_filter_out instead. Signed-off-by: Ricardo Salveti <ricardo@opensourcefoundries.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: xen.inc: remove xen-blktap from xen-base RDEPENDSChristopher Clark2018-01-121-3/+3
| | | | | | | | | | | | In Xen 4.10, blktap is deprecated and no longer built by default, so make the xen-blktap, xen-libblktap and xen-libvhd packages optional instead of required dependencies for the xen-base package. Move xen-blktap and related packages to RRECOMMENDS to preserve xen.inc compatability with previous Xen releases. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: Package libxentoolcore and xen-diag, introduced in Xen 4.10Christopher Clark2018-01-121-0/+9
| | | | | | | | Package a new library, libxentoolstore, introduced in Xen 4.10. Also package the xen-diag tool in the xen-misc package. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: delete references to xenstored.socket and xenstored_ro.socket in xen.incYan Yankovskyi2017-11-271-4/+0
| | | | | | | | | | | These files were removed since the followine patch http://xenbits.xen.org/gitweb/?p=xen.git;a=commit;h=976ce01e103fc03bb3336cdbc6c951a709e285fe and are absent in xen 4.8.0 and further, which leads to the following error during the Xen build process: do_package: SYSTEMD_SERVICE_xen-xencommons value xenstored.socket does not exist Signed-off-by: Yan Yankovskyi <yan.yankovskyi@globallogic.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: Replace 'inherit gettext' with explicit gettext-native dependencyChristopher Clark2017-09-191-1/+2
| | | | | | | | | | | | | | This fixes the build when libc-locale-code is not a DISTRO_FEATURE. xen's configure script checks for xgettext and will abort if not found. xgettext is provided by the gettext-native package but not by gettext-minimal-native. This means that "inherit gettext" is not sufficient to satisfy Xen's build requirements: gettext-native is required. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: Add menuconfig task and enable menuconfig from devshellChristopher Clark2017-09-141-0/+35
| | | | | | | | | | | | | Xen supports Kconfig for configuring optional build settings. This commit adds the menuconfig task to simplify interactive use: bitbake xen -c menuconfig and also ensures that menuconfig works when using the devshell. This change adds ncurses-native as a build dependency. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: Only generate long-double-32.h if absentChristopher Clark2017-08-291-1/+3
| | | | | | | | | | Only copy long-double-64.h to create long-double-32.h if it is not already present. Compile tested with both ARM 32-bit build and x86 64-bit build. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen : cp long-double-64.h long-double-32.h to fix hvmloader buildChristopher Clark2017-08-241-0/+1
| | | | | | | | | | | | Fix the xen build when MACHINE = "genericx86-64" by providing long-double-32.h Inspired by a similar recent patch to meta/recipes-bsp/gnu-efi/gnu-efi_3.0.5.bb since the contents of the header are minimal: cp ${STAGING_INCDIR}/bits/long-double-64.h ${STAGING_INCDIR}/bits/long-double-32.h Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: remove STAGING_DIR_HOST from the runtime search path for bios.binChristopher Clark2017-08-171-1/+1
| | | | | | | | | | This configuration option sets a run-time search path rather than the location of a build-time dependency. Tested with Xen 4.9 on OpenXT. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: Package .pc packageconfig files into dev packagesChristopher Clark2017-08-141-15/+60
| | | | | Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: Package libxendevicemodel, introduced in Xen 4.9Christopher Clark2017-08-141-0/+5
| | | | | Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: Fix mistype error in xen-watchdog systemd servicepyro-nfvaccessIurii Mykhalskyi2017-04-301-1/+1
| | | | | | | | Due to error in naming this service will not be autoenabled in systems with systemd init manager Signed-off-by: Iurii Mykhalskyi <iurii.mykhalskyi@globallogic.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: update license checksumDoug Goldstein2017-01-061-1/+1
| | | | | | The checksum of the license changed with the 4.8.0 release. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: ensure we build release buildsDoug Goldstein2017-01-041-0/+4
| | | | | | | | | Don't build with asserts on. This is the default for release tarballs but if someone bbappends patches in we should ensure they don't shoot themselves. Signed-off-by: Doug Goldstein <cardoe@cardoe.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: make it easy to override hypervisor configDoug Goldstein2017-01-041-0/+8
| | | | | | | | | The hypervisor is now configured with Kconfig like busybox and the kernel. This makes Xen behave like the busybox recipe by taking a defconfig if the user has one provided with a bbappend. Signed-off-by: Doug Goldstein <cardoe@cardoe.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: add gnu-efi to DEPENDSDoug Goldstein2017-01-041-0/+1
| | | | | | | Allow Xen to build the EFI loader by including the required dependency. Signed-off-by: Doug Goldstein <cardoe@cardoe.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* Remove True option to getVar callsPaul Barker2017-01-031-5/+5
| | | | | | | getVar() now defaults to expanding by default. Signed-off-by: Paul Barker <paul@paulbarker.me.uk> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: add extra generated file to packageDoug Goldstein2016-12-181-0/+1
| | | | | | | | | xenstore is no longer launched by xencommons directly. Instead its launched indirectly via the launch-xenstore script to allow users to switch between xenstore running in a stubdom or within dom0 easily. Signed-off-by: Doug Goldstein <cardoe@cardoe.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: uprev to 4.7.0Chris Patterson2016-07-311-1/+18
| | | | | | | | | | | | | - update packages and add additional ones for new binaries (cpuid and livepatch) - update xen_git to point to 4.7, make branch= fully variable, and remove assumed .0 from release version - add patch to fix compilation of xen with gcc 6 on arm/aarch64 Build tested x86_64 and aarch64 targets. Signed-off-by: Chris Patterson <pattersonc@ainfosec.com> Signed-off-by: Bruce Ashfield <bruce@zedd.org>
* xen: deploy efi binary, if presentChris Patterson2016-03-311-0/+7
| | | | | Signed-off-by: Chris Patterson <pattersonc@ainfosec.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: add the extra packages released with xen 4.7Derek Straka2016-03-291-10/+37
| | | | | Signed-off-by: Derek Straka <derek@asterius.io> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: add the flask policy to the set of files installed to the deploy directoryDerek Straka2016-03-291-0/+5
| | | | | Signed-off-by: Derek Straka <derek@asterius.io> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: add the ability to configure the name of the policyDerek Straka2016-03-291-1/+3
| | | | | | | When using non-release versions, the policy files may have a different name (xenpolicy-${PV}-unstable). Allow the policy file name to be configured by the xen recipe. Signed-off-by: Derek Straka <derek@asterius.io> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: split the flask package into a policy and tools packageDerek Straka2016-03-291-1/+5
| | | | | Signed-off-by: Derek Straka <derek@asterius.io> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* xen: add curl and gnutls to dependsChris Patterson2016-03-241-0/+2
| | | | | | | Addresses QA warnings with regards to rdepends for xen-qemu. Signed-off-by: Chris Patterson <pattersonc@ainfosec.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* Fix QA Issues when building for aarch64 machinesMachon Gregory2016-03-071-0/+6
| | | | | | | | | | | | | | | | When building for the aarch64 based machines the following QA Issue is produced: ERROR: QA Issue: xen: Files/directories were installed but not shipped in any package: /usr/lib64 /usr/lib64/efi /usr/lib64/efi/xen-4.6.efi /usr/lib64/efi/xen-4.6.0.efi /usr/lib64/efi/xen.efi /usr/lib64/efi/xen-4.efi Signed-off-by: Machon Gregory <mbgrego@tycho.nsa.gov> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>