office-gobmx/desktop
Stephan Bergmann 13595f6220 Fix --enable-online-update-mar on Windows
The code had apparently rotten a bit,

* a wchar_t vs. char16_t confusion in desktop/source/app/updater.cxx

* code broken by 926e4e469d "Rename online updater
  functions and strcmp relpath" in
  onlineupdate/source/update/updater/updater.cxx

* -DUNICODE missing in some places (so that plain Windows functions resolve to
  the ...W variant), which had been set centrally in the past IIRC

* silencing some warnings like "C4267: 'initializing': conversion from 'size_t'
  to 'int', possible loss of data" (where silencing is the right thing to do for
  effectively extern code); no sure why those apparently didn't hit in the past,
  maybe it is all warnings that compilers only started to emit in recent years,
  or only for recent -std:c++... modes

* silencing some "Conversion from string literal loses const qualifier" errors
  with -Zc:strictStrings-; these hit at least with recent VS 2022 Preview and
  --with-latest-c++, where -Zc:strictStrings is apparently now on by default

Change-Id: I7fe46f5aa2b42fc9c03f24f7f0236512b4d3b936
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160451
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2023-12-08 09:49:41 +01:00
..
inc simplify and modernise ScopedBitmapAccess 2023-12-07 09:32:14 +01:00
qa Extended loplugin:ostr: desktop 2023-11-29 22:58:26 +01:00
scripts Use "set logging enabled on/off" instead of deprecated "set logging on/off" 2023-11-30 13:47:53 +01:00
source Fix --enable-online-update-mar on Windows 2023-12-08 09:49:41 +01:00
test/deployment Remove support for 32-bit S390 2023-01-27 07:29:14 +00:00
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 Drop support for OpenGL denylist on X11 2022-03-28 14:31:07 +02:00
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 Add LibreOffice Crash extension 2022-02-14 21:39:35 +01:00
Extension_test-passive.mk
GeneratedPackage_desktop_unopackages_install.mk
IwyuFilter_desktop.yaml
Jar_active_java.mk
Jar_passive_java.mk Generally determine Rdb content from gb_*_set_componentfile calls 2021-12-10 08:14:24 +01:00
Library_active_native.mk
Library_crashextension.mk Add LibreOffice Crash extension 2022-02-14 21:39:35 +01:00
Library_crashreport.mk officecfg,*: add Office::Security::Net::AllowInsecureProtocols 2023-11-09 16:51:31 +01:00
Library_deployment.mk Generally determine Rdb content from gb_*_set_componentfile calls 2021-12-10 08:14:24 +01:00
Library_deploymentgui.mk Generally determine Rdb content from gb_*_set_componentfile calls 2021-12-10 08:14:24 +01:00
Library_deploymentmisc.mk
Library_migrationoo2.mk Generally determine Rdb content from gb_*_set_componentfile calls 2021-12-10 08:14:24 +01:00
Library_migrationoo3.mk Move tools/diagnose_ex.h to comphelper/diagnose_ex.hxx 2022-08-18 17:10:19 +02:00
Library_offacc.mk officecfg,desktop: add Office::Security::Net::AllowInsecureUNORemoteProtocol 2023-11-09 17:11:00 +01:00
Library_passive_native.mk Generally determine Rdb content from gb_*_set_componentfile calls 2021-12-10 08:14:24 +01:00
Library_sofficeapp.mk Fix --disable-curl build 2023-09-14 12:55:33 +02:00
Library_spl.mk Generally determine Rdb content from gb_*_set_componentfile calls 2021-12-10 08:14:24 +01:00
Library_unopkgapp.mk
lokclipboard.component Make LOKClipboard available to other modules 2023-02-06 17:02:54 +00:00
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 Unify condition names and fix "else" paths 2022-01-08 12:26:30 +01:00
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 Generally determine Rdb content from gb_*_set_componentfile calls 2021-12-10 08:14:24 +01:00
Rdb_crashextension.mk Add LibreOffice Crash extension 2022-02-14 21:39:35 +01:00
Rdb_passive_generic.mk Generally determine Rdb content from gb_*_set_componentfile calls 2021-12-10 08:14:24 +01:00
Rdb_passive_platform.mk Generally determine Rdb content from gb_*_set_componentfile calls 2021-12-10 08:14:24 +01:00
README.md Add LibreOffice Crash extension 2022-02-14 21:39:35 +01:00
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