I am trying to create a ptxdist package for Harfbuzz
(https://www.freedesktop.org/wiki/Software/HarfBuzz/) but I have found
that Harfbuzz has a circular dependency with freetype: FreeType can
use Harfbuzz to improve hinting, but Hardbuzz needs FreeType to build.

Typical advice on how to handle this is: First build freetype without
Harfbuzz support, then build and install Harfbuzz, then rebuild and
reinstall Freetype with Harfbuzz support.

"Install FreeType, then HarfBuzz, then after HarfBuzz is installed,
rebuild and reinstall FreeType".

My question is, how can this handled in ptxdist?

I am considering something like the following:

1. A Freetype_bootstrap package that will build FT without Harfbuzz,
with an empty targetinstall stage. This is just so that Harfbuzz can
2. A Harfbuzz package that requires Freetype_bootstrap, and does the
actual targetinstall for Harfbuzz
3. Modify the Freetype package to add a "ENABLE_HARFBUZZ" option. If
this is enabled, then Freetype also SELECTS Harfbuzz.

Does this sound reasonable?

Are there other cases like this in ptxdist ?

Guillermo Rodriguez Garcia

ptxdist mailing list

Reply via email to