Meson: dependency cycle
When building gtk4 on Windows with freetype2 master, I get this error: subprojects\harfbuzz\meson.build:150:6: ERROR: Recursive include of subprojects: cairo => fontconfig => freetype2 => harfbuzz => cairo.
.
It works when using freetype2 meson port from centricular (the one gtk currently uses).
The difference is in centricular's meson port the harfbuzz
option is disabled by default, but in freetype2 upstream that option is auto
by default which cause freetype to fallback to harfbuzz subproject and thus leading to a dependency cycle.
I personally have no clue at all which combination is best between cairo/fontconfig/freetype2/harfbuzz, they all depend on each other...
I think the proper fix here is to simply remove the fallback
argument of dependency()
, that would cause Meson to use the fallback only if harfbuzz option is set to enabled
and not when set to auto
.
@tpm what do you think?