Mail Archives: djgpp-workers/2001/11/27/14:00:43
From: "Eli Zaretskii" <eliz AT is DOT elta DOT co DOT il>
Date: Tue, 27 Nov 2001 18:07:57 +0200
> From: "Juan Manuel Guerrero" <ST001906 AT HRZ1 DOT HRZ DOT TU-Darmstadt DOT De>
> Date: Tue, 27 Nov 2001 15:04:40 +0100
>
> I have noticed that makeinfo is not able to generate info files if the
> texinfo file have DOS-style EOL instead of UNIX-style EOL.
>
> What's the problem, exactly? (I don't have the sources to look right
> now.) IIRC, makeinfo reads input in text mode, so it should be
> oblivious to the EOL format. Did that change somehow? Or did
> someone add code that, once again, relies on stat to return the exact
> number of bytes as would be read by `read' or `fread'?
Sorry, but I do not know anything about all this. The bison authors use
texinfo 4.0b to make the info docs and I was not able to create a modified
version using DJGPP stock texinfo 4.0. I have looked for texinfo 4.0b
but I have only found texinfo 4.0d and tried to compile it out-of-the-box.
I have used gcc302, bash204, bnu2112 and CVS libc (timestamp 2001-11-08).
As long as I try to create an info file from fresh extracted bison.texinfo everything
works ok (bison.texinfo with UNIX-style EOL). As soon as I patch the file
using stock DJGPP patch binary I get a file with DOS-style EOL. Now the
compilation fails with this output:
cd . \
&& E:/DJGPP-2.04/BIN/sh.exe ../config/missing --run makeinfo \
`echo bison.texinfo | sed 's,.*/,,'`
bison.texinfo:32: Unknown index `fn' and/or `cp' in @synindex.
bison.texinfo:33: Unknown index `vr' and/or `cp' in @synindex.
bison.texinfo:34: Unknown index `tp' and/or `cp' in @synindex.
./bison.texinfo:5461: Cross reference to nonexistent node `Decl Summary'.
./bison.texinfo:5434: Cross reference to nonexistent node `Decl Summary'.
./bison.texinfo:2427: Cross reference to nonexistent node `Type Decl'.
./bison.texinfo:1190: Cross reference to nonexistent node `Grammar Layout'.
makeinfo: Removing output file `e:/project/bison-1.30e/doc/bison.info' due to errors; use --force to preserve.
make.exe: *** [bison.info] Error 1
As soon as I run dtou.exe on the patched bison.texinfo, makeinfo works ok again.
I was only interested in the info docs so I have not looked very deeply into
makeinfo.c to see what the reason for this behaviour is.
In makeinfo.c I have found char *find_and_load (filename) and this
function opens the file in binary mode.
From: "Tim Van Holder" <tim DOT van DOT holder AT pandora DOT be>
Date: Tue, 27 Nov 2001 18:45:18 +0100
> 1) It is not possible to create doc.c and funs.h. The reason
> is that the makefile rule to create them contains makedoc as
> dependency. But the dependency
> should be makedoc$(EXEEXT). All this means that the following
> line in Makefile.am:
> >
> $(BUILT_SOURCES): makedoc $(cmd_sources)
>
> should be replaced by this one:
>
> $(BUILT_SOURCES): makedoc$(EXEEXT) $(cmd_sources)
>
> Not true. EXEEXT should be added by automake. Automake <= 1.4
> require AC_EXEEXT in configure.in for this to happen; automake
> 1.5 always adds it (because autoconf 2.5x always sets EXEEXT).
I did not know this.
Regards,
Guerrero, Juan Manuel
- Raw text -