Add freetype linker flags for cairo to fix wasm build
Not only the freetype headers, but also freetype linker
flags are needed when building using internal cairo.
Adjust accordingly. (The 'freetype' external already
uses the 'freetype_headers' one, so specifying only
'freetype' is enough.)
This fixes the following build error otherwise seen in
a wasm/Emscripten build after
commit ea7166ec8b
Date: Fri Jul 24 18:01:51 2026 +0300
vcl: Don’t link against freetype
It is not used directly anymore.
:
em++: warning: EXPORT_EXCEPTION_HANDLING_HELPERS is deprecated (getExceptionMessage is exported anyway when ASSERTIONS or EXCEPTION_STACK_TRACES is set, which are set by default at -O0. At -O1 or above, you can export it separately by -sEXPORTED_RUNTIME_METHODS=getExceptionMessage,decrementExceptionRefcount.). Please open a bug if you have a continuing need for this setting [-Wdeprecated]
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Outline_Transform
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Outline_Decompose
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Done_Face
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_New_Face
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Set_Transform
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Set_Char_Size
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Get_MM_Var
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Get_Var_Design_Coordinates
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Done_MM_Var
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Get_MM_Var
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Get_Var_Design_Coordinates
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Set_Var_Design_Coordinates
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Done_MM_Var
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Init_FreeType
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Get_Color_Glyph_Paint
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Get_Color_Glyph_Paint
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Get_Color_Glyph_Layer
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Get_Color_Glyph_Layer
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Load_Glyph
wasm-ld: error: /home/michi/development/git/libreoffice-WORKTREE-wasm/workdir/UnpackedTarball/cairo/builddir/src/libcairo-lo.a(cairo-ft-font.c.o): undefined symbol: FT_Get_Color_Glyph_Layer
wasm-ld: error: too many errors emitted, stopping now (use -error-limit=0 to see all errors)
Same also seen in the Tinderbox wasm builds:
https://ci.libreoffice.org/view/tb%20platform%20status/job/lo_daily_tb_linux_wasm/1547/console
Change-Id: Iea8725f9177417cdd3d6e410f693b9ac46d95e78
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/211510
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
This commit is contained in:
@@ -1388,7 +1388,7 @@ endif
|
||||
define gb_LinkTarget__use_cairo
|
||||
$(call gb_LinkTarget_use_package,$(1),cairo)
|
||||
$(call gb_LinkTarget_use_package,$(1),pixman)
|
||||
$(call gb_LinkTarget_use_external,$(1),freetype_headers)
|
||||
$(call gb_LinkTarget_use_external,$(1),freetype)
|
||||
$(call gb_LinkTarget_set_include,$(1),\
|
||||
-I$(gb_UnpackedTarball_workdir)/cairo \
|
||||
-I$(gb_UnpackedTarball_workdir)/cairo/src \
|
||||
|
||||
Reference in New Issue
Block a user