On Mon, Jan 24, 2022 at 8:52 AM Tobias Burnus wrote: > > Hi H.J., hi Mike, > > On 24.01.22 16:42, H.J. Lu wrote: > > > Try this. > > That does not fail - but it creates an empty HTML file. > I think it is the same reason as the one why creating the PDF > file fails hard. > > Namely, for the 'doc/bfd.pdf' (or 'install-pdf') is does as first > step: > touch doc/bfd.texi > which creates an empty file. The 'test -f doc/bfd.texi' then succeeds > and uses that empty file - instead of $(src)/bfd/doc/bfd.texi :-( > > > > On the Makefile level, that's due to the following (Makefile{,.in} + bfd/doc/local.mk): > > # Avoid the %.stamp generating a builddir/bfd.texi that overrides the srcdir/. > doc/bfd.texi doc/bfd.stamp: doc/$(am__dirstamp) ; $(AM_V_at)touch $@ > > And the the 'touch' at the end *is* run for 'doc/bfd.texi' via (Makefile{,.in}): > > (Actually, it does the opposite to what comment states: It does create that file!) > > > I think that target is invoked via: > > doc/bfd.pdf: doc/bfd.texi $(doc_bfd_TEXINFOS) doc/$(am__dirstamp) > .... $(TEXI2PDF) ... > > due to the bfd.texi dependency. > > > > > The "make doc/bfd.pdf" shows/fails with: > > touch doc/bfd.texi > TEXINPUTS="$(build)/bfd:$TEXINPUTS" \ > MAKEINFO='makeinfo --split-size=5000000 --split-size=5000000 --no-split -I doc -I $(src)/bfd/doc' \ > texi2dvi --pdf --batch --build-dir=doc/bfd.t2p -o doc/bfd.pdf \ > `test -f 'doc/bfd.texi' || echo '$(src)/bfd/'`doc/bfd.texi > > This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/Debian) (preloaded format=pdfetex) > restricted \write18 enabled. > entering extended mode > > (../../../../.././doc/bfd.texi) > ! Emergency stop. > <*> ...opmode \input ../../../../.././doc/bfd.texi > > ! ==> Fatal error occurred, no output PDF file produced! > Transcript written on bfd.log. > /usr/bin/texi2dvi: pdfetex exited with bad status, quitting. > make[3]: *** [Makefile:1807: doc/bfd.pdf] Error 1 > > The .log file is in '$(build)/bfd/doc/bfd.t2p/doc!bfd.t2d/pdf/build' and it contains: > > **\nonstopmode \input ../../../../.././doc/bfd.texi > (../../../../.././doc/bfd.texi) > ! Emergency stop. > <*> ...opmode \input ../../../../.././doc/bfd.texi > > which is the empty 'touched' $(build)/bfd/bfd.texi. Try this. -- H.J.