[Libreoffice-commits] core.git: Branch 'feature/wasm' - bin/run cppuhelper/source cppu/source solenv/bin solenv/gbuild static/CustomTarget_components.mk vcl/wasm

Jan-Marek Glogowski (via logerrit) logerrit at kemper.freedesktop.org
Wed Mar 24 15:49:18 UTC 2021


 bin/run                           |    2 +-
 cppu/source/uno/lbmap.cxx         |    2 --
 cppuhelper/source/paths.cxx       |    8 ++++++++
 solenv/bin/native-code.py         |    9 +++++++++
 solenv/gbuild/CppunitTest.mk      |    1 +
 solenv/gbuild/gbuild.mk           |    1 +
 static/CustomTarget_components.mk |    2 +-
 vcl/wasm/salplug.cxx              |    7 ++++++-
 8 files changed, 27 insertions(+), 5 deletions(-)

New commits:
commit b91499f4ae749d483e0ea917669aa3bfb89e49ad
Author:     Jan-Marek Glogowski <glogow at fbihome.de>
AuthorDate: Wed Mar 24 16:46:09 2021 +0100
Commit:     Jan-Marek Glogowski <glogow at fbihome.de>
CommitDate: Wed Mar 24 16:48:15 2021 +0100

    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 27b8a7b12fc1..b3543edeed92 100755
--- a/solenv/bin/native-code.py
+++ b/solenv/bin/native-code.py
@@ -694,6 +694,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,
@@ -701,6 +708,7 @@ factory_map = {
     'calc' : calc_factory_list,
     'draw' : draw_factory_list,
     'writer' : writer_factory_list,
+    'desktop' : desktop_factory_list,
     }
 
 constructor_map = {
@@ -710,6 +718,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)
 {


More information about the Libreoffice-commits mailing list