[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH V1] meson: fix dependency on qemu-keymap
From: |
Steven Sistare |
Subject: |
Re: [PATCH V1] meson: fix dependency on qemu-keymap |
Date: |
Mon, 6 Feb 2023 13:33:49 -0500 |
User-agent: |
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.6.1 |
On 2/6/2023 1:55 AM, Marc-André Lureau wrote:
> Hi
>
> On Wed, Jan 25, 2023 at 9:28 PM Steve Sistare <steven.sistare@oracle.com
> <mailto:steven.sistare@oracle.com>> wrote:
>
> When qemu-keymap is not available on the host, and enable-xkbcommon
> is specified, parallel make fails with:
>
> % make clean
> ...
> % make -j 32
> ...
> FAILED: pc-bios/keymaps/is
> ./qemu-keymap -f pc-bios/keymaps/is -l is
> /bin/sh: ./qemu-keymap: No such file or directory
> ... many similar messages ...
>
> The code always runs find_program, rather than waiting to build
> qemu-keymap, because it looks for CONFIG_XKBCOMMON in config_host
> rather than config_host_data. Making serially succeeds, by soft
> linking files from pc-bios/keymaps, but that is not the desired
> result for enable-xkbcommon.
>
> Examining all occurrences of 'in config_host' for similar bugs shows one
> instance in the docs, which is also fixed here.
>
> Fixes: 28742467c9c0.. ("meson: convert pc-bios/keymaps/Makefile")
>
> Or rather fixing commit 4113f4cfee ("meson: move xkbcommon to meson").
Yes, thanks.
> A lot of CONFIG_ keys were set during configure, loaded in 'config_host' and
> now they are set by meson in 'config_host_data'.
>
> Signed-off-by: Steve Sistare <steven.sistare@oracle.com
> <mailto:steven.sistare@oracle.com>>
> ---
> docs/devel/kconfig.rst | 2 +-
> pc-bios/keymaps/meson.build | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/docs/devel/kconfig.rst b/docs/devel/kconfig.rst
> index 69674d0..cc1a456 100644
> --- a/docs/devel/kconfig.rst
> +++ b/docs/devel/kconfig.rst
> @@ -306,6 +306,6 @@ variable::
>
> host_kconfig = \
> (have_tpm ? ['CONFIG_TPM=y'] : []) + \
> - ('CONFIG_SPICE' in config_host ? ['CONFIG_SPICE=y'] : []) + \
> + ('CONFIG_LINUX' in config_host ? ['CONFIG_LINUX=y'] : []) + \
>
>
> ok
>
>
> (have_ivshmem ? ['CONFIG_IVSHMEM=y'] : []) + \
> ...
> diff --git a/pc-bios/keymaps/meson.build b/pc-bios/keymaps/meson.build
> index 06c75e6..a9e5103 100644
> --- a/pc-bios/keymaps/meson.build
> +++ b/pc-bios/keymaps/meson.build
> @@ -33,7 +33,7 @@ keymaps = {
> 'tr': '-l tr',
> }
>
> -if meson.is_cross_build() or 'CONFIG_XKBCOMMON' not in config_host
> +if meson.is_cross_build() or not config_host_data.get('CONFIG_XKBCOMMON')
>
>
> Can you replace it with not xkbcommon.found() instead?
Yes, that works.
I will submit the V2 patch with your changes momentarily.
- Steve
>
>
> native_qemu_keymap = find_program('qemu-keymap', required: false,
> disabler: true)
> else
> native_qemu_keymap = qemu_keymap
> --
> 1.8.3.1
>