[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1d993906-bae3-41eb-963f-de960cc56dd0@gmail.com>
Date: Sat, 27 Sep 2025 18:12:19 +0900
From: Akira Yokosawa <akiyks@...il.com>
To: mchehab+huawei@...nel.org
Cc: corbet@....net, linux-doc@...r.kernel.org, linux-kernel@...r.kernel.org,
rdunlap@...radead.org, Akira Yokosawa <akiyks@...il.com>
Subject: Re: [PATCH 2/2] docs: Makefile: avoid a warning when using without
texlive
Sorry, a quick follow-up.
On Sat, 27 Sep 2025 16:35:08 +0900, Akira Yokosawa wrote:
> On Fri, 26 Sep 2025 12:16:19 +0200, Mauro Carvalho Chehab wrote:
>> As reported by Randy, running make htmldocs on a machine
>> without textlive now produce warnings:
>>
>> $ make O=DOCS htmldocs
>> ../Documentation/Makefile:70: warning: overriding recipe for target 'pdfdocs'
>> ../Documentation/Makefile:61: warning: ignoring old recipe for target 'pdfdocs'
>>
>> That's because the code has now two definitions for pdfdocs in
>> case $PDFLATEX command is not found. With the new script, such
>> special case is not needed anymore, as the script checks it.
>>
>> Drop the special case. Even after dropping it, on a machine
>> without LaTeX, it will still produce an error as expected,
>> as running:
>>
>> $ ./tools/docs/sphinx-build-wrapper pdfdocs
>> Error: pdflatex or latexmk required for PDF generation
>>
>> does the check. After applying the patch we have:
>>
>> $ make SPHINXDIRS=peci htmldocs
>> Using alabaster theme
>> Using Python kernel-doc
>>
>> $ make SPHINXDIRS=peci pdfdocs
>> Error: pdflatex or latexmk required for PDF generation
>> make[2]: *** [Documentation/Makefile:64: pdfdocs] Error 1
>> make[1]: *** [/root/Makefile:1808: pdfdocs] Error 2
>> make: *** [Makefile:248: __sub-make] Error 2
>>
>> Which is the expected behavior.
>>
>
> There seems to be a related issue.
>
> At current "docs-mw", under build environments who don't have xelatex nor latexmk,
>
> $ make SPHINXDIRS=peci latexdocs
>
> completes without any issue.
>
> In the resulting .../latex/peci directory, one can run
I meant: .../peci/latex
>
> $ make PDFLATEX="latexmk -xelatex" LATEXOPTS="-interaction=batchmode -no-shell-escape"
>
> and build peci.pdf.
I failed to mention, but of course you need to transfer/share said
.../peci/latex/ to another build environment who has all the required
packages for "pdfdocs".
I often use such heterogeneous combination of running "make latexdocs"
+ running make under each of .../$SPHINXDIRS/latex/ using another
environment.
This way, you need only one set of working texlive packages for testing
against various Sphinx's latex builder releases.
>
> At current "build-scripts", I get this:
>
> $ make SPHINXDIRS=peci latexdocs
> Error: pdflatex or latexmk required for PDF generation
> make[2]: *** [Documentation/Makefile:68: latexdocs] Error 1
> make[1]: *** [<srcdir>/Makefile:1806: latexdocs] Error 2
> make: *** [Makefile:248: __sub-make] Error 2
>
> Patch 2/2 doesn't change the behavior.
>
> This is yet another regression. Please teach sphinx-build-wrapper of the
> fact that "latexdocs" does not run those texlive commands. It is only the
> "pdfdocs" phase that will run them.
>
You see, "make latexdocs" is supposed to generate all the necessary files
for building PDFs to be consumed by make + latexmk/xelatex.
There is a clear boundary between "latexdocs" and "pdfdocs".
Thanks,
Akira
> Regards,
> Akira
>
>> Reported-by: Randy Dunlap <rdunlap@...radead.org>
>> Link: https://lore.kernel.org/linux-doc/e7c29532-71de-496b-a89f-743cef28736e@infradead.org/
>> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@...nel.org>
Powered by blists - more mailing lists