autoconf-patches
[Top][All Lists]
Advanced

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

Re: AC_CHECK_TOOL changes, take 2


From: Paolo Bonzini
Subject: Re: AC_CHECK_TOOL changes, take 2
Date: Fri, 19 Mar 2004 20:27:01 +0100

> > > 2) maybe time has come to remove the "--host sets --build"
> > > (mis)feature of configure scripts?
> Just to avoid miscommunications: Why are you calling it a misfeature?

Because if you want to set the build system, you use --build; if you want to
cross-compile, you use --host; if you want to build
a cross-compiler, you use --target; if you want a Canadian cross, you
use --host and --target.

There is no reason why --host should activate cross-compiling *and* set the
build type, because cross-compilation is typically
done with the correctly guessed build type, and with a user-specified host
type.

> AFAICT, "configure host" has been deprecated since the earliest days of
> autoconf-2.5x.

Yes, it is.

> > What is the logical next step of a transition strategy here?  I don't
> > want to have abrupt changes that break things, but issuing warnings
> > should be OK.

Warnings are already issued.

> > For example, what happens now when people assume that
> > --host sets --build?
> Depends on what they are doing.
>
> I see several aspects:
> 1. Detecting the fact of cross compilation ($host != $build).

Well, they would be wrong with the current behavior, because cross-compilation
mode would be active even when $host = $build
right now, "thanks" to the fact that host sets build!  The correct way to
detect cross compilation is with $cross_compiling which
was there when I started using Autoconf, in version 2.10, and probably even
earlier.

> 2. Setting up a ($build-)tool-prefix.
> 3. Using $build in lookup tables for build-system characteristics.

These should not cause problems, because $build == $build_alias usually.
Unless they are using $build for host-system characteristics, in which case
these are really badly broken and deserve failure.

Here is a proposal.  I'll check what's its result on gcc's toplevel configure
(used to be Cygnus configure) script, maybe the "check if really cross
compiling" feature needs to be kept.

Paolo

2003-03-19  Paolo Bonzini  <address@hidden>

        * doc/autoconf.texi (Specifying Names, Host and Build Types):
        Update for end of transition period.
        * lib/autoconf/general.m4 (_AC_INIT_PARSE_ARGS): Remove
        support for the "./configure host", "--host sets build", and
        "check if cross compiling if --host given" features
        * lib/autoconf/lang.m4 (_AC_COMPILER_EXEEXT_WORKS):
        Always assume cross compiling if --host given.

Attachment: ac-remove-xcompile-transition.patch
Description: Binary data


reply via email to

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