shithub: freetype+ttf2subf

Download patch

ref: 3dbdb78a25850b8a7fe86ccc17987c9eacac1470
parent: 2c40559609c102a934c1f0c5ee7ccb790fc887dc
author: Xavier Claessens <xavier.claessens@collabora.com>
date: Wed Feb 10 04:25:42 EST 2021

[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.

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,24 @@
 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`.
 
 	- zlib: If not found on the system, meson can build it as a
--- a/meson.build
+++ b/meson.build
@@ -260,10 +260,7 @@
 # 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]