[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Automake-commit] [SCM] GNU Automake branch, master, updated. v1.12.1-16
From: |
Stefano Lattarini |
Subject: |
[Automake-commit] [SCM] GNU Automake branch, master, updated. v1.12.1-166-gf99ee76 |
Date: |
Sat, 30 Jun 2012 15:57:15 +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=f99ee7616ced4d07684a30a67b72e46aba00c65f
The branch, master has been updated
via f99ee7616ced4d07684a30a67b72e46aba00c65f (commit)
via 498492fdb4dd7db6a0d3aa631c350a57da3d2ab5 (commit)
from e2f007f0c78e011c5fab60bfad332f6aad0989f1 (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 f99ee7616ced4d07684a30a67b72e46aba00c65f
Author: Jim Meyering <address@hidden>
Date: Sat Jun 30 13:53:37 2012 +0200
texi: clean after Texinfo manuals in $(SUBDIRS) directories correctly
Fixes the regression exposed by previous commit 'v1.12.1-165-g498492f'.
* automake.in (handle_texinfo_helper): Add $infobase.{t2d,t2p}
to @mostly_cleans, but *without* the '$relative_dir/' prefix.
Signed-off-by: Stefano Lattarini <address@hidden>
commit 498492fdb4dd7db6a0d3aa631c350a57da3d2ab5
Author: Stefano Lattarini <address@hidden>
Date: Sat Jun 30 16:37:06 2012 +0200
coverage: regression in texinfo "make mostlyclean" with $(SUBDIRS)
After commit v1.12.1-91-g205c757 of 2012-06-20, "texi: require
Texinfo >= 4.9, related enhancements", the presence of a Texinfo manual
'manual.texi' in a subdir (say 'doc/') of a package using a recursive
make setup would cause "make distcheck" to fail, due to the presence of
the 'manual.t2d/' directory created by texi2dvi. That directory would
not be correctly removed because the 'mostlyclean' rule would run, from
within the 'doc/' sub-directory, "rm -rf doc/manual.t2d", instead of
the expected (and correct) "rm -rf manual.t2d".
Reported by Jim Meyering:
<http://lists.gnu.org/archive/html/automake-patches/2012-06/msg00203.html>
* t/txinfo21.sh: Enhance to expose the issue.
* t/txinfo-no-clutter.sh: Likewise, and other miscellaneous improvements.
Signed-off-by: Stefano Lattarini <address@hidden>
-----------------------------------------------------------------------
Summary of changes:
automake.in | 4 +-
t/txinfo-no-clutter.sh | 88 ++++++++++++++++++++++++++++++++++++------------
t/txinfo21.sh | 17 ++++++++-
3 files changed, 83 insertions(+), 26 deletions(-)
diff --git a/automake.in b/automake.in
index 11e750d..be77870 100644
--- a/automake.in
+++ b/automake.in
@@ -3166,8 +3166,8 @@ sub handle_texinfo_helper ($)
or next;
# Directory of auxiliary files and build by-products used by texi2dvi
# and texi2pdf.
- push @mostly_cleans, "$relative_dir/$infobase.t2d";
- push @mostly_cleans, "$relative_dir/$infobase.t2p";
+ push @mostly_cleans, "$infobase.t2d";
+ push @mostly_cleans, "$infobase.t2p";
# If the Texinfo source is in a subdirectory, create the
# resulting info in this subdirectory. If it is in the current
diff --git a/t/txinfo-no-clutter.sh b/t/txinfo-no-clutter.sh
index 3dc1a29..558f8e1 100755
--- a/t/txinfo-no-clutter.sh
+++ b/t/txinfo-no-clutter.sh
@@ -14,19 +14,28 @@
# 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.
+# The info, html, pdf, ps and dvi targets shouldn't let clutter in the
+# build directory. Related to automake bug#11146.
required='makeinfo tex texi2dvi dvips'
. ./defs || exit 1
-mkdir sub
-
-echo AC_OUTPUT >> configure.ac
+cat >> configure.ac <<'END'
+AC_CONFIG_FILES([sub/Makefile])
+AC_OUTPUT
+END
cat > Makefile.am << 'END'
-all-local: ps pdf dvi html
-info_TEXINFOS = foo.texi sub/bar.texi
+all-local: ps pdf dvi html # For "make distcheck".
+info_TEXINFOS = foo.texi doc/bar.texi baz.texi
+SUBDIRS = sub
+END
+
+mkdir sub doc
+
+cat > sub/Makefile.am << 'END'
+all-local: ps pdf dvi html # For "make distcheck".
+info_TEXINFOS = baz.texi
END
cat > foo.texi << 'END'
@@ -39,7 +48,7 @@ Hello walls.
@bye
END
-cat > sub/bar.texi << 'END'
+cat > doc/bar.texi << 'END'
\input texinfo
@setfilename bar.info
@settitle bar
@@ -53,15 +62,6 @@ cat > baz.texi << 'END'
\input texinfo
@setfilename baz.info
@settitle baz
address@hidden Top
-Hello walls.
address@hidden
-END
-
-cat > baz.texi << 'END'
-\input texinfo
address@hidden baz.info
address@hidden baz
@defindex au
@defindex sa
@defindex sb
@@ -81,6 +81,8 @@ sb
@bye
END
+cp baz.texi sub
+
$ACLOCAL
$AUTOMAKE --add-missing
$AUTOCONF
@@ -91,11 +93,53 @@ $AUTOCONF
# 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|t2[dp])$' \
- lst && exit 1
- $MAKE clean
+ # For debugging.
+ ls -l . doc sub
+ # Sanity check.
+ case $fmt in
+ html)
+ test -e foo.html
+ test -e doc/bar.html
+ test -e baz.html
+ test -e sub/baz.html
+ ;;
+ all)
+ for x in info pdf ps dvi; do
+ test -f foo.$x
+ test -f doc/bar.$x
+ test -f baz.$x
+ test -f sub/baz.$x
+ done
+ test -e foo.html
+ test -e doc/bar.html
+ test -e baz.html
+ test -e sub/baz.html
+ ;;
+ *)
+ test -f foo.$fmt
+ test -f doc/bar.$fmt
+ test -f baz.$fmt
+ test -f sub/baz.$fmt
+ ;;
+ esac
+ # Real test.
+ ls -d foo* baz* sub/baz* doc/bar* > lst
+ basename_rx='(foo|doc/bar|baz|sub/baz)'
+ case $fmt in
+ pdf) extension_rx="(texi|pdf|t2p)";;
+ dvi) extension_rx="(texi|dvi|t2d)";;
+ ps) extension_rx="(texi|ps|dvi|t2d)";;
+ info) extension_rx="(texi|info)";;
+ html) extension_rx="(texi|html)";;
+ all) extension_rx="(texi|html|info|pdf|ps|dvi|t2[pd])";;
+ *) fatal_ "unreachable code reached";;
+ esac
+ $EGREP -v "^$basename_rx\.$extension_rx$" lst && exit 1
+ # Cleanup for checks on the next format.
+ case $fmt in
+ info) rm -f *.info doc/*.info sub/*.info;;
+ *) $MAKE clean;;
+ esac
done
$MAKE distcheck
diff --git a/t/txinfo21.sh b/t/txinfo21.sh
index 52474ad..b6c222f 100755
--- a/t/txinfo21.sh
+++ b/t/txinfo21.sh
@@ -34,6 +34,7 @@ AC_OUTPUT
EOF
cat > Makefile.am << 'END'
+check-local: ps pdf dvi html # For "make distcheck".
SUBDIRS = rec
info_TEXINFOS = main.texi sub/main2.texi
END
@@ -75,13 +76,15 @@ install-pdf-local:
:> "$(pdfdir)/hello"
uninstall-local:
rm -f "$(pdfdir)/hello"
+
+check-local: ps pdf dvi html # For "make distcheck".
END
$ACLOCAL
$AUTOMAKE --add-missing
$AUTOCONF
-./configure
+./configure --prefix "$(pwd)"
$MAKE
@@ -115,17 +118,20 @@ test ! -e sub/main2.html
test ! -e rec/main3.html
# Make sure AM_MAKEINFOHTMLFLAGS is supported, and override AM_MAKEINFO.
+
+cp Makefile.am Makefile.sav
cat >>Makefile.am <<\EOF
AM_MAKEINFOHTMLFLAGS = --no-headers --no-split
AM_MAKEINFOFLAGS = --unsupported-option
EOF
$AUTOMAKE
-./configure --prefix "$(pwd)"
+./config.status Makefile
$MAKE html
test -f main.html
test -f sub/main2.html
test -d rec/main3.html
+
$MAKE clean
test ! -e main.html
test ! -e sub/main2.html
@@ -174,4 +180,11 @@ test ! -e share/$me/pdf/main2.pdf
test ! -e share/$me/pdf/main3.pdf
test ! -e share/$me/pdf/hello
+# Restore the makefile without a broken AM_MAKEINFOFLAGS definition.
+mv -f Makefile.sav Makefile.am
+$AUTOMAKE
+./config.status Makefile
+
+$MAKE distcheck
+
:
hooks/post-receive
--
GNU Automake
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Automake-commit] [SCM] GNU Automake branch, master, updated. v1.12.1-166-gf99ee76,
Stefano Lattarini <=