automake-commit
[Top][All Lists]
Advanced

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

[Automake-commit] [SCM] GNU Automake branch, master, updated. v1.11-2122


From: Stefano Lattarini
Subject: [Automake-commit] [SCM] GNU Automake branch, master, updated. v1.11-2122-g97ae26e
Date: Wed, 04 Apr 2012 09:45:48 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Automake".

http://git.sv.gnu.org/gitweb/?p=automake.git;a=commitdiff;h=97ae26eaa9009e60537dfb18f5f7cd3a412ae7fd

The branch, master has been updated
       via  97ae26eaa9009e60537dfb18f5f7cd3a412ae7fd (commit)
       via  9fe2ba38429cd307900c785d098f0ee273cc4196 (commit)
      from  24cd4ca144982b8d378cb15023838e301a409f52 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 97ae26eaa9009e60537dfb18f5f7cd3a412ae7fd
Author: Stefano Lattarini <address@hidden>
Date:   Sun Apr 1 22:48:46 2012 +0200

    texinfo: warn about future use of '--tidy'
    
    Starting from the next major release of Automake (likely 1.13) we
    want to start passing the '--tidy' option to texi2dvi and texi2pdf
    invocations, so that auxiliary TeX-generated files can be kept
    around (thus speeding up rebuilding of DVI and PDF output) without
    cluttering the build directory too much.
    
    Since the '--tidy' option was introduced in Texinfo 4.9 (as
    documented in the Texinfo distribution's NEWS file), this also
    means that Makefiles generated by future Automake versions will
    require at least that version of Texinfo (at the time of writing
    four years and nine months old).
    
    The users should be warned about the planned behavioral change
    and the new version requirement it will entail.
    
    See also automake bug#11146.
    
    * NEWS (Planned Backward Incompatibilities): Add entry about use
    of the '--tidy' option and requirement of Texinfo 4.9.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit 9fe2ba38429cd307900c785d098f0ee273cc4196
Author: Stefano Lattarini <address@hidden>
Date:   Sun Apr 1 21:55:09 2012 +0200

    texinfo: don't clutter the builddir when using modern texi2dvi
    
    In modern versions of texi2dvi (at least since version 1.135, which
    comes with Texinfo 4.13) the '-o' option does not imply anymore the
    '--clean' option.  As a consequence, lots of TeX-generated auxiliary
    files are now left in the build directory by the 'pdf', 'ps' and
    'dvi' rules.
    
    This is especially annoying with non-recursive setups having the
    '.texi' files in a subdirectory, as in:
    
      info_TEXINFOS = doc/foo.texi
    
    In this case, the stray auxiliary files are left in the top build
    directory (since TeX is run from there).  See for example:
    
     <http://lists.gnu.org/archive/html/bug-bison/2012-04/msg00002.html>
    
    See also automake bug#11146.
    
    * lib/am/texibuild.am: Call 'texi2dvi' and 'texi2pdf' with the
    '--clean' option.  Update comments accordingly.
    * tests/txinfo-noclutter.test: New test.
    * tests/txinfo18.test: Remove as obsolete, the still relevant parts
    of it moved into the new test.
    * tests/list-of-tests.mk: Adjust.
    * NEWS: Update.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

-----------------------------------------------------------------------

Summary of changes:
 NEWS                         |   11 +++++
 lib/am/texibuild.am          |   14 ++++--
 tests/list-of-tests.mk       |    2 +-
 tests/txinfo-no-clutter.test |  102 ++++++++++++++++++++++++++++++++++++++++++
 tests/txinfo18.test          |   75 -------------------------------
 5 files changed, 124 insertions(+), 80 deletions(-)
 create mode 100755 tests/txinfo-no-clutter.test
 delete mode 100755 tests/txinfo18.test

diff --git a/NEWS b/NEWS
index 0a38d1d..3c0df1b 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,12 @@ New in 1.11a:
 
 * WARNING: Future backward-incompatibilities!
 
+  - Starting from the next major Automake version (1.13), the rules to
+    build pdf, ps and dvi output from Texinfo input will use the '--tidy'
+    option by default.  Since such an option was introduced in Texinfo
+    4.9, this means that Makefiles generated by future Automake versions
+    will require at least that version of Texinfo.
+
   - Starting from the next major Automake version (1.13), the parallel
     testsuite harness (previously only enabled by the 'parallel-tests'
     option) will become the default one; the older serial testsuite
@@ -181,6 +187,11 @@ New in 1.11a:
 
   - The 'dist' and 'dist-all' targets now can run compressors in parallel.
 
+  - The rules to create pdf, dvi and ps output from Texinfo files now
+    works better with modern 'texi2dvi' script, by explicitly passing
+    it the '--clean' option to ensure stray auxiliary files are not
+    left to clutter the build directory.
+
   - Automake can now generate silenced rules for texinfo outputs.
 
   - Some auxiliary files that are automatically distributed by Automake
diff --git a/lib/am/texibuild.am b/lib/am/texibuild.am
index 40f01e4..f77748a 100644
--- a/lib/am/texibuild.am
+++ b/lib/am/texibuild.am
@@ -68,8 +68,11 @@ INFO_DEPS += %DEST_INFO_PREFIX%%DEST_SUFFIX%
 ## Do not use '-o' unless necessary: it is only supported since Texinfo 4.1.
 ## texi2dvi doesn't silence everything with -q, redirect to /dev/null instead.
 ## We still want -q (%TEXIQUIET%) because it turns on batch mode.
-?GENERIC?      $(TEXI2DVI) %TEXIQUIET% %SOURCE% %TEXIDEVNULL%
-?!GENERIC?     $(TEXI2DVI) %TEXIQUIET% -o $@ `test -f '%SOURCE%' || echo 
'$(srcdir)/'`%SOURCE% %TEXIDEVNULL%
+## Use '--clean' to avoid leaving auxiliary files behind cluttering the build
+## directory (see automake bug#11146).  We should start using '--tidy' when we
+## can assume Texinf 4.9 or later.
+?GENERIC?      $(TEXI2DVI) %TEXIQUIET% --clean %SOURCE% %TEXIDEVNULL%
+?!GENERIC?     $(TEXI2DVI) %TEXIQUIET% --clean -o $@ `test -f '%SOURCE%' || 
echo '$(srcdir)/'`%SOURCE% %TEXIDEVNULL%
 
 ?GENERIC?%SOURCE_SUFFIX%.pdf:
 ?!GENERIC?%DEST_PREFIX%.pdf: %SOURCE% %DEPS% %DIRSTAMP%
@@ -80,8 +83,11 @@ INFO_DEPS += %DEST_INFO_PREFIX%%DEST_SUFFIX%
 ## Do not use '-o' unless necessary: it is only supported since Texinfo 4.1.
 ## texi2pdf doesn't silence everything with -q, redirect to /dev/null instead.
 ## We still want -q (%TEXIQUIET%) because it turns on batch mode.
-?GENERIC?      $(TEXI2PDF) %TEXIQUIET% %SOURCE% %TEXIDEVNULL%
-?!GENERIC?     $(TEXI2PDF) %TEXIQUIET% -o $@ `test -f '%SOURCE%' || echo 
'$(srcdir)/'`%SOURCE% %TEXIDEVNULL%
+## Use '--clean' to avoid leaving auxiliary files behind cluttering the build
+## directory (see automake bug#11146).  We should start using '--tidy' when we
+## can assume Texinf 4.9 or later.
+?GENERIC?      $(TEXI2PDF) %TEXIQUIET% --clean %SOURCE% %TEXIDEVNULL%
+?!GENERIC?     $(TEXI2PDF) %TEXIQUIET% --clean -o $@ `test -f '%SOURCE%' || 
echo '$(srcdir)/'`%SOURCE% %TEXIDEVNULL%
 
 ?GENERIC?%SOURCE_SUFFIX%.html:
 ?!GENERIC?%DEST_PREFIX%.html: %SOURCE% %DEPS% %DIRSTAMP%
diff --git a/tests/list-of-tests.mk b/tests/list-of-tests.mk
index de022a2..9dd45ab 100644
--- a/tests/list-of-tests.mk
+++ b/tests/list-of-tests.mk
@@ -1164,7 +1164,6 @@ txinfo10.test \
 txinfo13.test \
 txinfo16.test \
 txinfo17.test \
-txinfo18.test \
 txinfo19.test \
 txinfo20.test \
 txinfo21.test \
@@ -1180,6 +1179,7 @@ txinfo30.test \
 txinfo31.test \
 txinfo32.test \
 txinfo33.test \
+txinfo-no-clutter.test \
 txinfo-unrecognized-extension.test \
 transform.test \
 transform2.test \
diff --git a/tests/txinfo-no-clutter.test b/tests/txinfo-no-clutter.test
new file mode 100755
index 0000000..ae5e9f2
--- /dev/null
+++ b/tests/txinfo-no-clutter.test
@@ -0,0 +1,102 @@
+#! /bin/sh
+# Copyright (C) 2012 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# The pdf, ps and dvi targets shouldn't let clutter in the build directory.
+# Related to automake bug#11146.
+
+required='makeinfo tex texi2dvi-o dvips'
+. ./defs || Exit 1
+
+mkdir sub
+
+echo AC_OUTPUT >> configure.ac
+
+cat > Makefile.am << 'END'
+all-local: ps pdf dvi html
+info_TEXINFOS = foo.texi sub/bar.texi
+END
+
+cat > foo.texi << 'END'
+\input texinfo
address@hidden foo.info
address@hidden foo
address@hidden Top
+Hello walls.
address@hidden version.texi
address@hidden
+END
+
+cat > sub/bar.texi << 'END'
+\input texinfo
address@hidden bar.info
address@hidden bar
address@hidden Top
+Hello walls.
address@hidden version2.texi
address@hidden
+END
+
+cat > baz.texi << 'END'
+\input texinfo
address@hidden baz.info
address@hidden baz
address@hidden Top
+Hello walls.
address@hidden
+END
+
+cat > baz.texi << 'END'
+\input texinfo
address@hidden baz.info
address@hidden baz
address@hidden au
address@hidden sa
address@hidden sb
address@hidden sa sb
address@hidden Top
+Hello walls.
address@hidden foo
+foo
address@hidden bar
+bar
address@hidden baz
+baz
address@hidden sa
+sa
address@hidden sb
+sb
address@hidden
+END
+
+$ACLOCAL
+$AUTOMAKE --add-missing
+$AUTOCONF
+
+./configure
+
+# Try one by one, to ensure later targets don't involuntarily
+# clean up potential cruft left by earlier ones.
+for fmt in info pdf ps dvi html all; do
+  $MAKE $fmt
+  ls -l . sub # For debugging.
+  ls -d foo* baz* sub/bar* > lst
+  $EGREP -v '^(foo|sub/bar|baz)\.(texi|dvi|ps|pdf|html|info)$' lst && Exit 1
+  $MAKE clean
+done
+
+$MAKE distcheck
+
+:
diff --git a/tests/txinfo18.test b/tests/txinfo18.test
deleted file mode 100755
index 22b096b..0000000
--- a/tests/txinfo18.test
+++ /dev/null
@@ -1,75 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2002-2012 Free Software Foundation, Inc.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-# Make sure we clean index files, even if they are not used at the top-level.
-# Only *new* indexes need to be declared at the top-level.
-# PR/375.
-
-required='makeinfo tex texi2dvi'
-. ./defs || Exit 1
-
-cat >> configure.ac << 'END'
-AC_OUTPUT
-END
-
-cat > Makefile.am << 'END'
-info_TEXINFOS = main.texi
-main_TEXINFOS = sub.texi
-END
-
-cat > main.texi << 'END'
-\input texinfo
address@hidden main.info
address@hidden main
address@hidden au
address@hidden sa
address@hidden sb
address@hidden sa sb
address@hidden Top
-Hello walls.
address@hidden sub.texi
address@hidden
-END
-
-cat > sub.texi << 'END'
address@hidden foo
-foo
address@hidden bar
-bar
address@hidden baz
-baz
address@hidden sa
-sa
address@hidden sb
-sb
-END
-
-$ACLOCAL
-$AUTOMAKE --add-missing
-$AUTOCONF
-
-./configure
-
-$MAKE dvi
-ls -l           # For debugging.
-test -f main.sa # Sanity check.
-$MAKE clean
-ls -l           # For debugging.
-test x"`echo main.*`" = x"main.texi"
-
-TAR_OPTIONS= $MAKE distcheck
-
-:


hooks/post-receive
-- 
GNU Automake



reply via email to

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