Relevant improvements:
- Fix a violation of FreeType API which caused issues
in newer FreeType version (currently only on MS Windows)
- Fix a rare and minor memory leak
- Higher quality outline blending
- Significantly faster hash-function (wyhash)
- Some RTL- and BiDi-compatibility fixes
- Compatibility fix for empty clips
- Support for non-Unicode fonts, which depends on iconv
(with emscripten’s built-in iconv probably only SHIFT-JIS)
HarfBuzz commit 711c241f6c7e18c5403602375a733af74df76f83 removed the
previously used mutex fallback. However, since we only are compiling
the single threaded variants anyway, we don't need a mutex and can and
now must set the flags to disable it.
Harfbuzz also switched the primary build system to Meson, but since
the autotools system is still present and continues to work for now,
we can postpone changing our setup to use HarfBuzz's Meson system.
Currently there's no drop-in 'emmeson' utility, so we'd need to
write an emscripten-cross-file for Meson ourselves.
Everything is now using the latests upstream release, except libass and
harfbuzz whose bump is postponed to the next commit.
- the libass-submodule uses current master, since we know its safe
- FreeType remote changed to match upstreams new primary server
- FreeType incorporated BSL-1 licensed code from dlg;
this also requires a recursive submodule init in our CI now
- FreeType now also detects and utilises pthread when available,
which we need to surpress