[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: texinfo.tex not included in the autoconf distribution
From: |
Alexandre Duret-Lutz |
Subject: |
Re: texinfo.tex not included in the autoconf distribution |
Date: |
Mon, 14 Oct 2002 22:57:25 +0200 |
User-agent: |
Gnus/5.090008 (Oort Gnus v0.08) Emacs/20.7 (i386-debian-linux-gnu) |
[---
For bug-texinfo people, the start of this thread is here:
http://mail.gnu.org/pipermail/bug-automake/2002-October/000859.html
and the mail I'm replying to is
http://mail.gnu.org/pipermail/bug-automake/2002-October/000863.html
(Aharon's mails contain no `References:' headers so the
archives are a bit hard to follow.)
This is texi2dvi (GNU Texinfo 4.2) 0.51
---]
>>> "Aharon" == Aharon Robbins <address@hidden> writes:
[...]
Aharon> +
common=.:/usr/local/src/Gnu/autoconf-2.54/doc:/usr/local/src/Gnu/autoconf-2.54/doc::
Aharon> +
TEXINPUTS=.:/usr/local/src/Gnu/autoconf-2.54/doc:/usr/local/src/Gnu/autoconf-2.54/doc::../config::/usr/local/lib/tex:/usr/local/tex/inputs
Here is the culprit. The `../config::/usr/local/lib/tex:/usr/local/tex/inputs'
part comes from the original TEXINPUTS variable. The initial
part comes from texi2dvi.
The problem is that texi2dvi mistakenly adds `::' before `../config'.
The tex man page says
An empty path component will be replaced with the
paths defined in the texmf.cnf file.
so the default paths are searched before ../config; which explains why
the wrong `texinfo.tex' version is used.
I've been able to reproduce this, and the following patch appears to
fix it.
2002-10-14 Alexandre Duret-Lutz <address@hidden>
* util/texi2dvi (common, txincludes): Fix definitions so that
and empty $txincludes doesn't result in a empty path element
in TEXINPUTS.
--- util/texi2dvi Mon Jun 24 16:54:32 2002
+++ util/texi2dvi Mon Oct 14 22:22:45 2002
@@ -102,7 +102,7 @@
set_language=
textra=
tmpdir=${TMPDIR:-/tmp}/t2d$$ # avoid collisions on 8.3 filesystems.
-txincludes= # TEXINPUTS extensions
+txincludes= # TEXINPUTS extensions, with trailing colon
txiprereq=19990129 # minimum texinfo.tex version to have macro expansion
verbose=false # echo for verbose mode
@@ -159,7 +159,7 @@
-I | --I*)
shift
miincludes="$miincludes -I $1"
- txincludes="$txincludes$path_sep$1"
+ txincludes="$txincludes$1$path_sep"
;;
-l | --l*) shift; set_language=$1;;
-o | --o*)
@@ -363,8 +363,8 @@
# etc. files in ${directory} don't get used in preference to fresher
# files in `.'. Include orig_pwd in case we are in clean mode, where
# we've cd'd to a temp directory.
-
common=".$path_sep$orig_pwd$path_sep$filename_dir$path_sep$txincludes$path_sep"
- TEXINPUTS="$common$TEXINPUTS_orig"
+ common=".$path_sep$orig_pwd$path_sep$filename_dir$path_sep$txincludes"
+ TEXINPUTS="$common$TEXINPUTS_orig:"
INDEXSTYLE="$common$INDEXSTYLE_orig"
# If the user explicitly specified the language, use that.
Note that I've appended `:' to TEXINPUTS. This is to workaround another
issue later in the script:
Aharon> + txiversion_tex=txiversion.tex
Aharon> + echo '\input texinfo.tex @bye'
Aharon> ++ cd /tmp/t2d11797
Aharon> ++ tex txiversion.tex
Aharon> ++ sed -n 's/^.*\[\(.*\)version \(....\)-\(..\)-\(..\).*$/txiformat=\1
txiversion="\2\3\4"/p'
Aharon> + eval txiformat= 'txiversion="19990925"'
Aharon> ++ txiformat=
Aharon> ++ txiversion=19990925
Because this test case is run into another directory, tex can't find
`texinfo.tex' in `../config'.
I think so far it has always worked thanks to the previous bug.
(Because of the unfortunate `::', the system's `texinfo.tex' was
found.) So appending `:' to TEXINPUTS as in the above patch
seems to preserve the status quo. I guess a better fix would be
to teach texi2dvi how to rewrite relative path components as
absolute paths.
BTW, I've found a similar report about this second issue here:
http://mail.gnu.org/pipermail/bug-texinfo/2002-May/005072.html
--
Alexandre Duret-Lutz
- Re: texinfo.tex not included in the autoconf distribution,
Alexandre Duret-Lutz <=