WASM --enable-wasm-strip now skips lots of LO code

Desktop / LibreOffice - Armin Le Grand (Allotropia) [me.com] - 20 January 2022 11:28 UTC

... resulting in a stripped-down, Writer-only build to decrease the resulting WASM bytecode size.

It removes the following code from the build:
- All other major modules: Base, Calc, Chart, Draw, Impress and Math and related writerperfect filters
- The premultiply tables
- The (auto-)recovery functionality
- All accessibility (but not the accessibility document checker)
- The LanguageGuess component
- EPUB support
- The start center / BackingWindow
- The TipOfTheDay functionality
- The splash screen communication

Currently crashs with anything different then soffice --writer. Closing the document also still crashes.

FYI: many of these features are now behind ENABLE_WASM_STRIP_* defines, but they normally don't work on their own, globally! That's because we started with stripping the main components.

Change-Id: Ib9c0f9452815910c0a2aceaf142ba1ad4a9cb0d7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126182

02140554ee1d WASM --enable-wasm-strip now skips lots of LO code
Repository.mk | 93 +++++++++++++++------
RepositoryExternal.mk | 4 +
RepositoryModule_host.mk | 44 ++++++++--
basctl/Library_basctl.mk | 5 ++
chart2/Library_chartcontroller.mk | 5 ++
.../controller/main/ChartController_TextEdit.cxx | 2 +
config_host.mk.in | 17 +++-
config_host/config_wasm_strip.h.in | 19 +++++
configure.ac | 16 ++++
cui/Library_cui.mk | 14 +++-
cui/UIConfig_cui.mk | 7 +-
cui/source/factory/dlgfact.cxx | 27 ++++++-
desktop/Module_desktop.mk | 4 +-
desktop/source/app/app.cxx | 31 ++++++-
drawinglayer/Library_drawinglayer.mk | 11 ++-
editeng/Library_editeng.mk | 5 ++
editeng/source/misc/splwrap.cxx | 6 ++
extensions/Module_extensions.mk | 2 +
external/hunspell/StaticLibrary_hunspell.mk | 7 +-
external/hyphen/ExternalProject_hyphen.mk | 2 +
external/mythes/ExternalProject_mythes.mk | 2 +
extras/Module_extras.mk | 2 +-
framework/Library_fwk.mk | 9 ++-
framework/util/fwk.component | 1 +
framework/util/fwk.component.autorecovery | 7 ++
.../source/breakiterator/breakiteratorImpl.cxx | 1 +
include/vcl/BitmapTools.hxx | 4 +
lingucomponent/Library_guesslang.mk | 7 +-
lingucomponent/Module_lingucomponent.mk | 12 ++-
oox/Library_oox.mk | 50 +++++++-----
oox/source/drawingml/shape.cxx | 12 +++
oox/source/export/shapes.cxx | 9 ++-
oox/source/ppt/pptimport.cxx | 8 +-
oox/source/shape/ShapeFilterBase.cxx | 7 ++
sd/Library_sd.mk | 29 ++++---
sfx2/Library_sfx.mk | 17 +++-
sfx2/source/appl/appserv.cxx | 6 ++
sfx2/source/view/viewfrm.cxx | 8 ++
sfx2/util/sfx.component | 1 +
sfx2/util/sfx.component.extended | 7 ++
solenv/gbuild/extensions/pre_MergedLibsList.mk | 2 +-
svx/Library_svx.mk | 25 ++++--
svx/Library_svxcore.mk | 4 +
svx/source/dialog/charmap.cxx | 12 +++
svx/source/dialog/dlgctrl.cxx | 22 +++++
svx/source/dialog/frmsel.cxx | 24 +++++-
svx/source/dialog/graphctl.cxx | 9 +++
svx/source/dialog/searchcharmap.cxx | 4 +
svx/source/dialog/weldeditview.cxx | 14 ++++
svx/util/svx.component | 1 +
svx/util/svx.component.recoveryui | 7 ++
svx/util/svxcore.component | 1 +
svx/util/svxcore.component.draw | 7 ++
sw/Library_sw.mk | 15 ++--
sw/source/core/crsr/crsrsh.cxx | 10 +++
sw/source/core/docnode/ndsect.cxx | 6 ++
sw/source/core/docnode/ndtbl.cxx | 6 ++
sw/source/core/docnode/node.cxx | 6 ++
sw/source/core/draw/dview.cxx | 12 +++
sw/source/core/layout/anchoreddrawobject.cxx | 4 +
sw/source/core/layout/fly.cxx | 18 +++++
sw/source/core/layout/flylay.cxx | 10 +++
sw/source/core/layout/frmtool.cxx | 12 +++
sw/source/core/layout/layact.cxx | 3 +
sw/source/core/layout/pagechg.cxx | 8 +-
sw/source/core/layout/sectfrm.cxx | 6 ++
sw/source/core/layout/ssfrm.cxx | 4 +
sw/source/core/layout/tabfrm.cxx | 21 ++++-
sw/source/core/layout/wsfrm.cxx | 14 ++++
sw/source/core/text/frmform.cxx | 7 ++
sw/source/core/text/txtfrm.cxx | 8 ++
sw/source/core/txtnode/txtedt.cxx | 4 +
sw/source/core/view/pagepreviewlayout.cxx | 4 +
sw/source/core/view/viewimp.cxx | 6 ++
sw/source/core/view/viewpg.cxx | 6 ++
sw/source/core/view/viewsh.cxx | 12 +++
sw/source/filter/ww8/docxexport.cxx | 9 +++
sw/source/uibase/app/apphdl.cxx | 39 ++++++---
sw/source/uibase/app/docst.cxx | 6 ++
sw/source/uibase/docvw/AnnotationWin.cxx | 7 +-
sw/source/uibase/docvw/AnnotationWin2.cxx | 8 ++
sw/source/uibase/docvw/PostItMgr.cxx | 4 +
sw/source/uibase/docvw/SidebarTxtControl.cxx | 4 +
sw/source/uibase/docvw/edtwin.cxx | 10 +++
sw/source/uibase/shells/basesh.cxx | 1 +
sw/source/uibase/uiview/pview.cxx | 7 +-
sw/source/uibase/uiview/view.cxx | 3 +
sw/source/uibase/uiview/view0.cxx | 6 +-
toolkit/source/helper/accessibilityclient.cxx | 7 ++
unotools/Library_utl.mk | 7 +-
vcl/Library_vcl.mk | 2 +-
vcl/Module_vcl.mk | 7 +-
vcl/headless/CairoCommon.cxx | 14 ++++
vcl/headless/SvpGraphicsBackend.cxx | 16 ++++
vcl/source/bitmap/BitmapTools.cxx | 94 ++++++++++++++++++++++
vcl/source/filter/png/PngImageReader.cxx | 14 ++++
vcl/source/helper/svtaccessiblefactory.cxx | 7 ++
writerperfect/Library_wpftwriter.mk | 30 +++++--
writerperfect/Module_writerperfect.mk | 2 +
writerperfect/source/writer/wpftwriter.component | 8 ++
.../source/writer/wpftwriter.component.extended | 8 ++
.../source/writer/wpftwriter.component.extended2 | 12 +++
xmloff/Library_xo.mk | 15 ++++
xmloff/Library_xof.mk | 8 ++
xmloff/source/core/xmlexp.cxx | 9 +++
xmloff/source/core/xmlimp.cxx | 13 +++
xmloff/source/draw/shapeexport.cxx | 9 +++
xmloff/source/draw/ximpshap.cxx | 8 ++
xmloff/source/style/xmlstyle.cxx | 9 ++-
xmloff/source/transform/OOo2Oasis.cxx | 8 +-
xmloff/source/transform/xof.component | 5 ++
xmloff/source/transform/xof.component.chart | 11 +++
xmloff/util/xo.component | 36 +++++++++
xmloff/util/xo.component.chart | 17 ++++
xmloff/util/xo.component.draw | 18 +++++
xmloff/util/xo.component.impress | 18 +++++
xmloff/util/xo.component.writer | 7 ++
117 files changed, 1246 insertions(+), 131 deletions(-)

Upstream: cgit.freedesktop.org


  • Share