Building FontConfig support with Cairo, HarfBuzz and FreeType as subprojects
has been simplified in the build files, so let people know that options for
building these will no longer need to be specified for configuring the build.
build: Sort out HarfBuzz and FreeType build options
...when one or more of them is being built as subproject(s). This will:
* Ensure that FreeType support is enabled for HarfBuzz if building PangoFt2
* Ensure that FreeType does not build with HarfBuzz support if HarfBuzz is
also built as a subproject, so that things will build and link properly.
As we are using more of DirectWrite in PangoWin32, it makes sense for us to use
hb-directwrite also when we are (unlikely) not enabling Cairo support for the
build, to reduce differences that may arise when we use GDI interop in this
process.
So, from this point, we use hb-gdi (or its raw form) only when we are enabling
Cairo support and do not have DirectWrite enabled in the Cairo build, or
HarfBuzz is built without DirectWrite support.
build: Clean up Cairo dependency search and checks
Cairo 1.17.x is now built on Visual Studio using Meson, meaning that pkg-config
files are always around, plus 1.17.x contained many improvements, fixes and
features for Windows, so let's just limit looking for Cairo using pkg-config or
subprojects.
If we are building PangoFt2, also always check that Cairo contains FreeType and
FontConfig support (cairo-ft may or may not contain FontConfig support), or
if building Cairo as a subproject, build it with FreeType and FontConfig
enabled.
Consequently, this will simplify our checks on features that are enabled in
Cairo.