Werner Lemberg pushed to branch master at FreeType / FreeType
Commits:
-
3dbdb78a
by Xavier Claessens at 2021-02-10T18:10:59+01:00
-
cc90307d
by Xavier Claessens at 2021-02-10T18:14:47+01:00
2 changed files:
Changes:
1 |
+2021-02-09 Xavier Claessens <xavier.claessens@collabora.com>
|
|
2 |
+ |
|
3 |
+ * meson.build: s/freetype2_dep/freetype_dep/.
|
|
4 |
+ |
|
5 |
+ Many projects (e.g., fontconfig, cairo) hardcode the `freetype_dep`
|
|
6 |
+ variable name to use FreeType as subproject because that was the
|
|
7 |
+ variable name in Centricular's Meson port of FreeType. While they
|
|
8 |
+ should stop hardcoding that variable name, it does not cost us
|
|
9 |
+ anything to keep using that name to ease transition.
|
|
10 |
+ |
|
11 |
+2021-02-09 Xavier Claessens <xavier.claessens@collabora.com>
|
|
12 |
+ |
|
13 |
+ [meson] Fix handling of HarfBuzz library.
|
|
14 |
+ |
|
15 |
+ * meson.build (harfbuzz_dep): Do not fall back to HarfBuzz by
|
|
16 |
+ default.
|
|
17 |
+ |
|
18 |
+ Otherwise it causes a dependency cycle:
|
|
19 |
+ |
|
20 |
+ cairo => fontconfig => freetype2 => harfbuzz => cairo
|
|
21 |
+ |
|
22 |
+ Meson will still fall back to HarfBuzz subprojects if the `harfbuzz`
|
|
23 |
+ option is set to `enabled` instead of `auto` and a
|
|
24 |
+ `subprojects/harfbuzz.wrap` file is present. In that case it is the
|
|
25 |
+ responsibility of the main project to set the proper options on each
|
|
26 |
+ subproject to break the dependency cycle.
|
|
27 |
+ |
|
28 |
+ Fixes: #1028.
|
|
29 |
+ |
|
1 | 30 |
2021-02-09 Xavier Claessens <xavier.claessens@collabora.com>
|
2 | 31 |
|
3 | 32 |
[meson] Fix dependency lookup and generate `ftconfig.h`.
|
... | ... | @@ -260,10 +260,7 @@ endif |
260 | 260 |
# Harfbuzz support
|
261 | 261 |
harfbuzz_dep = dependency('harfbuzz',
|
262 | 262 |
version: '>= 2.0.0',
|
263 |
- required: get_option('harfbuzz'),
|
|
264 |
- fallback: ['harfbuzz', 'libharfbuzz_dep'],
|
|
265 |
- default_options : ['freetype=disabled',
|
|
266 |
- 'fontconfig=disabled'])
|
|
263 |
+ required: get_option('harfbuzz'))
|
|
267 | 264 |
if harfbuzz_dep.found()
|
268 | 265 |
ftoption_command += ['--enable=FT_CONFIG_OPTION_USE_HARFBUZZ']
|
269 | 266 |
ft2_deps += [harfbuzz_dep]
|
... | ... | @@ -330,11 +327,11 @@ ft2_lib = library('freetype', |
330 | 327 |
|
331 | 328 |
|
332 | 329 |
# To be used by other projects including this one through subproject().
|
333 |
-freetype2_dep = declare_dependency(
|
|
330 |
+freetype_dep = declare_dependency(
|
|
334 | 331 |
include_directories: ft2_includes,
|
335 | 332 |
link_with: ft2_lib,
|
336 | 333 |
version: ft2_pkgconfig_version)
|
337 |
-meson.override_dependency('freetype2', freetype2_dep)
|
|
334 |
+meson.override_dependency('freetype2', freetype_dep)
|
|
338 | 335 |
|
339 | 336 |
|
340 | 337 |
# NOTE: Using both `install_dir` and `subdir` doesn't seem to work below,
|