On 2012-04-22 19:42, Bruno Haible wrote: > Hi, > > On bi-arch systems (such as x86 / x86_64) it is often necessary to pass > the --host option together with an appropriate value for CC. But this > triggers a warning: > > $ ./configure --host=i686-pc-linux-gnu CC="gcc -m32 -march=i586" > configure: WARNING: if you wanted to set the --build type, don't use --host. > If a cross compiler is detected then cross compile mode will be used > ...
(CC on the configure line is not involved in triggering the warning) > This warning was introduced on 2000-06-30, in commit > <http://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=cb2e761b8e1181f97e8e09d85526bd22078433db> > with the remark "Re-enable the old behavior of --host and --build." > > This warning was meant to warn users about a changed semantics of > --build and --host. This change is now 12 years in the past; users > have had enough time to learn it. I therefore suggest to remove the > warning. > > I've done lots of cross and bi-arch compilations in the last 10 years, > all with --host and without --build, and have never observed a problem > with it, except for the warning. Simply relying on config.guess is sufficient. If you don't specify --build when you are cross-compiling (i.e. host != build), in an environment where the build system -- for one reason or another -- is able to execute the host code, the heuristic to detect a cross-compiler fails. So, maybe also change the checking whether we are cross compiling... yes/no outcome to a simple $host != $build (or something along those lines) so that ./configure --host=whatever is made more similar to ./configure --host=whatever --build=the-default Cheers, Peter