autoconf-patches
[Top][All Lists]
Advanced

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

Re: automake-1.7b feedback (4)


From: Alexandre Duret-Lutz
Subject: Re: automake-1.7b feedback (4)
Date: Mon, 17 Nov 2003 21:02:11 +0100
User-agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.3 (gnu/linux)

>>> "Bruno" == Bruno Haible <address@hidden> writes:

 Bruno> With automake-1.7b, autom4te.cache is back. Although I have in my
 Bruno> $HOME/.autom4te.cfg exactly the lines recommended by the autoconf-2.59
 Bruno> documentation for "disabling Autoconf caches globally", namely

 Bruno> $ cat ~/.autom4te.cfg 
 Bruno> begin-language: "Autoconf"
 Bruno> args: --no-cache
 Bruno> end-language: "Autoconf"

 Bruno> Invoking "aclocal" from automake-1.7b again generates a autom4te.cache
 Bruno> directory. This doesn't occur with "aclocal" from the 1.7.8 series. So
 Bruno> either aclocal needs to be fixed, or the instructions need to be
 Bruno> updated in the autoconf documentation. The following appears to work for
 Bruno> me:

 Bruno> $ cat ~/.autom4te.cfg 
 Bruno> begin-language: "Autoconf"
 Bruno> args: --no-cache
 Bruno> end-language: "Autoconf"
 Bruno> begin-language: "Autoconf-without-aclocal-m4"
 Bruno> args: --no-cache
 Bruno> end-language: "Autoconf-without-aclocal-m4"

I think we should either change the Autoconf documentation
(adding --no-cache to Autoconf-without-aclocal-m4 ought to be
enough, right?), or shake the system autom4te.cfg so that the
Autoconf language hold definitions for all tools (including
aclocal).

The latter seems nicer to the user (no need to update
autom4te.cfg), so here is a proposal to do that.

2003-11-17  Alexandre Duret-Lutz  <address@hidden>

        * bin/autoheader.in ($autoconf): Use
        --language=autoconf-with-aclocal-m4 instead of --language=autoconf.
        * bin/autoconf.in: Likewise.
        * bin/autoscan.in ($autoconf): Likewise.
        * bin/autoupdate.in ($autoconf): Likewise.
        * lib/autom4te.in (Autoconf-with-aclocal-m4): New language.
        (Autoconf, Autoconf-without-aclocal-m4, Autoconf-with-aclocal-m4):
        Arrange so that Autoconf gather options common to that two other
        languages, so that when a user add an option to the Autoconf language
        it gets propagated to all tools including aclocal.
        Report from Bruno Haible.

Index: bin/autoconf.in
===================================================================
RCS file: /cvsroot/autoconf/autoconf/bin/autoconf.in,v
retrieving revision 1.154
diff -u -r1.154 autoconf.in
--- bin/autoconf.in     22 May 2003 13:24:05 -0000      1.154
+++ bin/autoconf.in     17 Nov 2003 19:50:04 -0000
@@ -266,6 +266,6 @@
 test -z "$outfile" && outfile=-
 
 # Run autom4te with expansion.
-eval set \$AUTOM4TE --language=autoconf --output=\$outfile "$traces" \$infile
+eval set \$AUTOM4TE --language=autoconf-with-aclocal-m4 --output=\$outfile 
"$traces" \$infile
 $verbose "$me: running $*" >&2
 exec "$@"
Index: bin/autoheader.in
===================================================================
RCS file: /cvsroot/autoconf/autoconf/bin/autoheader.in,v
retrieving revision 1.137
diff -u -r1.137 autoheader.in
--- bin/autoheader.in   10 Oct 2003 09:18:58 -0000      1.137
+++ bin/autoheader.in   17 Nov 2003 19:50:04 -0000
@@ -156,7 +156,7 @@
   }
 
 # Set up autoconf.
-my $autoconf = "$autom4te --language=autoconf ";
+my $autoconf = "$autom4te --language=autoconf-with-aclocal-m4 ";
 $autoconf .= join (' ', map { "--include=$_" } @include);
 $autoconf .= join (' ', map { "--prepend-include=$_" } @prepend_include);
 $autoconf .= ' --debug' if $debug;
Index: bin/autoscan.in
===================================================================
RCS file: /cvsroot/autoconf/autoconf/bin/autoscan.in,v
retrieving revision 1.96
diff -u -r1.96 autoscan.in
--- bin/autoscan.in     26 Sep 2003 12:57:44 -0000      1.96
+++ bin/autoscan.in     17 Nov 2003 19:50:05 -0000
@@ -93,7 +93,7 @@
 
 # Autoconf and lib files.
 my $autom4te = $ENV{'AUTOM4TE'} || '@bindir@/@autom4te-name@';
