[Libreoffice-commits] core.git: RepositoryExternal.mk

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Sat Sep 22 18:59:39 UTC 2018


 RepositoryExternal.mk |    1 +
 1 file changed, 1 insertion(+)

New commits:
commit 0a5542438320ee81bbf285b11d0996796c8a9830
Author:     Stephan Bergmann <sbergman at redhat.com>
AuthorDate: Sat Sep 22 17:30:36 2018 +0200
Commit:     Stephan Bergmann <sbergman at redhat.com>
CommitDate: Sat Sep 22 20:55:16 2018 +0200

    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: Ilmari Lauhakangas <ilmari.lauhakangas at libreoffice.org>
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>

diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index f172765a84f8..9312d0b7ab2a 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -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


More information about the Libreoffice-commits mailing list