AgeCommit message (Collapse)Author
2021-03-25Hack Windows static build stufffeature/wasmJan-Marek Glogowski
Change-Id: Ied05b72e95fceb47881f080d2b10eca29dfce73f
2021-03-25Working static Writer (use SAL_VCL_QT5_USE_CAIRO)Jan-Marek Glogowski
Change-Id: Ie1aab718cbf36b43621e2be644328fdc3fa1c90b
2021-03-24catchall vcldemoJan-Marek Glogowski
Change-Id: I07c8b12b9926e2228fc69b173ac4acf3dd6ef075
2021-03-15Add docs for container build setupThorsten Behrens
Change-Id: Ib250ae58e0dc36169125707a8c523d59239cabf6
2021-03-13catchallJan-Marek Glogowski
Change-Id: I8b4dea6870dc6698a03cd2607f98eb57971eca4b
2021-03-10catchallJan-Marek Glogowski
Change-Id: If3eadcc396ab500f1a08a334a957ee0494aef033
2021-03-10Strip some stuff from buildJan-Marek Glogowski
Change-Id: I8c2351a03ad65f4b82ee3fd2b4d64d6cf42d4592
2021-03-10catchallJan-Marek Glogowski
Change-Id: I2b10b0c78e81ac9332a0665037dbdaddec395bc4
2021-03-10catchallJan-Marek Glogowski
Change-Id: I94dbe94eed80bfb82a404db83249572caed7f715
2021-03-10catchallJan-Marek Glogowski
Change-Id: If41abaa40cf6aef38400083d3afa3d82d446df43
2021-03-10Get debug builds workingThorsten Behrens
- source maps really don't like SAFE_HEAP=1 (c.f. https://github.com/emscripten-core/emscripten/issues/8584) - get OptFlags passed on consistently while at it Change-Id: I7d234de6b069877a558a2f3c7ab9dd5398d18ef2
2021-03-10Make qt5 src download options explicitThorsten Behrens
Change-Id: Id2e78f71e10b8736cb03e42b1d0ad52c851cadd3
2021-03-10Change order of qmake searchThorsten Behrens
Otherwise we'd find local, non-emscription installation before the QT5DIR-provided one Change-Id: I956431c3433932adf1bee04ff8ce1cadfa0a4d81
2021-03-10Hack out vs-code config.inThorsten Behrens
Change-Id: If3b9a9684f43ffaeaebbccd1545e168d6b5f74b4
2021-03-10Enable some more tests and demos for static buildsJan-Marek Glogowski
Change-Id: I6372cd33db2fb72d417ca483d1324fca6947e077
2021-03-10Add a static components libraryJan-Marek Glogowski
This adds all component implementing libraries as dependency to a new components library, which otherwise just contains the "native" code with the mapping of the component constructors. Since there is no way to know, which components are actually used, this has to include all build components. The components lbrary is automatically added to all users of cppuhelper, which contains the calls to the mapper functions of the generated "native" code. Change-Id: Ie78af06c3325c0f58226a4c4da85a1d64fb45dc6
2021-03-10gbuild: handle Executable(s) for static buildJan-Marek Glogowski
See the (large) comment in solenv/gbuild/static.mk trying to explain, why this implementation was chosen (spoiler: seems there is no other way) and what is actually implemented. Yes, I also think it's borderline maintainable (like gbuild in general; complexity clashing with make "restrictions"). Feel free to propose / implement anything easier, except expanding the bin/lo-all-static-libs "concept" ;-) Change-Id: Iceb73c05b163affc4385fd4f8f0f5a2ecb55b004
2021-03-10gbuild: introduce plugin (loader) conceptJan-Marek Glogowski
This introduces two concepts: a plugin and its loader (library) LO currrently has dependency cycles for some libraries. There is scui, which depends on sc, while sc dlopen's scui. There are the various vclplug_* and the filters/gie libraries, which depends on vcl and vcl dlopen's them. While the dependcies of the plugins on their loader works fine, for static builds you must add a dependency from the loader to the plugins, which introduces a dependency cycle. I codeified a few rules into the build system along with it: * just plugins are allowed to depend / link other plugins * plugins aren't allowed to be linked into the merge lib * plugin loaders are "limited" to libraries At the high level, this is implemented via two new gbuild calls: * gb_Library_set_plugin_for,lib,loader: declare a library to be a plugin of a loader library * gb_Helper_register_plugins_for_install: "plugin" replacement for gb_Helper_register_libraries_for_install to implement some additional checks in the build system For the shared build, nothing changes. gb_Library_set_plugin_for is just forwarded to gb_LinkTarget__use_libraries. P.S. Android and iOS don't build their "executables" using gbuild, but call bin/lo-all-static-libs to "let the linker figure it out". P.P.S. the static handling isn't implemented in this commit, as it turned out to be (very) much more complex. Change-Id: I7b01d9c384cbc5838bd2cc93aff18e4868939d6e
2021-03-10WASM: link Writer native-codeJan-Marek Glogowski
Change-Id: Ic475e2a9c5c9f493eb1b897dc8356aed5523037d
2021-03-10Drop some duplicate codeJan-Marek Glogowski
Change-Id: Iff627d34774d495bec9ebe5c499dd0fd43a1d819
2021-03-10WASM encode some more fixed configure optionsJan-Marek Glogowski
... and update README.wasm Change-Id: Id4b8499dc2154466036f39150386d575a348a3ef
2021-03-10WASM use Qt qtloader.js and html templateJan-Marek Glogowski
The emscripten generated one doesn't work, probably because of qtloader.js. Change-Id: I402d20d0175130ce3b26a9d998661fd66f5806a1
2021-03-10WASM build mandelbrot Qt example via gbuildJan-Marek Glogowski
All the flags are copied directly from the qmake example. The emscripten HTML doesn't work, but copying the Qt HTML and the qtloader.js correctly runs the example in the browser. This is all a bit messy, but it is mainly a know working app to verify any WASM development at this point, so we know the Gbuild configuration can build a WASM application. Change-Id: I1e5fcc64f452d524192f4ea6d975aafafbb9f5bb
2021-03-10Refer from README.md to README.wasmJan-Marek Glogowski
Change-Id: I1e5fcc64f452d524192f4ea6d975aafafbb9f5bb
2021-03-10Make builds without patching emscriptenJan-Marek Glogowski
Ok - the last patch for emscripten was broken too. This is almost a "brown paperbag" bug for me now ;-( With this commit, no more patching for emscripten should be needed. There is a workaround in sc/source/core/data/attarray.cxx, which looks like a compiler bug (see README.wasm). Change-Id: Ife4d9089177bc31463a7636674411a2cf0e64d87
2021-03-10Catchall againJan-Marek Glogowski
As described, I think I found the origin of the problem with an emcc.py patch I wrote in the beginning to fix configure with cpp tests. This compiles LO up to some point in Calc with a template failure. I've made an extra patch from the galeries changes. The binary is essentially broken. While the alignment is checked by LO configure, the result instantly crashes with memory alignement errors somewhere. There seems to be a problem with inline Exceptions, so I just converted SvStreamEOFException to non-inline as a workaround. Change-Id: I3333a04cdb765da3efc4aa511e265a3863d5c9cd
2021-03-10The OpenSSL catchallJan-Marek Glogowski
I've read somewhere in the docs, that ccache usage is fine with Emscripten. This now builds the non-DESKTOP build, but activates some binaries, like the ui-previewer. I'm not sure yet, if I should build with or without DESKTOP. After enabling of exceptions, the ui-previewer now fails to link with "undefined symbol: typeinfo for SvStreamEOFException". And I found "make vcl.all" doesn't rebuild anything non-vcl, which I had assumed. Then this "toggles" DISABLE_OPENSSL to ENABLE_OPENSSL, like all the other feature flags. And it builds xmlsec with openssl, but there isn't yet an openssl xmlsecurity backend. Change-Id: Ibcc944f27f2ce53bc24e6605669b6593fd5e93c3
2021-03-10Drop cairo debugging stuff and update README.wasmJan-Marek Glogowski
Change-Id: Ica8e115ee19c7777f520fe2c41a88efa07de8b13
2021-03-10Next catchallJan-Marek Glogowski
Before my rebase, this used to link a ui-previewer "executable". I have this major problem with the static linkage of the binary, which now has to list ~150 dependencies. While it linked withhout any more symbol errors, it (obviously) won't run, because the LO mainloop can't drive the browser mainloop. It currently fails in cairo with pthread detection, which did somehow work before. Also exception handling isn't yet correctly supported in the build - I think of providing an emscripten settings.js instead of adding the info to all external builds. Change-Id: I757634bb2f819022e537f3f4dd55ddabdc742454
2021-03-10Next catchallJan-Marek Glogowski
This is the "fail to link vcl/Executable_ui-previewer" commit. I was hoping to link this executable this evening, but there are some remaining mysteries to solve. I'm missing bridge functions, pcre2 (seems to be from boost regex, somehow?), the constructor lists from native-code.py and generally still broken dependencies. What does work is the linking of the Qt5 WASM library, after I re-build it inside my chroot, as my Debian has glibc 2.28, while my Ubuntu 18.04 chroot has 2.27, so all the native tooling wouldn't work. But no new build failures, so just some time. One main problem is the static linking of executables. For so, you have rpath and dependencies, which will get all the correct dependencies, but this exists for static archives. I still had to fix many externals with -pthread, so growing that list took a while anyway, but eventually this should and could be done by gbuild. Question is, how hard is it to implement. I don't know if sal/osl/unx/system.hxx is correct at all, but at least it compiles. I tried to update the REAME with all new infos I find. Change-Id: I64ecd4f923296eb4aeb42ff4b114c87b58503962
2021-03-10WASM catchall commitJan-Marek Glogowski
The current state is incompatible with upstream, especially the emconfigure change. Please also read README.wasm Change-Id: I668b4128491c467b94ea1c13ee695b08dce32968
2021-03-10use BitmapEx for testing bitmap contents, not DIBLuboš Luňák
The weirdo that tested the bitmap using the format-specific way was ... me, in 2014. Change-Id: I2cf96ba42da7099f2ce0b80ac53261c67321ef0e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112041 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-03-10cache extensive downscaling in GPU mode too (tdf#140925)Luboš Luňák
Change-Id: I0d77cf157bc1f669da906ed55feedee6bc78ba7b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112252 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-03-10access pixels directly if SkImage is a raster one (tdf#140925)Luboš Luňák
This avoids copying the data to a temporary storage that's not needed. Moreover Skia does not memcpy() the data if the format is kAlpha_8_SkColorType. Change-Id: I66974acd7656df8b82d1babacf7a0cb60711fc76 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112253 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-03-10sw: DOCX export: put fly before fieldmark start into its own runMichael Stahl
If a fly starts at the same position as a CH_TXT_ATR_FIELDSTART, it is anchored before the field, and written in OutFlys() before the field is written in EndRun(), but the DOCX export reorders things in confusing ways. StartField_Impl() and CmdField_Impl() will actually end the current run (after putting the field char in it) and start a new one. So do something similar in this situation and create a new run if flys have been processed. Restrict this extra run to when there is actually a fly, because otherwise a dozen tests break; this requires a new FLY_NONE result for OutFlys() because FLY_PROCESSED is returned even if there are no flys. Change-Id: Id469c53d07eacad3992c7c0e451ab3756e02c8fa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112267 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2021-03-10ScriptForge - (scriptforge.py) L10N classJean-Pierre Ledure
Addition of SF_L10N class Correction in Languages() property: selection of file based on *.po filter i.o. ??-??.po Change-Id: I5c57d1973265f2aeb7a3cfb4f507ffd50a28785a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112211 Tested-by: Jean-Pierre Ledure <jp@ledure.be> Tested-by: Jenkins Reviewed-by: Jean-Pierre Ledure <jp@ledure.be>
2021-03-10Drop 'static_cast<cppu::OWeakObject*>' syntactic noiseMike Kaganski
... a leftover from 96388e5e809a48573970df9b6b2649517a08447f. Change-Id: I909a470612c421472d8bf94f80e3e94ecb51d6e3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112257 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-03-10forgotten ComputeScanlineSize() (tdf#140917)Luboš Luňák
Change-Id: Id139cea52832b7973dfac47d309d5bba8299b4e1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112263 Reviewed-by: Mark Hung <marklh9@gmail.com> Reviewed-by: Luboš Luňák <l.lunak@collabora.com> Tested-by: Jenkins
2021-03-10Don't unselect an existing selection on (long) press on iOS and AndroidTor Lillqvist
A (long) press, also known as a long tap, in Collabora Online (as used to bring up a context menu), shows up in core as a click of the right mouse button. We don't want that to cause an existing selection to be unselected. This fixes https://github.com/CollaboraOnline/online/issues/1323 Why this problem happened only in presentation documents I have no idea. Change-Id: Iebbf71e75dcea7c39a92fd8d5dd07c368d92f163 Signed-off-by: Tor Lillqvist <tml@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112261 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112264
2021-03-10flatten SdrObject::getUnoShapeNoel
Change-Id: I1239dd809e6a86780df45f1870e00d988bb43ea7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112258 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-10Update git submodulesAlain Romedenne
* Update helpcontent2 from branch 'master' to 9f51c169bc7444b0c967384e56bfdd3a4d6fc8a4 - sf_platform extra information - OSName precision - Link to Calc formula alternative - dupe IDs in related topics section - typos Change-Id: I88bb9a6f6016907f73b2e47cd90644db9fad2fde Reviewed-on: https://gerrit.libreoffice.org/c/help/+/112224 Tested-by: Jenkins Reviewed-by: Rafael Lima <rafael.palma.lima@gmail.com>
2021-03-10tdf#140865 roundtrip pptx wordart 3D, add sp3dRegina Henschel
Change-Id: I446ae4e8c9dd5f2fbf3efe289681339f967c515a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112185 Tested-by: Jenkins Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
2021-03-10disable SkiaTest::testMatrixQuality because of tb68Luboš Luňák
Change-Id: I9209ffb54f0a74452e287a7733384e3080aacda4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112259 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-03-10use VCL API rather than manually apply numeric alpha changeLuboš Luňák
Change-Id: I500b3ad3d8229b792b7394a9e1b2f51fa9b1af2f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112251 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-03-10adapt recent change to macOSNoel Grandin
... from commit e7a471a8fbac22877973af7e7be8c6a0701b4046 logerrit: do not submit if parent is older than a week Change-Id: Icd1ee7f66dbbcef90add9e4ddecfdb9bbc0900e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112234 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-10read png preferred physical size in PngImageReaderLuboš Luňák
Change-Id: Id0ad53a5b279a0d9f83a6ba9646d5fa139b3ac2d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112037 Reviewed-by: Luboš Luňák <l.lunak@collabora.com> Tested-by: Jenkins
2021-03-10tdf#140839 - Scale TotD imageHeiko Tietze
Fix preview size of 100x120px Margin added Change-Id: If1caad336f2c3ce492aa9551a170b9b20a9b8b50 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112152 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2021-03-10Revert "default to 'contents' hidden until toggled to floating mode"Caolán McNamara
cause then the floating widget initial size doesn't include the 'contents' button. This reverts commit bc5a0676fa107bdad6e860d31a874de4eae2d8ba. Change-Id: Id1f0b2f47a0f4621dbf57a9d6a0f740a7ec01301 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112243 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-03-10tdf#140597 DOCX import: fix missing tblPrEx borderLászló Németh
of first table cells, caused by the workaround for tdf#138612. Now property set of a new cell is a copy of the table exception property set of the table row, as needed for the import of the table style inheritance. Regression from commit f319d6b543c2367546bc80d138e56ed03731e265 (tdf#138612 DOCX import: fix lost part of split table cell). Change-Id: Iaf6637e757fbfeef7651a4300a7f65a23615f5c5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112247 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2021-03-10tdf#140661: sw: Add UItestXisco Fauli
Change-Id: I637bcd2c8dbe215aa40b0eea69e559935a6d5eaa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112205 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>