[Top][All Lists]

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

Re: Bug#368012: mingw crosscompilation broken with autoconf-2.59.cvs.200

From: Ralf Wildenhues
Subject: Re: Bug#368012: mingw crosscompilation broken with autoconf-2.59.cvs.2006.05.13-1
Date: Mon, 22 May 2006 21:22:28 +0200
User-agent: Mutt/1.5.11+cvs20060403

* Stepan Kasal wrote on Sat, May 20, 2006 at 04:08:38PM CEST:
> > Ralf Wildenhues <address@hidden> writes:
> > 
> > > I'm still wondering whether we should just simply revert both patches,
> I have talked with Ralf by phone, and I agree with him that backing
> out my cleanup (plus later fixes to it) and replacing it by a couple
> of straightforward fixes for the known issues is the most safe
> option.

...and here's a hopefully-complete writeup of that:

Stepan's patch[1] addressed some issues:

- The computation of the executable suffix (EXEEXT/ac_cv_exeext) was not
  properly overridable by the user.  This is a real problem when you
  want to get a package to work with a compiler Autoconf doesn't know
  OTOH, the old semantics were implemented for a reason:
    # Be careful to initialize this variable, since it used to be cached.
    # Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile.

- Removed some outdated comment about a connection to Libtool, that was
  also questioning whether Libtool is maintained (which is outdated, too :)

- Some typo fixes.

- The macros needed some cleanup.  This can safely be postponed to some
  time early in a release cycle.

Unfortunately, the patch introduced regressions:

- The typo Eric found and was fixed a couple of days later (in the same

- The issue that prompted this thread, namely:
  It does not suffice to look for a compiler extension with
    $CC -o conftest conftest.$ac_ext

  Why?  For example, on Cygwin or MinGW, the compiler will create the
  file "conftest.exe".  There, we will be fine: we do make sure to not
  get fooled by the Cygwin file testing "features".  But with a
  cross-compiler GNU/Linux -> MinGW the above line will simply create
  the file "conftest".  This isn't what we want though: the executable
  should be transferable to a MinGW system without renaming.  So, we
  have to also make use of what the compiler creates by default, with
    $CC conftest.$ac_ext

  which will be a.exe.

So, I propose to undo Stepan's and Eric's patch (see first attachment),
fix the comment and the typos, address the old caching semantics in a
new comment, and fix the caching issue.  I also propose to document the
overridability now (though I'm not sure whether that is ok), all in the
second attachment.

What do you think?



Attachment: exeext-reversal.diff
Description: Text document

Attachment: exeext-postreversal.diff
Description: Text document

reply via email to

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