autoconf-patches
[Top][All Lists]
Advanced

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

Re: config files substitution with awk


From: Ralf Wildenhues
Subject: Re: config files substitution with awk
Date: Sun, 03 Dec 2006 10:01:10 +0100

Hello Aharon, bug-gawk readers,
* Paolo Bonzini wrote on Mon, Nov 20, 2006 at 10:19:58AM CET:
> > You should still ask Aharon Robbins whether he has problems with this
> (sed does provide a bootstrapping mechanism that does not require any
> working sed on the machine).

Autoconf intends to use awk for config files substitutions in the
future.  This lengthy thread[1] has the gory details.
This will cause a bootstrapping issue for gawk, once that uses an
Autoconf version >= 2.62, similarly to how such an issue exists for
GNU sed (and other basic tools) already.
There are several conceivable ways out of this:
- On proprietary unix-like systems, a vendor awk should be sufficient,
as the awk script should be portable to the most ancient awk we could
find (Solaris /bin/awk).  This does not help for the GNU system, of
course.
- Bootstrapping a newer gawk release with an older one should work
(as long as the set of systems supported by the older gawk is large
enough).
- Cross-compilation can be a band-aid.
- Revert the Autoconf change.
- Have a separate boostrapping mechanism in place for gawk that does not
need any awk, similar to sed's bootstrap script.
Now, for the last option, there are several possibilities:
- A small, hand-written configure script.
- Mangle the Autoconf-generated script to not use awk.
The former seems to suffice for GNU sed.  However, gawk has, through
gnulib, a quite complex configure script with many substitutions.
The latter could be done in at least two conceivable ways:
- post-process the config.status script created by gawk's configure
script to not use awk.
- carry the contents of Autoconf's older sed-based techniques
(autoconf-2.61/lib/autoconf/status.m4:_AC_OUTPUT_FILES_PREPARE)
in the gawk distribution.
I haven't invested a lot of work into either yet.  I think either of
the latter two could be viable, but would appreciate comments before
embarking upon this journey.

On a related note, I saw a gawk TODO entry about using Libtool.  Note
some macros in libtool.m4 assume awk, so please give the libtool list
a note before you're actually doing this, so we can either get rid of
those uses, or point out (and support) a way to bootstrap that.  It's
likely that --disable-shared would achieve the desired results, but I
haven't tested that yet.
Cheers,
Ralf
[1] http://lists.gnu.org/archive/html/autoconf-patches/2006-11/msg00035.html
I'll post more fall-out from this thread.




reply via email to

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