On 28 Aug 2005, at 20:26, Ralf Wildenhues wrote:
Hi Gary,
Hey Ralf!
* Gary V. Vaughan wrote on Sun, Aug 28, 2005 at 06:30:12PM CEST:On 27 Aug 2005, at 19:56, Ralf Wildenhues wrote:This is an ugly (from a stylistic point of view) patch to make CVS HEAD Libtool work with Autoconf 2.59 and Automake 1.9.5, which lack features in their support for AC_CONFIG_LIBOBJ_DIR: just symlink the libobj source files into $top_srcdir from bootstrap, and distribute them.In principle, that's fine. The attached runs a test during bootstrapto decide whether the workaround is necessary. This simply means thatif the person who bootstraps a release uses a new enough (or suitably patched) autotoolset then the extra copies aren't added to the dist tarball.Why, oh why wait another minute for bootstrap to finish? It's not likethis would be the first work-around for limitations in Automake 2.59.Besides, your patch adds about as much size to tarball as the duplicatefiles do.
minute? $ time ./tests/libobj.test -q real 0m12.573s user 0m4.923s sys 0m4.714s vs. a reconf of just $top_srcdir when nothing needs rebuilding: $ reconfdirs=. time ./bootstrap ... make: `doc/notes.txt' is up to date. make: `libtoolize.in' is up to date. make: `tests/defs.in' is up to date. make: `tests/package.m4' is up to date. make: `tests/testsuite' is up to date. make: `tests/libobj.test' is up to date. make: `libltdl/Makefile.am' is up to date. make: `commit' is up to date. ... 149.91 real 116.73 user 23.87 sys vs. a fresh bootstrap of the whole tree: $ time ./bootstrap ... real 10m42.998s user 9m2.650s sys 0m49.210s barely 2% slowdown... :->
I can add a note to HACKING about this if you like.No need. I think this version being self correcting as the installed tools are upgraded is sufficient.Hmm. I know more than one system where a plain "configure" without options will not lead to a working compiler configuration. No, not everyone has config.site's employed. I for one don't.
Are you referring to the CONFIGSITE setting from m4general.m4sh? By self-correcting, I mean that the code in my patch needs no more maintenance... it just stops shipping extra copies of libobj sources as soon as people start bootstrapping with new enough autotools.
OK to apply?I prefer the attached... ;-) Tested with stock 1.9.6/2.59, darwin & subdir-libobj patched1.9.6/2.5.9, and bootstrapping with one and `make dist' with the otherset in both directions.Have you tested with CVS version of one, and released of the other?
No, but libobj.test can only succeed when everything required to buildsubdir libobjs correctly works, so there is no need... it is functionally
equivalent of unpatched 1.9.6/2.59.
Note to the actual patch: you need to quote uses of $testdir.
Okay, thanks.
And you scribble around in the source tree should ${TMPDIR-/tmp} be full.
I don't see it (apart from bootstrap itself creating the libobj.test script). Besides, if $TMPDIR is full, the user has bigger problems that not being to
install libtool!!
It'd been easier to leverage AS_VERSION_COMPARE, but that wouldn't haveworked on Solaris till last week, either.
And it can't detect patched tools, such as the ones I'm using at the moment.
Honestly, I think this is bloat. All 2.59/1.9.6-induced workarounds aretrivially found by a single grep.
At the moment, yes. But this is scalable incase we want to support other suboptimal (future) releases of bootstrap utilities, and it minimises future maintenance -- once this is in (and debugged ;-)), we can just forget about
it, until we need a model for doing something similar in the future.
If on the other hand another item is found that needs addition to M4SH_INIT, we have to maintain several copies yet again.
Agreed. Fixed in the attached version. Cheers, Gary. --Gary V. Vaughan ())_. gary@ {lilith.warpmail.net,gnu.org},[EMAIL PROTECTED]
Research Scientist ( '/ http://www.tkd.kicks-ass.net GNU Hacker / )= http://www.gnu.org/software/{libtool,m4} Technical Author `(_~)_ http://sources.redhat.com/autobook
213bis-gary-subdirobj-support.patch
Description: Binary data
PGP.sig
Description: This is a digitally signed message part