{
define_verbose_tagvar($tag);
}
- define_verbose_var('texinfo', '-q');
- define_verbose_var('texidevnull', '> /dev/null');
+ define_verbose_var('TEXI_QUIETOPTS', '-q');
+ define_verbose_var('TEXI_DEVNULL_REDIRECT', '> /dev/null');
}
# define_verbose_libtool
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) $(am__makeinfoflags)' \
## texi2dvi and texi2pdf don't silence everything with -q, redirect to
## /dev/null instead.
-## We still want -q ($(AM_V_texinfo)) because it turns on batch mode.
-## Use '--clean' to avoid leaving auxiliary files behind cluttering the
-## build directory (see automake bug#11146). We should start using
+## We still want -q ($(AM_V_TEXI_QUIETOPTS)) because it turns on batch
+## mode. 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.
- $2 $(AM_V_texinfo) --clean -o $@ $< $(AM_V_texidevnull)
+ $2 $(AM_V_TEXI_QUIETOPTS) --clean -o $@ $< $(AM_V_TEXI_DEVNULL_REDIRECT)
endef
define am__texibuild_info
## The way to make PostScript, for those who want it.
%.ps: %.dvi
$(AM_V_DVIPS)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
- $(DVIPS) $(AM_V_texinfo) -o $@ $<
+ $(DVIPS) $(AM_V_TEXI_QUIETOPTS) -o $@ $<
./configure --disable-silent-rules
-# Make sure that all labels work in silent-mode.
-$MAKE V=0 dvi html info ps pdf >stdout || { cat stdout; Exit 1; }
+# Silent mode output.
+st=0
+$MAKE V=0 dvi html info ps pdf >stdout 2>stderr || st=$?
cat stdout
-grep 'DVIPS foo.ps' stdout || Exit 1
-grep 'MAKEINFO foo.html' stdout || Exit 1
-grep 'MAKEINFO foo.info' stdout || Exit 1
-grep 'TEXI2DVI foo.dvi' stdout || Exit 1
-grep 'TEXI2PDF foo.pdf' stdout || Exit 1
+cat stderr >&2
+test $st -eq 0
+grep '^ DVIPS foo\.ps$' stdout
+grep '^ MAKEINFO foo\.html$' stdout
+grep '^ MAKEINFO foo\.info$' stdout
+grep '^ TEXI2DVI foo\.dvi$' stdout
+grep '^ TEXI2PDF foo\.pdf$' stdout
+# No make recipe is displayed before being executed.
+$EGREP 'texi2(dvi|pdf)|dvips|makeinfo|(rm|mv) ' stdout stderr && Exit 1
+# No verbose output from TeX nor dvips.
+$EGREP 'foo\.log|3\.14|Copyright|This is|[Oo]utput ' output && Exit 1
-# Now make sure the labels don't appear in verbose mode.
+# Verbose mode output.
$MAKE clean || Exit 1
-$MAKE V=1 dvi html info ps pdf >stdout || { cat stdout; Exit 1; }
-cat stdout
-grep 'DVIPS foo.ps' stdout && Exit 1
-grep 'MAKEINFO foo.html' stdout && Exit 1
-grep 'MAKEINFO foo.info' stdout && Exit 1
-grep 'TEXI2DVI foo.dvi' stdout && Exit 1
-grep 'TEXI2PDF foo.pdf' stdout && Exit 1
+$MAKE V=1 dvi html info ps pdf >output 2>&1 || { cat output; Exit 1; }
+cat output
+$EGREP '(DVIPS|MAKEINFO|TEXI2(PDF|DVI)) ' output && Exit 1
+# Verbose output from TeX.
+grep '[Oo]utput .*foo\.pdf' output
+$FGREP 'foo.log' output
+# Verbose output from dvips.
+$FGREP ' dvips' output
: