[meson] Fix handling of HarfBuzz library.
* meson.build (harfbuzz_dep): Do not fall back to HarfBuzz by default. Otherwise it causes a dependency cycle: cairo => fontconfig => freetype2 => harfbuzz => cairo Meson will still fall back to HarfBuzz subprojects if the `harfbuzz` option is set to `enabled` instead of `auto` and a `subprojects/harfbuzz.wrap` file is present. In that case it is the responsibility of the main project to set the proper options on each subproject to break the dependency cycle. Fixes: #1028.
This commit is contained in:
parent
2c40559609
commit
3dbdb78a25
19
ChangeLog
19
ChangeLog
@ -1,3 +1,22 @@
|
||||
2021-02-09 Xavier Claessens <xavier.claessens@collabora.com>
|
||||
|
||||
[meson] Fix handling of HarfBuzz library.
|
||||
|
||||
* meson.build (harfbuzz_dep): Do not fall back to HarfBuzz by
|
||||
default.
|
||||
|
||||
Otherwise it causes a dependency cycle:
|
||||
|
||||
cairo => fontconfig => freetype2 => harfbuzz => cairo
|
||||
|
||||
Meson will still fall back to HarfBuzz subprojects if the `harfbuzz`
|
||||
option is set to `enabled` instead of `auto` and a
|
||||
`subprojects/harfbuzz.wrap` file is present. In that case it is the
|
||||
responsibility of the main project to set the proper options on each
|
||||
subproject to break the dependency cycle.
|
||||
|
||||
Fixes: #1028.
|
||||
|
||||
2021-02-09 Xavier Claessens <xavier.claessens@collabora.com>
|
||||
|
||||
[meson] Fix dependency lookup and generate `ftconfig.h`.
|
||||
|
@ -260,10 +260,7 @@ endif
|
||||
# Harfbuzz support
|
||||
harfbuzz_dep = dependency('harfbuzz',
|
||||
version: '>= 2.0.0',
|
||||
required: get_option('harfbuzz'),
|
||||
fallback: ['harfbuzz', 'libharfbuzz_dep'],
|
||||
default_options : ['freetype=disabled',
|
||||
'fontconfig=disabled'])
|
||||
required: get_option('harfbuzz'))
|
||||
if harfbuzz_dep.found()
|
||||
ftoption_command += ['--enable=FT_CONFIG_OPTION_USE_HARFBUZZ']
|
||||
ft2_deps += [harfbuzz_dep]
|
||||
|
Loading…
Reference in New Issue
Block a user