-my $autoconf = "$autom4te --language=autoconf";
+my $autoconf = "$autom4te --language=autoconf-with-aclocal-m4";
 my @prepend_include;
 my @include = ('@datadir@');
 
Index: bin/autoupdate.in
===================================================================
RCS file: /cvsroot/autoconf/autoconf/bin/autoupdate.in,v
retrieving revision 1.48
diff -u -r1.48 autoupdate.in
--- bin/autoupdate.in   27 Aug 2003 11:35:09 -0000      1.48
+++ bin/autoupdate.in   17 Nov 2003 19:50:06 -0000
@@ -48,7 +48,7 @@
 
 # Lib files.
 my $autom4te = $ENV{'AUTOM4TE'} || '@bindir@/@autom4te-name@';
-my $autoconf = "$autom4te --language=autoconf";
+my $autoconf = "$autom4te --language=autoconf-with-aclocal-m4";
 # We need to find m4sugar.
 my @prepend_include;
 my @include = ('@datadir@');
Index: doc/autoconf.texi
===================================================================
RCS file: /cvsroot/autoconf/autoconf/doc/autoconf.texi,v
retrieving revision 1.776
diff -u -r1.776 autoconf.texi
--- doc/autoconf.texi   4 Nov 2003 21:18:58 -0000       1.776
+++ doc/autoconf.texi   17 Nov 2003 19:50:25 -0000
@@ -8206,11 +8206,18 @@
 create Autotest executable test suites.
 
 @item Autoconf
-create Autoconf executable configure scripts.
+this language is not useful by itself, it contains options common to
+both the @code{Autoconf-without-aclocal-m4} and
address@hidden languages.  This is useful for
+customization, see @xref{Customizing autom4te}.
 
 @item Autoconf-without-aclocal-m4
-create Autoconf executable configure scripts without
-reading @file{aclocal.m4}.
+create Autoconf executable configure scripts without reading
address@hidden  This is used by the @command{aclocal} command.
+
address@hidden Autoconf-with-aclocal-m4
+create Autoconf executable configure scripts taking @file{aclocal.m4}
+into account.  This is used by the @command{autoconf} command.
 @end table
 
 @item address@hidden
Index: lib/autom4te.in
===================================================================
RCS file: /cvsroot/autoconf/autoconf/lib/autom4te.in,v
retrieving revision 1.21
diff -u -r1.21 autom4te.in
--- lib/autom4te.in     3 Oct 2003 07:30:03 -0000       1.21
+++ lib/autom4te.in     17 Nov 2003 19:50:26 -0000
@@ -161,13 +161,16 @@
 end-language: "Autoscan-preselections"
 
 
-## ----------------------------- ##
-## Autoconf without aclocal.m4.  ##
-## ----------------------------- ##
+## ---------- ##
+## Autoconf.  ##
+## ---------- ##
 
-# This intermediate language is used by aclocal to build aclocal.m4.
+# "Autoconf-without-aclocal-m4" is used by aclocal, while building aclocal.m4.
+# "Autoconf-with-aclocal-m4" is used by Autoconf, while building configure.
+# "Autoconf" gather common options, so that users can easily append options
+#            to a single place.
 
-begin-language: "Autoconf-without-aclocal-m4"
+begin-language: "Autoconf"
 args: --prepend-include @datadir@
 args: --cache=autom4te.cache
 args: autoconf/autoconf.m4f
@@ -178,17 +181,16 @@
 args: --language Autoreconf-preselections
 args: --language Autoscan-preselections
 args: --language M4sh
-end-language: "Autoconf-without-aclocal-m4"
-
+end-language: "Autoconf"
 
-## ---------- ##
-## Autoconf.  ##
-## ---------- ##
+begin-language: "Autoconf-without-aclocal-m4"
+args: --language Autoconf
+end-language: "Autoconf-without-aclocal-m4"
 
-begin-language: "Autoconf"
+begin-language: "Autoconf-with-aclocal-m4"
 args: --language Autoconf-without-aclocal-m4
 args: aclocal.m4?
-end-language: "Autoconf"
+end-language: "Autoconf-with-aclocal-m4"
 
 
 ## -------- ##
-- 
Alexandre Duret-Lutz





reply via email to

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