summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2019-07-15 11:38:59 +0000
committerMatthias Clasen <mclasen@redhat.com>2019-07-15 11:38:59 +0000
commitdde5d513213c7f778f3bc762bb098f2fee41fe17 (patch)
tree86e829684fa4a4e3df78894fdb6da5358fce7a0a
parent130eb6f16d35ccd36d2b5759ba6aa3decb014162 (diff)
parent95c645f521654d21c409be1786bcc3d25a56e56e (diff)
downloadpango-dde5d513213c7f778f3bc762bb098f2fee41fe17.tar.gz
Merge branch 'use-hb-fallback-only-when-needed' into 'master'
build: Only use fallback dependency for HarfBuzz when needed See merge request GNOME/pango!87
-rw-r--r--meson.build23
1 files changed, 16 insertions, 7 deletions
diff --git a/meson.build b/meson.build
index 73b5da2b..13d9bbff 100644
--- a/meson.build
+++ b/meson.build
@@ -229,23 +229,32 @@ harfbuzz_pc=''
freetype2_pc=''
fontconfig_pc=''
harfbuzz_lib=''
-freetype2_lib=''
fontconfig_lib=''
-harfbuzz_dep = dependency('harfbuzz', version: harfbuzz_req_version, required: false,
- fallback: ['harfbuzz', 'libharfbuzz_dep'])
+harfbuzz_dep = dependency('harfbuzz', version: harfbuzz_req_version, required: false)
if harfbuzz_dep.found()
harfbuzz_pc = 'harfbuzz'
else
if cc.get_id() == 'msvc' and cc.has_header('hb.h')
# The CMake build files for HarfBuzz (which is used for MSVC builds) do not
- # generate pkg-config files, so look for harfbuzz.lib
- harfbuzz_dep = cc.find_library('harfbuzz', required: false)
- if harfbuzz_dep.found()
- harfbuzz_lib = '-lharfbuzz'
+ # generate pkg-config files, so look for harfbuzz.lib. Ensure that we
+ # we look for HarfBuzz 2.0.0 or later.
+ harfbuzz_lib = cc.find_library('harfbuzz', required: false)
+ if harfbuzz_lib.found()
+ if cc.has_function('hb_ot_tags_from_script_and_language', dependencies: harfbuzz_lib)
+ harfbuzz_dep = harfbuzz_lib
+ endif
endif
endif
endif
+
+# Remove when Meson acquires ability to declare deps declaratively, or
+# when finding dependencies via CMake files is fixed.
+if not harfbuzz_dep.found()
+ harfbuzz_dep = dependency('harfbuzz', version: harfbuzz_req_version,
+ fallback: ['harfbuzz', 'libharfbuzz_dep'])
+endif
+
if harfbuzz_dep.found()
pango_deps += harfbuzz_dep
endif