bug-autoconf
[Top][All Lists]
Advanced

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

Re: [sr #110213] curl fails with autoconf master


From: Nick Bowler
Subject: Re: [sr #110213] curl fails with autoconf master
Date: Fri, 20 Mar 2020 12:00:44 -0400

On 20/03/2020, Ross Burton <address@hidden> wrote:
> URL:
>   <https://savannah.gnu.org/support/?110213>
>
>                  Summary: curl fails with autoconf master
>                  Project: Autoconf
>             Submitted by: rossburton
>             Submitted on: Fri 20 Mar 2020 03:36:28 PM UTC
>                 Category: None
>                 Priority: 5 - Normal
>                 Severity: 3 - Normal
>                   Status: None
>                  Privacy: Public
>              Assigned to: None
>         Originator Email:
>              Open/Closed: Open
>          Discussion Lock: Any
>         Operating System: None
>
>     _______________________________________________________
>
> Details:
>
> Curl cross-compiles fine with autoconf 2.69.  Swapping to autoconf master
> fails.
>
> It fails like this:
> checking if compiler is DEC/Compaq/HP C... no
> checking if compiler is HP-UX C... no
> checking if compiler is IBM C... no
> checking if compiler is Intel C... no
> checking if compiler is clang... no
> checking if compiler is GNU C... yes
> checking if compiler is LCC... no
> checking if compiler is SGI MIPSpro C... no
> checking if compiler is SGI MIPS C... no
> checking if compiler is SunPro C... no
> checking if compiler is Tiny C... no
> checking if compiler is Watcom C... no
> configure: error: in
> `/scratch/poky/work/corei7-64-poky-linux/curl/7.69.0-r0/build':
> configure: error: cannot run test program while cross compiling
>
> Yes, I'm cross-compiling, but the invocation of AC_RUN_IFELSE is guarded
> with
> a $cross_compiling check.

I suspect (without testing) the problem is the presense of
AC_REQUIRE([AC_RUN_IFELSE]) inside of CURL_RUN_IFELSE.

(Line 7292 of curl-functions.m4)

This use of AC_REQUIRE makes no sense at all.  With it there, if it
determines that there has been no prior expansion of AC_RUN_IFELSE in
the configure script, autoconf will output such an expansion at some
mostly-unspecified prior location with all arguments empty.

Such an expansion will cause the error you are seeing because the
action-if-cross-compiling argument is empty.

There are other weird uses if AC_REQUIRE in this file.  I suspect the
author(s) of this script have a serious misunderstanding about what
this macro does.

I imagine that it just happened to work by luck with old autoconf
because older versions of macros you are using happened to expand
AC_RUN_IFELSE themselves and this just happened to prevent any major
problems later in the configure script.

Hope that helps,
  Nick



reply via email to

[Prev in Thread] Current Thread [Next in Thread]