[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 04/10] configure: create native file with contents of $host_c
From: |
Daniel P . Berrangé |
Subject: |
Re: [PATCH 04/10] configure: create native file with contents of $host_cc |
Date: |
Tue, 29 Aug 2023 18:14:28 +0100 |
User-agent: |
Mutt/2.2.9 (2022-11-12) |
On Tue, Aug 29, 2023 at 10:29:25AM +0200, Paolo Bonzini wrote:
> The argument of --host-cc is not obeyed when cross compiling. To avoid
> this issue, place it in a configuration file and pass it to meson
> with --native-file.
>
> While at it, clarify that --host-cc is not obeyed anyway when _not_
> cross compiling.
I presume that's refering to this piece of code
if test -z "${CC}${cross_prefix}"; then
cc="$host_cc"
else
cc="${CC-${cross_prefix}gcc}"
fi
which is using $host_cc *before* --host-cc is processed, thus
meaning it is always at its default value of 'cc'.
Perhaps the above code snippet should just be changed to
if test -z "${CC}${cross_prefix}"; then
cc="cc"
else
cc="${CC-${cross_prefix}gcc}"
fi
to make it clear that we were not intending to honour the
--host-cc value for this code.
>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
> configure | 11 +++++++++--
> 1 file changed, 9 insertions(+), 2 deletions(-)
None the less, this patch is correct, so with or without
that above change:
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
>
> diff --git a/configure b/configure
> index 3423f008d5c..b2bc1ff5f7b 100755
> --- a/configure
> +++ b/configure
> @@ -922,7 +922,7 @@ Advanced options (experts only):
> --cross-prefix=PREFIX use PREFIX for compile tools, PREFIX can be blank
> [$cross_prefix]
> --cc=CC use C compiler CC [$cc]
> --host-cc=CC use C compiler CC [$host_cc] for code run at
> - build time
> + build time when cross compiling
> --cxx=CXX use C++ compiler CXX [$cxx]
> --objcc=OBJCC use Objective-C compiler OBJCC [$objcc]
> --extra-cflags=CFLAGS append extra C compiler flags CFLAGS
> @@ -1886,7 +1886,6 @@ if test "$skip_meson" = no; then
> echo "windres = [$(meson_quote $windres)]" >> $cross
> echo "windmc = [$(meson_quote $windmc)]" >> $cross
> if test "$cross_compile" = "yes"; then
> - cross_arg="--cross-file config-meson.cross"
> echo "[host_machine]" >> $cross
> echo "system = '$targetos'" >> $cross
> case "$cpu" in
> @@ -1903,6 +1902,14 @@ if test "$skip_meson" = no; then
> else
> echo "endian = 'little'" >> $cross
> fi
> + cross_arg="--cross-file config-meson.cross"
> +
> + native="config-meson.native.new"
> + echo "# Automatically generated by configure - do not modify" > $native
> + echo "[binaries]" >> $native
> + echo "c = [$(meson_quote $host_cc)]" >> $native
> + mv $native config-meson.native
> + cross_arg="$cross_arg --native-file config-meson.native"
> else
> cross_arg="--native-file config-meson.cross"
> fi
> --
> 2.41.0
>
>
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
- Re: [PATCH 03/10] configure: remove HOST_CC, (continued)
- [PATCH 09/10] configure: remove $linux and $mingw32 variables, Paolo Bonzini, 2023/08/29
- [PATCH 07/10] meson: do not use config_host to pick tap implementations, Paolo Bonzini, 2023/08/29
- [PATCH 04/10] configure: create native file with contents of $host_cc, Paolo Bonzini, 2023/08/29
- [PATCH 08/10] configure, meson: move simple OS definitions to meson, Paolo Bonzini, 2023/08/29
- [PATCH 10/10] configure: move --enable-debug-tcg to meson, Paolo Bonzini, 2023/08/29