[meta-virtualization] RFC: [PATCH] xen-guest-image-minimal: Fix non-x86.

Bruce Ashfield bruce.ashfield at gmail.com
Thu Sep 14 13:31:56 PDT 2017


I haven't heard any objections to this series, did you want to send it
again as a non RFC
and I'll get it merged.

Bruce

On Wed, Sep 6, 2017 at 7:09 PM, <christopher.w.clark at gmail.com> wrote:

> From: Christopher Clark <christopher.w.clark at gmail.com>
>
> Fix xen-guest-image-minimal image for non-x86, both with and
> without x11 included.
>
> * Only install xf86-video-vesa on x86 platforms as it is not
>   available elsewhere.
>
> * In the absence of xf86-video-vesa (ie. on non-x86 platforms)
>   enable opengl and remove wayland from IMAGE_INSTALL to
>   satisfy build requirements for x11.
>
> * Use IMAGE_FEATURES instead of DISTRO_FEATURES to enable x11
>   inclusion in the image.
>
> * Verify the required DISTRO_FEATURE of 'xen' and if enabled, 'x11'.
>
> * When building the Xserver with Xen in DISTRO_FEATURES, on non-x86,
>   turn off glamor by default, to remove dependency on egl.
>   Introduces: xserver-xorg_%.bbappend
>
> Signed-off-by: Christopher Clark <christopher.w.clark at gmail.com>
> ---
>  recipes-extended/images/xen-guest-image-minimal.bb    | 16
> +++++++++++++---
>  recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend | 14 ++++++++++++++
>  2 files changed, 27 insertions(+), 3 deletions(-)
>  create mode 100644 recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
>
> diff --git a/recipes-extended/images/xen-guest-image-minimal.bb
> b/recipes-extended/images/xen-guest-image-minimal.bb
> index ab7e92c..bca6017 100644
> --- a/recipes-extended/images/xen-guest-image-minimal.bb
> +++ b/recipes-extended/images/xen-guest-image-minimal.bb
> @@ -1,14 +1,24 @@
>  DESCRIPTION = "A Xen guest image."
>
> -inherit core-image
> +inherit core-image distro_features_check
>
>  IMAGE_INSTALL += " \
>      packagegroup-core-boot \
>      ${@bb.utils.contains('MACHINE_FEATURES', 'acpi',
> 'kernel-module-xen-acpi-processor', '', d)} \
>      "
>
> -IMAGE_INSTALL += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '
> xf86-video-fbdev', '', d)}"
> -IMAGE_INSTALL += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '
> xf86-video-vesa', '', d)}"
> +IMAGE_INSTALL += "${@bb.utils.contains('IMAGE_FEATURES', 'x11', '
> xf86-video-fbdev', '', d)}"
> +
> +# Install xf86-video-vesa on x86 platforms.
> +IMAGE_INSTALL_append_x86-64 = "${@bb.utils.contains('IMAGE_FEATURES',
> 'x11', ' xf86-video-vesa', '', d)}"
> +IMAGE_INSTALL_append_x86    = "${@bb.utils.contains('IMAGE_FEATURES',
> 'x11', ' xf86-video-vesa', '', d)}"
> +
> +# When xf86-video-vesa is not present, add opengl and don't require
> wayland:
> +DISTRO_FEATURES_append = "${@bb.utils.contains('IMAGE_FEATURES', 'x11', \
> +                             bb.utils.contains('IMAGE_INSTALL',
> 'xf86-video-vesa', '', ' opengl', d), '', d)}"
> +DISTRO_FEATURES_remove = "${@bb.utils.contains('IMAGE_INSTALL',
> 'xf86-video-vesa', '', 'wayland', d)}"
> +
> +REQUIRED_DISTRO_FEATURES += "${@bb.utils.contains('IMAGE_FEATURES',
> 'x11', ' x11', '', d)} xen"
>
>  LICENSE = "MIT"
>
> diff --git a/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
> b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
> new file mode 100644
> index 0000000..ff4b5b6
> --- /dev/null
> +++ b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
> @@ -0,0 +1,14 @@
> +# Modify the default Xserver build for Xen images on non-x86:
> +# deselect glamor to remove the dependency on libegl,
> +# which simplifies domU builds.
> +# To override this (eg. if wanted for dom0 images) define:
> +#   REMOVED_OPENGL_PKGCONFIGS = ""
> +
> +DETECT_X86_ARCH        = "0"
> +DETECT_X86_ARCH_x86-64 = "1"
> +DETECT_X86_ARCH_x86    = "1"
> +
> +REMOVED_OPENGL_PKGCONFIGS ?= "${@bb.utils.contains('DISTRO_FEATURES',
> 'xen', \
> +                                 bb.utils.contains('DETECT_X86_ARCH',
> '1', '', 'glamor', d), '', d)}"
> +
> +OPENGL_PKGCONFIGS_remove = "${REMOVED_OPENGL_PKGCONFIGS}"
> --
> 2.7.4
>
>


-- 
"Thou shalt not follow the NULL pointer, for chaos and madness await thee
at its end"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-virtualization/attachments/20170914/42ce64f9/attachment.html>


More information about the meta-virtualization mailing list