Alexandre:
 > Texi2dvi runs something like

 >   tex --help </dev/null 2>&1

 > On your system it seems to print "fflush error on stdout" and create
 > texput.log as a side effect.  On mine it works just fine (i.e. it
 > prints the help -- I have TeX (Web2C 7.4.5) 3.14159).

 > So I think texi2dvi should be changed to clean texput.log
 > afterwards (or run tex --help in a temporary directory).

I suggest this patch, which includes another one pending for Texinfo.

Index: ChangeLog
from  Akim Demaille  <[EMAIL PROTECTED]>

        Workaround a TeX bug: --file-line-error-style '\nonstopmode'
        does not honor the non stop mode request.
        Also, make sure 'tex --help' is run in tmp to avoid leaving
        texput.log.

        * util/texi2dvi (tex_help): New.
        (tex_args): Instead of using '\nonstopmode', pass
        '--interaction=nonstopmode'.

Index: util/texi2dvi
===================================================================
RCS file: /cvsroot/texinfo/texinfo/util/texi2dvi,v
retrieving revision 1.24
diff -u -u -r1.24 texi2dvi
--- util/texi2dvi 2 Jul 2003 14:23:28 -0000 1.24
+++ util/texi2dvi 22 Aug 2003 08:15:55 -0000
@@ -491,15 +491,21 @@
       ;;
   esac
 
+  # Not all TeX handle --help gracefully.
+  tex_help=`cd $tmpdir >/dev/null && $tex --help </dev/null 2>&1`
+
   # If possible, make TeX report error locations in GNU format.
   tex_args=
-  case `$tex --help </dev/null 2>&1` in
-   *file-line-error-style*) tex_args='--file-line-error-style';;
+  case $tex_help in
+   *file-line-error-style*) tex_args="$tex_args --file-line-error-style";;
   esac
 
   # Tell TeX to be batch if requested.  (\batchmode does not show
   # terminal output at all, so we don't want that.)
-  $batch && tex_args="$tex_args ${escape}nonstopmode ${escape}input"
+  $batch &&
+    case $tex_help in
+     *interaction*) tex_args="$tex_args --interaction=nonstopmode";;
+    esac
 
   # Expand macro commands in the original source file using Makeinfo.
   # Always use `end' footnote style, since the `separate' style


Reply via email to