RepositoryExternal.mk | 2 +- external/cairo/ExternalProject_cairo.mk | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-)
New commits: commit 23366f93bc2484ef1b8dc3650d5d7eb4fd7f52e2 Author: Stephan Bergmann <[email protected]> AuthorDate: Mon Sep 29 13:27:45 2025 +0200 Commit: Stephan Bergmann <[email protected]> CommitDate: Mon Sep 29 16:20:17 2025 +0200 external/cairo: Fix Emscripten build ...after 2b515d095d7251db98241e6b69f9b110e64e9aea "upgrade pixman and cairo". For one, building ExternalProject_cairo failed with > Run-time dependency fontconfig found: NO (tried pkgconfig and cmake) > Not looking for a fallback subproject for the dependency fontconfig because: > Use of fallback dependencies is disabled. > > meson.build:271:17: ERROR: Dependency 'fontconfig' is required but not found. and > Called: `/usr/bin/pkg-config --cflags fontconfig` -> 1 > stderr: > Package libxml-2.0 was not found in the pkg-config search path. > Perhaps you should add the directory containing `libxml-2.0.pc' > to the PKG_CONFIG_PATH environment variable > Package 'libxml-2.0', required by 'fontconfig', not found in workdir/UnpackedTarball/cairo/builddir/meson-logs/meson-log.txt, because workdir/UnpackedTarball/fontconfig/fontconfig.pc contains > Requires.private: libxml-2.0 >= 2.6 so add workdir/UnpackedTarball/libxml2/libxml-2.0.pc to PKG_CONFIG_PATH (TODO: even though its contents point to /usr/local? but that seems good enough to get the build going). For another, > [LNK] Executable/soffice.js: wait for lock at Mon Sep 29 10:23:58 AM UTC 2025 > [LNK] Executable/soffice.js: got link lock at Mon Sep 29 10:24:03 AM UTC 2025 > em++: error: /home/sberg/lo-wasm-upstream/core/workdir/UnpackedTarball/pixman/pixman/.libs/libpixman-1.a: No such file or directory ("/home/sberg/lo-wasm-upstream/core/workdir/UnpackedTarball/pixman/pixman/.libs/libpixman-1.a" was expected to be an input file, based on the commandline arguments provided) > make[1]: *** [/home/sberg/lo-wasm-upstream/core/desktop/Executable_soffice_bin.mk:10: /home/sberg/lo-wasm-upstream/core/instdir/program/soffice.js] Error 1 failed to link, so adapt the path in RepositoryExternal.mk. Change-Id: I925f4fbcaabd58b0de074575293ba9b5366f2cf6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191623 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <[email protected]> diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk index c2165fc8e7ed..a86c95b8efce 100644 --- a/RepositoryExternal.mk +++ b/RepositoryExternal.mk @@ -1222,7 +1222,7 @@ $(call gb_LinkTarget_set_include,$(1),\ $(call gb_LinkTarget_add_libs,$(1),\ $(if $(filter EMSCRIPTEN,$(OS)), \ $(gb_UnpackedTarball_workdir)/cairo/builddir/src/libcairo-lo.a \ - $(gb_UnpackedTarball_workdir)/pixman/pixman/.libs/libpixman-1.a, \ + $(gb_UnpackedTarball_workdir)/pixman/builddir/pixman/libpixman-1.a, \ -L$(gb_UnpackedTarball_workdir)/cairo/builddir/src -lcairo-lo \ -L$(gb_UnpackedTarball_workdir)/pixman/pixman/.libs -lpixman-1) \ ) diff --git a/external/cairo/ExternalProject_cairo.mk b/external/cairo/ExternalProject_cairo.mk index 1877295f68c4..a1053d29cbd9 100644 --- a/external/cairo/ExternalProject_cairo.mk +++ b/external/cairo/ExternalProject_cairo.mk @@ -21,6 +21,7 @@ $(eval $(call gb_ExternalProject_use_externals,cairo,\ libpng \ meson \ zlib \ + $(if $(filter EMSCRIPTEN,$(OS)),libxml2) \ )) # We cannot use environment vars inside the meson cross-build file, @@ -92,6 +93,7 @@ $(call gb_ExternalProject_get_state_target,cairo,build) : ) \ $(if $(SYSTEM_ZLIB),,PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:$(gb_UnpackedTarball_workdir)/zlib") \ $(if $(SYSTEM_LIBPNG),,PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:$(gb_UnpackedTarball_workdir)/libpng") \ + $(if $(filter EMSCRIPTEN,$(OS)),PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:$(gb_UnpackedTarball_workdir)/libxml2") \ $(if $(filter -fsanitize=undefined,$(CC)),CC='$(CC) -fno-sanitize=function') \ $(MESON) setup --wrap-mode nofallback builddir \ $(if $(debug),-Dstrip=false,-Dstrip=true) \
