[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[FYI] texi: build version.texi and stamp-vti in srcdir
From: |
Stefano Lattarini |
Subject: |
[FYI] texi: build version.texi and stamp-vti in srcdir |
Date: |
Sun, 19 May 2013 22:14:58 +0200 |
Do so even when the 'info-in-builddir' option is present, or when
the corresponding '*.info' files are listed in $(CLEANFILES) or in
$(DISTCLEANFILES).
This fixes failures in the following tests, when they are run with
$MAKE pointing to FreeBSD make:
- txinfo-nodist-info.sh
- txinfo23.sh
- txinfo24.sh
- txinfo28.sh
- txinfo25.sh
BTW, notice that the test 'txinfo-builddir.sh' fails with FreeBSD make
as well, but that is due to a known FreeBSD make VPATH issue (the same
described in automake bug#7884). But that is not a regression, since
the 'info-in-builddir' option will be new in Automake 1.14. Moreover,
we already warn in the manual that the use of that option can indeed
cause problems with VPATH builds done by non-GNU make.
* bin/automake.in (handle_texinfo_helper): New local variable
'$soutdir'. Use it instead of '$outdir' where appropriate (in
particular, in the transform used on file 'texi-vers.am'.
* t/txinfo-builddir.sh: Adjust to avoid spurious failures.
Signed-off-by: Stefano Lattarini <address@hidden>
---
bin/automake.in | 9 +++++----
t/txinfo-builddir.sh | 22 +++++++++++++---------
2 files changed, 18 insertions(+), 13 deletions(-)
diff --git a/bin/automake.in b/bin/automake.in
index c95289f..8f3fb48 100644
--- a/bin/automake.in
+++ b/bin/automake.in
@@ -3217,6 +3217,7 @@ sub handle_texinfo_helper
# was once done when the (now removed) 'cygnus' option was
# given. See automake bug#11034 for more discussion.
my $insrc = 1;
+ my $soutdir = '$(srcdir)/' . $outdir;
if (option 'info-in-builddir')
{
@@ -3239,12 +3240,12 @@ Oops!
EOF
}
- $outdir = '$(srcdir)/' . $outdir if $insrc;
+ $outdir = $soutdir if $insrc;
# If user specified file_TEXINFOS, then use that as explicit
# dependency list.
@texi_deps = ();
- push (@texi_deps, "$outdir$vtexi") if $vtexi;
+ push (@texi_deps, "${soutdir}${vtexi}") if $vtexi;
my $canonical = canonicalize ($infobase);
if (var ($canonical . "_TEXINFOS"))
@@ -3298,8 +3299,8 @@ EOF
new Automake::Location,
TEXI => $texi,
VTI => $vti,
- STAMPVTI => "${outdir}stamp-$vti",
- VTEXI => "$outdir$vtexi",
+ STAMPVTI => "${soutdir}stamp-$vti",
+ VTEXI => "$soutdir$vtexi",
MDDIR => $conf_dir,
DIRSTAMP => $dirstamp);
}
diff --git a/t/txinfo-builddir.sh b/t/txinfo-builddir.sh
index e0156c5..42d4112 100644
--- a/t/txinfo-builddir.sh
+++ b/t/txinfo-builddir.sh
@@ -22,6 +22,10 @@
required='makeinfo tex texi2dvi'
. test-init.sh
+if useless_vpath_rebuild; then
+ skip_ "$MAKE has brittle VPATH support"
+fi
+
echo AC_OUTPUT >> configure.ac
cat > Makefile.am << 'END'
@@ -86,38 +90,38 @@ $MAKE info
test -f foo.info
test -f subdir/bar.info
test -f mu.info
-test -f stamp-vti
-test -f version.texi
+test -f ../stamp-vti
+test -f ../version.texi
test ! -e ../foo.info
test ! -e ../subdir/bar.info
test ! -e ../mu.info
-test ! -e ../stamp-vti
-test ! -e ../version.texi
$MAKE clean
test -f foo.info
test -f subdir/bar.info
test ! -e mu.info
-test -f stamp-vti
-test -f version.texi
+test -f ../stamp-vti
+test -f ../version.texi
# Make sure stamp-vti is older that version.texi.
# (A common situation in a real tree).
$sleep
-touch stamp-vti
+touch ../stamp-vti
$MAKE distcheck
# Being distributed, this file should have been rebuilt.
test -f mu.info
$MAKE distclean
-test -f stamp-vti
-test -f version.texi
+test -f ../stamp-vti
+test -f ../version.texi
test -f foo.info
test -f subdir/bar.info
test ! -e mu.info
../configure
$MAKE maintainer-clean
+test ! -e ../stamp-vti
+test ! -e ../version.texi
test ! -e stamp-vti
test ! -e version.texi
test ! -e foo.info
--
1.8.3.rc2
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [FYI] texi: build version.texi and stamp-vti in srcdir,
Stefano Lattarini <=