This adds support to the CMake build files to support building
HarfBuzz-GObject, which is actually a little bit complicated,
as we need to:
-Run glib-mkenums, which is a Python (for newer GLib/GObject) or PERL
(for older, pre 2.53.4, GLib/GObject) script. This matters more for
Visual Studio builds as shebang lines are not supported, so we need to
test-run it with PERL or Python to determine which is the correct
interpretor to use.
-Next, we need to replace strings in the sources that we obtain from
running glib-mkenums. So, the solution here is to use a small utility
CMake script for our purposes here, to maintain maximum compatibility.
-Ensure that things do work in the Visual Studio IDE builds.
Include the fallback sources in the build, and update
src/Makefile.sources so that it can be read by the CMake build files.
Fix a typo in the DirectWrite configure option so that we can properly
enable DirectWrite builds.
Also, when building the utility program, install them as well.
The new unorm2_normalize has been public API since ICU 4.4, while
the old unorm_normalize has been deprecated since ICU 56.
Now, beginning with ICU 60, unorm_normalize will also be annotated
U_DEPRECATED and trigger the compiler -Wdeprecated-declarations warning.
c:\projects\harfbuzz\src\hb-set-private.hh(151): error C2327: 'hb_set_t::page_t::v': is not a type name, static, or enumerator [C:\projects\harfbuzz\build\harfbuzz.vcxproj]
* Clarified wording of syllable/cluster behavior in Uniscribe in final_reordering; changed one other probable typo.
* Additional syllable/cluster swap in comments for final reordering and for initial-reordering matra decomposition.
Instead of searching for freetype using pkg-config, use the FindFreetype
feature of CMake. This allows for better integration with other projects
that make use of CMake.
Fixes https://github.com/behdad/harfbuzz/issues/518
When the font size or variations settings on underlying FT_Face change,
one can call hb_ft_font_changed() and continue using hb_font created using
hb_ft_font_create().
Fixes https://github.com/behdad/harfbuzz/issues/559
New API:
hb_ft_font_changed()