Re: [PATCH kvm-unit-tests v2] configure: fix non-newlib cross-compiling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Andrew Jones <drjones@xxxxxxxxxx> writes:

> Commit 529046c3 "libcflat: add PRI(dux)32 format types" applies a
> detection trick that requires native compiling or cross-compiling
> with newlib, an embedded system C standard library. We can avoid
> the new dependency with a different trick.
>
> Cc: Alex Bennée <alex.bennee@xxxxxxxxxx>
> Signed-off-by: Andrew Jones <drjones@xxxxxxxxxx>
>
> ---
> v2: drop the awk magic and just grep for long, as not all compilers
>     have long in the same place
> ---
>  configure | 14 +++++---------
>  1 file changed, 5 insertions(+), 9 deletions(-)
>
> diff --git a/configure b/configure
> index 127868ce3090..a05a4e3a5bc3 100755
> --- a/configure
> +++ b/configure
> @@ -12,6 +12,7 @@ host=$arch
>  cross_prefix=
>  endian=""
>  pretty_print_stacks=yes
> +u32_long=
>
>  usage() {
>      cat <<-EOF
> @@ -110,16 +111,11 @@ if [ -f $testdir/run ]; then
>  fi
>
>  # check if uint32_t needs a long format modifier
> -cat << EOF > lib_test.c
> -#include <inttypes.h>
> +cat << EOF > lib-test.c
> +__UINT32_TYPE__
>  EOF
> -
> -$cross_prefix$cc lib_test.c -E | grep "typedef" | grep "long" | grep "uint32_t" &> /dev/null
> -exit=$?
> -if [ $exit -eq 0 ]; then
> -    u32_long=true
> -fi
> -rm -f lib_test.c
> +u32_long=$(gcc -E lib-test.c | grep -v '^#' | grep -q long && echo yes)

Erm you'll need to use the cross compiler here...

  u32_long=$($cross_prefix$cc -E lib-test.c | grep -v '^#' | grep -q long && echo yes)

--
Alex Bennée
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux