summaryrefslogtreecommitdiff
path: root/solenv
AgeCommit message (Collapse)Author
2022-01-20WASM --enable-wasm-strip now skips lots of LO codeArmin Le Grand (Allotropia)
... 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 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-19Let CppunitTest_odk_checkapi build against the SDK include directoryStephan Bergmann
...which contains only the URE include files, rather than against the SRCDIR one which contains many more. This would have prevented 148536afc9838398100ca2267b99ab349dcbb38c "Drop config_global.h from osl/module.h", where an URE include file had accidentally started to include a non-URE file. (The way $(INCLUDE) is now set up in odk/CppunitTest_odk_checkapi.mk is a bit hacky, and this change required teaching compilerplugins about SDKDIR to avoid false warnings. Another approach would be to make the test compile in the SDK build environment, similarly to CustomTarget_odk/build-examples, but setting up the SDK build environment from within gbuild is not supported at least on Windows for now. A smaller improvement would be to drop the need to include any CppUnit include directories, by turning the test into some kind of compile-only test similar to a gb_CompilerTest.) Change-Id: If79761909c67c3162d01f847dfb5d4f538f91ca1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128591 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-01-19use more concrete types in chart2, BaseCoordinateSystemNoel Grandin
Change-Id: I1c246a3ea37595647ac254f492170a9e18540794 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128623 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-01-19Fix typoAndrea Gelmini
emscripten.py is not in the LO source, but in the emscripten project. Guess they were referring that one. Change-Id: I3ad2b4ad90420a554871cfd1aba94b447c275127 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128619 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-19Decouple SRCDIR/include from SOLARINCStephan Bergmann
...turning the latter into "whatever include directories are needed for the given toolchain and platform, outside the scope of LibreOffice". This is a prerequisite for fixing <https://gerrit.libreoffice.org/c/core/+/128591/1> "Let CppunitTest_odk_checkapi build against the SDK include directory", which failed to find the C++ standard library headers (available via SOLARINC) on Windows. (In external/icu/ExternalProject_icu.mk, SRCDIR/include is needed for ANDROID to find <android/compatibility.hxx> in external/icu/icu4c-android.patch.1.) Change-Id: I960e31140b0839b2b6184a78d935042c3c558d5b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128615 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-01-19Fix processing of first path in SOLARINCStephan Bergmann
...which does not have a space before the -I, so copying starting at pos+3 dropped the leading character from the path. This was apparently never a problem in practice, as the first path in SOLARINC happens to always be SRCDIR/include, which should not be needed anyway when building external projects with this GCC wrapper on Windows. (So this commit is a change in behavior, making SRCDIR/include available to those external project builds on Windows, but the follow-up commit <https://gerrit.libreoffice.org/c/core/+/128615> "Decouple SRCDIR/include from SOLARINC" will change the behavior back again.) Change-Id: I3f82a83683ed381b791d221fe1da78b9797aea94 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128621 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-01-19WASM support external DWARF infoJan-Marek Glogowski
merged into the --enable-split-debug tests. Change-Id: Id0f25bec08bd45daebb0ccd30d17a4feeb08d02c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128601 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-19WASM add option to build with native exceptionsJan-Marek Glogowski
Currently disabled, as literally no runtime has a working implementation. It also currently conflicts with LLVM's SjLj (AKA setjmp / longjump) when generating WASM bytecode, but the only offending code doesn't use exceptions, so this can be avoided in general. Change-Id: I2b338f3529e7350d54a7950772c6e7aae2282fe7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128600 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-19WASM create and link the Emscripten FS imageJan-Marek Glogowski
There are three posibilites to add files to the image: - gb_emscripten_fs_image_files to add individual files - gb_emscripten_fs_image_autoinstall to add files from AutoInstall - gb_emscripten_fs_image_filelists to add files from a .filelist Change-Id: If6804e282a37a37ffae1d291d2af8430e60b59d1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128598 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-19WASM add strip flags to configure.acJan-Marek Glogowski
Doesn't include VCLplug flags and it should work with gtk3 too. But normally you want to use: --disable-gtk3 --enable-qt5 Change-Id: Ifea5e5b1e63633ff1fa709cdeb49afdb43fa0e8b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128588 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-19WASM gbuild: add --pre-js dependenciesJan-Marek Glogowski
Currently includes environment.js for general environment settings and soffice_args.js for soffice command line flags. Change-Id: I1166c5a9ae53c56a69b9223c865b4df525d07450 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128590 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-19WASM adapt link and debug flagsJan-Marek Glogowski
Changes the linker flags, so a debug build will not rewrite the WASM binary code for instrumentation, as this takes ages and more then 64GB of RAM, currently. For the same reason - long link times - prefer DWARF debugging to the external source maps. Initial memory and thread pool size are linker flags, so move them. Change-Id: I5cf39842e5091ef55b4fac719f881575e69fe8d0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128589 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-19WASM more initial bits and piecesJan-Marek Glogowski
All the small stuff, which is needed for the WASM build, but is not really worth an extra patch. * No soffice.sh script needed for WASM * WASM soffice.bin executable extension is html * Some small additional SAL_LOG output * Default to colibre icon theme * Test for qt5 even without X11 * Remove emconfigure artefacts at the end of the configure run * No oosplash for WASM * Disable the Office IPC thread * Suppress -Wno-enum-conversion for Cairo builds * Fix libnumbertext by using gb_EMSCRIPTEN_CPPFLAGS * Map EMSCRIPTEN to LINUX nls * No extra newlines for missing icon theme images * Print the missing dependency in some gbuild error messages * Copy Qt WASM loader, HTML template and SVG logo for binaries * Especially build the vcldemo for Emscripten Change-Id: I356370c72cc09357411e14d0c00762152877a800 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128584 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-19Keep intermediate *.component.filtered fileJan-Marek Glogowski
Makes debugging / understanding componentfile generation easier. Change-Id: I6c71d4d3787820320e95e3c075a08a0b9d756995 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128582 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-19vcl: move eps functions to eps.cxxChris Sherlock
Change-Id: I0d61835d0964e18b578ec42b7002671310a8a36d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124603 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2022-01-18use more concrete types in chart2, ChartTypeTemplateNoel Grandin
Change-Id: Ife0be0fde2f8d273411cbdbbafa2173ac80f80f7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128560 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-01-18use more concrete types in chart2, ChartTypeManagerNoel Grandin
Change-Id: If5055256c3e3a20ab1a30e9c8bf46f453785e80c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128557 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-01-18Add HAVE_(UNIX_)DLAPI config header defineJan-Marek Glogowski
..., add the configure test flags and rename DLOPEN_LIBS to UNIX_DLAPI_LIBS. Initinally convert two dlsym callers to use HAVE_DLAPI and osl_getAsciiFunctionSymbol. There are a lot of places, which still use -ldl and even more direct dlsym calls; good opportunity for many simple EasyHacks. Change-Id: I4f2d2f7cb079a075af8f9d01eb5ee45de40c7f03 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128523 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-17Add <module>.*all aliases to .all* and update helpJan-Marek Glogowski
And just echo a rename info for the 'all' target and exit with an error, so people will actually adapt. 'all' had been modified to run 'allbuild' in the original commit anyway. And since there is no toplevel 'all' target, this just seems consequent. And .PHONY the new targets. Also advertise "make help" a bit more at the end of configure. Follow-up on commit d6496fce2e51a3e44753e6b5c462824f182b48d5 ("split gbuild's <module>.all to <module>.allbuild or .allcheck"). Change-Id: Ia74020375f0a024dc67ea37ae4b18655af9df084 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128490 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-16use more concrete types in chart2, DiagramNoel Grandin
Change-Id: Iae84e16b3406f4c08139764a1838e38b13cebee7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128471 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-01-14VCL drop m_pInstance from *nix SalDataJan-Marek Glogowski
AKA the "*nix SalData untangling" commit. The original plan was to get rid of vcl/inc/saldatabasic.hxx and even SalData for all the *nix backends. But after many backs and forths, reinspecting the code and imagining the resulting code, I decided against that plan. All these variants would have resulted in reinterpret_cast calls, I wanted to prevent. And they would have required larger renames for no benefit. An other, related idea was to include all SalData implementations in the vcl/inc/svdata.hxx header, but that seemed like an include explosion, so was also dropped. I tried to untangling iOS from using GenericUnixSalData, as it doesn't use any of it's features. The new, minimal SalData should be sufficient. I'm leaving the easier drop of mpInstance from the Windows and MacOSX backend as a minimal interesting EasyHack. Change-Id: I5be01c1f42131a7e31cb30899392308e1e2de53b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128402 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-13Sync flatpak-manifest.in with FlathubStephan Bergmann
...including <https://github.com/flathub/org.libreoffice.LibreOffice/commit/65437462b575881703146b132d2ae6c7e998c1b6> "Merge pull request #174 from vroger11/patch-1: Add global-menu support for KDE and unity" Change-Id: Id9c9c9d63303fc7de12b47e12b1e32f6556f1f02 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128368 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-01-13gbuild: implement static partial buildJan-Marek Glogowski
This stores all the dependencies collected from the full build, and uses that info to link static binaries in per module. Change-Id: I27bd41c217bf0d2248ee88004038dd6b813f2624 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128129 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2022-01-13fix up label mnemonics in writer view options pageCaolán McNamara
Change-Id: I8acf5421c7e986a15a759f7b4c203d3c844b77f7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128357 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-13Always set MAC_OS_X_VERSION_MAX_ALLOWED = MAC_OS_X_VERSION_MIN_REQUIREDStephan Bergmann
...and drop the --with-macosx-version-max-allowed configure switch. Looking at the documentation in /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/AvailabilityMacros.h, a value of MAC_OS_X_VERSION_MAX_ALLOWED larger than MAC_OS_X_VERSION_MIN_REQUIRED would allow functions that only started to become available in that range to be resolved as null at runtime, so would need our code to be prepared to get null function pointers in such cases, but which our code is presumably not prepared for to begin with, anyway. Change-Id: I1423ee7435aa2b36eb91c62ff91b1fc414995a4f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128363 Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Jenkins
2022-01-12Fix typosAndrea Gelmini
Change-Id: I47fc636e0b69b72fb6ca247f9e0cbabbddb3985e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128321 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2022-01-12gbuild: build static LO / link static executablesJan-Marek Glogowski
This allows to build a complete static LibreOffice on Linux, except for linked externals. Since LO's static build implies disabled dynamic loading, one must select one VCL backend to be compiled in. 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. This will collect all libraries, statics and externals of executables. If the executable uses components, it will get linked to all static components. While it works with any Executable, it just makes sense for soffice.bin, because the static component map sucks every dependency in, bloating most other binaries. In theory on could generate the dependencies based on the list of used components (see gb_CppunitTest_use_components), then generate a specific static constructor map, directly include it in the exe's cxx code and then link the minimal dependencies. The static LO should build on Linux with: --enable-customtarget-components --disable-dynamic-loading Tested VCL plugin config is: --disable-gtk3 --disable-gen --enable-qt5 The partial build support is split into a 2nd patch. Change-Id: Iafc95752fae9e88095f54a21f1e30a4f080815e2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126790 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2022-01-11Drop unused file dbaccess/source/shared/registrationhelper.cxxGabor Kelemen
since commit d29a314300d523d29ed894f1822227497fcb68f8 Change-Id: I16c76e0cc56fe06d92fe37e38a5a4549fa205f83 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128203 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-01-09implement anyToHash() and use it for SdrCustomShapeGeometryItemLuboš Luňák
Using anyLess() still has quite some cost with bsc#1183308, this makes the cost almost unnoticeable. Since some values of Any are not handled, return empty std::optional for those cases. Change-Id: Ib45a81441e8bb456c4749f9bc53a981f09bbb1a5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128109 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-01-08Unify condition names and fix "else" pathsJan-Marek Glogowski
Drop Build prefix and settle on Lib and Exe prefixes. Also add a note about the "else" part of the condition and fix offenders. While at it, define COND_LIB_SAL_TEXTENC to be used by sal to prevent diverting coditions in build and cxx code. Change-Id: I944587ca1ccbe46b765d1a631a7214c8126fe951 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128136 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-08Don't build the static uno binaryJan-Marek Glogowski
Change-Id: If6d5384d4692fba94070bb11bb5a47a66b813f58 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128135 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-08sp2bv is just used by the ODK on WindowsJan-Marek Glogowski
And I should have tested gb_Helper_optionals_and. Inspecting the generated token for comparison doesn't result in gb_[T1]_[T2], as I expected. So first filter the token from BUILD_TYPE, then filter-out the result from the input token. If true, then both sets are equal == and. Change-Id: I74a324f766331b30a0af9c9bfd7c927c1d21df53 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128115 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-07Don't build a static unopkgJan-Marek Glogowski
Currently we don't destinguish between between extensions without code, which couldn't be executed with DISABLE_DYNLOADING, and all other extensions, like translations, dictionaries, etc., so there is no need for a static unopkg. Change-Id: I427a51b3174d074e467a582e808490a85e98e8eb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128114 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-07VCL move platform code from mouse.cxx into pluginsJan-Marek Glogowski
... by moving it into ImplCreate(DragSource|DropTarget). The existing Create* variant now checks for headless mode and the IsRunningUnitTest flag, before creating the platform variants. There are two small helpers to initialize either X11 or Ole based UNO DnD interace implementations. Unfortunatly Windows requires to move two dtrans header files, but at least any other changes are minimal. Change-Id: Id79459ad71a26243b1c9cb1fe38ab236b0ab8fa6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128049 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-07gbuild: fix actually used libraries for mergelibJan-Marek Glogowski
Just the $(filter $(gb_MERGEDLIBS),$(2)) in the "if" was wrong, but reformat and add a comment to make the code easier to read. This way we correctly header-depend on all requested libraries, but just export-depend on the real libraries. And actually use gb_LinkTarget__is_build_lib in the ifeq, as otherwise the build now fails for the reduced dependencies. Change-Id: I24d5701891324f5055c9dfa535bd854d09fbb905 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127994 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-06annocheck warning about missing .note.gnu.property sectionCaolán McNamara
copy and paste recommendation from: https://sourceware.org/annobin/annobin.html/Test-cf-protection.html and adapt like: https://github.com/openssl/openssl/commit/51994e505dbb1cd0dd76869ec962e2948b77b585 where https://bugs.ruby-lang.org/attachments/8962 is similar Intel docs have "The ENDBR32 and ENDBR64 (collectively ENDBRANCH) are two new instructions that are used to mark valid indirect CALL/JMP target locations in the program." Change-Id: Ie867c263a888763db4478720ba189c9ec6cc974d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126859 Tested-by: Jenkins Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-05gbuild: skip libmerged externals for partial buildsJan-Marek Glogowski
When running a full build, all externals of merged libraries are also added to libmerged when adding externals for the merged lib. Non-skipping for partial builds also breaks gbuildtojson, for all modules, which are merged and have additional libraries, tests or binaries, which then depend on the libmerged. This triggers for gbuildtojson, because the skipped %.exports now actually matter when checking the libmerged state. make then tries to rebuild it, but this can never work for a partial build, even with the full gbuild ruleset, not stripped by solenv/gbuild/extensions/post_GbuildToJson.mk. The totally confusing result, due to the mangled ruleset, is that the first externals %.exports overwrites libmerged in instdir. Change-Id: I2b72a8b543dbbd8c8f573bfe963164329bdd73e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127995 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-01Further separate saxparser run from cmp'n'touchJan-Marek Glogowski
At least on Windows the calls to saxparser almost feel as slow as the compilation. So this adds an intermediate file just for the cmp calls, costing just a bit more filesystem space. This also reverts the gb_MKTEMP usage introduced in commit 14eeed686c5490ddbd356c1ac807b16231e4cb88. Using a fixed name in WORKDIR is easier to debug eventually, then some random mktemp generated file, and is faster anyway. Change-Id: Id4979b75b881e916c209ff0ff8e123536294e93b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127841 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-01fix solenv/gbuild/extensions/post_Fuzzers.mk:11: *** missing separatorCaolán McNamara
since... commit c859b4aa48956cbf5ff41280b0008456e8f5189c Date: Fri Dec 31 09:11:10 2021 +0100 gbuild: introduce gb_%_linktarget_target Just some refactoring. I also think gb_Executable_linktarget_target should be gb_Executable_get_linktarget_target. Change-Id: I270fe10ca7d12c454ce69744815a2e35a909a851 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127819 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-01gbuild: silence Windows Skia clang buildsJan-Marek Glogowski
When building Skia on Windows in an non-English environment, the console is filled with "Note: including file:" output. That's because cl.exe has some translated output, but clang.exe has not. So detect the clang usage and its "showIncludes" output and override that setting for the compiler call. Change-Id: I19b403aa79a8dde70616865aef051aa365f79de6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127822 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-01oss-fuzz: depend on linktarget, not the binaryJan-Marek Glogowski
Not really an oss-fuzz-only problem, but general linking of static binaries. Broken in commit ecc50f56b3282ec3b0364101d860f22fe8da9042 ("gbuild: set library dependency for static builds"). Change-Id: Iba9c9405cf4adb78c1ec9b64dfa02c3a82d2cf55 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127800 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-12-31gbuild: introduce gb_%_linktarget_targetJan-Marek Glogowski
Just some refactoring. Change-Id: I47adb93f8a413d289f6abb2a48ed3f049f582a46 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127799 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-12-30oss-fuzz: chain-depend all *fuzzer binariesJan-Marek Glogowski
Change-Id: Id92ae26db0c4321f1670f7bd6d8c03c521e18d93 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127712 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-12-28gbuild: announce date when acquiring the link lockJan-Marek Glogowski
Must use echo, because we're in the shell at this point. Change-Id: I576ae2afe743b11a11bc776e5fa19a1904bbd1fe Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127610 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-12-25oss-fuzz: fix some compiler warningsJan-Marek Glogowski
Some unused functions and variables and many missing HAVE_FEATURE_NSS warnings, because the native-code.py stubs were missing the config_crypto.h header. Change-Id: I88ff7d8f96e7382027a21f205db982fd797bd6af Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127392 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-12-24gbuild: set library dependency for static buildsJan-Marek Glogowski
For DISABLE_DYNLOADING builds, all libraries become real and not export-only dependencies. And all real linking targets need a dependency on all static libraries. Change-Id: I8433a0225d428951739f7afa3068a61dce9e61eb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127236 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-12-24Enforce cross-compilation for static buildsJan-Marek Glogowski
... AKA DISABLE_DYNLOADING, except for oss-fuzz, which will be converted to a cross build in a follow-up patch. This includes skipping the static registry and help tooling and aborts configure when the ODK is selected to be build. Change-Id: Ifae32e91acf5e9ffa234d8f915ee459b197091fe Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127287 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-12-23add drawinglayercore to merged libsTomaž Vajngerl
Change-Id: I3c2fc7f72fab8eb5deb21c609bd60663ba35e251
2021-12-22janitorial: the lang definitions aren't really an optional part of gbuildChristian Lohmaier
furthermore there's no need to keep them separate to fit dmake anymore, so lump together what goes together... Change-Id: Ic0377a322100c20352e211e53a670a9b0b227ab4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127332 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2021-12-21Run `make check` in flatpak buildStephan Bergmann
Back when solenv/flatpak-manifest.in started with 68fda058972a6fbb38b797f50575b84f4cb3fab1 "Put flatpak-builder manifest file into core repo", the default `make` target ran various unit- and slowchecks (so that was what Flatpak builds did back then), until a58e086ededb8442938e81f971dfae36ef7eb076 "rework the default make target" changed the default `make` target to not run any checks at all (so that is what Flatpak builds did since then). Also, for one, 9cf2616c5e709b595eeee6ab88dacdfad2003f98 "Work around i386 kernel vs. JVM bug for now by disabling all tests on i386" had made i386 not run any tests at all (back when the default `make` target still ran various unit- and slowchecks; and which was later cleaned up with 243c05ac27e3ffd94343630e668a53cf3ad18744 "Retire build-nocheck" when there was no longer a need to explicitly mention build-nocheck to not run any checks at all). But at least on Flathub we no longer do i386 builds anyway, so this is presumably moot today. And for another, 6cb20e0b298f41fe88984aebfe5454f936a0ae3a "Disable CppunitTset_sc_*_functions_test for linux_aarch64 for now, too" had disabled certain "tests for aarch64 for now too, to get Flathub builds unstuck" (back when the default `make` target still ran various unit- and slowchecks). But that has since been fixed (and 6cb20e0b298f41fe88984aebfe5454f936a0ae3a been reverted with ae6f41424608b349b45eb3f18ee8c7cff5d6c182 "Revert 'Disable CppunitTset_sc_*_functions_test for linux_aarch64 for now, too'"), with commits culminating in 57ad86fec9e5b4981332392bdb5c5a1f5e468bfe "Allow for some variance in results of some more Calc function calls". A recent master test build with `make check` on Flathub succeeded at <https://flathub.org/builds/#/builders/32/builds/71637> (for the two architectures aarch64 and x86_64 that we build on Flathub), so lets enable that for now and see how that works out in practice. If it proves too brittle with too many spurious check failures, we can either restrict it to running fewer checks (e.g., the old unit- and slowcheck behavior), or disable it completely again. Change-Id: I62efc41669ff634551fc07f24069f296f3d0d0bb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127201 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>