Kaydet (Commit) 0a554243 authored tarafından Stephan Bergmann's avatar Stephan Bergmann

external/harfbuzz's libharfbuzz.a links against icuuc library

buovjaga reported on IRC that his build (implicitly --without-system-harfbuzz
--without-system-icu) failed to link e.g. Library_vclplug_gtk3 due to harfbuzz
missing symbols from ICU, like

> /usr/bin/ld: /home/user/libreoffice/workdir/UnpackedTarball/harfbuzz/src/.libs/libharfbuzz.a(libharfbuzz_la-hb-icu.o): in function `hb_icu_unicode_decompose_compatibility(hb_unicode_funcs_t*, unsigned int, unsigned int*, void*)':
> /home/user/libreoffice/workdir/UnpackedTarball/harfbuzz/src/hb-icu.cc:334: undefined reference to `unorm2_getNFKDInstance_62'
[...]

It is not clear to me why Library_vclplug_gtk3 would actually use
libharfbuzz.a's hb_icu_unicode_decompose_compatibility (and for e.g. my builds,
it apparently doesn't), but in general libharfbuzz.a does depend on some symbols
from icuuc, so it is correct to add icuuc to the link when linking against
harfbuzz.  (And "gb_LinkTarget_use_external,...,icuuc" conveniently only adds
libs for linking, and does not add C/C++ include file paths, which would not be
wanted here.)

(<https://gerrit.libreoffice.org/#/c/60882/> "Revert 'Add more more dependencies
to VCL makefiles'" was a false start trying to address the above issue.)

Change-Id: Ic8bcfa2aab185f8a9487d7787b4f22068e7cb481
Reviewed-on: https://gerrit.libreoffice.org/60898
Tested-by: Jenkins
Reviewed-by: 's avatarIlmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Reviewed-by: 's avatarStephan Bergmann <sbergman@redhat.com>
üst 53729626
......@@ -1505,6 +1505,7 @@ $(call gb_LinkTarget_set_include,$(1),\
$$(INCLUDE) \
)
$(call gb_LinkTarget_add_libs,$(1),$(HARFBUZZ_LIBS))
$(call gb_LinkTarget_use_external,$(1),icuuc)
$(call gb_LinkTarget_use_external_project,$(1),harfbuzz)
endef
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment