[texworks] Another TeXworks mac build (with a buildsystem!)
chuck at sharpsteen.net
Fri May 13 06:35:50 CEST 2011
Allright, I've managed to make a build of TeXworks.app that passes the
poppler-data.pdf test when moved to another system. This requires
applying `lib-patches/poppler-qt4-globalparams.patch` to the Poppler
source before building it. Homebrew has a neat feature that allows it
to install using arbitrary files on the local filesystem. That means I
could add a file to the TeXworks source that apackager could use to
install Poppler thusly:
brew install --with-qt4 --enable-xpdf-headers cmake/packaging/mac/poppler.rb
And the patches in `lib-patches` would be applied automatically.
However, there is a choice to be made. Applying
`poppler-qt4-globalparams.patch` makes pretty minimal changes which
means that the custom poppler.rb file is barely different than the
poppler.rb shipped with Homebrew. This means that it would be easy to
keep a custom version of poppler.rb up to date without much knowledge
of the inner working of Homebrew.
However, applying `poppler-mac-font-handling.patch` is much more
involved. This requires making poppler.rb re-run autoconf, which
requires `gettext` to be installed for some m4 macros and some changes
to be made to the configure args. This involves some major changes to
poppler.rb which increases the maintenance burden involved in keeping
it easy to install a custom version of Poppler for build Mac packages.
The size difference between TeXworks.app with libfonconfig.dylib and
without fontconfig was 1MB. I saw mention that including fontconfig
causes unwanted files to show up in user Fonts directories, but I
didn't notice any changes to /Library/Fonts or ~/Library/Fonts on my
test machine---perhaps this is a side effect of using a fontconfig
library other than the one provided by Apple in /usr/X11/lib.
So, I guess the question is---how badly do we want to get rid of
Fontconfig? Leaving it in is starting to look like the easiest course
of action on OS X.
More information about the texworks