autoconf
[Top][All Lists]
Advanced

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

Re: RFE: option to avoid autoreconf recursion


From: Ralf Wildenhues
Subject: Re: RFE: option to avoid autoreconf recursion
Date: Thu, 12 Jan 2006 09:21:19 +0100
User-agent: Mutt/1.5.11

[ automake list elided -- this has nothing to do with automake ]

* Bruno Haible wrote on Wed, Jan 11, 2006 at 07:30:46PM CET:
> 
> For gnulib-tool, it would be useful if 'autoreconf' had an option
>   --no-recurse or --no-recursion or --no-recursive
> that would avoid recursive self-invocations of autoreconf.

Proposed patch below.

--no-recursive seems best: standards.texi mentions --recursive already.
I did not see an intuitive short option for the negation though, and
I don't like `-l|--local' just because the negation is not the default.
I assume the ordering of the option enumeration should still be based
upon the option with `--no-' elided?

Cheers,
Ralf

        * bin/autoreconf.in: New option `--no-recursive'.
        Improve wording for subpackages a bit.
        * doc/autoconf.texi (autoreconf Invocation): Updated.
        * NEWS: Updated.

Index: NEWS
===================================================================
RCS file: /cvsroot/autoconf/autoconf/NEWS,v
retrieving revision 1.350
diff -u -r1.350 NEWS
--- NEWS        11 Jan 2006 08:05:55 -0000      1.350
+++ NEWS        12 Jan 2006 08:15:10 -0000
@@ -72,6 +72,9 @@
   as in `${LIBOBJDIR}alloca.o'.  LIBOBJDIR is meant to be defined from
   `Makefile.in' in case the object files lie in a different directory.
 
+** autoreconf
+  Supports --no-recursive now.
+
 * Major changes in Autoconf 2.59b
 
   Released 2004-08-20, by Paul Eggert.
Index: bin/autoreconf.in
===================================================================
RCS file: /cvsroot/autoconf/autoconf/bin/autoreconf.in,v
retrieving revision 1.128
diff -u -r1.128 autoreconf.in
--- bin/autoreconf.in   6 Jan 2006 00:10:37 -0000       1.128
+++ bin/autoreconf.in   12 Jan 2006 08:15:11 -0000
@@ -74,6 +74,7 @@
   -d, --debug              don't remove temporary files
   -f, --force              consider all files obsolete
   -i, --install            copy missing auxiliary files
+      --no-recursive       don't rebuild sub-packages
   -s, --symlink            with -i, install symbolic links instead of copies
   -m, --make               when applicable, re-run ./configure && make
   -W, --warnings=CATEGORY  report the warnings falling in CATEGORY [syntax]
@@ -129,6 +130,9 @@
 # Rerun `./configure && make'?
 my $make = 0;
 
+# Recurse into subpackages
+my $recursive = 1;
+
 ## ---------- ##
 ## Routines.  ##
 ## ---------- ##
@@ -146,7 +150,8 @@
          'B|prepend-include=s'  => address@hidden,
          'i|install'            => \$install,
          's|symlink'            => \$symlink,
-         'm|make'               => \$make);
+         'm|make'               => \$make,
+         'recursive!'           => \$recursive);
 
   # Split the warnings as a list of elements instead of a list of
   # lists.
@@ -459,7 +464,7 @@
       $uses_libtool = 1             if /(AC_PROG_LIBTOOL|LT_INIT)/;
       $uses_autoheader = 1          if /AC_CONFIG_HEADERS/;
       $uses_automake = 1            if /AM_INIT_AUTOMAKE/;
-      push @subdir, split (' ', $1) if /AC_CONFIG_SUBDIRS:(.*)/;
+      push @subdir, split (' ', $1) if /AC_CONFIG_SUBDIRS:(.*)/ && $recursive;
     }
 
   # The subdirs are *optional*, they may not exist.
@@ -467,7 +472,7 @@
     {
       if (-d)
        {
-         verb "$configure_ac: subdirectory $_ to autoreconf";
+         verb "$configure_ac: adding subdirectory $_ to autoreconf";
          autoreconf ($_);
        }
       else
Index: doc/autoconf.texi
===================================================================
RCS file: /cvsroot/autoconf/autoconf/doc/autoconf.texi,v
retrieving revision 1.942
diff -u -r1.942 autoconf.texi
--- doc/autoconf.texi   11 Jan 2006 18:17:25 -0000      1.942
+++ doc/autoconf.texi   12 Jan 2006 08:15:11 -0000
@@ -1516,6 +1516,10 @@
 @samp{automake --add-missing},
 @samp{libtoolize}, @samp{autopoint}, etc.
 
address@hidden --no-recursive
+Do not rebuild files in subdirectories to configure (see @ref{Subdirectories},
+macro @code{AC_CONFIG_SUBDIRS}).
+
 @item --symlink
 @itemx -s
 When used with @option{--install}, install symbolic links to the missing




reply via email to

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