bug-automake
[Top][All Lists]
Advanced

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

dvi, pdf rules: incorrect invocation of texi2dvi, texi2pdf


From: Bruno Haible
Subject: dvi, pdf rules: incorrect invocation of texi2dvi, texi2pdf
Date: Tue, 7 Apr 2009 13:04:36 +0200
User-agent: KMail/1.9.9

Hi,

Automake generates rules for creating DVI and PDF formatted documentation
that rely on the TEXINPUTS variable. This variable appears to have not the
desired effect in recent TeX distributions.

How to reproduce:

- Install texinfo 4.13 in your PATH.
- Unpack GNU hello 2.4.
$ ./configure
- Get the newest texinfo.tex:
$ gnulib-tool --copy-file build-aux/texinfo.tex
$ cd doc
- edit hello.texi, inserting an @arrow{} in the first paragraph, after
  "friendly greeting". The macro @arrow is supported since texinfo 4.12.
$ make dvi
TEXINPUTS="../build-aux:$TEXINPUTS" \
        MAKEINFO='/bin/sh /home/bruno/data/tmp/hello-2.4/build-aux/missing 
--run makeinfo   -I .' \
        texi2dvi hello.texi
This is pdfTeXk, Version 3.141592-1.40.3 (Web2C 7.5.6)
 file:line:error style messages enabled.
entering extended mode
(./hello.texi (/usr/share/texmf/tex/texinfo/texinfo.tex
Loading texinfo [version 2007-01-02.19]: pdf, fonts, page headings, tables,
conditionals, indexing, sectioning, toc, environments, defuns, macros,
cross references, insertions, (/usr/share/texmf/tex/generic/epsf/epsf.tex
This is `epsf.tex' v2.7.3 <23 July 2005>
) localization, formatting, and turning on texinfo input format.)
(./version.texi) [1] [2] [-1] Chapter 1
./hello.texi:76: Undefined control sequence.
l.76 friendly greeting @arrow
                             {}.  It allows nonprogrammers to use a classic ...

? 

$ rm hello.dvi
$ make pdf
TEXINPUTS="../build-aux:$TEXINPUTS" \
        MAKEINFO='/bin/sh /home/bruno/data/tmp/hello-2.4/build-aux/missing 
--run makeinfo   -I .' \
        texi2dvi --pdf --batch hello.texi
This is pdfTeXk, Version 3.141592-1.40.3 (Web2C 7.5.6)
 file:line:error style messages enabled.
entering extended mode

(./hello.texi (/usr/share/texmf/tex/texinfo/texinfo.tex
Loading texinfo [version 2007-01-02.19]: pdf,
(/usr/share/texmf/tex/plain/misc/pdfcolor.tex) fonts, page headings, tables,
conditionals, indexing, sectioning, toc, environments, defuns, macros,
cross references, insertions, (/usr/share/texmf/tex/generic/epsf/epsf.tex
This is `epsf.tex' v2.7.3 <23 July 2005>
) localization, formatting, and turning on texinfo input format.) (./hello.aux)
(./version.texi) [1{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}]
[2] (./hello.toc) [-1] (./hello.toc) (./hello.toc) Chapter 1
./hello.texi:76: Undefined control sequence.
l.76 friendly greeting @arrow
                             {}.  It allows nonprogrammers to use a classic ...

Chapter 2 [1] Chapter 3 [2] Chapter 4 [3] Appendix A [4] (./fdl.texi [5]
[6] [7] [8] [9] [10] [11]) (Concept index) [12] (./hello.cps) [13] )
(see the transcript file for additional information){/usr/share/texmf/fonts/enc
/dvips/ai/aicmtext.enc}{/usr/share/texmf/fonts/enc/dvips/ai/aicmmi.enc}{/usr/sh
are/texmf/fonts/enc/dvips/ai/aicmttext.enc}{/usr/share/texmf/fonts/enc/dvips/ai
/aicmtextf.enc}{/usr/share/texmf/fonts/enc/dvips/ai/aicmsy.enc}</usr/share/texm
f/fonts/type1/bluesky/cm/cmbx12.pfb></usr/share/texmf/fonts/type1/bluesky/cm/cm
csc10.pfb></usr/share/texmf/fonts/type1/bluesky/cm/cmmi12.pfb></usr/share/texmf
/fonts/type1/bluesky/cm/cmmi9.pfb></usr/share/texmf/fonts/type1/bluesky/cm/cmr1
0.pfb></usr/share/texmf/fonts/type1/bluesky/cm/cmr9.pfb></usr/share/texmf/fonts
/type1/bluesky/cm/cmsl10.pfb></usr/share/texmf/fonts/type1/bluesky/cm/cmsltt10.
pfb></usr/share/texmf/fonts/type1/bluesky/cm/cmsy10.pfb></usr/share/texmf/fonts
/type1/bluesky/cm/cmtt10.pfb></usr/share/texmf/fonts/type1/bluesky/cm/cmtt12.pf
b></usr/share/texmf/fonts/type1/bluesky/cm/cmtt9.pfb>
Output written on hello.pdf (16 pages, 137796 bytes).
Transcript written on hello.log.
/arch/x86-linux/gnu/bin/texi2dvi: pdfetex exited with bad status, quitting.
make: *** [hello.pdf] Fehler 1

The reason is that the TEXINPUTS variable has no effect.

$ texi2dvi hello.texi
fails

$ TEXINPUTS="../build-aux" texi2dvi hello.texi
fails

$ texi2dvi -I ../build-aux hello.texi
uses ../build-aux/texinfo.tex, works fine.

Likewise for texi2pdf:

$ texi2pdf hello.texi
fails

$ TEXINPUTS="../build-aux" texi2pdf hello.texi
fails

$ texi2pdf -I ../build-aux hello.texi
uses ../build-aux/texinfo.tex, works fine.


Details about my system:

$ cat /etc/SuSE-release 
openSUSE 11.0 (X86-64)
VERSION = 11.0

$ rpm -q -f `which tex`
texlive-2007-177.1

$ rpm -q -f /usr/share/texmf/tex/texinfo/texinfo.tex
texlive-2007-177.1

$ texi2dvi --version | head -n 1
texi2dvi (GNU Texinfo 4.13) 1.135

$ texi2pdf --version | head -n 1
texi2dvi (GNU Texinfo 4.13) 1.135


Suggestion: Can you change the invocations of $(TEXI2DVI) and $(TEXI2PDF) so
as to include the directory where texinfo.tex resides, through a -I option?

Bruno




reply via email to

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