I broke cygport
Charles Wilson
cygwin@cwilson.fastmail.fm
Wed Oct 18 04:02:00 GMT 2006
Yaakov S (Cygwin Ports) wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Charles Wilson wrote:
>> For most purposes, this is transparent. You run "autoconf" which is the
>> wrapper, and you get "the right" version. However, cygport explicitly
>> tests for the presence of "autoconf-2.5x" in $PATH.
>>
>> This patch makes cygport's search a little smarter -- and it or
>> something like it is *required* if you want cygport to work after the
>> new autoconf is installed.
>
> I just checked in autoconf-2.60 support to cygport CVS. Please test.
Well, it seems to work for bootstrapping cygport itself. However, it
fails with libtool (but not for any reason having to do with
autoconf-2.60. It's some other change introduced post-cygport-0.2.4
release).
[[[ Side note: the new libtool cygport doesn't actually use
cygautoreconf. libtool-from-CVS must be bootstrapped using its own
bootstrap script; a regular autoreconf doesn't populate the test
projects properly. However, if you DO use autoreconf instead of the
bootstrap script, you can still build libtool and libltdl -- it's just
that you can't then run the testsuite.
SO, after fixing the issue with cygautoreconf and autoconf-2.60 -- I
could at least use it with libtool (as long as I didn't want to run the
testsuite).
But with the cygport-from-CVS version, I can't do that.
]]]
Here's the problem: libtool (pre-version 2.0) ships with a subproject --
separately configured -- called libltdl. However, the subproject does
NOT include the GNU "required" files like README, AUTHORS, etc. Those
are all up at the top level. Yet, cygautoreconf complains about it:
>>> Compiling libtool1.5-1.5.23a-1
touch: cannot touch `[libltdl]/AUTHORS': No such file or directory
touch: cannot touch `[libltdl]/COPYING': No such file or directory
touch: cannot touch `[libltdl]/ChangeLog': No such file or directory
touch: cannot touch `[libltdl]/INSTALL': No such file or directory
touch: cannot touch `[libltdl]/NEWS': No such file or directory
touch: cannot touch `[libltdl]/README': No such file or directory
(That's with src_compile containing the following two lines (among others)
#./bootstrap
cygautoreconf
Note that this not a showstopper for libtool -- I actually use
./bootstrap "in production"
But I could see cases where even if the top-level project is fully GNU-
(or gnits-) compliant, tightly-coupled subprojects may not be. OTOH,
you might want the current behavior for loosely-coupled groupings of
subprojects...
Bottom Line: the autoconf-2.60 handling in cygport-from-CVS seems to
work fine. I discovered a use case for which cygport-from-CVS fails --
but this failure is unrelated to the autoconf-2.60 stuff.
--
Chuck
More information about the Cygwin-apps
mailing list