[OE-core] [PATCH] qemu-system-native: disable options not included in extended tarball

Richard Purdie richard.purdie at linuxfoundation.org
Fri Mar 20 00:02:22 UTC 2020


On Thu, 2020-03-19 at 15:44 -0700, Jeremy A. Puhlman wrote:
> From: Jeremy Puhlman <jpuhlman at mvista.com>
> 
> * Add PACKAGECONFIG option for xkbcommon
> qemu-keymap.c:16:10: fatal error: xkbcommon/xkbcommon.h: No such file or directory
> 
> * Add PACKAGECONFIG option and patch for libudev
> commands-posix.c:53:10: fatal error: libudev.h: No such file or directory
> 
> * Add PACKAGECONFIG option for libxml2
> util/osdep.c:136: undefined reference to `fcntl64'
> 
> - Without specifying libxml2, configure searches the system and pulls in the system
>   libxml2 if it is present. In the process it adds -L/usr/lib64 which causes the
>   system libc to be linked instead of the one from the extended tarball.
> 
> * Specifically remove xkbcommon and libudev from qemu-system-native PACKAGECONFIG
> 
> None of the above libraries appear to be included in the depends for any of the qemu
> builds, so if they are getting linked in, its probably not intentionally.
> 
> Signed-off-by: Jeremy Puhlman <jpuhlman at mvista.com>
> ---
>  .../qemu/qemu-system-native_4.2.0.bb               |  3 +++
>  meta/recipes-devtools/qemu/qemu.inc                |  4 +++
>  .../qemu/qemu/0001-Add-enable-disable-udev.patch   | 29 ++++++++++++++++++++++
>  3 files changed, 36 insertions(+)
>  create mode 100644 meta/recipes-devtools/qemu/qemu/0001-Add-enable-disable-udev.patch
> 
> diff --git a/meta/recipes-devtools/qemu/qemu-system-native_4.2.0.bb b/meta/recipes-devtools/qemu/qemu-system-native_4.2.0.bb
> index d83ee59375..f3ceaa1003 100644
> --- a/meta/recipes-devtools/qemu/qemu-system-native_4.2.0.bb
> +++ b/meta/recipes-devtools/qemu/qemu-system-native_4.2.0.bb
> @@ -10,6 +10,9 @@ DEPENDS = "glib-2.0-native zlib-native pixman-native qemu-native bison-native"
>  EXTRA_OECONF_append = " --target-list=${@get_qemu_system_target_list(d)}"
>  
>  PACKAGECONFIG ??= "fdt alsa kvm"
> +# Do not exist in buildtools-extended-tarball"
> +PACKAGECONFIG_remove = "xkbcommon"
> +PACKAGECONFIG_remove = "libudev"

I don't like this piece of the patch. Remove is generally a bad idea as
its very hard to counteract. If you did add this to PACKAGECONFIG, it
would add the appropriate -native pieces to DEPENDS so I'm not sure
what we're trying to achieve here anyway, it should work without this
remove code either way?

At the very least the comment is very misleading and will be hard to
understand in a few months time without looking back at this commit.

Cheers,

Richard



More information about the Openembedded-core mailing list