summaryrefslogtreecommitdiff
path: root/solenv
diff options
context:
space:
mode:
authorJan-Marek Glogowski <glogow@fbihome.de>2021-05-21 15:41:15 +0200
committerJan-Marek Glogowski <glogow@fbihome.de>2022-01-19 10:49:40 +0100
commit599cbdb9c2a1184680bb89aa2978e8003eca93d9 (patch)
treebc3f48e787d1bab1d74fb8fd66f4bd80bb69dc99 /solenv
parent9ae9b3b47c24556b2bc9a100b3bde33273018c5e (diff)
WASM more initial bits and pieces
All the small stuff, which is needed for the WASM build, but is not really worth an extra patch. * No soffice.sh script needed for WASM * WASM soffice.bin executable extension is html * Some small additional SAL_LOG output * Default to colibre icon theme * Test for qt5 even without X11 * Remove emconfigure artefacts at the end of the configure run * No oosplash for WASM * Disable the Office IPC thread * Suppress -Wno-enum-conversion for Cairo builds * Fix libnumbertext by using gb_EMSCRIPTEN_CPPFLAGS * Map EMSCRIPTEN to LINUX nls * No extra newlines for missing icon theme images * Print the missing dependency in some gbuild error messages * Copy Qt WASM loader, HTML template and SVG logo for binaries * Especially build the vcldemo for Emscripten Change-Id: I356370c72cc09357411e14d0c00762152877a800 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128584 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
Diffstat (limited to 'solenv')
-rw-r--r--solenv/bin/image-sort.py2
-rw-r--r--solenv/gbuild/LinkTarget.mk8
-rw-r--r--solenv/gbuild/Package.mk2
-rw-r--r--solenv/gbuild/platform/unxgcc.mk3
4 files changed, 12 insertions, 3 deletions
diff --git a/solenv/bin/image-sort.py b/solenv/bin/image-sort.py
index 75b5da6ce0e7..5d248684b4a6 100644
--- a/solenv/bin/image-sort.py
+++ b/solenv/bin/image-sort.py
@@ -30,7 +30,7 @@ def read_icons(fname):
full_path = os.path.join(args.base_path, fname)
if not os.path.exists(full_path):
if not args.quiet:
- print("Skipping non-existent {}\n".format(full_path), file=sys.stderr)
+ print("Skipping non-existent {}".format(full_path), file=sys.stderr)
return images
with open(full_path) as fp:
for line in fp:
diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk
index 3ea562e02b50..22fe3bafc3ff 100644
--- a/solenv/gbuild/LinkTarget.mk
+++ b/solenv/gbuild/LinkTarget.mk
@@ -56,11 +56,16 @@ gb_LinkTarget__get_debugflags= \
$(if $(ENABLE_OPTIMIZED_DEBUG),$(gb_COMPILERDEBUGOPTFLAGS),$(gb_COMPILERNOOPTFLAGS))) \
$(if $(call gb_LinkTarget__symbols_enabled,$(1)),$(gb_DEBUGINFO_FLAGS))
+# T_LDFLAGS is just expanded once. Override the flags here, so that the linker and compiler use the same.
+ifeq (EMSCRIPTEN,$(OS))
+gb_LinkTarget__get_debugldflags=$(call gb_LinkTarget__get_debugflags,$1)
+else
# similar for LDFLAGS, use linker optimization flags in non-debug case,
# but moreover strip debug from libraries for which debuginfo is not wanted
# (some libraries reuse .o files from other libraries, notably unittests)
gb_LinkTarget__get_stripldflags=$(if $(strip $(CFLAGS)$(CXXFLAGS)$(OBJCFLAGS)$(OBJCXXFLAGS)$(LDFLAGS)),,$(gb_LINKERSTRIPDEBUGFLAGS))
gb_LinkTarget__get_debugldflags=$(if $(call gb_LinkTarget__symbols_enabled,$(1)),$(gb_LINKER_DEBUGINFO_FLAGS),$(gb_LINKEROPTFLAGS) $(call gb_LinkTarget__get_stripldflags,$(1)))
+endif
# generic cflags/cxxflags to use (optimization flags, debug flags)
# user supplied CFLAGS/CXXFLAGS override default debug/optimization flags
@@ -1925,7 +1930,7 @@ $(2) : $(call gb_LinkTarget_get_target,$(1))
touch -r $$< $$@; \
else \
rm -f $$<; \
- echo "ERROR: aux-target missing, library deleted, please try running make again"; \
+ echo "ERROR: aux-target $$@ missing, library deleted, please try running make again"; \
false; \
fi
@@ -2096,6 +2101,7 @@ endef
define gb_LinkTarget_use_package
$(call gb_LinkTarget_get_headers_target,$(1)) :| \
$(call gb_Package_get_target,$(strip $(2)))
+$(call gb_Package_get_target,$(strip $(2))): RDEPENDS += $(call gb_LinkTarget__get_workdir_linktargetname,$(1))
endef
diff --git a/solenv/gbuild/Package.mk b/solenv/gbuild/Package.mk
index e08ff07e1ba9..9c90322cfcdc 100644
--- a/solenv/gbuild/Package.mk
+++ b/solenv/gbuild/Package.mk
@@ -80,7 +80,7 @@ $(call gb_Package_get_preparation_target,%) :
$(call gb_Package_get_target,%) :
$(call gb_Output_announce,$*,$(true),PKG,2)
$(call gb_Trace_StartRange,$*,PKG)
- $(if $(PACKAGE_DEFINED),,$(call gb_Output_error,Something depends on package $* which does not exist.))
+ $(if $(PACKAGE_DEFINED),,$(call gb_Output_error,$(RDEPENDS) depend(s) on package $* which does not exist.))
rm -f $@ && \
mv $(call gb_var2file,$@.tmp,100,$(sort $(FILES))) $@
$(call gb_Trace_EndRange,$*,PKG)
diff --git a/solenv/gbuild/platform/unxgcc.mk b/solenv/gbuild/platform/unxgcc.mk
index e24aaa4e1fe6..de3c2f8cc95a 100644
--- a/solenv/gbuild/platform/unxgcc.mk
+++ b/solenv/gbuild/platform/unxgcc.mk
@@ -172,6 +172,9 @@ $(if $(filter Library,$(TARGETTYPE)), $(call gb_Helper_abbreviate_dirs,\
| cut -d' ' -f1-2 >> $(WORKDIR)/LinkTarget/$(2).exports.tmp && \
$(call gb_Helper_replace_if_different_and_touch,$(WORKDIR)/LinkTarget/$(2).exports.tmp, \
$(WORKDIR)/LinkTarget/$(2).exports,$(1))))
+$(if $(and $(filter CppunitTest Executable,$(TARGETTYPE)),$(filter EMSCRIPTEN,$(OS)),$(filter TRUE,$(ENABLE_QT5))), \
+ cp $(QT5_PLATFORMS_SRCDIR)/qtlogo.svg $(QT5_PLATFORMS_SRCDIR)/qtloader.js $(dir $(1)) ; \
+ sed -e 's/@APPNAME@/$(subst $(gb_Executable_EXT),,$(notdir $(1)))/' $(QT5_PLATFORMS_SRCDIR)/wasm_shell.html > $(dir $(1))qt_$(notdir $(1)))
endef
define gb_LinkTarget__command_staticlink