office-gobmx/desktop
Sarper Akdemir 841f898574 JavaScript uno bindings for WASM with Embind - first cut
A rough implementation of uno bindings for LOWA using embind.

Adds new parameter '-W' to cppumaker to generate _embind.cxx
files alongside .hdl & .hpp.

For usage examples see static/README.wasm.md

Change-Id: Iee5d05e37bfba8e101c08212b15c05f7f2fa6c33
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156273
Tested-by: Jenkins
Reviewed-by: Sarper Akdemir <sarper.akdemir.extern@allotropia.de>
2023-09-18 19:59:57 +02:00
..
inc tdf#129713 Output message when using "--cat" with other LO instances running 2023-08-02 08:25:37 +02:00
qa Added parent / child relationship to comments. 2023-09-12 17:09:18 +02:00
scripts
source Remove duplicated include 2023-09-02 12:03:21 +02:00
test/deployment
uiconfig/ui fix .ui indent 2023-07-25 20:49:20 +02:00
unx/source tdf#156825 Half of the splash screen is visible on both monitors under Linux 2023-08-22 13:15:57 +02:00
util
win32/source
AllLangMoTarget_dkt.mk
CppunitTest_desktop_app.mk
CppunitTest_desktop_dialogs_test.mk
CppunitTest_desktop_lib.mk Test paintPartTile behavior for views with different schemes 2023-08-03 09:14:19 +02:00
CppunitTest_desktop_lokinit.mk
CppunitTest_desktop_version.mk
CustomTarget_desktop_unopackages_install.mk
CustomTarget_soffice.mk Set entitlements in non-release in $(INSTROOTBASE) and .dmg package 2023-06-07 22:08:50 +02:00
Executable_minidump_upload.mk
Executable_oosplash.mk tdf#156825 Half of the splash screen is visible on both monitors under Linux 2023-08-22 13:15:57 +02:00
Executable_quickstart.mk
Executable_sbase.mk
Executable_scalc.mk
Executable_sdraw.mk
Executable_simpress.mk
Executable_smath.mk
Executable_soffice_bin.mk JavaScript uno bindings for WASM with Embind - first cut 2023-09-18 19:59:57 +02:00
Executable_soffice_com.mk
Executable_soffice_exe.mk
Executable_soffice_safe.mk
Executable_sweb.mk
Executable_swriter.mk
Executable_unoinfo.mk
Executable_unopkg.mk
Executable_unopkg_bin.mk
Executable_unopkg_com.mk
Extension_test-active.mk
Extension_test-crashextension.mk
Extension_test-passive.mk
GeneratedPackage_desktop_unopackages_install.mk
IwyuFilter_desktop.yaml
Jar_active_java.mk
Jar_passive_java.mk
Library_active_native.mk
Library_crashextension.mk
Library_crashreport.mk
Library_deployment.mk
Library_deploymentgui.mk
Library_deploymentmisc.mk
Library_migrationoo2.mk
Library_migrationoo3.mk
Library_offacc.mk
Library_passive_native.mk
Library_sofficeapp.mk Fix --disable-curl build 2023-09-14 12:55:33 +02:00
Library_spl.mk
Library_unopkgapp.mk
lokclipboard.component
Makefile
Module_desktop.mk Set entitlements in non-release in $(INSTROOTBASE) and .dmg package 2023-06-07 22:08:50 +02:00
Package_branding.mk
Package_branding_custom.mk
Package_sbase_sh.mk
Package_scalc_sh.mk
Package_scripts.mk
Package_sdraw_sh.mk
Package_simpress_sh.mk
Package_smath_sh.mk
Package_soffice_sh.mk
Package_swriter_sh.mk
Pagein_calc.mk
Pagein_common.mk
Pagein_draw.mk
Pagein_impress.mk
Pagein_writer.mk
Pyuno_passive_python.mk
Rdb_crashextension.mk
Rdb_passive_generic.mk
Rdb_passive_platform.mk
README.md
README.vars
StaticLibrary_winlauncher.mk
StaticLibrary_winloader.mk
UIConfig_deployment.mk
WinResTarget_quickstart.mk
WinResTarget_sbase.mk
WinResTarget_scalc.mk
WinResTarget_sdraw.mk
WinResTarget_simpress.mk
WinResTarget_smath.mk
WinResTarget_soffice.mk
WinResTarget_sofficebin.mk
WinResTarget_sweb.mk
WinResTarget_swriter.mk

LibreOffice Binary

Code for the LibreOffice main binary (soffice) resides here. The soffice_main function for the soffice binary can be found here.

Stable Interface

Some of the artifacts built here are part of a LibreOffice installation set's stable interface, which (programmatic) clients can depend on. Among them are:

soffice

In the program directory (program/ on Linux and Windows, Contents/MacOS/ on macOS).

unoinfo

In the program directory (program/ on Linux and Windows, Contents/MacOS/ on macOS).

When called with a sole argument of c++, it prints to stdout an absolute pathname denoting the directory where the public URE libraries are found.

When called with a sole argument of java, it prints to stdout a marker character (either an ASCII '0' or '1') followed by a sequence of zero or more absolute pathnames denoting jars or directories that need to be included in a class loader's search locations.

If the marker character is '0' (on Linux and macOS), the pathnames are encoded as bytes, and any two pathnames in the sequence are separated from each other by NUL bytes.

If the marker character is '1' (on Windows), the pathnames are encoded as UTF-16-LE two-byte code units, and any two pathnames in the sequence are separated from each other by two-byte NUL code units.

Other Binaries

oosplash

Splash screen for the LibreOffice soffice binary.

Extensions

The directory test/deployment contains some extensions to be used for testing:

  • test/deployment/crashextension: C++ extension to make LibreOffice crash. Useful for testing Crashreporter.
    • Build with Extension_test-crashextension.
    • Extension can be found in workdir/Extension/test-crashextension.oxt
  • test/deployment/passive: C++, Java and Python extension samples with passive registration.
    • Build with make Extension_test-passive.
    • Extension can be found in workdir/Extension/test-passive.oxt
  • test/deployment/active: C++, Java and Python extension samples with active registration.
    • Build with make Extension_test-active.
    • Extension can be found in workdir/Extension/test-active.oxt