[Libreoffice-commits] core.git: Branch 'feature/wasm' - 1389 commits - accessibility/inc accessibility/Library_acc.mk accessibility/README accessibility/README.md accessibility/source android/.gitignore android/README android/README.md android/source animations/README animations/README.md animations/source apple_remote/README apple_remote/README.md autogen.sh avmedia/README avmedia/README.md avmedia/source basctl/inc basctl/README basctl/README.md basctl/source basegfx/README basegfx/README.md basegfx/source basic/CppunitTest_basic_macros.mk basic/inc basic/qa basic/README basic/README.md basic/source bean/com bean/README bean/README.md binaryurp/README binaryurp/README.md bin/check-missing-unittests.py bin/README bin/README.md bin/run bin/update_pch bin/update_pch.sh bridges/Library_cpp_uno.mk bridges/Module_bridges.mk bridges/README bridges/README.md canvas/Module_canvas.mk canvas/README canvas/README.md canvas/source chart2/inc chart2/Module_chart2.mk chart2/qa chart2/README chart2/README.md c hart2/source chart2/uiconfig cli_ure/Module_cli_ure.mk cli_ure/README cli_ure/README.md codemaker/README codemaker/README.md comphelper/inc comphelper/README comphelper/README.md comphelper/source comphelper/util compilerplugins/clang compilerplugins/README compilerplugins/README.md config_host/config_features.h.in config_host/config_qrcodegen.h.in config_host/config_zxing.h.in config_host.mk.in config_host/README config_host/README.md configmgr/inc configmgr/README configmgr/README.md configmgr/source configure.ac connectivity/inc connectivity/qa connectivity/README connectivity/README.md connectivity/source connectivity/workben cppcanvas/inc cppcanvas/qa cppcanvas/README cppcanvas/README.md cppcanvas/source cppuhelper/inc cppuhelper/README cppuhelper/README.md cppuhelper/source cppu/Module_cppu.mk cppu/README cppu/README.md cppu/source cpputools/Module_cpputools.mk cpputools/README cpputools/README.md cpputools/source cui/inc cui/Library_cui.mk cui/README cui/README.md cui/source cui/uiconfig cui/UIConfig_cui.mk dbaccess/inc dbaccess/Module_dbaccess.mk dbaccess/qa dbaccess/README dbaccess/README.md dbaccess/source dbaccess/uiconfig dbaccess/util desktop/Executable_oosplash.mk desktop/inc desktop/Library_sofficeapp.mk desktop/Module_desktop.mk desktop/qa desktop/README desktop/README.md desktop/source desktop/win32 dictionaries distro-configs/LibreOfficeFlatpak.conf distro-configs/LibreOfficeiOS.conf distro-configs/LibreOfficeiOS_Sim.conf distro-configs/LibreOfficeOssFuzz.conf distro-configs/README distro-configs/README.md download.lst drawinglayer/inc drawinglayer/README drawinglayer/README.md drawinglayer/source editeng/inc editeng/README editeng/README.md editeng/source embeddedobj/README embeddedobj/README.md embeddedobj/source embedserv/README embedserv/README.md emfio/inc emfio/qa emfio/README emfio/README.md emfio/source eventattacher/README eventattacher/README.md extensions/Module_extensions.mk extensions/README extensions/README.md extensions/source extensions/test external/apache-commons external/apr external/boost external/breakpad external/cairo external/coinmp external/cppunit external/curl external/epm external/epoxy external/expat external/firebird external/fontconfig external/freetype external/gpgmepp external/harfbuzz external/hunspell external/hyphen external/icu external/jfreereport external/lcms2 external/libabw external/libassuan external/libatomic_ops external/libcdr external/libebook external/libeot external/libepubgen external/libetonyek external/libexttextcat external/libffi external/libfreehand external/libgpg-error external/libjpeg-turbo external/liblangtag external/libmspub external/libmwaw external/libnumbertext external/libodfgen external/liborcus external/libpagemaker external/libpng external/libqxp external/librevenge external/libstaroffice external/libvisio external/libwpd external/libwpg external/libwps external/libxml2 external/libxslt external/libzmf external/Module_external.mk external/mythes extern al/neon external/nss external/openldap external/openssl external/owncloud-android-lib external/pdfium external/poppler external/postgresql external/python3 external/qrcodegen external/README external/README.md external/redland external/serf external/skia external/xmlsec external/zxing extras/README extras/README.md extras/source filter/inc filter/README filter/README.md filter/source forms/inc forms/README forms/README.md forms/source formula/inc formula/README formula/README.md formula/source fpicker/inc fpicker/README fpicker/README.md fpicker/source framework/inc framework/README framework/README.md framework/source framework/util .gitignore helpcontent2 hwpfilter/README hwpfilter/README.md hwpfilter/source i18nlangtag/README i18nlangtag/README.md i18nlangtag/source i18npool/Library_i18npool.mk i18npool/README i18npool/README.md i18npool/source i18nutil/README i18nutil/README.md i18nutil/source icon-themes/breeze icon-themes/breeze_dark icon-themes/breeze_dark_svg icon-themes/bre eze_svg icon-themes/colibre icon-themes/colibre_svg icon-themes/elementary icon-themes/elementary_svg icon-themes/karasa_jaga icon-themes/karasa_jaga_svg icon-themes/README icon-themes/README.md icon-themes/sifr icon-themes/sifr_dark icon-themes/sifr_dark_svg icon-themes/sifr_svg icon-themes/sukapura icon-themes/sukapura_svg idlc/Module_idlc.mk idlc/README idlc/README.md idl/inc idl/README idl/README.md idl/source include/avmedia include/basegfx include/basic include/codemaker include/comphelper include/cppuhelper include/dbaccess include/editeng include/filter include/formula include/framework include/i18nlangtag include/IwyuFilter_include.yaml include/o3tl include/oox include/osl include/rtl include/sal include/sax include/sfx2 include/svl include/svtools include/svx include/systools include/test include/toolkit include/tools include/unotest include/unotools include/vcl include/xmloff install_deps.sh instsetoo_native/README instsetoo_native/README.md io/README io/README.md ios/Cus tomTarget_iOS_setup.mk io/source io/test javaunohelper/README javaunohelper/README.md jurt/README jurt/README.md jvmaccess/README jvmaccess/README.md jvmfwk/README jvmfwk/README.md l10ntools/README l10ntools/README.md librelogo/README librelogo/README.md libreofficekit/qa libreofficekit/README libreofficekit/README.md libreofficekit/source lingucomponent/Module_lingucomponent.mk lingucomponent/README lingucomponent/README.md lingucomponent/source linguistic/README linguistic/README.md linguistic/source logerrit lotuswordpro/inc lotuswordpro/README lotuswordpro/README.md lotuswordpro/source m4/README m4/README.md Makefile.fetch Makefile.gbuild Makefile.in nlpsolver/README nlpsolver/README.md o3tl/README o3tl/README.md odk/CustomTarget_check.mk odk/Module_odk.mk odk/README odk/README.md offapi/com offapi/README offapi/README.md offapi/type_reference officecfg/README officecfg/README.md officecfg/registry onlineupdate/README onlineupdate/README.md oovbaapi/ooo oovbaapi/README oovbaapi/ README.md oox/inc oox/qa oox/README oox/README.md oox/source opencl/README opencl/README.md osx/README osx/README.md package/inc package/README package/README.md package/source pch/README pch/README.md postprocess/Rdb_services.mk postprocess/README postprocess/README.md pyuno/README pyuno/README.md pyuno/source qadevOOo/README qadevOOo/README.md qadevOOo/runner readlicense_oo/license readlicense_oo/README readlicense_oo/README.md README.md README.wasm registry/Module_registry.mk registry/README registry/README.md remotebridges/README remotebridges/README.md reportbuilder/Jar_reportbuilder.mk reportbuilder/java reportbuilder/README reportbuilder/README.md reportdesign/inc reportdesign/README reportdesign/README.md reportdesign/source RepositoryExternal.mk RepositoryFixes.mk Repository.mk RepositoryModule_host.mk ridljar/README ridljar/README.md salhelper/README salhelper/README.md sal/Library_cppunitmain.mk sal/Library_sal.mk sal/Library_sal_textenc.mk sal/Module_sal.mk sal/osl sal/q a sal/README sal/README.md sal/rtl sax/README sax/README.md sax/source scaddins/inc scaddins/README scaddins/README.md scaddins/source sccomp/inc sccomp/Module_sccomp.mk sccomp/README sccomp/README.md sccomp/source schema/libreoffice schema/odf1.3 schema/README schema/README.md sc/inc sc/Library_scui.mk sc/Module_sc.mk scp2/README scp2/README.md scp2/source sc/qa sc/README sc/README.md scripting/java scripting/Module_scripting.mk scripting/README scripting/README.md scripting/source sc/source sc/uiconfig sdext/inc sdext/README sdext/README.md sdext/source sd/inc sd/Library_sd.mk sd/Library_sdui.mk sd/qa sd/README sd/README.md sd/sdi sd/source sd/uiconfig sd/workben sd/xml setup_native/scripts setup_native/source sfx2/inc sfx2/Library_sfx.mk sfx2/qa sfx2/README sfx2/README.md sfx2/source sfx2/uiconfig sfx2/UIConfig_sfx.mk sfx2/util shell/Module_shell.mk shell/README shell/README.md slideshow/inc slideshow/README slideshow/README.md slideshow/source smoketest/README smoketest/README.m d solenv/bin solenv/clang-format solenv/flatpak-manifest.in solenv/gbuild solenv/README solenv/README.md solenv/sanitizers soltools/README.md sot/inc sot/README sot/README.md sot/source starmath/inc starmath/README starmath/README.md starmath/source static/CustomTarget_components.mk static/Library_components.mk static/Makefile static/Module_static.mk static/README stoc/README stoc/README.md stoc/source store/README store/README.md svgio/inc svgio/README svgio/README.md svl/inc svl/Library_svl.mk svl/README svl/README.md svl/source svtools/inc svtools/Library_svt.mk svtools/README svtools/README.md svtools/source svtools/uiconfig svtools/UIConfig_svt.mk svtools/util svx/CppunitTest_svx_unit.mk svx/inc svx/Library_svx.mk svx/qa svx/README svx/README.md svx/source svx/uiconfig svx/UIConfig_svx.mk sw/CppunitTest_sw_apitests.mk sw/CppunitTest_sw_core_text.mk sw/CppunitTest_sw_macros_test.mk sw/CppunitTest_sw_odfexport2.mk sw/CppunitTest_sw_odfimport.mk sw/CppunitTest_sw_uwriter.mk swext/ mediawiki swext/README swext/README.md sw/inc sw/Library_swui.mk sw/Module_sw.mk sw/ooxmlexport_setup.mk sw/qa sw/README sw/README.md sw/sdi sw/source sw/uiconfig sysui/README sysui/README.md test/Module_test.mk test/README test/README.md test/source testtools/README testtools/README.md toolkit/inc toolkit/Library_tk.mk toolkit/README toolkit/README.md toolkit/source toolkit/util tools/inc tools/qa tools/README tools/README.md tools/source translations ucbhelper/README ucbhelper/README.md ucb/README ucb/README.md ucb/source udkapi/README udkapi/README.md uitest/demo_ui uitest/libreoffice uitest/math_tests uitest/README uitest/README.md uitest/uitest UnoControls/README UnoControls/README.md UnoControls/source unodevtools/inc unodevtools/README unodevtools/README.md unodevtools/source unoidl/Executable_unoidl-read.mk unoidl/README unoidl/README.md unoidl/source unoil/Module_unoil.mk unoil/README unoil/README.md unotest/Module_unotest.mk unotest/source unotools/README unotools/README.m d unotools/source unotools/util unoxml/inc unoxml/README unoxml/README.md unoxml/source ure/README ure/README.md uui/inc uui/README uui/README.md uui/source vbahelper/inc vbahelper/README vbahelper/README.md vbahelper/source vcl/backendtest vcl/CppunitTest_vcl_bitmap_test.mk vcl/CppunitTest_vcl_graphic_test.mk vcl/Executable_ui-previewer.mk vcl/Executable_vcldemo.mk vcl/headless vcl/inc vcl/ios vcl/jsdialog vcl/Library_vcl.mk vcl/Library_vclplug_gen.mk vcl/Library_vclplug_gtk3_kde5.mk vcl/Library_vclplug_gtk3.mk vcl/Library_vclplug_kf5.mk vcl/Library_vclplug_osx.mk vcl/Library_vclplug_qt5.mk vcl/Library_vclplug_win.mk vcl/Module_vcl.mk vcl/osx vcl/qa vcl/qt5 vcl/quartz vcl/README vcl/README.md vcl/README.vars vcl/skia vcl/source vcl/uiconfig vcl/unx vcl/wasm vcl/win vcl/workben wasm-qt/CustomTarget_wasm-qt5-mandelbrot_moc.mk wasm-qt/Executable_wasm-qt5-mandelbrot.mk wasm-qt/Makefile wasm-qt/Module_wasm-qt.mk wasm-qt/README wasm-qt/source winaccessibility/inc winaccessibility/README winaccessibility/README.md winaccessibility/source wizards/README wizards/README.md wizards/source writerfilter/inc writerfilter/qa writerfilter/README writerfilter/README.md writerfilter/source writerperfect/inc writerperfect/Module_writerperfect.mk writerperfect/qa writerperfect/README writerperfect/README.md writerperfect/source xmerge/README xmerge/README.md xmlhelp/README xmlhelp/README.md xmlhelp/source xmloff/CppunitTest_xmloff_style.mk xmloff/inc xmloff/Library_xo.mk xmloff/qa xmloff/README.md xmloff/source xmlreader/README xmlreader/README.md xmlreader/source xmlscript/CppunitTest_xmlscript_cppunit.mk xmlscript/Module_xmlscript.mk xmlscript/qa xmlscript/README xmlscript/README.md xmlscript/source xmlscript/test xmlsecurity/inc xmlsecurity/Library_xmlsecurity.mk xmlsecurity/Library_xsec_xmlsec.mk xmlsecurity/Module_xmlsecurity.mk xmlsecurity/qa xmlsecurity/README xmlsecurity/README.md xmlsecurity/source
Jan-Marek Glogowski (via logerrit)
logerrit at kemper.freedesktop.org
Fri Apr 16 13:40:49 UTC 2021
Rebased ref, commits from common ancestor:
commit c4455877d85b4191c38ad14dc74ed0250284f35d
Author: Jan-Marek Glogowski <glogow at fbihome.de>
AuthorDate: Thu Mar 25 13:13:53 2021 +0100
Commit: Thorsten Behrens <thorsten.behrens at allotropia.de>
CommitDate: Fri Apr 16 15:31:52 2021 +0200
Hack Windows static build stuff
Change-Id: Ied05b72e95fceb47881f080d2b10eca29dfce73f
diff --git a/configure.ac b/configure.ac
index 5033dafdec42..96fa11de367e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3709,7 +3709,7 @@ fi
if test "$_os" = "iOS" -o "$build_cpu" != "$host_cpu" -o -n "$DISABLE_DYNLOADING"; then
# To allow building Windows multi-arch releases without cross-tooling
- if test -z "$WIN_MULTI_ARCH" -a -z "$WIN_OTHER_ARCH"; then
+ if test -z "$WIN_MULTI_ARCH" -a -z "$WIN_OTHER_ARCH" -o -n "$DISABLE_DYNLOADING"; then
cross_compiling="yes"
fi
fi
@@ -5554,9 +5554,15 @@ if test "$USING_X11" != TRUE; then
test_dbus=no
build_gstreamer_1_0=no
test_kf5=no
- test_qt5=yes
test_gtk3_kde5=no
- enable_cairo_canvas=yes
+ if test "$DISABLE_DYNLOADING" = "TRUE" -a "$OS" != "WNT"; then
+ enable_cairo_canvas=yes
+ test_qt5=yes
+ enable_qt5=yes
+ else
+ enable_cairo_canvas=no
+ test_qt5=no
+ fi
fi
if test "$OS" = "EMSCRIPTEN"; then
@@ -9435,7 +9441,11 @@ no|disable)
# Python is required to build LibreOffice. In theory we could separate the build-time Python
# requirement from the choice whether to include Python stuff in the installer, but why
# bother?
- AC_MSG_ERROR([Python is required at build time.])
+ if test "$cross_compiling" = yes; then
+ enable_python=system
+ else
+ AC_MSG_ERROR([Python is required at build time.])
+ fi
fi
enable_python=no
AC_MSG_RESULT([none])
diff --git a/vcl/Library_vcl.mk b/vcl/Library_vcl.mk
index b9ec2a9f6c5c..a69a090cb3fa 100644
--- a/vcl/Library_vcl.mk
+++ b/vcl/Library_vcl.mk
@@ -775,7 +775,7 @@ endif
ifeq ($(OS),WNT)
$(eval $(call gb_Library_add_exception_objects,vcl,\
vcl/source/opengl/win/WinDeviceInfo \
- vcl/source/app/salplug \
+ $(if $(DISABLE_DYNLOADING),vcl/wasm/salplug,vcl/source/app/salplug) \
vcl/win/app/fileregistration \
))
commit 4a5a722f833a4a381975d22873f3628c36930fe1
Author: Jan-Marek Glogowski <glogow at fbihome.de>
AuthorDate: Thu Mar 25 09:59:51 2021 +0100
Commit: Thorsten Behrens <thorsten.behrens at allotropia.de>
CommitDate: Fri Apr 16 15:31:52 2021 +0200
Working static Writer (use SAL_VCL_QT5_USE_CAIRO)
Change-Id: Ie1aab718cbf36b43621e2be644328fdc3fa1c90b
diff --git a/configure.ac b/configure.ac
index f08b33ff1da4..5033dafdec42 100644
--- a/configure.ac
+++ b/configure.ac
@@ -5151,7 +5151,7 @@ if test "$enable_gui" = "no"; then
fi
USING_X11=
DISABLE_GUI=TRUE
- AC_DEFINE(HAVE_FEATURE_UI,0)
+# AC_DEFINE(HAVE_FEATURE_UI,0)
test_cairo=yes
fi
AC_SUBST(DISABLE_GUI)
diff --git a/cppuhelper/source/paths.cxx b/cppuhelper/source/paths.cxx
index 0172e4c94a16..25e006d07c96 100644
--- a/cppuhelper/source/paths.cxx
+++ b/cppuhelper/source/paths.cxx
@@ -20,6 +20,7 @@
#include <config_folders.h>
#include <sal/config.h>
+#include <sal/log.hxx>
#include <cassert>
@@ -85,7 +86,9 @@ OUString cppu::getUnoIniUri() {
}
#endif
#endif
- return uri + "/" SAL_CONFIGFILE("uno");
+ uri += "/" SAL_CONFIGFILE("uno");
+ SAL_INFO("cppuhelper", "expected uno config: " << uri);
+ return uri;
}
bool cppu::nextDirectoryItem(osl::Directory & directory, OUString * url) {
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index cd4b3da2d729..6f61dbef6926 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -3154,7 +3154,7 @@ static void doc_paintTile(LibreOfficeKitDocument* pThis,
return;
}
-#if defined(UNX) && !defined(MACOSX) && !defined(ENABLE_HEADLESS)
+#if defined(UNX) && !defined(MACOSX) && !defined(DISABLE_GUI)
// Painting of zoomed or HiDPI spreadsheets is special, we actually draw everything at 100%,
// and only set cairo's (or CoreGraphic's, in the iOS case) scale factor accordingly, so that
diff --git a/postprocess/Rdb_services.mk b/postprocess/Rdb_services.mk
index 97e75c13a001..447cd97941b8 100644
--- a/postprocess/Rdb_services.mk
+++ b/postprocess/Rdb_services.mk
@@ -281,8 +281,8 @@ $(eval $(call gb_Rdb_add_components,services,\
shell/source/unix/exec/syssh \
) \
$(if $(filter-out MACOSX WNT,$(OS)), \
- $(if $(DISABLE_GUI),, \
shell/source/backends/desktopbe/desktopbe1 \
+ $(if $(DISABLE_GUI),, \
vcl/vcl.unx \
) \
) \
diff --git a/solenv/bin/native-code.py b/solenv/bin/native-code.py
index 06e01a495237..de59f7093023 100755
--- a/solenv/bin/native-code.py
+++ b/solenv/bin/native-code.py
@@ -704,7 +704,187 @@ desktop_factory_list = [
]
desktop_constructor_list = [
+ "com_sun_star_comp_bridge_BridgeFactory_get_implementation",
+ "com_sun_star_comp_bridge_BridgeFactory_get_implementation",
+ "com_sun_star_comp_configuration_ConfigurationProvider_get_implementation",
+ "com_sun_star_comp_configuration_ConfigurationRegistry_get_implementation",
+ "com_sun_star_comp_configuration_DefaultProvider_get_implementation",
+ "com_sun_star_comp_configuration_ReadOnlyAccess_get_implementation",
+ "com_sun_star_comp_configuration_ReadWriteAccess_get_implementation",
+ "com_sun_star_comp_deployment_component_PackageRegistryBackend_get_implementation",
+ "com_sun_star_comp_deployment_configuration_PackageRegistryBackend_get_implementation",
+ "com_sun_star_comp_deployment_executable_PackageRegistryBackend_get_implementation",
"com_sun_star_comp_deployment_ExtensionManager_get_implementation",
+ "com_sun_star_comp_deployment_ExtensionManager_get_implementation",
+ "com_sun_star_comp_deployment_help_PackageRegistryBackend_get_implementation",
+ "com_sun_star_comp_deployment_PackageManagerFactory_get_implementation",
+ "com_sun_star_comp_deployment_PackageManagerFactory_get_implementation",
+ "com_sun_star_comp_deployment_ProgressLog_get_implementation",
+ "com_sun_star_comp_deployment_script_PackageRegistryBackend_get_implementation",
+ "com_sun_star_comp_deployment_sfwk_PackageRegistryBackend_get_implementation",
+ "com_sun_star_comp_extensions_xml_sax_ParserExpat_get_implementation",
+ "com_sun_star_comp_frame_SessionListener_get_implementation",
+ "com_sun_star_comp_framework_AddonsToolBarFactory_get_implementation",
+ "com_sun_star_comp_framework_Desktop_get_implementation",
+ "com_sun_star_comp_framework_DocumentAcceleratorConfiguration_get_implementation",
+ "com_sun_star_comp_framework_Frame_get_implementation",
+ "com_sun_star_comp_framework_GenericPopupToolbarController_get_implementation",
+ "com_sun_star_comp_framework_GenericPopupToolbarController_get_implementation",
+ "com_sun_star_comp_framework_GlobalAcceleratorConfiguration_get_implementation",
+ "com_sun_star_comp_framework_JobExecutor_get_implementation",
+ "com_sun_star_comp_framework_LangSelectionStatusbarController_get_implementation",
+ "com_sun_star_comp_framework_LayoutManager_get_implementation",
+ "com_sun_star_comp_framework_MenuBarFactory_get_implementation",
+ "com_sun_star_comp_framework_MenuBarFactory_get_implementation",
+ "com_sun_star_comp_framework_ModuleAcceleratorConfiguration_get_implementation",
+ "com_sun_star_comp_framework_ModuleManager_get_implementation",
+ "com_sun_star_comp_framework_ModuleUIConfigurationManager_get_implementation",
+ "com_sun_star_comp_framework_ModuleUIConfigurationManagerSupplier_get_implementation",
+ "com_sun_star_comp_framework_ObjectMenuController_get_implementation",
+ "com_sun_star_comp_framework_PathSettings_get_implementation",
+ "com_sun_star_comp_framework_PathSubstitution_get_implementation",
+ "com_sun_star_comp_framework_PopupMenuControllerFactory_get_implementation",
+ "com_sun_star_comp_framework_RecentFilesMenuController_get_implementation",
+ "com_sun_star_comp_framework_RecentFilesMenuController_get_implementation",
+ "com_sun_star_comp_framework_ResourceMenuController_get_implementation",
+ "com_sun_star_comp_framework_SaveToolbarController_get_implementation",
+ "com_sun_star_comp_framework_SaveToolbarController_get_implementation",
+ "com_sun_star_comp_framework_StatusBarControllerFactory_get_implementation",
+ "com_sun_star_comp_framework_StatusBarFactory_get_implementation",
+ "com_sun_star_comp_framework_StatusIndicatorFactory_get_implementation",
+ "com_sun_star_comp_framework_SubToolBarController_get_implementation",
+ "com_sun_star_comp_framework_SubToolBarController_get_implementation",
+ "com_sun_star_comp_framework_TaskCreator_get_implementation",
+ "com_sun_star_comp_framework_ToolbarAsMenuController_get_implementation",
+ "com_sun_star_comp_framework_ToolBarControllerFactory_get_implementation",
+ "com_sun_star_comp_framework_ToolBarFactory_get_implementation",
+ "com_sun_star_comp_framework_ToolBarFactory_get_implementation",
+ "com_sun_star_comp_framework_UICommandDescription_get_implementation",
+ "com_sun_star_comp_framework_UICommandDescription_get_implementation",
+ "com_sun_star_comp_framework_UIConfigurationManager_get_implementation",
+ "com_sun_star_comp_framework_UIElementFactoryManager_get_implementation",
+ "com_sun_star_comp_framework_URLTransformer_get_implementation",
+ "com_sun_star_comp_framework_WindowListMenuController_get_implementation",
+ "com_sun_star_comp_framework_WindowListMenuController_get_implementation",
+ "com_sun_star_comp_framework_WindowStateConfiguration_get_implementation",
+ "com_sun_star_comp_graphic_GraphicProvider_get_implementation",
+ "com_sun_star_comp_office_FrameLoader_get_implementation",
+ "com_sun_star_comp_sfx2_AppDispatchProvider_get_implementation",
+ "com_sun_star_comp_sfx2_BackingComp_get_implementation",
+ "com_sun_star_comp_sfx2_GlobalEventBroadcaster_get_implementation",
+ "com_sun_star_comp_sfx2_InsertSymbolToolBoxControl_get_implementation",
+ "com_sun_star_comp_sfx2_InsertSymbolToolBoxControl_get_implementation",
+ "com_sun_star_comp_stoc_CoreReflection_get_implementation",
+ "com_sun_star_comp_stoc_Introspection_get_implementation",
+ "com_sun_star_comp_svx_CharacterSpacingToolBoxControl_get_implementation",
+ "com_sun_star_comp_svx_ColorToolBoxControl_get_implementation",
+ "com_sun_star_comp_svx_CTLToolBoxControl_get_implementation",
+ "com_sun_star_comp_svx_FontNameToolBoxControl_get_implementation",
+ "com_sun_star_comp_svx_Impl_FindbarDispatcher_get_implementation",
+ "com_sun_star_comp_svx_Impl_FindbarDispatcher_get_implementation",
+ "com_sun_star_comp_svx_LineSpacingToolBoxControl_get_implementation",
+ "com_sun_star_comp_svx_NumberingToolBoxControl_get_implementation",
+ "com_sun_star_comp_svx_RecoveryUI_get_implementation",
+ "com_sun_star_comp_svx_StyleToolBoxControl_get_implementation",
+ "com_sun_star_comp_svx_TableToolBoxControl_get_implementation",
+ "com_sun_star_comp_svx_TableToolBoxControl_get_implementation",
+ "com_sun_star_comp_svx_UnderlineToolBoxControl_get_implementation",
+ "com_sun_star_comp_svx_UndoRedoToolBoxControl_get_implementation",
+ "com_sun_star_comp_svx_UndoRedoToolBoxControl_get_implementation",
+ "com_sun_star_comp_svx_VertTextToolBoxControl_get_implementation",
+ "com_sun_star_comp_svx_VertTextToolBoxControl_get_implementation",
+ "com_sun_star_comp_uri_ExternalUriReferenceTranslator_get_implementation",
+ "com_sun_star_comp_uri_UriReferenceFactory_get_implementation",
+ "com_sun_star_comp_uri_UriSchemeParser_vndDOTsunDOTstarDOTexpand_get_implementation",
+ "com_sun_star_comp_uri_UriSchemeParser_vndDOTsunDOTstarDOTscript_get_implementation",
+ "com_sun_star_comp_uui_UUIInteractionHandler_get_implementation",
+ "com_sun_star_extensions_xml_sax_Writer_get_implementation",
+ "com_sun_star_frame_VCLSessionManagerClient_get_implementation",
+ "com_sun_star_i18n_BreakIterator_get_implementation",
+ "com_sun_star_i18n_BreakIterator_Unicode_get_implementation",
+ "com_sun_star_i18n_CharacterClassification_get_implementation",
+ "com_sun_star_i18n_CharacterClassification_Unicode_get_implementation",
+ "com_sun_star_i18n_Collator_get_implementation",
+ "com_sun_star_i18n_LocaleDataImpl_get_implementation",
+ "com_sun_star_i18n_NumberFormatCodeMapper_get_implementation",
+ "com_sun_star_i18n_Transliteration_get_implementation",
+ "com_sun_star_i18n_Transliteration_IGNORE_CASE_get_implementation",
+ "com_sun_star_i18n_Transliteration_IGNORE_KANA_get_implementation",
+ "com_sun_star_i18n_Transliteration_IGNORE_WIDTH_get_implementation",
+ "com_sun_star_svx_DownSearchToolboxController_get_implementation",
+ "com_sun_star_svx_ExitFindbarToolboxController_get_implementation",
+ "com_sun_star_svx_FindAllToolboxController_get_implementation",
+ "com_sun_star_svx_FindTextToolboxController_get_implementation",
+ "com_sun_star_svx_FontHeightToolBoxController_get_implementation",
+ "com_sun_star_svx_MatchCaseToolboxController_get_implementation",
+ "com_sun_star_svx_SearchLabelToolboxController_get_implementation",
+ "com_sun_star_svx_UpSearchToolboxController_get_implementation",
+ "com_sun_star_text_DefaultNumberingProvider_get_implementation",
+ "dtrans_CMimeContentTypeFactory_get_implementation",
+ "filter_ConfigFlush_get_implementation",
+ "filter_ContentHandlerFactory_get_implementation",
+ "filter_FilterFactory_get_implementation",
+ "filter_FrameLoaderFactory_get_implementation",
+ "filter_TypeDetection_get_implementation",
+ "framework_FooterMenuController_get_implementation",
+ "framework_FooterMenuController_get_implementation",
+ "framework_HeaderMenuController_get_implementation",
+ "framework_HeaderMenuController_get_implementation",
+ "framework_LanguageSelectionMenuController_get_implementation",
+ "framework_LanguageSelectionMenuController_get_implementation",
+ "framework_MacrosMenuController_get_implementation",
+ "framework_MacrosMenuController_get_implementation",
+ "framework_NewMenuController_get_implementation",
+ "framework_NewMenuController_get_implementation",
+ "framework_ServiceHandler_get_implementation",
+ "framework_ServiceHandler_get_implementation",
+ "framework_ToolbarsMenuController_get_implementation",
+ "framework_ToolbarsMenuController_get_implementation",
+ "i18npool_Collator_Unicode_get_implementation",
+ "IndexedPropertyValuesContainer_get_implementation",
+ "lingucomponent_Hyphenator_get_implementation",
+ "lingucomponent_LangGuess_get_implementation",
+ "lingucomponent_SpellChecker_get_implementation",
+ "lingucomponent_Thesaurus_get_implementation",
+ "linguistic_DicList_get_implementation",
+ "linguistic_GrammarCheckingIterator_get_implementation",
+ "linguistic_LinguProps_get_implementation",
+ "linguistic_LngSvcMgr_get_implementation",
+ "lo_writer_NavElementToolBoxController_get_implementation",
+ "lo_writer_NextScrollToolboxController_get_implementation",
+ "lo_writer_PreviousScrollToolboxController_get_implementation",
+ "org_apache_openoffice_comp_framework_ContextChangeEventMultiplexer_get_implementation",
+ "org_apache_openoffice_comp_framework_NewToolbarController_get_implementation",
+ "org_apache_openoffice_comp_framework_NewToolbarController_get_implementation",
+ "org_apache_openoffice_comp_svx_sidebar_PanelFactory_get_implementation",
+ "package_ManifestReader_get_implementation",
+ "package_OStorageFactory_get_implementation",
+ "package_OZipFileAccess_get_implementation",
+ "package_ZipPackage_get_implementation",
+ "SfxDocumentMetaData_get_implementation",
+ "shell_DesktopBackend_get_implementation",
+ "shell_LocaleBackend_get_implementation",
+ "stardiv_Toolkit_VCLXPopupMenu_get_implementation",
+ "stardiv_Toolkit_VCLXToolkit_get_implementation",
+ "stoc_FactoryImpl_get_implementation",
+ "svl_FSStorageFactory_get_implementation",
+ "ucb_expand_ExpandContentProviderImpl_get_implementation",
+ "ucb_file_FileProvider_get_implementation",
+ "ucb_OFileAccess_get_implementation",
+ "ucb_tdoc_ContentProvider_get_implementation",
+ "ucb_tdoc_DocumentContentFactory_get_implementation",
+ "ucb_UcbContentProviderProxyFactory_get_implementation",
+ "ucb_UcbStore_get_implementation",
+ "ucb_UniversalContentBroker_get_implementation",
+ "unotools_OTempFileService_get_implementation",
+ "unoxml_CDocumentBuilder_get_implementation",
+ "unoxml_CURI_get_implementation",
+ "unoxml_CXPathAPI_get_implementation",
+ "unoxml_rdfRepository_get_implementation",
+ "vcl_SystemClipboard_get_implementation",
+ "Writer_SwTextDocument_get_implementation",
+ "com_sun_star_comp_svx_FrameToolBoxControl_get_implementation",
+ "com_sun_star_i18n_InputSequenceChecker_get_implementation",
]
factory_map = {
diff --git a/sw/source/uibase/app/swmodule.cxx b/sw/source/uibase/app/swmodule.cxx
index f8e5c016db90..55d795719cc8 100644
--- a/sw/source/uibase/app/swmodule.cxx
+++ b/sw/source/uibase/app/swmodule.cxx
@@ -176,9 +176,14 @@ OUString SwResId(const char* pId, int nCardinality)
uno::Reference< scanner::XScannerManager2 > const &
SwModule::GetScannerManager()
{
- if (!m_xScannerManager.is())
+ static bool bTestScannerManager = true;
+ if (bTestScannerManager && !m_xScannerManager.is())
{
- m_xScannerManager = scanner::ScannerManager::create( comphelper::getProcessComponentContext() );
+ try {
+ m_xScannerManager = scanner::ScannerManager::create( comphelper::getProcessComponentContext() );
+ }
+ catch (...) {}
+ bTestScannerManager = false;
}
return m_xScannerManager;
}
commit 8353b0d91332d8bdff6e49706c33c7613a06ad73
Author: Jan-Marek Glogowski <glogow at fbihome.de>
AuthorDate: Wed Mar 24 16:46:09 2021 +0100
Commit: Thorsten Behrens <thorsten.behrens at allotropia.de>
CommitDate: Fri Apr 16 15:31:52 2021 +0200
catchall vcldemo
Change-Id: I07c8b12b9926e2228fc69b173ac4acf3dd6ef075
diff --git a/bin/run b/bin/run
index ea3a551d9e50..1fcbd07a8626 100755
--- a/bin/run
+++ b/bin/run
@@ -64,7 +64,7 @@ else
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}"${dir}"/instdir/program
SEARCH_PATH="${LD_LIBRARY_PATH}"
-
+ export UNO_HOME="file://${dir}/instdir/program"
fi
# echo "setting URE_BOOTSTRAP to: ${URE_BOOTSTRAP}"
diff --git a/cppu/source/uno/lbmap.cxx b/cppu/source/uno/lbmap.cxx
index cdaa21ff7200..685bf6d4a2a8 100644
--- a/cppu/source/uno/lbmap.cxx
+++ b/cppu/source/uno/lbmap.cxx
@@ -328,14 +328,12 @@ static void setNegativeBridge( const OUString & rBridgeName )
static uno_ext_getMappingFunc selectMapFunc( const OUString & rBridgeName )
{
-#if 0
if (rBridgeName.equalsAscii( CPPU_CURRENT_LANGUAGE_BINDING_NAME "_uno" ))
return CPPU_ENV_uno_ext_getMapping;
#if HAVE_FEATURE_JAVA
if (rBridgeName.equalsAscii( "java" "_uno" ))
return java_uno_ext_getMapping;
#endif
-#endif
#if 0
// I don't think the affine or log bridges will be needed on any
diff --git a/cppuhelper/source/paths.cxx b/cppuhelper/source/paths.cxx
index 0f59fb1272da..0172e4c94a16 100644
--- a/cppuhelper/source/paths.cxx
+++ b/cppuhelper/source/paths.cxx
@@ -26,6 +26,7 @@
#include <com/sun/star/uno/DeploymentException.hpp>
#include <osl/file.hxx>
#include <osl/module.hxx>
+#include <osl/thread.h>
#include <rtl/ustring.hxx>
#include <sal/types.h>
@@ -62,7 +63,14 @@ OUString cppu::getUnoIniUri() {
// clean here is hardish.
OUString uri("file:///assets/program");
#else
+
OUString uri(get_this_libpath());
+ static const char* uno_home = getenv("UNO_HOME");
+ if (!uno_home)
+ uri = get_this_libpath();
+ else
+ uri = OStringToOUString(uno_home, osl_getThreadTextEncoding());
+
#ifdef MACOSX
// We keep both the LO and URE dylibs directly in "Frameworks"
// (that is, LIBO_LIB_FOLDER) and rc files in "Resources"
diff --git a/solenv/bin/native-code.py b/solenv/bin/native-code.py
index 638f70643e67..06e01a495237 100755
--- a/solenv/bin/native-code.py
+++ b/solenv/bin/native-code.py
@@ -700,6 +700,13 @@ writer_constructor_list = [
"com_sun_star_comp_Writer_EPUBExportFilter_get_implementation",
]
+desktop_factory_list = [
+ ]
+
+desktop_constructor_list = [
+ "com_sun_star_comp_deployment_ExtensionManager_get_implementation",
+ ]
+
factory_map = {
'core' : core_factory_list,
'edit' : edit_factory_list,
@@ -707,6 +714,7 @@ factory_map = {
'calc' : calc_factory_list,
'draw' : draw_factory_list,
'writer' : writer_factory_list,
+ 'desktop' : desktop_factory_list,
}
constructor_map = {
@@ -716,6 +724,7 @@ constructor_map = {
'calc' : calc_constructor_list,
'draw' : draw_constructor_list,
'writer' : writer_constructor_list,
+ 'desktop' : desktop_constructor_list,
}
custom_widgets = [
diff --git a/solenv/gbuild/CppunitTest.mk b/solenv/gbuild/CppunitTest.mk
index 296b8e379a0c..711509cd846d 100644
--- a/solenv/gbuild/CppunitTest.mk
+++ b/solenv/gbuild/CppunitTest.mk
@@ -80,6 +80,7 @@ gb_CppunitTest_CPPTESTCOMMAND := $(call gb_Executable_get_target_for_build,cppun
else
gb_CppunitTest_RUNTIMEDEPS :=
gb_CppunitTest_CPPTESTCOMMAND :=
+#gb_CppunitTest_CPPTESTCOMMAND := strace -o trace.log
endif
# i18npool dlopens localedata_* libraries.
diff --git a/solenv/gbuild/gbuild.mk b/solenv/gbuild/gbuild.mk
index 79b437ca8eef..1afa9e0451af 100644
--- a/solenv/gbuild/gbuild.mk
+++ b/solenv/gbuild/gbuild.mk
@@ -279,6 +279,7 @@ gb_TEST_ENV_VARS += SAL_DISABLE_SYNCHRONOUS_PRINTER_DETECTION=1
ifeq (,$(SAL_USE_VCLPLUGIN))
gb_TEST_ENV_VARS += SAL_USE_VCLPLUGIN=svp
endif
+gb_TEST_ENV_VARS += UNO_HOME=file://$$I/program
# This is used to detect whether LibreOffice is being built (as opposed to building
# 3rd-party code). Used for tag deprecation for API we want to
diff --git a/static/CustomTarget_components.mk b/static/CustomTarget_components.mk
index 384985426a2a..9bd72a0b1f26 100644
--- a/static/CustomTarget_components.mk
+++ b/static/CustomTarget_components.mk
@@ -19,6 +19,6 @@ $(static_WORKDIR)/component_maps.cxx: \
$(SRCDIR)/solenv/bin/native-code.py \
| $(static_WORKDIR)/.dir
$(call gb_Output_announce,$(subst $(BUILDDIR)/,,$@),$(true),GEN,2)
- $(call gb_Helper_abbreviate_dirs,$(call gb_ExternalExecutable_get_command,python) $< -g core -g writer) > $@
+ $(call gb_Helper_abbreviate_dirs,$(call gb_ExternalExecutable_get_command,python) $< -g core -g writer -g desktop) > $@
# vim: set noet sw=4:
diff --git a/vcl/wasm/salplug.cxx b/vcl/wasm/salplug.cxx
index b5ba480dd104..6e498742b5c1 100644
--- a/vcl/wasm/salplug.cxx
+++ b/vcl/wasm/salplug.cxx
@@ -33,7 +33,12 @@ const OUString& SalGetDesktopEnvironment()
return aEnv;
}
-SalInstance* CreateSalInstance() { return create_SalInstance(); }
+SalInstance* CreateSalInstance()
+{
+ SalInstance* pInst = create_SalInstance();
+ pInst->AcquireYieldMutex();
+ return pInst;
+}
void DestroySalInstance(SalInstance* pInst)
{
commit 8eea797076c94eb4b66dbbae1be26a04021c2168
Author: Thorsten Behrens <thorsten.behrens at allotropia.de>
AuthorDate: Mon Mar 15 00:17:41 2021 +0100
Commit: Thorsten Behrens <thorsten.behrens at allotropia.de>
CommitDate: Fri Apr 16 15:31:52 2021 +0200
Add docs for container build setup
Change-Id: Ib250ae58e0dc36169125707a8c523d59239cabf6
diff --git a/README.wasm b/README.wasm
index b27c863b99f3..53774549a46c 100644
--- a/README.wasm
+++ b/README.wasm
@@ -21,6 +21,7 @@ change later to a newer emscripten.
Qt WASM is not yet used with LO, just if you're wondering!
+ ++ See below under Docker build for another build option ++
== Setup emscripten ==
@@ -112,6 +113,36 @@ QT5DIR=/dir/of/git_qt5/qtbase
Many will also be encoded in configure.ac at some point, some already is.
+== Using Docker to cross-build with emscripten ==
+
+If you prefer a controlled environment (sadly emsdk install/activate
+is _not_ stable over time, as e.g. nodejs versions evolve), that is
+easy to replicate across different machines - consider the docker
+images we're providing.
+
+Config/setup file see
+https://git.libreoffice.org/lode/+/ccb36979563635b51215477455953252c99ec013
+
+Run
+
+ docker-compose build
+
+in the lode/docker dir to get the container prepared. Run
+
+ PARALLELISM=4 BUILD_OPTIONS= BUILD_TARGET=build docker-compose run --rm -e PARALLELISM -e BUILD_TARGET -e BUILD_OPTIONS builder
+
+to perform an actual srcdir != buildir build; the container mounts
+checked-out git repo and output dir via docker-compose.yml (so make
+sure the path names there match your setup):
+
+The lode setup expects, inside the lode/docker subdir, the following directories:
+
+- core (git checkout)
+- workdir (the output dir - gets written into)
+- cache (ccache tree)
+- tarballs (external project tarballs gets written and cached there)
+
+
= Ideas for an UNO bridge implementation =
My post to Discord #emscripten: "I'm looking for a way to do an abstract call
commit 7434151775f05c653b0ddc7ffa869f0470386b42
Author: Jan-Marek Glogowski <glogow at fbihome.de>
AuthorDate: Sat Mar 13 00:13:30 2021 +0100
Commit: Thorsten Behrens <thorsten.behrens at allotropia.de>
CommitDate: Fri Apr 16 15:31:52 2021 +0200
catchall
Change-Id: I8b4dea6870dc6698a03cd2607f98eb57971eca4b
diff --git a/Repository.mk b/Repository.mk
index 2c7f3c2565b6..3c9a242c663b 100644
--- a/Repository.mk
+++ b/Repository.mk
@@ -201,9 +201,7 @@ $(eval $(call gb_Helper_register_executables_for_install,OOO,ooo, \
gengal \
$(if $(filter WNT,$(OS)),,uri-encode) \
$(if $(ENABLE_MACOSX_SANDBOX),, \
- $(if $(DISABLE_GUI),, \
ui-previewer \
- ) \
) \
$(if $(filter WNT,$(OS)), \
senddoc \
@@ -326,7 +324,6 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ogltrans, \
))
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \
- acc \
$(call gb_Helper_optional,AVMEDIA,avmedia) \
$(if $(filter MACOSX,$(OS)),\
avmediaMacAVF \
@@ -345,10 +342,8 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \
$(call gb_Helper_optional,OPENCL,clew) \
$(if $(filter $(OS),WNT),,cmdmail) \
cppcanvas \
- $(if $(filter $(OS),EMSCRIPTEN),components) \
configmgr \
ctl \
- cui \
dba \
dbahsql \
$(call gb_Helper_optional,DBCONNECTIVITY, \
@@ -479,12 +474,15 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \
))
$(eval $(call gb_Helper_register_plugins_for_install,OOOLIBS,ooo, \
+ acc \
+ $(if $(DISABLE_DYNLOADING),components) \
+ cui \
gie \
sdui \
$(if $(USING_X11),vclplug_gen) \
$(if $(filter $(OS),WNT),vclplug_win) \
$(if $(filter $(OS),MACOSX),vclplug_osx) \
- $(if $(filter EMSCRIPTEN,$(OS)),vclplug_qt5) \
+ vclplug_qt5 \
))
$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,postgresqlsdbc, \
diff --git a/RepositoryFixes.mk b/RepositoryFixes.mk
index 741f6bbfee21..5f149631919a 100644
--- a/RepositoryFixes.mk
+++ b/RepositoryFixes.mk
@@ -69,11 +69,6 @@ else
# libpyuno_wrapper.so => pyuno.so
gb_Library_FILENAMES := $(patsubst pyuno_wrapper:libpyuno_wrapper.so,pyuno_wrapper:pyuno.so,$(gb_Library_FILENAMES))
endif
-
-ifneq ($(OS),ANDROID)
-gb_Library_FILENAMES := $(patsubst unobootstrapprotector:libuno%,unobootstrapprotector:uno%,$(gb_Library_FILENAMES))
-gb_Library_FILENAMES := $(patsubst unoexceptionprotector:libuno%,unoexceptionprotector:uno%,$(gb_Library_FILENAMES))
-endif
endif
ifeq ($(OS),WNT)
diff --git a/RepositoryModule_host.mk b/RepositoryModule_host.mk
index 64068ffc0e49..ff07e415e25f 100644
--- a/RepositoryModule_host.mk
+++ b/RepositoryModule_host.mk
@@ -111,6 +111,7 @@ $(eval $(call gb_Module_add_moduledirs,libreoffice,\
solenv \
soltools \
sot \
+ static \
stoc \
store \
svl \
@@ -140,20 +141,20 @@ $(eval $(call gb_Module_add_moduledirs,libreoffice,\
uui \
vbahelper \
vcl \
- wasm \
wasm-qt \
winaccessibility \
wizards \
writerfilter \
writerperfect \
xmerge \
- $(call gb_Helper_optional,DESKTOP,xmlhelp) \
+ $(call gb_Helper_optional,DESKTOP,$(if $(DISABLE_DYNLOADING),,xmlhelp)) \
xmloff \
xmlreader \
xmlscript \
xmlsecurity \
))
+ifeq (,$(DISABLE_DYNLOADING))
# Especially when building everything with symbols, the linking of the largest
# libraries takes enormous amounts of RAM. To prevent annoying OOM situations
# etc., try to prevent linking these in parallel by adding artificial build
@@ -186,5 +187,6 @@ $(eval $(call repositorymodule_serialize,\
svx svxcore xo sfx fwk svt vcl) \
))
endif
+endif # !$(DISABLE_DYNLOADING)
# vim: set noet sw=4 ts=4:
diff --git a/accessibility/Library_acc.mk b/accessibility/Library_acc.mk
index 6e4c90eba50d..cf63cf5836a8 100644
--- a/accessibility/Library_acc.mk
+++ b/accessibility/Library_acc.mk
@@ -9,6 +9,8 @@
$(eval $(call gb_Library_Library,acc))
+$(eval $(call gb_Library_set_plugin_for,acc,tk))
+
$(eval $(call gb_Library_set_include,acc,\
$$(INCLUDE) \
-I$(SRCDIR)/accessibility/inc \
@@ -31,7 +33,6 @@ $(eval $(call gb_Library_use_libraries,acc,\
sot \
svl \
svt \
- tk \
tl \
utl \
vcl \
diff --git a/bin/run b/bin/run
index 523da3c0e178..ea3a551d9e50 100755
--- a/bin/run
+++ b/bin/run
@@ -71,6 +71,7 @@ fi
# echo "setting search path to: ${SEARCH_PATH}"
# echo "execing: ${exedir}/$1"
+env | sort
exec ${LO_TRACE} "${exedir}/$@"
# vi:set shiftwidth=4 expandtab:
diff --git a/chart2/Module_chart2.mk b/chart2/Module_chart2.mk
index 37acfdc3730f..02a56e276205 100644
--- a/chart2/Module_chart2.mk
+++ b/chart2/Module_chart2.mk
@@ -24,23 +24,6 @@ $(eval $(call gb_Module_add_check_targets,chart2,\
CppunitTest_chart2_common_functors \
))
-$(eval $(call gb_Module_add_slowcheck_targets,chart2,\
- CppunitTest_chart2_export \
- CppunitTest_chart2_import \
- CppunitTest_chart2_trendcalculators \
- CppunitTest_chart2_dump \
- CppunitTest_chart2_pivot_chart_test \
- CppunitTest_chart2_geometry \
-))
-
-ifeq ($(ENABLE_CHART_TESTS),TRUE)
-ifeq ($(WITH_FONTS), TRUE)
-$(eval $(call gb_Module_add_slowcheck_targets,chart2,\
- CppunitTest_chart2_xshape \
-))
-endif
-endif
-
$(eval $(call gb_Module_add_subsequentcheck_targets,chart2,\
JunitTest_chart2_unoapi \
))
diff --git a/configure.ac b/configure.ac
index fd68c0b8985c..f08b33ff1da4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1884,6 +1884,16 @@ libo_FUZZ_ARG_ENABLE(librelogo,
[Do not build LibreLogo.]),
,enable_librelogo=yes)
+AC_ARG_ENABLE(cmis,
+ AS_HELP_STRING([--disable-cmis],
+ [Disable CMIS support.]),
+,enable_cmis=yes)
+
+AC_ARG_ENABLE(curl,
+ AS_HELP_STRING([--disable-curl],
+ [Disable CURL support.]),
+,enable_curl=yes)
+
dnl ===================================================================
dnl Optional Packages (--with/without-)
dnl ===================================================================
@@ -3697,7 +3707,7 @@ if test -n "$WIN_MULTI_ARCH" -a -n "$WIN_OTHER_ARCH"; then
fi
-if test "$_os" = "iOS" -o "$build_cpu" != "$host_cpu"; then
+if test "$_os" = "iOS" -o "$build_cpu" != "$host_cpu" -o -n "$DISABLE_DYNLOADING"; then
# To allow building Windows multi-arch releases without cross-tooling
if test -z "$WIN_MULTI_ARCH" -a -z "$WIN_OTHER_ARCH"; then
cross_compiling="yes"
@@ -5544,9 +5554,9 @@ if test "$USING_X11" != TRUE; then
test_dbus=no
build_gstreamer_1_0=no
test_kf5=no
- test_qt5=no
+ test_qt5=yes
test_gtk3_kde5=no
- enable_cairo_canvas=no
+ enable_cairo_canvas=yes
fi
if test "$OS" = "EMSCRIPTEN"; then
@@ -7138,7 +7148,7 @@ dnl ===================================================================
dnl Check for system libcmis
dnl ===================================================================
# libcmis requires curl and we can't build curl for iOS
-if test "$test_cmis" = "yes"; then
+if test "$test_cmis" = "yes" -a "$enable_cmis" = "yes"; then
libo_CHECK_SYSTEM_MODULE([libcmis],[LIBCMIS],[libcmis-0.5 >= 0.5.2])
ENABLE_LIBCMIS=TRUE
else
@@ -10113,7 +10123,7 @@ if test "$with_system_curl" = "auto"; then
with_system_curl="$with_system_libs"
fi
-if test "$test_curl" = "yes" -a "$with_system_curl" = "yes"; then
+if test "$test_curl" = "yes" -a "$enable_curl" = "yes" -a "$with_system_curl" = "yes"; then
AC_MSG_RESULT([external])
SYSTEM_CURL=TRUE
diff --git a/cppu/Module_cppu.mk b/cppu/Module_cppu.mk
index 17f6936f7878..f00558a4056a 100644
--- a/cppu/Module_cppu.mk
+++ b/cppu/Module_cppu.mk
@@ -26,7 +26,6 @@ $(eval $(call gb_Module_add_check_targets,cppu,\
CppunitTest_cppu_qa_recursion \
CppunitTest_cppu_qa_reference \
CppunitTest_cppu_qa_unotype \
- CppunitTest_cppu_test_cppumaker \
CppunitTest_cppu_typelib \
))
diff --git a/cpputools/Module_cpputools.mk b/cpputools/Module_cpputools.mk
index de043ea9bf45..72b2b4307dbf 100644
--- a/cpputools/Module_cpputools.mk
+++ b/cpputools/Module_cpputools.mk
@@ -14,7 +14,6 @@ ifneq ($(OS),EMSCRIPTEN)
$(eval $(call gb_Module_add_targets,cpputools,\
Executable_sp2bv \
- Executable_uno \
))
endif
diff --git a/cui/Library_cui.mk b/cui/Library_cui.mk
index d6fa68e0d194..01e2bd8cd191 100644
--- a/cui/Library_cui.mk
+++ b/cui/Library_cui.mk
@@ -9,6 +9,8 @@
$(eval $(call gb_Library_Library,cui))
+$(eval $(call gb_Library_set_plugin_for,cui,vcl))
+
$(eval $(call gb_Library_set_componentfile,cui,cui/util/cui))
$(eval $(call gb_Library_set_include,cui,\
@@ -58,7 +60,6 @@ $(eval $(call gb_Library_use_libraries,cui,\
tl \
ucbhelper \
utl \
- vcl \
$(if $(ENABLE_BREAKPAD), \
crashreport \
) \
diff --git a/desktop/Executable_oosplash.mk b/desktop/Executable_oosplash.mk
index a14acd626b74..ae7b3dfaa74e 100644
--- a/desktop/Executable_oosplash.mk
+++ b/desktop/Executable_oosplash.mk
@@ -56,6 +56,8 @@ endif
ifeq ($(OS),LINUX)
$(eval $(call gb_Executable_add_libs,oosplash,\
-lm \
+ -lstdc++ \
+ -pthread \
))
endif
diff --git a/desktop/Module_desktop.mk b/desktop/Module_desktop.mk
index 31bbf9d3a472..64717578b26f 100644
--- a/desktop/Module_desktop.mk
+++ b/desktop/Module_desktop.mk
@@ -33,7 +33,6 @@ $(eval $(call gb_Module_add_l10n_targets,desktop,\
ifneq (,$(filter DESKTOP,$(BUILD_TYPE)))
$(eval $(call gb_Module_add_targets,desktop,\
Executable_soffice_bin \
- Executable_unopkg_bin \
$(if $(ENABLE_BREAKPAD),Executable_minidump_upload) \
Library_migrationoo2 \
Library_migrationoo3 \
@@ -44,10 +43,7 @@ $(eval $(call gb_Module_add_targets,desktop,\
ifneq ($(OS),MACOSX)
ifneq ($(OS),WNT)
$(eval $(call gb_Module_add_targets,desktop,\
- Pagein_calc \
Pagein_common \
- Pagein_draw \
- Pagein_impress \
Pagein_writer \
CustomTarget_soffice \
))
@@ -142,7 +138,6 @@ $(eval $(call gb_Module_add_check_targets,desktop, \
ifeq ($(OS),LINUX)
$(eval $(call gb_Module_add_check_targets,desktop, \
- CppunitTest_desktop_lib \
CppunitTest_desktop_lokinit \
))
endif
diff --git a/extensions/Module_extensions.mk b/extensions/Module_extensions.mk
index c3f87aca815c..f0a4784b8b56 100644
--- a/extensions/Module_extensions.mk
+++ b/extensions/Module_extensions.mk
@@ -13,7 +13,7 @@ $(eval $(call gb_Module_add_l10n_targets,extensions,\
AllLangMoTarget_pcr \
))
-ifneq ($(filter-out EMSCRIPTEN iOS ANDROID,$(OS)),)
+ifeq (,$(DISABLE_DYNLOADING))
$(eval $(call gb_Module_add_targets,extensions,\
Library_abp \
Library_scn \
diff --git a/external/liborcus/ExternalProject_liborcus.mk b/external/liborcus/ExternalProject_liborcus.mk
index e7dd23b7d5ba..c7dd76ebfee5 100644
--- a/external/liborcus/ExternalProject_liborcus.mk
+++ b/external/liborcus/ExternalProject_liborcus.mk
@@ -95,7 +95,7 @@ $(call gb_ExternalProject_get_state_target,liborcus,build) :
$(call gb_ExternalProject_run,build,\
$(if $(liborcus_LIBS),LIBS='$(liborcus_LIBS)') \
$(if $(liborcus_CXXFLAGS),CXXFLAGS='$(liborcus_CXXFLAGS)') \
- $(if $(liborcus_CPPFLAGS),CPPFLAGS='$(liborcus_CPPFLAGS)') \
+ $(if $(liborcus_CPPFLAGS),CPPFLAGS='$(liborcus_CPPFLAGS) $(gb_EMSCRIPTEN_CPPFLAGS)') \
$(if $(liborcus_LDFLAGS),LDFLAGS='$(liborcus_LDFLAGS)') \
MDDS_CFLAGS='$(MDDS_CFLAGS)' \
MDDS_LIBS=' ' \
diff --git a/postprocess/Rdb_services.mk b/postprocess/Rdb_services.mk
index a2ea54397951..97e75c13a001 100644
--- a/postprocess/Rdb_services.mk
+++ b/postprocess/Rdb_services.mk
@@ -193,9 +193,6 @@ $(eval $(call gb_Rdb_add_components,services,\
extensions/source/update/check/updchk.uno \
extensions/source/update/ui/updchk \
) \
- $(if $(ENABLE_OPENGL_TRANSITIONS), \
- slideshow/source/engine/opengl/ogltrans \
- ) \
$(if $(ENABLE_JAVA), \
xmerge/source/bridge/XMergeBridge \
scripting/java/ScriptFramework \
@@ -272,15 +269,11 @@ $(eval $(call gb_Rdb_add_components,services,\
desktop/source/migration/services/migrationoo3 \
desktop/source/offacc/offacc \
$(if $(DISABLE_GUI),,desktop/source/splash/spl) \
- extensions/source/abpilot/abp \
$(if $(ENABLE_LDAP),extensions/source/config/ldap/ldapbe2) \
$(if $(filter WNT,$(OS)),\
extensions/source/config/WinUserInfo/WinUserInfoBe \
) \
extensions/source/logging/log \
- extensions/source/scanner/scn \
- extensions/source/update/feed/updatefeed \
- xmlhelp/util/ucpchelp1 \
$(if $(filter-out WNT,$(OS)),\
shell/source/cmdmail/cmdmail \
) \
diff --git a/sal/StaticLibrary_cppunitmain.mk b/sal/Library_cppunitmain.mk
similarity index 60%
rename from sal/StaticLibrary_cppunitmain.mk
rename to sal/Library_cppunitmain.mk
index 30c64d7b3980..07f51e0c4821 100644
--- a/sal/StaticLibrary_cppunitmain.mk
+++ b/sal/Library_cppunitmain.mk
@@ -8,30 +8,32 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-$(eval $(call gb_StaticLibrary_StaticLibrary,cppunitmain))
+$(eval $(call gb_Library_Library,cppunitmain))
-$(eval $(call gb_StaticLibrary_set_include,cppunitmain,\
+$(eval $(call gb_Library_set_include,cppunitmain,\
$$(INCLUDE) \
-I$(SRCDIR)/sal/inc \
))
-$(eval $(call gb_StaticLibrary_use_libraries,cppunitmain,\
+$(eval $(call gb_Library_use_libraries,cppunitmain,\
sal \
unoexceptionprotector \
+ unobootstrapprotector \
+ vclbootstrapprotector \
))
-$(eval $(call gb_StaticLibrary_use_externals,cppunitmain,\
+$(eval $(call gb_Library_use_externals,cppunitmain,\
boost_headers \
cppunit \
))
-$(eval $(call gb_StaticLibrary_add_exception_objects,cppunitmain,\
+$(eval $(call gb_Library_add_exception_objects,cppunitmain,\
sal/cppunittester/cppunittester \
))
ifeq ($(COM),MSC)
-$(eval $(call gb_StaticLibrary_add_ldflags,cppunitmain,\
+$(eval $(call gb_Library_add_ldflags,cppunitmain,\
/STACK:10000000 \
))
diff --git a/sal/Module_sal.mk b/sal/Module_sal.mk
index a24fe27ab869..d7076bf31e70 100644
--- a/sal/Module_sal.mk
+++ b/sal/Module_sal.mk
@@ -10,7 +10,7 @@
$(eval $(call gb_Module_Module,sal))
$(eval $(call gb_Module_add_targets,sal,\
- $(if $(or $(CROSS_COMPILING),$(DISABLE_DYNLOADING)),StaticLibrary_cppunitmain,Executable_cppunittester) \
+ $(if $(or $(CROSS_COMPILING),$(DISABLE_DYNLOADING)),Library_cppunitmain,Executable_cppunittester) \
$(if $(filter $(OS),ANDROID), \
Library_lo-bootstrap) \
Library_sal \
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/CppunitTest.mk b/solenv/gbuild/CppunitTest.mk
index 6255fc0544c8..296b8e379a0c 100644
--- a/solenv/gbuild/CppunitTest.mk
+++ b/solenv/gbuild/CppunitTest.mk
@@ -74,8 +74,13 @@ endif
# defined by platform
# gb_CppunitTest_get_filename
+ifeq (,$(DISABLE_DYNLOADING))
gb_CppunitTest_RUNTIMEDEPS := $(call gb_Executable_get_runtime_dependencies,cppunittester)
gb_CppunitTest_CPPTESTCOMMAND := $(call gb_Executable_get_target_for_build,cppunittester)
+else
+gb_CppunitTest_RUNTIMEDEPS :=
+gb_CppunitTest_CPPTESTCOMMAND :=
+endif
# i18npool dlopens localedata_* libraries.
gb_CppunitTest_RUNTIMEDEPS += \
@@ -206,7 +211,8 @@ $(call gb_CppunitTest_get_target,$(1)) : EXTRA_ENV_VARS :=
$$(eval $$(call gb_Module_register_target,$(call gb_CppunitTest_get_target,$(1)),$(call gb_CppunitTest_get_clean_target,$(1))))
$(call gb_Helper_make_userfriendly_targets,$(1),CppunitTest)
ifneq (,$(DISABLE_DYNLOADING))
-$$(eval $$(call gb_CppunitTest_use_static_libraries,$(1),cppunitmain))
+$$(eval $$(call gb_CppunitTest_use_libraries,$(1),cppunitmain))
+$$(eval $$(call gb_CppunitTest_add_defs,$(1),-D__EMSCRIPTEN__))
endif
$(if $(filter $(1),$(gb_CppunitTest_KNOWN)),,gb_CppunitTest_KNOWN += $(1))
diff --git a/solenv/gbuild/platform/linux.mk b/solenv/gbuild/platform/linux.mk
index ece7a88bd71f..823190490589 100644
--- a/solenv/gbuild/platform/linux.mk
+++ b/solenv/gbuild/platform/linux.mk
@@ -17,12 +17,20 @@ gb_LinkTarget_LDFLAGS += $(gb__LinkTarget_LDFLAGS_zdefs)
include $(GBUILDDIR)/platform/unxgcc.mk
+gb_STDLIBS :=
+
ifeq ($(DISABLE_DYNLOADING),TRUE)
-gb_STDLIBS := -ldl
+gb_STDLIBS += -ldl -lm
endif
+gb_STDLIBS_CXX :=
+
ifneq ($(ATOMIC_LIB),)
-gb_STDLIBS_CXX := $(ATOMIC_LIB)
+gb_STDLIBS_CXX += $(ATOMIC_LIB)
+endif
+
+ifeq ($(DISABLE_DYNLOADING),TRUE)
+gb_STDLIBS_CXX += -lstdc++
endif
# vim: set noet sw=4 ts=4:
diff --git a/solenv/gbuild/platform/unxgcc.mk b/solenv/gbuild/platform/unxgcc.mk
index 515a2b37c9d4..43579bd0c6aa 100644
--- a/solenv/gbuild/platform/unxgcc.mk
+++ b/solenv/gbuild/platform/unxgcc.mk
@@ -136,7 +136,7 @@ $(call gb_Helper_abbreviate_dirs,\
$(patsubst lib%.a,-l%,$(patsubst lib%.so,-l%,$(patsubst %.$(gb_Library_UDK_MAJORVER),%,$(foreach lib,$(LINKED_LIBS),$(call gb_Library_get_filename,$(lib)))))) \
$(foreach lib,$(LINKED_STATIC_LIBS),$(call gb_StaticLibrary_get_target,$(lib))) \
$(T_LIBS) \
- $(if $(CXXOBJECTS)$(GENCXXOBJECTS)$(EXTRAOBJECTLISTS)$(filter-out XTRUE,X$(ENABLE_RUNTIME_OPTIMIZATIONS)),$(T_STDLIBS_CXX)) \
+ $(T_STDLIBS_CXX) $(T_STDLIBS) \
-Wl$(COMMA)--end-group \
, \
-Wl$(COMMA)--start-group \
diff --git a/solenv/gbuild/static.mk b/solenv/gbuild/static.mk
index 7928a699d42f..be30960b0d3e 100644
--- a/solenv/gbuild/static.mk
+++ b/solenv/gbuild/static.mk
@@ -83,9 +83,9 @@ $(if $(strip $(filter-out GBUILD_TOUCHED, \
ifeq (,$(gb_PARTIAL_BUILD))
-ifeq ($(OS),EMSCRIPTEN)
+#ifeq ($(OS),EMSCRIPTEN)
$(foreach lib,$(gb_Library_KNOWNLIBS),$(if $(call gb_Library__get_component,$(lib)),$(eval $(call gb_Library_use_libraries,components,$(lib)))))
-endif
+#endif
define gb_LinkTarget__add_x_template
@@ -147,6 +147,7 @@ endef
define gb_LinkTarget__remove_touch
$(call gb_LinkTarget__get_all_libraries_var,$(1)) := $(filter-out GBUILD_TOUCHED,$(call gb_LinkTarget__get_all_libraries,$(1)))
$(call gb_LinkTarget__get_all_externals_var,$(1)) := $(filter-out GBUILD_TOUCHED,$(call gb_LinkTarget__get_all_externals,$(1)))
+$(call gb_LinkTarget__get_all_statics_var,$(1)) := $(filter-out GBUILD_TOUCHED,$(call gb_LinkTarget__get_all_statics,$(1)))
endef
@@ -160,9 +161,10 @@ endef
define gb_LinkTarget__fill_all_x_template
define gb_LinkTarget__fill_all_$(if $(5),$(5),$(1))
-$$(if $$(filter GBUILD_TOUCHED,$$(call gb_$(2)__get_all_$(1),$$(1))),,
+$$(if $$(filter GBUILD_TOUCHED,$$(call gb_$(if $(6),$(6),$(2))__get_all_$(1),$$(1))),,
$(if $(gb_DEBUG_STATIC),$$(info gb_LinkTarget__fill_all_$(if $(5),$(5),$(1)) $(1) for $$(1) in: $$(call gb_$(if $(6),$(6),$(2))__get_all_$(1),$$(1))))
$(if $(gb_DEBUG_STATIC),$$(info gb_LinkTarget__fill_all_$(if $(5),$(5),$(1)) $(3) for $$(1) in: $$(call gb_$(if $(6),$(6),$(2))__get_all_$(3),$$(1))))
+ $$(eval $$(call gb_LinkTarget__add_touch,$$(call gb_$(if $(6),$(6),$(2))__get_workdir_linktargetname,$$(1))))
$$(foreach item,$$(call gb_$(if $(6),$(6),$(2))__get_all_$(1),$$(1)),
$$(call gb_LinkTarget__fill_all_$(1),$$(item))
$$(foreach dep,$$(call gb_$(2)__get_all_$(1),$$(item)),
@@ -179,7 +181,6 @@ $$(if $$(filter GBUILD_TOUCHED,$$(call gb_$(2)__get_all_$(1),$$(1))),,
$$(foreach dep,$$(call gb_$(4)__get_all_$(3),$$(item)),
$$(if $$(filter $$(dep),GBUILD_TOUCHED $$(call gb_$(if $(6),$(6),$(2))__get_all_$(3),$$(1))),,
$$(eval $$(call gb_LinkTarget__add_$(3),$$(call gb_$(if $(6),$(6),$(2))__get_workdir_linktargetname,$$(1)),$$(dep))))))
- $$(eval $$(call gb_LinkTarget__add_touch,$$(call gb_$(if $(6),$(6),$(2))__get_workdir_linktargetname,$$(1))))
$(if $(gb_DEBUG_STATIC),$$(info gb_LinkTarget__fill_all_$(if $(5),$(5),$(1)) $(1) for $$(1) out: $$(call gb_$(if $(6),$(6),$(2))__get_all_$(1),$$(1))))
$(if $(gb_DEBUG_STATIC),$$(info gb_LinkTarget__fill_all_$(if $(5),$(5),$(1)) $(3) for $$(1) out: $$(call gb_$(if $(6),$(6),$(2))__get_all_$(3),$$(1)))))
@@ -203,13 +204,17 @@ $(eval $(call gb_LinkTarget__fill_all_x_template,libraries,Library,externals,Ext
gb_Executable__LAST_KNOWN =
gb_CppunitTest__LAST_KNOWN =
+#$(eval $(call gb_Library_use_libraries,cppuhelper,components))
+
# The comment exists To help decipering / verifying the following block. Most later items depends on previous one(s).
#
# * Expand all libraries. It's not strictly needed, as we only need the info for the executables,
# but this way we can implement updating single gbuild-module dependencies as needed.
# * For all executables (incl. CppunitTest(s)):
-# * For EMSCRIPTEN, add components library to any cppuhelper user, as it contains the call to the mapper functions
-# * Find any loader libraries and add the needed plugin dependences
+# * Expand all normal dependencies
+# * Check if cppuhelper loader for components is requested and add the needed plugin dependences
+# This is a *HACK*, so we don't have to recursively check loader libraries - at least currently
+# * Find any other loader libraries and add the needed plugin dependences
# * Add all statics to the executables
# * Add icudata as needed (it should be a plugin somehow declared in RepositoryExternal.mk, but that didn't work)
# * Serialize the linking of executables for EMSCRIPTEN, because wasm-opt is multi-threaded using all cores.
@@ -217,10 +222,11 @@ gb_CppunitTest__LAST_KNOWN =
$(foreach lib,$(gb_Library_KNOWNLIBS),$(eval $(call gb_LinkTarget__fill_all_libraries,$(lib))))
define gb_LinkTarget__expand_executable
-$$(if $$(and $$(filter EMSCRIPTEN,$$(OS)),$$(filter cppuhelper,$$(call gb_$(2)__get_all_libraries,$(3)))), \
- $$(eval $$(call gb_$(2)_use_libraries,$(3),components))) \
$$(eval $$(call gb_LinkTarget__fill_all_$(1),$(3))) \
-$$(foreach loader,$$(filter $$(gb_Library_KNOWNLOADERS),$$(call gb_$(2)__get_all_libraries,$(3))), \
+$$(if $$(filter cppuhelper,$$(filter $$(gb_Library_KNOWNLOADERS),$$(call gb_$(2)__get_all_libraries,$(3)))), \
+ $$(eval $$(call gb_$(2)_use_libraries,$(3),$$(call gb_Library__get_plugins,cppuhelper))) \
+ $$(eval $$(call gb_$(2)__add_libraries,$(3),$$(call gb_Library__get_plugins,cppuhelper)))) \
+$$(foreach loader,$$(filter $$(filter-out cppuhelper,$$(gb_Library_KNOWNLOADERS)),$$(call gb_$(2)__get_all_libraries,$(3))), \
$$(eval $$(call gb_$(2)_use_libraries,$(3),$$(call gb_Library__get_plugins,$$(loader)))) \
$$(eval $$(call gb_$(2)__add_libraries,$(3),$$(call gb_Library__get_plugins,$$(loader))))) \
$$(if $$(filter-out GBUILD_TOUCHED,$$(call gb_$(2)__get_all_libraries,$(3))), \
diff --git a/wasm/CustomTarget_components.mk b/static/CustomTarget_components.mk
similarity index 67%
rename from wasm/CustomTarget_components.mk
rename to static/CustomTarget_components.mk
index cb188166d894..384985426a2a 100644
--- a/wasm/CustomTarget_components.mk
+++ b/static/CustomTarget_components.mk
@@ -8,16 +8,16 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-$(eval $(call gb_CustomTarget_CustomTarget,wasm/components))
+$(eval $(call gb_CustomTarget_CustomTarget,static/components))
-wasm_WORKDIR := $(call gb_CustomTarget_get_workdir,wasm)
+static_WORKDIR := $(call gb_CustomTarget_get_workdir,static)
-$(call gb_CustomTarget_get_target,wasm/components): \
- $(wasm_WORKDIR)/component_maps.cxx
+$(call gb_CustomTarget_get_target,static/components): \
+ $(static_WORKDIR)/component_maps.cxx
-$(wasm_WORKDIR)/component_maps.cxx: \
+$(static_WORKDIR)/component_maps.cxx: \
$(SRCDIR)/solenv/bin/native-code.py \
- | $(wasm_WORKDIR)/.dir
+ | $(static_WORKDIR)/.dir
$(call gb_Output_announce,$(subst $(BUILDDIR)/,,$@),$(true),GEN,2)
$(call gb_Helper_abbreviate_dirs,$(call gb_ExternalExecutable_get_command,python) $< -g core -g writer) > $@
diff --git a/wasm/Library_components.mk b/static/Library_components.mk
similarity index 72%
rename from wasm/Library_components.mk
rename to static/Library_components.mk
index 128a3c12c2df..d3e7a0d149c1 100644
--- a/wasm/Library_components.mk
+++ b/static/Library_components.mk
@@ -9,8 +9,14 @@
$(eval $(call gb_Library_Library,components))
+$(eval $(call gb_Library_set_plugin_for,components,cppuhelper))
+
$(eval $(call gb_Library_add_generated_exception_objects,components,\
- CustomTarget/wasm/component_maps \
+ CustomTarget/static/component_maps \
+))
+
+$(eval $(call gb_Library_use_libraries,acc,\
+ $(gb_CPPU_ENV)_uno \
))
# vim: set noet sw=4 ts=4:
diff --git a/wasm/Makefile b/static/Makefile
similarity index 100%
rename from wasm/Makefile
rename to static/Makefile
diff --git a/wasm/Module_wasm.mk b/static/Module_static.mk
similarity index 77%
rename from wasm/Module_wasm.mk
rename to static/Module_static.mk
index eff9d0d7d1e9..f8909994ab7b 100644
--- a/wasm/Module_wasm.mk
+++ b/static/Module_static.mk
@@ -6,11 +6,11 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-$(eval $(call gb_Module_Module,wasm))
+$(eval $(call gb_Module_Module,static))
-ifeq ($(OS),EMSCRIPTEN)
+ifeq ($(DISABLE_DYNLOADING),TRUE)
-$(eval $(call gb_Module_add_targets,wasm,\
+$(eval $(call gb_Module_add_targets,static,\
CustomTarget_components \
Library_components \
))
diff --git a/static/README b/static/README
new file mode 100644
index 000000000000..d1254dd22da3
--- /dev/null
+++ b/static/README
@@ -0,0 +1,2 @@
+Static components library, containing a map from all component names
+to their constructor function calls.
diff --git a/sw/CppunitTest_sw_apitests.mk b/sw/CppunitTest_sw_apitests.mk
index d65c058fc97c..4124c32be618 100644
--- a/sw/CppunitTest_sw_apitests.mk
+++ b/sw/CppunitTest_sw_apitests.mk
@@ -53,7 +53,7 @@ $(eval $(call gb_CppunitTest_use_libraries,sw_apitests, \
ucbhelper \
unotest \
utl \
- vbahelper \
+ $(call gb_Helper_optional,SCRIPTING,vbahelper) \
vcl \
xo \
))
diff --git a/sw/CppunitTest_sw_macros_test.mk b/sw/CppunitTest_sw_macros_test.mk
index 7f38c45180bb..bb675c609df3 100644
--- a/sw/CppunitTest_sw_macros_test.mk
+++ b/sw/CppunitTest_sw_macros_test.mk
@@ -48,7 +48,7 @@ $(eval $(call gb_CppunitTest_use_libraries,sw_macros_test, \
ucbhelper \
unotest \
utl \
- vbahelper \
+ $(call gb_Helper_optional,SCRIPTING,vbahelper) \
vcl \
xo \
))
diff --git a/sw/CppunitTest_sw_uwriter.mk b/sw/CppunitTest_sw_uwriter.mk
index e6a490c5dff1..b0c36f396ba0 100644
--- a/sw/CppunitTest_sw_uwriter.mk
+++ b/sw/CppunitTest_sw_uwriter.mk
@@ -56,7 +56,7 @@ $(eval $(call gb_CppunitTest_use_libraries,sw_uwriter, \
ucbhelper \
unotest \
utl \
- vbahelper \
+ $(call gb_Helper_optional,SCRIPTING,vbahelper) \
vcl \
xmlreader \
xo \
diff --git a/unotest/source/cpp/bootstrapfixturebase.cxx b/unotest/source/cpp/bootstrapfixturebase.cxx
index 5c5b3bcc3a9c..348ecb796e85 100644
--- a/unotest/source/cpp/bootstrapfixturebase.cxx
+++ b/unotest/source/cpp/bootstrapfixturebase.cxx
@@ -8,10 +8,13 @@
*/
#include <sal/config.h>
+#include <config_features.h>
#include <unotest/bootstrapfixturebase.hxx>
#include <comphelper/processfactory.hxx>
+#if HAVE_FEATURE_SCRIPTING
#include <basic/sbstar.hxx>
+#endif
using namespace ::com::sun::star;
@@ -30,6 +33,11 @@ void test::BootstrapFixtureBase::setUp()
m_xSFactory.set(m_xFactory, uno::UNO_QUERY_THROW);
}
-void test::BootstrapFixtureBase::tearDown() { StarBASIC::DetachAllDocBasicItems(); }
+void test::BootstrapFixtureBase::tearDown()
+{
+#if HAVE_FEATURE_SCRIPTING
+ StarBASIC::DetachAllDocBasicItems()
+#endif
+}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/Executable_ui-previewer.mk b/vcl/Executable_ui-previewer.mk
index f853ce40864e..7b846a2d3c29 100644
--- a/vcl/Executable_ui-previewer.mk
+++ b/vcl/Executable_ui-previewer.mk
@@ -41,6 +41,7 @@ $(eval $(call gb_Executable_add_defs,ui-previewer,\
))
ifeq ($(OS), $(filter LINUX %BSD SOLARIS, $(OS)))
+ifneq (,$(USING_X11))
$(eval $(call gb_Executable_add_libs,ui-previewer,\
-lm $(DLOPEN_LIBS) \
-lX11 \
@@ -50,6 +51,7 @@ $(eval $(call gb_Executable_use_static_libraries,ui-previewer,\
glxtest \
))
endif
+endif
$(eval $(call gb_Executable_add_default_nativeres,ui-previewer))
diff --git a/vcl/Executable_vcldemo.mk b/vcl/Executable_vcldemo.mk
index a9a8d195fdc9..7b8ecadab3cf 100644
--- a/vcl/Executable_vcldemo.mk
+++ b/vcl/Executable_vcldemo.mk
@@ -55,6 +55,7 @@ $(eval $(call gb_Executable_use_static_libraries,vcldemo,\
))
ifeq ($(OS), $(filter LINUX %BSD SOLARIS, $(OS)))
+ifneq (,$(USING_X11))
$(eval $(call gb_Executable_add_libs,vcldemo,\
-lm $(DLOPEN_LIBS) \
-lX11 \
@@ -64,5 +65,6 @@ $(eval $(call gb_Executable_use_static_libraries,vcldemo,\
glxtest \
))
endif
+endif
# vim: set noet sw=4 ts=4:
diff --git a/vcl/Library_vcl.mk b/vcl/Library_vcl.mk
index 99fe1b2898d2..b9ec2a9f6c5c 100644
--- a/vcl/Library_vcl.mk
+++ b/vcl/Library_vcl.mk
@@ -580,7 +580,7 @@ vcl_headless_freetype_code=\
ifeq ($(USING_X11),TRUE)
$(eval $(call gb_Library_add_exception_objects,vcl,\
- vcl/source/app/salplug \
+ $(if $(DISABLE_DYNLOADING),,vcl/source/app/salplug) \
vcl/unx/generic/printer/jobdata \
vcl/unx/generic/printer/ppdparser \
vcl/unx/generic/window/screensaverinhibitor \
@@ -622,6 +622,12 @@ $(eval $(call gb_Library_use_externals,vcl,\
fontconfig \
freetype \
))
+else
+ifneq (,$(DISABLE_DYNLOADING))
+$(eval $(call gb_Library_add_exception_objects,vcl,\
+ vcl/wasm/salplug \
+))
+endif
endif
ifeq ($(OS), $(filter LINUX %BSD SOLARIS, $(OS)))
diff --git a/vcl/Library_vclplug_qt5.mk b/vcl/Library_vclplug_qt5.mk
index a91841ec32e4..cbf279ca179e 100644
--- a/vcl/Library_vclplug_qt5.mk
+++ b/vcl/Library_vclplug_qt5.mk
@@ -99,7 +99,6 @@ $(eval $(call gb_Library_add_exception_objects,vclplug_qt5,\
vcl/qt5/Qt5MainWindow \
vcl/qt5/Qt5Menu \
vcl/qt5/Qt5Object \
- vcl/qt5/Qt5OpenGLContext \
vcl/qt5/Qt5Painter \
vcl/qt5/Qt5Printer \
vcl/qt5/Qt5SvpGraphics \
diff --git a/vcl/Module_vcl.mk b/vcl/Module_vcl.mk
index f01de5e0a89c..2e2034d131f9 100644
--- a/vcl/Module_vcl.mk
+++ b/vcl/Module_vcl.mk
@@ -32,19 +32,9 @@ $(eval $(call gb_Module_add_targets,vcl,\
$(if $(filter DESKTOP,$(BUILD_TYPE))$(filter EMSCRIPTEN,$(OS)), \
StaticLibrary_vclmain \
$(if $(ENABLE_MACOSX_SANDBOX),, \
- $(if $(DISABLE_GUI),, \
- Executable_ui-previewer)) \
+ Executable_ui-previewer) \
$(if $(filter EMSCRIPTEN LINUX MACOSX SOLARIS WNT %BSD,$(OS)), \
- $(if $(DISABLE_GUI),, \
- Executable_vcldemo ))) \
-))
-
-$(eval $(call gb_Module_add_targets,vcl,\
- $(if $(filter-out EMSCRIPTEN ANDROID iOS WNT,$(OS)), \
- Executable_svdemo \
- Executable_fftester \
- Executable_svptest \
- Executable_svpclient) \
+ Executable_vcldemo )) \
))
$(eval $(call gb_Module_add_l10n_targets,vcl,\
diff --git a/vcl/qt5/Qt5Instance.cxx b/vcl/qt5/Qt5Instance.cxx
index 226dac3730d2..ee68565a3bb1 100644
--- a/vcl/qt5/Qt5Instance.cxx
+++ b/vcl/qt5/Qt5Instance.cxx
@@ -432,7 +432,7 @@ OUString Qt5Instance::GetConnectionIdentifier() { return OUString(); }
void Qt5Instance::AddToRecentDocumentList(const OUString&, const OUString&, const OUString&) {}
-OpenGLContext* Qt5Instance::CreateOpenGLContext() { return new Qt5OpenGLContext; }
+OpenGLContext* Qt5Instance::CreateOpenGLContext() { return nullptr; }
bool Qt5Instance::IsMainThread() const
{
diff --git a/wasm/README b/wasm/README
deleted file mode 100644
index a23bd6a45ea9..000000000000
--- a/wasm/README
+++ /dev/null
@@ -1 +0,0 @@
-See /README.wasm
diff --git a/xmlsecurity/Library_xmlsecurity.mk b/xmlsecurity/Library_xmlsecurity.mk
index 31992a969b23..1e974297f43e 100644
--- a/xmlsecurity/Library_xmlsecurity.mk
+++ b/xmlsecurity/Library_xmlsecurity.mk
@@ -91,7 +91,7 @@ $(eval $(call gb_Library_use_system_win32_libs,xmlsecurity,\
))
else
ifneq (,$(filter DESKTOP,$(BUILD_TYPE))$(filter ANDROID,$(OS)))
-ifneq ($(OS),EMSCRIPTEN)
+ifeq (TRUE,$(ENABLE_NSS))
$(eval $(call gb_Library_add_defs,xmlsecurity,\
-DXMLSEC_CRYPTO_NSS \
))
commit ac55f536a37334df1717e0f22cca97c1cc8c8dfa
Author: Jan-Marek Glogowski <glogow at fbihome.de>
AuthorDate: Fri Feb 26 14:42:02 2021 +0100
Commit: Thorsten Behrens <thorsten.behrens at allotropia.de>
CommitDate: Fri Apr 16 15:31:52 2021 +0200
catchall
Change-Id: If3eadcc396ab500f1a08a334a957ee0494aef033
diff --git a/RepositoryModule_host.mk b/RepositoryModule_host.mk
index 25a314e9785a..64068ffc0e49 100644
--- a/RepositoryModule_host.mk
+++ b/RepositoryModule_host.mk
@@ -107,12 +107,10 @@ $(eval $(call gb_Module_add_moduledirs,libreoffice,\
$(call gb_Helper_optional,DESKTOP,setup_native) \
sfx2 \
shell \
- slideshow \
smoketest \
solenv \
soltools \
sot \
- starmath \
stoc \
store \
svl \
@@ -143,6 +141,7 @@ $(eval $(call gb_Module_add_moduledirs,libreoffice,\
vbahelper \
vcl \
wasm \
+ wasm-qt \
winaccessibility \
wizards \
writerfilter \
@@ -177,11 +176,10 @@ endef
# the default goal is build (see Module.mk)
ifeq (,$(filter-out build check unitcheck slowcheck screenshot subsequentcheck uicheck,$(MAKECMDGOALS)))
$(eval $(call repositorymodule_serialize,\
- scfilt \
$(call gb_Helper_optional,SCRIPTING,vbaobj) \
- sc msword \
+ msword \
$(call gb_Helper_optional,DESKTOP,swui) \
- sw sd \
+ sw \
$(call gb_Helper_optional,DBCONNECTIVITY,dbu) \
writerfilter cui chartcontroller chartcore oox \
$(if $(MERGELIBS), merged, \
diff --git a/configure.ac b/configure.ac
index 54e6544f2423..fd68c0b8985c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1506,7 +1506,8 @@ libo_FUZZ_ARG_ENABLE(optimized,
[Whether to compile with optimization flags.
By default, disabled for --enable-debug and --enable-dbgutil, enabled
otherwise. Using 'debug' will try to use only optimizations that should
- not interfere with debugging.]))
+ not interfere with debugging. For Emscripten we default to optimized (-O1)
+ debug build, as otherwise biaries become too large.]))
libo_FUZZ_ARG_ENABLE(runtime-optimizations,
AS_HELP_STRING([--disable-runtime-optimizations],
@@ -4369,6 +4370,10 @@ if test -n "$ENABLE_DBGUTIL" -o \( -n "$enable_debug" -a "$enable_debug" != "no"
else
AC_MSG_RESULT([yes])
fi
+ if test "$_os" = "Emscripten" -a -z "$enable_optimized"; then
+ # Otherwise binaries simply become too large (linker OOM + browser fails to load)
+ enable_optimized=debug
+ fi
else
ENABLE_DEBUG=""
AC_MSG_RESULT([no])
@@ -4646,7 +4651,7 @@ elif test "$enable_optimized" = debug; then
ENABLE_OPTIMIZED_DEBUG=TRUE
AC_MSG_RESULT([yes (debug)])
HAVE_GCC_OG=
- if test "$GCC" = "yes"; then
+ if test "$GCC" = "yes" -a "$_os" != "Emscripten"; then
AC_MSG_CHECKING([whether $CC_BASE supports -Og])
save_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS -Werror -Og"
@@ -4658,7 +4663,7 @@ elif test "$enable_optimized" = debug; then
AC_MSG_RESULT([no])
fi
fi
- if test -z "$HAVE_GCC_OG"; then
+ if test -z "$HAVE_GCC_OG" -a "$_os" != "Emscripten"; then
AC_MSG_ERROR([The compiler does not support optimizations suitable for debugging.])
fi
else
diff --git a/postprocess/Rdb_services.mk b/postprocess/Rdb_services.mk
index 2abee72f6d09..a2ea54397951 100644
--- a/postprocess/Rdb_services.mk
+++ b/postprocess/Rdb_services.mk
@@ -101,20 +101,6 @@ $(eval $(call gb_Rdb_add_components,services,\
lotuswordpro/util/lwpfilter \
) \
oox/util/oox \
- sc/util/sc \
- sc/util/scd \
- sc/util/scfilt \
- scaddins/source/analysis/analysis \
- scaddins/source/datefunc/date \
- scaddins/source/pricing/pricing \
- sd/util/sd \
- sd/util/sdd \
- sd/util/sdfilt \
- sdext/source/presenter/presenter \
- sdext/source/minimizer/minimizer \
- slideshow/util/slideshow \
- starmath/util/sm \
- starmath/util/smd \
svx/util/svx \
svx/util/textconversiondlgs \
sw/util/msword \
@@ -144,7 +130,6 @@ $(eval $(call gb_Rdb_add_components,services,\
$(if $(ENABLE_LPSOLVE), \
sccomp/source/solver/lpsolvesolver \
) \
- sccomp/source/solver/swarmsolver \
writerfilter/util/writerfilter \
writerperfect/source/draw/wpftdraw \
writerperfect/source/impress/wpftimpress \
diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk
index 404b394d4e0c..f71525c835de 100644
--- a/solenv/gbuild/LinkTarget.mk
+++ b/solenv/gbuild/LinkTarget.mk
@@ -45,10 +45,9 @@ gb_LinkTarget__symbols_enabled = \
# debug flags, if the LinkTarget is named in the list of libraries of ENABLE_SYMBOLS_FOR
gb_LinkTarget__get_debugflags= \
-$(if $(ENABLE_OPTIMIZED),$(gb_COMPILEROPTFLAGS), \
-$(if $(ENABLE_OPTIMIZED_DEBUG),$(gb_COMPILERDEBUGOPTFLAGS), \
-$(gb_COMPILERNOOPTFLAGS))) \
-$(if $(call gb_LinkTarget__symbols_enabled,$(1)),$(gb_DEBUGINFO_FLAGS))
+ $(if $(ENABLE_OPTIMIZED),$(gb_COMPILEROPTFLAGS), \
+ $(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))
diff --git a/solenv/gbuild/platform/EMSCRIPTEN_INTEL_GCC.mk b/solenv/gbuild/platform/EMSCRIPTEN_INTEL_GCC.mk
index d9a348a42910..3131bbec0959 100644
--- a/solenv/gbuild/platform/EMSCRIPTEN_INTEL_GCC.mk
+++ b/solenv/gbuild/platform/EMSCRIPTEN_INTEL_GCC.mk
@@ -29,6 +29,10 @@ gb_LINKEROPTFLAGS :=
gb_LINKERSTRIPDEBUGFLAGS :=
# This maps to g4, AKA sorce maps. The LO default would otherwise be g2!
gb_DEBUGINFO_FLAGS = -g
+# We need at least code elimination, otherwise linking OOMs even with 64GB.
+# So we "fake" -Og support to mean -O1 for Emscripten and always enable it for debug in configure.
+gb_COMPILERDEBUGOPTFLAGS := -O1
+gb_COMPILERNOOPTFLAGS := -O1 -fstrict-aliasing -fstrict-overflow
# cleanup addition JS and wasm files for binaries
define gb_Executable_Executable_platform
diff --git a/solenv/gbuild/platform/unxgcc.mk b/solenv/gbuild/platform/unxgcc.mk
index d56b642382d2..515a2b37c9d4 100644
--- a/solenv/gbuild/platform/unxgcc.mk
+++ b/solenv/gbuild/platform/unxgcc.mk
@@ -158,7 +158,7 @@ $(call gb_Helper_abbreviate_dirs,\
$(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 > $(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
diff --git a/solenv/gbuild/static.mk b/solenv/gbuild/static.mk
index da16724520d2..7928a699d42f 100644
--- a/solenv/gbuild/static.mk
+++ b/solenv/gbuild/static.mk
@@ -232,7 +232,7 @@ $$(if $$(filter-out GBUILD_TOUCHED,$$(call gb_$(2)__get_all_externals,$(3))), \
$$(eval $$(call gb_$(2)_use_externals,$(3),$$(filter-out GBUILD_TOUCHED,$$(call gb_$(2)__get_all_externals,$(3)))))) \
$$(if $$(filter icui28n icuuc,$$(call gb_$(2)__get_all_externals,$(3))), \
$$(eval $$(call gb_$(2)_use_externals,$(3),icudata))) \
-$$(if $$(and $$(filter EMSCRIPTEN,$$(OS)),$$(call gb_$(2)__has_any_dependencies,$(3))), \
+$$(if $$(and $$(filter EMSCRIPTEN,$$(OS)),$$(call gb_$(2)__has_any_dependencies,$(3)),), \
$$(if $$(gb_$(2)__LAST_KNOWN), \
$$(if $$(gb_DEBUG_STATIC),$$(info $$(call gb_$(2)_get_linktargetfile,$(3)) => $$(call gb_$(2)_get_linktargetfile,$$(gb_$(2)__LAST_KNOWN)))) \
$$(eval $$(call gb_$(2)_get_linktargetfile,$(3)) : $$(call gb_$(2)_get_linktargetfile,$$(gb_$(2)__LAST_KNOWN)))) \
diff --git a/vcl/Module_vcl.mk b/vcl/Module_vcl.mk
index 3cf84ac21210..f01de5e0a89c 100644
--- a/vcl/Module_vcl.mk
+++ b/vcl/Module_vcl.mk
@@ -31,6 +31,9 @@ $(eval $(call gb_Module_add_targets,vcl,\
Package_skia_denylist ) \
$(if $(filter DESKTOP,$(BUILD_TYPE))$(filter EMSCRIPTEN,$(OS)), \
StaticLibrary_vclmain \
+ $(if $(ENABLE_MACOSX_SANDBOX),, \
+ $(if $(DISABLE_GUI),, \
+ Executable_ui-previewer)) \
$(if $(filter EMSCRIPTEN LINUX MACOSX SOLARIS WNT %BSD,$(OS)), \
$(if $(DISABLE_GUI),, \
Executable_vcldemo ))) \
diff --git a/wasm/CustomTarget_wasm-qt5-mandelbrot_moc.mk b/wasm-qt/CustomTarget_wasm-qt5-mandelbrot_moc.mk
similarity index 71%
rename from wasm/CustomTarget_wasm-qt5-mandelbrot_moc.mk
rename to wasm-qt/CustomTarget_wasm-qt5-mandelbrot_moc.mk
index 52b7447d22e9..6267db3f5b8d 100644
--- a/wasm/CustomTarget_wasm-qt5-mandelbrot_moc.mk
+++ b/wasm-qt/CustomTarget_wasm-qt5-mandelbrot_moc.mk
@@ -7,15 +7,15 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-$(eval $(call gb_CustomTarget_CustomTarget,wasm/qt5-mandelbrot))
+$(eval $(call gb_CustomTarget_CustomTarget,wasm-qt/qt5-mandelbrot))
-$(call gb_CustomTarget_get_target,wasm/qt5-mandelbrot) : \
- $(call gb_CustomTarget_get_workdir,wasm/qt5-mandelbrot)/renderthread.moc \
- $(call gb_CustomTarget_get_workdir,wasm/qt5-mandelbrot)/mandelbrotwidget.moc \
+$(call gb_CustomTarget_get_target,wasm-qt/qt5-mandelbrot) : \
+ $(call gb_CustomTarget_get_workdir,wasm-qt/qt5-mandelbrot)/renderthread.moc \
+ $(call gb_CustomTarget_get_workdir,wasm-qt/qt5-mandelbrot)/mandelbrotwidget.moc \
-qt5_mandelbrot_MOCDEFS_H := $(call gb_CustomTarget_get_workdir,wasm/qt5-mandelbrot)/moc_predefs.h
-qt5_mandelbrot_MOCDEFS_CXX := $(call gb_CustomTarget_get_workdir,wasm/qt5-mandelbrot)/moc_dummy.cxx
-qt5_mandelbrot_WORKDIR := $(call gb_CustomTarget_get_workdir,wasm/qt5-mandelbrot)/.dir
+qt5_mandelbrot_MOCDEFS_H := $(call gb_CustomTarget_get_workdir,wasm-qt/qt5-mandelbrot)/moc_predefs.h
+qt5_mandelbrot_MOCDEFS_CXX := $(call gb_CustomTarget_get_workdir,wasm-qt/qt5-mandelbrot)/moc_dummy.cxx
+qt5_mandelbrot_WORKDIR := $(call gb_CustomTarget_get_workdir,wasm-qt/qt5-mandelbrot)/.dir
$(qt5_mandelbrot_MOCDEFS_CXX): | $(qt5_mandelbrot_WORKDIR)
touch $@
@@ -26,8 +26,8 @@ $(qt5_mandelbrot_MOCDEFS_H): $(qt5_mandelbrot_MOCDEFS_CXX) | $(qt5_mandelbrot_WO
$(CXX) -pipe -O2 -std=gnu++11 -fno-exceptions $(gb_EMSCRIPTEN_CPPFLAGS) -dM -E -o $@ $<
$(call gb_Trace_EndRange,$(subst $(WORKDIR)/,,$@),MOC)
-$(call gb_CustomTarget_get_workdir,wasm/qt5-mandelbrot)/%.moc : \
- $(SRCDIR)/wasm/source/qt5-mandelbrot/%.h \
+$(call gb_CustomTarget_get_workdir,wasm-qt/qt5-mandelbrot)/%.moc : \
+ $(SRCDIR)/wasm-qt/source/qt5-mandelbrot/%.h \
$(qt5_mandelbrot_MOCDEFS_H) | $(qt5_mandelbrot_WORKDIR)
$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),MOC,1)
$(call gb_Trace_StartRange,$(subst $(WORKDIR)/,,$@),MOC)
diff --git a/wasm/Executable_wasm-qt5-mandelbrot.mk b/wasm-qt/Executable_wasm-qt5-mandelbrot.mk
similarity index 81%
rename from wasm/Executable_wasm-qt5-mandelbrot.mk
rename to wasm-qt/Executable_wasm-qt5-mandelbrot.mk
index 7afaa81c0dc4..040fad441219 100644
--- a/wasm/Executable_wasm-qt5-mandelbrot.mk
+++ b/wasm-qt/Executable_wasm-qt5-mandelbrot.mk
@@ -9,7 +9,7 @@
$(eval $(call gb_Executable_Executable,wasm-qt5-mandelbrot))
-$(eval $(call gb_Executable_use_custom_headers,wasm-qt5-mandelbrot,wasm/qt5-mandelbrot))
+$(eval $(call gb_Executable_use_custom_headers,wasm-qt5-mandelbrot,wasm-qt/qt5-mandelbrot))
$(eval $(call gb_Executable_use_externals,wasm-qt5-mandelbrot,\
graphite \
@@ -20,9 +20,9 @@ $(eval $(call gb_Executable_use_externals,wasm-qt5-mandelbrot,\
))
$(eval $(call gb_Executable_add_exception_objects,wasm-qt5-mandelbrot,\
- wasm/source/qt5-mandelbrot/main \
- wasm/source/qt5-mandelbrot/mandelbrotwidget \
- wasm/source/qt5-mandelbrot/renderthread \
+ wasm-qt/source/qt5-mandelbrot/main \
+ wasm-qt/source/qt5-mandelbrot/mandelbrotwidget \
+ wasm-qt/source/qt5-mandelbrot/renderthread \
))
$(eval $(call gb_Executable_add_defs,wasm-qt5-mandelbrot,\
diff --git a/wasm-qt/Makefile b/wasm-qt/Makefile
new file mode 100644
index 000000000000..0c6f47b1790f
--- /dev/null
+++ b/wasm-qt/Makefile
@@ -0,0 +1,13 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/wasm-qt/Module_wasm-qt.mk b/wasm-qt/Module_wasm-qt.mk
new file mode 100644
index 000000000000..8e86df4e8baa
--- /dev/null
+++ b/wasm-qt/Module_wasm-qt.mk
@@ -0,0 +1,20 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+$(eval $(call gb_Module_Module,wasm-qt))
+
+ifeq ($(OS),EMSCRIPTEN)
+
+$(eval $(call gb_Module_add_targets,wasm-qt,\
+ CustomTarget_wasm-qt5-mandelbrot_moc \
+ Executable_wasm-qt5-mandelbrot \
+))
+
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/wasm-qt/README b/wasm-qt/README
new file mode 100644
index 000000000000..a23bd6a45ea9
--- /dev/null
+++ b/wasm-qt/README
@@ -0,0 +1 @@
+See /README.wasm
diff --git a/wasm/source/qt5-mandelbrot/main.cxx b/wasm-qt/source/qt5-mandelbrot/main.cxx
similarity index 100%
rename from wasm/source/qt5-mandelbrot/main.cxx
rename to wasm-qt/source/qt5-mandelbrot/main.cxx
diff --git a/wasm/source/qt5-mandelbrot/mandelbrotwidget.cxx b/wasm-qt/source/qt5-mandelbrot/mandelbrotwidget.cxx
similarity index 100%
rename from wasm/source/qt5-mandelbrot/mandelbrotwidget.cxx
rename to wasm-qt/source/qt5-mandelbrot/mandelbrotwidget.cxx
diff --git a/wasm/source/qt5-mandelbrot/mandelbrotwidget.h b/wasm-qt/source/qt5-mandelbrot/mandelbrotwidget.h
similarity index 100%
rename from wasm/source/qt5-mandelbrot/mandelbrotwidget.h
rename to wasm-qt/source/qt5-mandelbrot/mandelbrotwidget.h
diff --git a/wasm/source/qt5-mandelbrot/renderthread.cxx b/wasm-qt/source/qt5-mandelbrot/renderthread.cxx
similarity index 100%
rename from wasm/source/qt5-mandelbrot/renderthread.cxx
rename to wasm-qt/source/qt5-mandelbrot/renderthread.cxx
diff --git a/wasm/source/qt5-mandelbrot/renderthread.h b/wasm-qt/source/qt5-mandelbrot/renderthread.h
similarity index 100%
rename from wasm/source/qt5-mandelbrot/renderthread.h
rename to wasm-qt/source/qt5-mandelbrot/renderthread.h
diff --git a/wasm/Module_wasm.mk b/wasm/Module_wasm.mk
index d6f507a005df..eff9d0d7d1e9 100644
--- a/wasm/Module_wasm.mk
+++ b/wasm/Module_wasm.mk
@@ -11,8 +11,6 @@ $(eval $(call gb_Module_Module,wasm))
ifeq ($(OS),EMSCRIPTEN)
$(eval $(call gb_Module_add_targets,wasm,\
- CustomTarget_wasm-qt5-mandelbrot_moc \
- Executable_wasm-qt5-mandelbrot \
CustomTarget_components \
Library_components \
))
commit 7a6fc056909d308f240bbadf45fcebda09dd5245
Author: Jan-Marek Glogowski <glogow at fbihome.de>
AuthorDate: Fri Feb 12 14:01:45 2021 +0100
Commit: Thorsten Behrens <thorsten.behrens at allotropia.de>
CommitDate: Fri Apr 16 15:31:51 2021 +0200
Strip some stuff from build
Change-Id: I8c2351a03ad65f4b82ee3fd2b4d64d6cf42d4592
diff --git a/README.wasm b/README.wasm
index 2dbe16010c8d..b27c863b99f3 100644
--- a/README.wasm
+++ b/README.wasm
@@ -135,6 +135,8 @@ conventions in WASM_EmscriptenInvoke. I didn't get a reply to that question for
hours. Maybe I'll open an Emscripten issue, if we really have to implement
this.
+WASM dynamic dispatch: https://fitzgeraldnick.com/2018/04/26/how-does-dynamic-dispatch-work-in-wasm.html
+
= Workaround for eventual clang WASM compiler bug =
@@ -160,6 +162,26 @@ from "Jul 23 2018" which pre-dates the emscripten tag 1.39.8 from 02/14/2020 by
If you get linking errors that archive has no index.
+= Emscripten filesystem access with threads =
+
+This is closed, but not really fixed IMHO: https://github.com/emscripten-core/emscripten/issues/3922
+
+
+= Dynamic libraries / modules in emscripten =
+
+There is a good summary in https://bugreports.qt.io/browse/QTBUG-63925
+
+Summary: you can't use modules and threads.
+
+This is mentioned at the end of: https://github.com/emscripten-core/emscripten/wiki/Linking
+The usage of MAIN_MODULE and SIDE_MODULE has other problems, a major one IMHO is symbol resolution at runtime only.
+So this works really more like plugins in the sense of symbol resolution without dependencies / rpath.
+
+There is some clang-level dynamic-linking in progress (WASM dlload). The follwing link is already a bit old,
+but I found it a god summary of problems to expect:
+https://iandouglasscott.com/2019/07/18/experimenting-with-webassembly-dynamic-linking-with-clang/
+
+
= Mixed information, links, problems, TODO =
More info on Qt WASM emscripten pthreads: https://wiki.qt.io/Qt_for_WebAssembly#Multithreading_Support
@@ -210,8 +232,6 @@ This will be interesting: https://emscripten.org/docs/getting_started/FAQ.html#h
This didn't help much yet: https://github.com/emscripten-ports
Emscripten supports standalone WASI binaries: https://github.com/emscripten-core/emscripten/wiki/WebAssembly-Standalone
-WASM dynamic dispatch: https://fitzgeraldnick.com/2018/04/26/how-does-dynamic-dispatch-work-in-wasm.html
-WASM dlload: https://iandouglasscott.com/2019/07/18/experimenting-with-webassembly-dynamic-linking-with-clang/
https://www.qt.io/qt-examples-for-webassembly
http://qtandeverything.blogspot.com/2017/06/qt-for-web-assembly.html
diff --git a/RepositoryModule_host.mk b/RepositoryModule_host.mk
index 20fdf05bc117..25a314e9785a 100644
--- a/RepositoryModule_host.mk
+++ b/RepositoryModule_host.mk
@@ -26,7 +26,6 @@ $(eval $(call gb_Module_add_moduledirs,libreoffice,\
animations \
apple_remote \
$(call gb_Helper_optional,AVMEDIA,avmedia) \
- basctl \
basegfx \
basic \
bean \
@@ -103,13 +102,8 @@ $(eval $(call gb_Module_add_moduledirs,libreoffice,\
sal \
salhelper \
sax \
- sc \
- scaddins \
- sccomp \
$(call gb_Helper_optional,DESKTOP,scp2) \
scripting \
- sd \
- sdext \
$(call gb_Helper_optional,DESKTOP,setup_native) \
sfx2 \
shell \
diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk
index eab38bd528a4..404b394d4e0c 100644
--- a/solenv/gbuild/LinkTarget.mk
+++ b/solenv/gbuild/LinkTarget.mk
@@ -1609,7 +1609,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
commit 235fda810fce9997a27b51ba8795d360c14928e3
Author: Jan-Marek Glogowski <glogow at fbihome.de>
AuthorDate: Fri Feb 5 14:21:43 2021 +0100
Commit: Thorsten Behrens <thorsten.behrens at allotropia.de>
CommitDate: Fri Apr 16 15:31:51 2021 +0200
catchall
Change-Id: I2b10b0c78e81ac9332a0665037dbdaddec395bc4
diff --git a/solenv/gbuild/platform/EMSCRIPTEN_INTEL_GCC.mk b/solenv/gbuild/platform/EMSCRIPTEN_INTEL_GCC.mk
index 0831846c3392..d9a348a42910 100644
--- a/solenv/gbuild/platform/EMSCRIPTEN_INTEL_GCC.mk
+++ b/solenv/gbuild/platform/EMSCRIPTEN_INTEL_GCC.mk
@@ -27,10 +27,9 @@ gb_LinkTarget_LDFLAGS += $(gb_EMSCRIPTEN_LDFLAGS) $(gb_EMSCRIPTEN_CPPFLAGS) $(gb
# Linker and compiler optimize + debug flags are handled in LinkTarget.mk
gb_LINKEROPTFLAGS :=
gb_LINKERSTRIPDEBUGFLAGS :=
+# This maps to g4, AKA sorce maps. The LO default would otherwise be g2!
gb_DEBUGINFO_FLAGS = -g
-gb_SUPPRESS_TESTS := $(true)
-
# cleanup addition JS and wasm files for binaries
define gb_Executable_Executable_platform
$(call gb_LinkTarget_add_auxtargets,$(2),\
@@ -50,6 +49,8 @@ $(call gb_LinkTarget_add_auxtargets,$(2),\
endef
+gb_SUPPRESS_TESTS := $(true)
+
define gb_Library_get_rpath
endef
diff --git a/vcl/Module_vcl.mk b/vcl/Module_vcl.mk
index fc38ed5b481a..3cf84ac21210 100644
--- a/vcl/Module_vcl.mk
+++ b/vcl/Module_vcl.mk
@@ -31,19 +31,13 @@ $(eval $(call gb_Module_add_targets,vcl,\
Package_skia_denylist ) \
$(if $(filter DESKTOP,$(BUILD_TYPE))$(filter EMSCRIPTEN,$(OS)), \
StaticLibrary_vclmain \
- $(if $(ENABLE_MACOSX_SANDBOX),, \
- $(if $(DISABLE_GUI),, \
- Executable_ui-previewer)) \
$(if $(filter EMSCRIPTEN LINUX MACOSX SOLARIS WNT %BSD,$(OS)), \
$(if $(DISABLE_GUI),, \
- Executable_vcldemo \
- Executable_icontest \
- Executable_visualbackendtest \
- Executable_mtfdemo ))) \
+ Executable_vcldemo ))) \
))
$(eval $(call gb_Module_add_targets,vcl,\
- $(if $(filter-out ANDROID iOS WNT,$(OS)), \
+ $(if $(filter-out EMSCRIPTEN ANDROID iOS WNT,$(OS)), \
Executable_svdemo \
Executable_fftester \
Executable_svptest \
commit 713f3e1c51419afc598889d3dec78d4741c23181
Author: Jan-Marek Glogowski <glogow at fbihome.de>
AuthorDate: Tue Jan 26 14:47:11 2021 +0100
Commit: Thorsten Behrens <thorsten.behrens at allotropia.de>
CommitDate: Fri Apr 16 15:31:51 2021 +0200
catchall
Change-Id: I94dbe94eed80bfb82a404db83249572caed7f715
diff --git a/configure.ac b/configure.ac
index 9fc394455bf5..54e6544f2423 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4232,7 +4232,7 @@ fi
# ===================================================================
HAVE_GCC_GGDB2=
-if test "$GCC" = "yes"; then
+if test "$GCC" = "yes" -a "$_os" != "Emscripten"; then
AC_MSG_CHECKING([whether $CC_BASE supports -ggdb2])
save_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS -Werror -ggdb2"
diff --git a/external/hunspell/ExternalProject_hunspell.mk b/external/hunspell/ExternalProject_hunspell.mk
index 09a0680367fb..91fd5c431ef8 100644
--- a/external/hunspell/ExternalProject_hunspell.mk
+++ b/external/hunspell/ExternalProject_hunspell.mk
@@ -28,7 +28,7 @@ $(call gb_ExternalProject_get_state_target,hunspell,build):
$(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM))\
$(if $(filter AIX,$(OS)),CFLAGS="-D_LINUX_SOURCE_COMPAT") \
$(if $(hunspell_CPPFLAGS),CPPFLAGS='$(hunspell_CPPFLAGS)') \
- CXXFLAGS="$(CXXFLAGS) $(if $(ENABLE_OPTIMIZED),$(gb_COMPILEROPTFLAGS),$(gb_COMPILERNOOPTFLAGS)) $(if $(debug),$(gb_DEBUGINFO_FLAGS))" \
+ CXXFLAGS="$(CXXFLAGS) $(gb_EMSCRIPTEN_CPPFLAGS) $(if $(ENABLE_OPTIMIZED),$(gb_COMPILEROPTFLAGS),$(gb_COMPILERNOOPTFLAGS)) $(if $(debug),$(gb_DEBUGINFO_FLAGS))" \
&& cd src/hunspell && $(MAKE) \
)
$(call gb_Trace_EndRange,hunspell,EXTERNAL)
diff --git a/sc/source/core/tool/math.cxx b/sc/source/core/tool/math.cxx
index a077d5c3521a..3c496f83833c 100644
--- a/sc/source/core/tool/math.cxx
+++ b/sc/source/core/tool/math.cxx
@@ -53,8 +53,13 @@ double power(const double& fVal1, const double& fVal2)
}
// The pow() call must had been the most recent call to check errno or exception.
if ((((math_errhandling & MATH_ERRNO) != 0) && (errno == EDOM || errno == ERANGE))
+// emscripten is currently broken by https://github.com/emscripten-core/emscripten/pull/11087
+// While the removal is correct for C99, it's not for C++11 (see http://www.cplusplus.com/reference/cfenv/FE_INEXACT/)
+// But since emscripten currently doesn't support any math exceptions, we simply ignore them
+#ifndef __EMSCRIPTEN__
|| (((math_errhandling & MATH_ERREXCEPT) != 0)
&& std::fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW))
+#endif
|| !std::isfinite(fPow))
{
fPow = CreateDoubleError(FormulaError::IllegalFPOperation);
diff --git a/solenv/gbuild/Executable.mk b/solenv/gbuild/Executable.mk
index 66b44e156904..72378956794e 100644
--- a/solenv/gbuild/Executable.mk
+++ b/solenv/gbuild/Executable.mk
@@ -47,8 +47,7 @@ $(call gb_Executable_get_runtime_target,%) :
$(call gb_Executable_get_clean_target,%) :
$(call gb_Helper_abbreviate_dirs,\
rm -f $(call gb_Executable_get_target,$*) \
- $(call gb_Executable_get_runtime_target,$*) \
- $(AUXTARGETS))
+ $(call gb_Executable_get_runtime_target,$*))
gb_Executable__get_dir_for_layer = $(patsubst $(1):%,%,$(filter $(1):%,$(call gb_Executable_LAYER_DIRS)))
gb_Executable__get_dir_for_layer_for_build = $(patsubst $(1):%,%,$(filter $(1):%,$(call gb_Executable_LAYER_DIRS_FOR_BUILD)))
@@ -73,7 +72,6 @@ $(call gb_LinkTarget_add_libs,$(2),$(gb_STDLIBS))
$(call gb_Executable_get_runtime_target,$(1)) :| $(dir $(call gb_Executable_get_runtime_target,$(1))).dir
$(call gb_Executable_get_runtime_target,$(1)) : $(call gb_Executable_get_target_for_build,$(1))
$(call gb_Executable_get_clean_target,$(1)) : $(call gb_LinkTarget_get_clean_target,$(2))
-$(call gb_Executable_get_clean_target,$(1)) : AUXTARGETS :=
$(call gb_Executable_Executable_platform,$(1),$(2),$(gb_Executable_BINDIR)/$(1).lib)
$$(eval $$(call gb_Module_register_target,$(call gb_Executable_get_target,$(1)),$(call gb_Executable_get_clean_target,$(1))))
diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk
index df5bb9a39834..eab38bd528a4 100644
--- a/solenv/gbuild/LinkTarget.mk
+++ b/solenv/gbuild/LinkTarget.mk
@@ -50,11 +50,16 @@ $(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
diff --git a/solenv/gbuild/platform/EMSCRIPTEN_INTEL_GCC.mk b/solenv/gbuild/platform/EMSCRIPTEN_INTEL_GCC.mk
index 8642c4469afe..0831846c3392 100644
--- a/solenv/gbuild/platform/EMSCRIPTEN_INTEL_GCC.mk
+++ b/solenv/gbuild/platform/EMSCRIPTEN_INTEL_GCC.mk
@@ -22,19 +22,33 @@ gb_EMSCRIPTEN_EXCEPT := -s DISABLE_EXCEPTION_CATCHING=0
gb_LinkTarget_CFLAGS += $(gb_EMSCRIPTEN_CPPFLAGS) $(gb_EMSCRIPTEN_QTDEFS)
gb_LinkTarget_CXXFLAGS += $(gb_EMSCRIPTEN_CPPFLAGS) $(gb_EMSCRIPTEN_QTDEFS) $(gb_EMSCRIPTEN_EXCEPT)
+gb_LinkTarget_LDFLAGS += $(gb_EMSCRIPTEN_LDFLAGS) $(gb_EMSCRIPTEN_CPPFLAGS) $(gb_EMSCRIPTEN_EXCEPT)
-# WASM is also optimized at link time, but ignores linker flags, so wants $(gb_COMPILEROPTFLAGS)
-#gb_LINKEROPTFLAGS :=
+# Linker and compiler optimize + debug flags are handled in LinkTarget.mk
+gb_LINKEROPTFLAGS :=
gb_LINKERSTRIPDEBUGFLAGS :=
+gb_DEBUGINFO_FLAGS = -g
-gb_LinkTarget_LDFLAGS += $(gb_EMSCRIPTEN_LDFLAGS) $(gb_EMSCRIPTEN_CPPFLAGS) $(gb_EMSCRIPTEN_EXCEPT)
-gb_LinkTarget_LDFLAGS += $(if $(ENABLE_OPTIMIZED),$(gb_COMPILEROPTFLAGS), \
- $(if $(ENABLE_OPTIMIZED_DEBUG),$(gb_COMPILERDEBUGOPTFLAGS),$(gb_COMPILERNOOPTFLAGS)))
+gb_SUPPRESS_TESTS := $(true)
-#gb_COMPILEROPTFLAGS := -O0 -g
-#gb_LinkTarget_LDFLAGS += $(gb_EMSCRIPTEN_LDFLAGS) $(gb_EMSCRIPTEN_CPPFLAGS) $(gb_EMSCRIPTEN_EXCEPT) $(gb_COMPILEROPTFLAGS)
+# cleanup addition JS and wasm files for binaries
+define gb_Executable_Executable_platform
+$(call gb_LinkTarget_add_auxtargets,$(2),\
+ $(patsubst %.lib,%.wasm,$(3)) \
+ $(patsubst %.lib,%.js,$(3)) \
+ $(patsubst %.lib,%.worker.js,$(3)) \
+)
-gb_SUPPRESS_TESTS := $(true)
+endef
+
+define gb_CppunitTest_CppunitTest_platform
+$(call gb_LinkTarget_add_auxtargets,$(2),\
+ $(patsubst %.lib,%.wasm,$(3)) \
+ $(patsubst %.lib,%.js,$(3)) \
+ $(patsubst %.lib,%.worker.js,$(3)) \
+)
+
+endef
define gb_Library_get_rpath
endef
diff --git a/vcl/Module_vcl.mk b/vcl/Module_vcl.mk
index 3cf84ac21210..fc38ed5b481a 100644
--- a/vcl/Module_vcl.mk
+++ b/vcl/Module_vcl.mk
@@ -31,13 +31,19 @@ $(eval $(call gb_Module_add_targets,vcl,\
Package_skia_denylist ) \
$(if $(filter DESKTOP,$(BUILD_TYPE))$(filter EMSCRIPTEN,$(OS)), \
StaticLibrary_vclmain \
+ $(if $(ENABLE_MACOSX_SANDBOX),, \
+ $(if $(DISABLE_GUI),, \
+ Executable_ui-previewer)) \
$(if $(filter EMSCRIPTEN LINUX MACOSX SOLARIS WNT %BSD,$(OS)), \
$(if $(DISABLE_GUI),, \
- Executable_vcldemo ))) \
+ Executable_vcldemo \
+ Executable_icontest \
+ Executable_visualbackendtest \
+ Executable_mtfdemo ))) \
))
$(eval $(call gb_Module_add_targets,vcl,\
- $(if $(filter-out EMSCRIPTEN ANDROID iOS WNT,$(OS)), \
+ $(if $(filter-out ANDROID iOS WNT,$(OS)), \
Executable_svdemo \
Executable_fftester \
Executable_svptest \
commit cbf38d3c071a00ec4074c0e04de1cbf04d5301b3
Author: Jan-Marek Glogowski <glogow at fbihome.de>
AuthorDate: Mon Jan 25 15:00:53 2021 +0100
Commit: Thorsten Behrens <thorsten.behrens at allotropia.de>
CommitDate: Fri Apr 16 15:31:51 2021 +0200
catchall
Change-Id: If41abaa40cf6aef38400083d3afa3d82d446df43
diff --git a/Makefile.in b/Makefile.in
index 1e0d1a5d0968..eaacb86b8f7b 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -104,7 +104,7 @@ $(1).clean $(1).showdeliverables:
cd $(SRCDIR)/$(2) && $$(MAKE) $(PARALLELISM_OPTION) $(GMAKE_OPTIONS) $$(patsubst $(1).%,%,$$@)
$(1).all: bootstrap fetch
- $$(MAKE) $(PARALLELISM_OPTION) $(IWYU_OPTION) $(GMAKE_OPTIONS) -f $(SRCDIR)/Makefile.gbuild $(WORKDIR)/Module/$(1) $(if $(CROSS_COMPILING),,$(WORKDIR)/Module/check/$(1) $(WORKDIR)/Module/slowcheck/$(1))
+ $$(MAKE) $(PARALLELISM_OPTION) $(IWYU_OPTION) $(GMAKE_OPTIONS) -f $(SRCDIR)/Makefile.gbuild $(WORKDIR)/Module/$(1) $(WORKDIR)/Module/check/$(1) $(WORKDIR)/Module/slowcheck/$(1)
endef
diff --git a/Repository.mk b/Repository.mk
index 326fcc0edf0f..2c7f3c2565b6 100644
--- a/Repository.mk
+++ b/Repository.mk
@@ -555,6 +555,7 @@ $(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE, \
$(if $(filter MSC,$(COM)),cli_cppuhelper) \
$(if $(filter $(OS),ANDROID),lo-bootstrap) \
$(if $(filter $(OS),MACOSX),OOoSpotlightImporter) \
+ cppunitmain \
))
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_URE,ure, \
@@ -594,7 +595,6 @@ $(eval $(call gb_Helper_register_libraries_for_install,PRIVATELIBS_URE,ure, \
proxyfac \
reflection \
reg \
- sal_textenc \
stocservices \
store \
unoidl \
@@ -602,6 +602,10 @@ $(eval $(call gb_Helper_register_libraries_for_install,PRIVATELIBS_URE,ure, \
xmlreader \
))
+$(eval $(call gb_Helper_register_plugins_for_install,PRIVATELIBS_URE,ure, \
+ sal_textenc \
+))
+
$(eval $(call gb_Helper_register_libraries_for_install,PLAINLIBS_OOO,ooo, \
$(if $(ENABLE_GSTREAMER_1_0),avmediagst) \
$(if $(filter WNT,$(OS)),avmediawin) \
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index adc46c6b0cd7..27178925622b 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -3865,7 +3865,7 @@ endif # SYSTEM_JFREEREPORT
# FIXME: the library target should be for build too
define gb_Executable__register_bestreversemap
$(call gb_Executable_add_runtime_dependencies,bestreversemap,\
- $(if $(filter $(OS),ANDROID),,$(if $(filter TRUE,$(DISABLE_DYNLOADING)),,$(call gb_Library_get_target,sal_textenc))) \
+ $(call gb_Library_get_target,sal_textenc)) \
)
endef
@@ -3883,7 +3883,7 @@ endef
define gb_Executable__register_cppumaker
$(call gb_Executable_add_runtime_dependencies,cppumaker,\
- $(if $(filter $(OS),ANDROID),,$(if $(filter TRUE,$(DISABLE_DYNLOADING)),,$(call gb_Library_get_target,sal_textenc))) \
+ $(call gb_Library_get_target,sal_textenc)) \
)
endef
diff --git a/configure.ac b/configure.ac
index 85207c9ff3d8..9fc394455bf5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -12507,7 +12507,11 @@ then
fi
dnl Check for qmake5
- AC_PATH_PROGS( QMAKE5, [qmake], no, [$QT5DIR/bin:$PATH])
+ if test -n "$QT5DIR"; then
+ AC_PATH_PROG(QMAKE5, [qmake], no, [$QT5DIR/bin])
+ else
+ AC_PATH_PROGS(QMAKE5, [qmake-qt5 qmake], no)
+ fi
if test "$QMAKE5" = "no"; then
AC_MSG_ERROR([Qmake not found. Please specify the root of your Qt5 installation by exporting QT5DIR before running "configure".])
else
diff --git a/dbaccess/Module_dbaccess.mk b/dbaccess/Module_dbaccess.mk
index 49bd9d202c7f..55937faeaf9b 100644
--- a/dbaccess/Module_dbaccess.mk
+++ b/dbaccess/Module_dbaccess.mk
@@ -53,6 +53,7 @@ $(eval $(call gb_Module_add_check_targets,dbaccess,\
))
endif
+ifneq ($(filter SCRIPTING,$(BUILD_TYPE)),)
$(eval $(call gb_Module_add_check_targets,dbaccess,\
CppunitTest_dbaccess_dialog_save \
CppunitTest_dbaccess_empty_stdlib_save \
@@ -60,6 +61,7 @@ $(eval $(call gb_Module_add_check_targets,dbaccess,\
CppunitTest_dbaccess_macros_test \
CppunitTest_dbaccess_hsqlschema_import \
))
+endif
# this test fails 50% of the time on the mac jenkins buildbots
ifeq ($(ENABLE_JAVA),TRUE)
diff --git a/external/cppunit/ExternalProject_cppunit.mk b/external/cppunit/ExternalProject_cppunit.mk
index 63116af294d1..92db8a1953f3 100644
--- a/external/cppunit/ExternalProject_cppunit.mk
+++ b/external/cppunit/ExternalProject_cppunit.mk
@@ -55,7 +55,8 @@ $(call gb_ExternalProject_get_state_target,cppunit,build) :
$(if $(filter WNT,$(OS)),LDFLAGS="-Wl$(COMMA)--enable-runtime-pseudo-reloc-v2") \
$(if $(filter SOLARIS,$(OS)),LIBS="-lm") \
$(if $(filter ANDROID,$(OS)),LIBS="$(gb_STDLIBS)") \
- CXXFLAGS="$(cppunit_CXXFLAGS)" \
+ $(if $(verbose),--disable-silent-rules,--enable-silent-rules) \
+ CXXFLAGS="$(cppunit_CXXFLAGS) $(gb_EMSCRIPTEN_CPPFLAGS)" \
&& cd src \
&& $(MAKE) \
)
diff --git a/external/cppunit/disable-dynloading.patch b/external/cppunit/disable-dynloading.patch
index a9aa37f6f45d..62ed1deeb635 100644
--- a/external/cppunit/disable-dynloading.patch
+++ b/external/cppunit/disable-dynloading.patch
@@ -17,7 +17,7 @@
+// Actually this is for iOS and Android where we build the cppunit tests libraries
+// as plain archives and just link them statically into test fixture programs,
+// and don't want any stinking duplicate main(), but shouldn't hurt for MacOSX either.
-+#elif defined(__APPLE__) || defined(__ANDROID__)
++#elif defined(__APPLE__) || defined(__ANDROID__) || defined(__EMSCRIPTEN__)
+#define CPPUNIT_PLUGIN_IMPLEMENT_MAIN() \
+ typedef char __CppUnitPlugInImplementMainDummyTypeDef
// Unix
diff --git a/external/openssl/ExternalProject_openssl.mk b/external/openssl/ExternalProject_openssl.mk
index 768755c2fbde..4c5d630721c8 100644
--- a/external/openssl/ExternalProject_openssl.mk
+++ b/external/openssl/ExternalProject_openssl.mk
@@ -50,7 +50,7 @@ OPENSSL_PLATFORM := \
$(if $(filter X86_64,$(CPUNAME)),darwin64-x86_64-cc)\
$(if $(filter AARCH64,$(CPUNAME)),darwin64-arm64-cc)\
,\
- $(if $(filter EMSCRIPTEN,$(OS)),no-engine no-dso no-dgram no-sock no-srtp no-err no-ocsp no-psk no-ts no-asm) \
+ $(if $(filter EMSCRIPTEN,$(OS)),no-engine no-dso no-dgram no-srtp no-err no-ocsp no-psk no-ts no-asm) \
)\
)\
)\
diff --git a/idlc/Module_idlc.mk b/idlc/Module_idlc.mk
index a20d105cd829..c97e4a56463e 100644
--- a/idlc/Module_idlc.mk
+++ b/idlc/Module_idlc.mk
@@ -16,10 +16,6 @@ $(eval $(call gb_Module_add_targets,idlc,\
Executable_idlc \
))
-$(eval $(call gb_Module_add_check_targets,idlc,\
- CustomTarget_parser_test \
-))
-
endif
# vim:set noet sw=4 ts=4:
diff --git a/include/vcl/glxtestprocess.hxx b/include/vcl/glxtestprocess.hxx
index c8668a69d50f..83f6cb778d25 100644
--- a/include/vcl/glxtestprocess.hxx
+++ b/include/vcl/glxtestprocess.hxx
@@ -13,7 +13,7 @@
#include <config_features.h>
#if defined(UNX) && !defined MACOSX && !defined IOS && !defined ANDROID && HAVE_FEATURE_UI \
- && HAVE_FEATURE_OPENGL
+ && HAVE_FEATURE_OPENGL && !defined EMSCRIPTEN
/* Run test for OpenGL support in own process to avoid crash with broken
* OpenGL drivers. Start process as early as possible.
* The process will be reaped late in Desktop::Main (desktop/source/app/app.cxx).
diff --git a/registry/Module_registry.mk b/registry/Module_registry.mk
index aa7ec1ab3ecc..358addddcc8f 100644
--- a/registry/Module_registry.mk
+++ b/registry/Module_registry.mk
@@ -20,8 +20,8 @@ $(eval $(call gb_Module_add_targets,registry,\
) \
))
-ifneq (,$(DISABLE_DYNLOADING))
-ifeq ($(ENABLE_MACOSX_SANDBOX),)
+ifeq (,$(DISABLE_DYNLOADING))
+ifneq (,$(ENABLE_MACOSX_SANDBOX))
$(eval $(call gb_Module_add_check_targets,registry, \
CustomTarget_regcompare_test \
diff --git a/sal/Library_sal.mk b/sal/Library_sal.mk
index d783c84e39e9..53ee65ca8015 100644
--- a/sal/Library_sal.mk
+++ b/sal/Library_sal.mk
@@ -128,32 +128,6 @@ $(eval $(call gb_Library_add_cxxflags,sal,\
))
endif
-sal_textenc_code= \
- sal/textenc/context \
- sal/textenc/convertbig5hkscs \
- sal/textenc/converteuctw \
- sal/textenc/convertgb18030 \
- sal/textenc/convertisciidevangari \
- sal/textenc/convertiso2022cn \
- sal/textenc/convertiso2022jp \
- sal/textenc/convertiso2022kr \
- sal/textenc/convertsinglebytetobmpunicode \
- sal/textenc/tables \
- sal/textenc/tcvtbyte \
- sal/textenc/tcvtmb \
- sal/textenc/tcvtutf7 \
-
-ifeq ($(OS),ANDROID)
-$(eval $(call gb_Library_add_exception_objects,sal,\
- $(sal_textenc_code) \
-))
-else ifeq ($(DISABLE_DYNLOADING),TRUE)
-
-$(eval $(call gb_Library_add_exception_objects,sal,\
- $(sal_textenc_code) \
-))
-endif
-
ifneq ($(OS),WNT)
$(eval $(call gb_Library_add_exception_objects,sal,\
sal/osl/unx/backtraceapi \
diff --git a/sal/Library_sal_textenc.mk b/sal/Library_sal_textenc.mk
index 15546ba4969e..0fba5d083499 100644
--- a/sal/Library_sal_textenc.mk
+++ b/sal/Library_sal_textenc.mk
@@ -10,11 +10,9 @@
$(eval $(call gb_Library_Library,sal_textenc))
-$(eval $(call gb_Library_use_external,sal_textenc,boost_headers))
+$(eval $(call gb_Library_set_plugin_for,sal_textenc,sal))
-$(eval $(call gb_Library_use_libraries,sal_textenc,\
- sal \
-))
+$(eval $(call gb_Library_use_external,sal_textenc,boost_headers))
$(eval $(call gb_Library_add_exception_objects,sal_textenc,\
sal/textenc/context \
diff --git a/sal/Module_sal.mk b/sal/Module_sal.mk
index 1a190037f05b..a24fe27ab869 100644
--- a/sal/Module_sal.mk
+++ b/sal/Module_sal.mk
@@ -10,11 +10,11 @@
$(eval $(call gb_Module_Module,sal))
$(eval $(call gb_Module_add_targets,sal,\
- $(if $(CROSS_COMPILING),,$(if $(filter TRUE,$(DISABLE_DYNLOADING)),,Executable_cppunittester)) \
+ $(if $(or $(CROSS_COMPILING),$(DISABLE_DYNLOADING)),StaticLibrary_cppunitmain,Executable_cppunittester) \
$(if $(filter $(OS),ANDROID), \
Library_lo-bootstrap) \
Library_sal \
- $(if $(filter $(OS),ANDROID),,$(if $(filter TRUE,$(DISABLE_DYNLOADING)),,Library_sal_textenc)) \
+ Library_sal_textenc \
))
ifneq (,$(filter DESKTOP,$(BUILD_TYPE)))
@@ -23,6 +23,8 @@ $(eval $(call gb_Module_add_targets,sal,\
Executable_osl_process_child \
))
+endif
+
$(eval $(call gb_Module_add_check_targets,sal,\
$(if $(filter TRUE,$(DISABLE_DYNLOADING)),,CppunitTest_Module_DLL) \
$(if $(filter WNT,$(OS)),CppunitTest_sal_comtools) \
@@ -35,6 +37,4 @@ $(eval $(call gb_Module_add_check_targets,sal,\
CompilerTest_sal_rtl_oustring)) \
))
-endif
-
# vim: set noet sw=4 ts=4:
diff --git a/sal/StaticLibrary_cppunitmain.mk b/sal/StaticLibrary_cppunitmain.mk
new file mode 100644
index 000000000000..30c64d7b3980
--- /dev/null
+++ b/sal/StaticLibrary_cppunitmain.mk
@@ -0,0 +1,40 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,cppunitmain))
+
+$(eval $(call gb_StaticLibrary_set_include,cppunitmain,\
+ $$(INCLUDE) \
+ -I$(SRCDIR)/sal/inc \
+))
+
+$(eval $(call gb_StaticLibrary_use_libraries,cppunitmain,\
+ sal \
+ unoexceptionprotector \
+))
+
+$(eval $(call gb_StaticLibrary_use_externals,cppunitmain,\
+ boost_headers \
+ cppunit \
+))
+
+$(eval $(call gb_StaticLibrary_add_exception_objects,cppunitmain,\
+ sal/cppunittester/cppunittester \
+))
+
+ifeq ($(COM),MSC)
+
+$(eval $(call gb_StaticLibrary_add_ldflags,cppunitmain,\
+ /STACK:10000000 \
+))
+
+endif
+
+# vim: set noet sw=4 ts=4:
diff --git a/sc/Module_sc.mk b/sc/Module_sc.mk
index ea4fc94b8e9e..86b1d25f9670 100644
--- a/sc/Module_sc.mk
+++ b/sc/Module_sc.mk
@@ -35,6 +35,7 @@ $(eval $(call gb_Module_add_targets,sc,\
endif
ifneq ($(OS),iOS)
+ifneq ($(filter SCRIPTING,$(BUILD_TYPE)),)
$(eval $(call gb_Module_add_check_targets,sc,\
Library_scqahelper \
$(if $(and $(filter $(COM),MSC),$(MERGELIBS)),, \
@@ -50,6 +51,7 @@ $(eval $(call gb_Module_add_check_targets,sc,\
CppunitTest_sc_cache_test \
CppunitTest_sc_shapetest \
))
+endif
ifneq ($(DISABLE_GUI),TRUE)
ifeq ($(OS),LINUX)
diff --git a/sccomp/Module_sccomp.mk b/sccomp/Module_sccomp.mk
index 8babadc3e41e..e211ee26f958 100644
--- a/sccomp/Module_sccomp.mk
+++ b/sccomp/Module_sccomp.mk
@@ -29,7 +29,7 @@ $(eval $(call gb_Module_add_l10n_targets,sccomp,\
$(eval $(call gb_Module_add_check_targets,sccomp,\
CppunitTest_sccomp_solver \
- $(if $(and $(filter INTEL,$(CPUNAME)),$(filter -fsanitize=%,$(gb_CXX))),,CppunitTest_sccomp_swarmsolvertest) \
... etc. - the rest is truncated
More information about the Libreoffice-commits
mailing list