bug#81424: 32.0.50; Build time dependency on TeX
Eli Zaretskii <[email protected]>
| Newsgroups | gmane.emacs.bugs |
|---|---|
| Message-ID | <[email protected]> |
Ping! Can we please make some progress in this issue? Or maybe we should close it? > Cc: "[email protected]" <[email protected]> > From: Vincent Belaïche <[email protected]> > Date: Fri, 17 Jul 2026 12:15:40 +0000 > > Dear Ulrich, > > > texinfo.tex is in Emacs' doc/misc/ directory. > > I am quite surprised by this, and this could break some compilation, probably we should just evolve Makefile.in > files to remove targets needing tex/texindex when these tools are not installed or not working. But this is > another issue. > > > TeX is not what most people would call a system package. [...] > > I fully agree with you that Emacs build should not need tex/texindex installed. You have spotted a problem: > thank you for reporting this. I was just arguing about calling tex "not standard", this is anyway subjective, as I am > a contributer to LaTeX/Texinfo etc. so to me they are quite standard, but you had in mind some OS system > packages. So we were just comparing apples to carrots. > > Now, I have pushed a branch scratch/remove-build-tex-prerequisite with a fix for the problem you have > reported. Please let me know if it solves it and when other Emacs experts confirm that it is ok for them too I will > cherry pick it to master. > > Vincent. > ------------------------------------------------------------------------------ > De : Ulrich Müller <[email protected]> > Envoyé : jeudi 16 juillet 2026 13:36 > À : Vincent Belaïche <[email protected]> > Cc : [email protected] <[email protected]>; [email protected] <[email protected]> > Objet : Re: 32.0.50; Build time dependency on TeX > > >>>>> On Thu, 16 Jul 2026, Vincent Belaïche wrote: > > > To my knowledge texinfo.tex is not bundled with Emacs but is install > > separately as part of a TeX/LaTeX distro > > Hello Vincent, > > texinfo.tex is in Emacs' doc/misc/ directory. > > >> 1. Certainly it must be possible to extract \texinfoversion from > >> texinfo.tex with standard tools (like sed or awk)? > > > It is probably possible to play such tricks, but to do that you need > > kpsewhich texinfo.tex in order to get the same texinfo.tex file full > > path that a tex engine would use, so you need anyway a TeX/LaTeX > > distro. Reading the version directly by processing the file with tex > > does both the file finding with kpathsea lib and parsing it for the > > version. And tex is not less standard than sed or awk, just more > > cumbersome to install (and so I fully understand that some platform > > won't have it). > > TeX is not what most people would call a system package. Gentoo doesn't > include it in its installation stages, and as I said before, we don't > even support it on some of the more exotic architectures. > > Besides, it is unreasonable to require users installing TeX as a > prerequisite to build Emacs, when its sole purpose would be the texinfo > version check in configure. > > >> 2. Probably I am missing something, but why is the test even needed? > >> texinfo.tex is shipped with the Emacs sources so its version > >> should be well defined. > > > The full story is that for a language like French (and for most > > languages indeed), when you need accented letter (as in: Dès Noël, où > > un zéphyr haï me vêt de glaçons würmiens, je dîne d’exquis rôtis de > > bœuf au kir, à l’aÿ d’âge mûr, &cætera) and the document source is in > > UTF-8 then some old version of texinfo may break the compilation > > because the index engine splits two-byte characters into first byte > > and create some non UTF-8 byte sequence. > > > The test in texinfo.m4 just assumes that the default language does not > > use UTF-8 but translations into other languages may do, so when a > > recent tex/texinfo is not detected DOCLANGS is restricted to default. > > The objective is the following : don't let documentation compilation > > break the compilation. > > > Actually it would be possible to write French manuals only with > > ISO-8869-15 (aka latin 9) and avoid multibyte chars, and maybe some > > day some manual in "default" language would not be in English but some > > other language (Chinese ha ha ha) that need multibyte chars, or even > > without becoming sacarstic, you may need some math symbol or some > > emoji in a manual written in US English. > > > Now, I am not sure about your problem, do you mean that w/o TeX > > installed you can no longer build Emacs ? I have not tested but > > doesn't configure just makes some warning and anyway only info (not > > needing TeX distro, this is a Perl program) manual are compiled. > > The problem is that configure tries to execute the "tex" command, which > may not be available on the system. In that case it will output the > error message > > ./configure: line 14288: tex: command not found > > and obviously the version test will not return the desired result. > Also, any "command not found" message in configure output will trigger > a QA warning in Gentoo's package manager (in fact, that's how I > discovered this issue). > > So, please pretty please find a different solution that doesn't require > executing tex in configure. > > Best regards, > Ulrich