Add XeTeX for document building
Prefer XeTeX than pdfTeX.
Discussion:
http://lists.gnu.org/archive/html/lilypond-devel/2015-12/msg00136.html
http://lists.gnu.org/archive/html/lilypond-devel/2016-01/msg00041.html
*** This patch requires Issue 4735. ***
https://sourceforge.net/p/testlilyissues/issues/4735/
Q. Did you do "./autogen.sh --noconf" ?
A. Yes. I build and test in a separate directory (out of tree build).
Q. Would you show me "config.log" ?
Of course ... hold on ...
and now I think I know why it didn't work.
You see, the (my) 'test process' is basically this:
autogen
configure
make
make test-baseline
apply patch
make
make check
make doc
NB. there are a few more switches (disable optimise and noconfiguire) and I do a make clean after applying the patch but this is the outline:
So I 'assume' that after I apply this patch, and run make doc then I am still going to be using PfdTex.
Hosoda-san.
https://drive.google.com/open?id=0B9nZ5LHV2Ds6QWprSURPRmRBeFU
For PDFs (English Only) and the configure output is attached to this tracker.
Thank you for your PDFs.
They are all generated by XeTeX.
I'm putting this back on review. This seems to be a relatively fundamental change (if not for users, for builders of LP documentation) and also seems to indicate that changes to the Contributor Guide would be needed (i.e. listing the Doc Build reqs etc.).
Patch on countdown for Feb 27th.
@Hosada-san, if this goes through do we need to change what the requirements are for building LilyPond?
XeTeX and XeLaTeX will be required.
XeTeX (and XeLaTeX) are contained by "texlive-xetex" package.
The package name of Debian and Ubuntu are "texlive-xetex".
Package name of Fedora is also seems the same.
On the other hand, even if XeTeX does not exist, pdfTeX is used.
(pdfTeX is included in the current requirements.)
This means that it may not be necessary to change the requirements.
However, if you use pdfTeX, some glyphs are missed.
http://lists.gnu.org/archive/html/lilypond-devel/2015-12/msg00136.html
Such issues do not occur with XeTeX.
Patch counted down - please push.
I've pushed to staging.
Issue 4737: Add XeTeX for document building
author Masamichi Hosoda trueroad@trueroad.jp
Sat, 9 Jan 2016 18:12:41 +0000 (03:12 +0900)
committer Masamichi Hosoda trueroad@trueroad.jp
Sat, 27 Feb 2016 14:22:17 +0000 (23:22 +0900)
commit 424be60367b0546e4e57307dccf1ba0d9488044c
This patch breaks GUB. I've (I think) fixed it with
sudo apt-get install texlive-xetex
but I think Xetex should be added to the GUB environment requirements?
It should be added to the GUB requirements but as far as I remember this patch is not supposed to break GUB regardless: it should detect the absence of XeTeX at configuration time and fall back to PDFTeX. Some people might need the fallback, so we should find out why it does not work.
I've found the reson if I understand correctly.
Ubuntu's "texlive" package depends on "texlive-latex-base" package.
"texlive-latex-base" package depends on "texlive-binaries" package.
"texlive-binaries" package has /usr/bin/xetex.
So if you install "texlive" package, your system has /usr/bin/xetex.
However, it does not contain XeTeX required files.
They are in "texlive-xetex" package.
"texlive-xetex" package is not depended on by "texlive" package.
In other words, /usr/bin/xetex exists but its required files do not exist.
That seems like a rather awful design of the TeXlive packaging. But we should try coping with it. So configure would have to test for a working XeTeX binary rather than an existing one, correct?
/usr/bin/xelatex is contained only in "texlive-xetex".
So if /usr/bin/xelatex exists, using XeTeX is one of the solution I think.
I've created Issue 4782 for fixing XeTeX checking in configure script.
https://sourceforge.net/p/testlilyissues/issues/4782/
If I understand correctly, current GUB does not contain texlive.
It have been commented out. So it does not work.
https://github.com/gperciva/gub/blob/master/gub/specs/lilypond.py#L49
https://github.com/gperciva/gub/blob/master/gub/specs/lilypond-doc.py#L14
In other words, it does not contain pdfTeX.
GUB uses system's pdfTeX, XeTeX etc.
That seems correct. Unfortunately the logfile showing the exact arror was over-written by my new build, but I remember it saying that it could not find files in the XeTeX cirectory.
Should GUB's configuration be updated to include XeTeX?
It's very difficult.
GUB does not contain any TeX systems.