General updates & streamlining, plus addition of loongarch32 and
managarm as probably most relevant additions here.
Change-Id: Iff94f05c5e9240204eb3f844a05a7cad519522a5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143988
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
With cbfac11330, LOKit tries to pass
full configure line on via JSON - which, on Windows, might contain
backslashes and other nasties, so we better try to clean that up here.
Change-Id: I8314783fc6f49e9b2b374d94448ed735de39bf81
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143940
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
For cross builds, odd cases of cairo configure picking up wrong librt
and then missing pthread functions - so lets just disable it, we're
not using cairo multi-threaded anyway.
Change-Id: Id8b6426203859e7bf082d71ad8cf4548928d6acc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143390
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
For providing coverage data of features in the LibreOffice code base,
here's a set of files with orthogonal, high-level ODF features like
bold & italic text, an image, a table in several variants etc.
Use `make coverage` or `make sw.coverage` to generate coverage data
for the entire code base, or subsets thereof.
Change-Id: If27f720e8728788c421e16a3abbc1cf39521a2fd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139765
Tested-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Regression from be2252c8d3 where spaces
in --with-vendor end up being poorly quoted.
Opted to pass down --with-vendor to sub-configure unconditionally even
if empty, due to the need of word splitting generally being needed for
the sub_conf_opts variable.
Change-Id: Id3740255bc8fbf98adf7464de7e2836fcde9f2fd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135826
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Seems on Windows, we're hitting the 8k character max cmd line length,
on setups with slightly deeper src tree path locations. Shorten length
of expanded call_installer calls by putting shell script into PATH
locally.
Change-Id: If1cddab9e4e07a7c5ebfae7a4e88e43b1bc8b907
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134938
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
If available, use GNU parallel to run N make_installer.pl scripts in
parallel, to scale packaging LibreOffice up with the rest of gbuild.
* fallback if no GNU parallel found - run make_installer sequentially
as before
* push most of the make_installer.pl input param tweaks from gbuild
down into a shared call_installer.sh script
* call gnu parallel with generated number of
"templ:lang:prodname:ext:pkgfmt:strip-flag" tuples, one for each
package to build (empty templ for non-windows, to save on cmd line
length)
* such that we can run all those in parallel (taking into account
the build's PARALLELISM parameter)
* there's still the main package build running epm sequentially for
umpteen sub-packages from within _one_ make_installer.pl instance, but
that's much harder to parallelize from inside Perl (so we punt on
that here)
Change-Id: Ie7d3084ed60d003d587c5e64dc9fb1809b23e409
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133957
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
User input permits zero-length animations, so whenever we calculate
relative position within the animation time frame, the case
mnMinSimpleDuration == 0.0 means: we're already at the end of the
animation, i.e. set relative time to 1.0
Change-Id: I0e8c1e29f47bd9fa16f04115cf52d3a176e13fb0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133005
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Despite 26072b8db7 and
12c6b1ef6a, Linux builds using
RH devtoolset-7 gcc7 still hit occasional unit test crashes
with illegal instructions.
Backtrace is always:
> #0 __static_initialization_and_destruction_0 (__initialize_p=1, __priority=65535) at core/sc/source/core/tool/arraysumAVX.cxx:20
> #1 _GLOBAL__sub_I_arraysumAVX.cxx(void) () at core/sc/source/core/tool/arraysumAVX.cxx:112
>
So lets make sure initializer is run only on function entry.
Change-Id: I69f5cb725e4d72fb346166b21870612473f974b8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129246
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
So we can use pigz or other parallelizable tools if available. Shaves
off noticeable build time when packaging install sets.
- figure out if pigz is available (fallback to gzip otherwise)
- pass compression tool down into make_installer
- and handle as one of many global options there
Change-Id: Ia9d1ea27a9f990874238b6f0be3e1fd30a662ec6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128469
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
... and use the same fake exception rethrowing code then the
mobile platforms.
Change-Id: Ic90de1cfd1e0092d6064d041a613d60d9f5f76b5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128596
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
* remove GPGME_CAN_EXPORT_MINIMAL_KEY, upstream now has support for
key export flags in c++ wrapper (gpgmepp >= 1.14)
* therefore, external/gpgmepp/add-minimal-keyexport.patch now fully
obsolete, tweaked xmlsecurity code to use upstream function
* bits of external/gpgmepp/find-libgpg-error-libassuan.patch are
upstream now (configure and makefile pieces, though we keep
configure.ac changes for the while - to not pick up system versions
too easily)
* external/gpgmepp/gpgme.git-fe2892618c20cd40c342cce26ffb6ac4644fd3c3.patch.1
was from upstream anyway, removed
Change-Id: I991c20c0eeff0f9135e97c991afcb905be55a959
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127665
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Re-generated configure file gets confused & claims not finding C89-
compatible compiler for gcc-wrapper-building libassuan with msvc
underneath.
Work-around the problem by telling toolchain right off that this
_is_ a std c compliant compiler.
Change-Id: I4fa23673b790bc70a9294951df545c27f5236f81
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127641
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Build target was kept for backward compat in 'rework the default make
target', so lets retire it after 1.5 years.
Use 'make build' instead (which is since the default target anyway).
Change-Id: I93d5237dce2abf2536a4d847d79d33d5b6d6cec9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126362
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Since that's a pessimisation. Any manual override
(--enable-ccache, or --disable-pch) will again make configure
auto-enable [s]ccache if binaries are found.
Change-Id: I4c0773300c792ebb1807d092d3622d90dfac7d5f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125073
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
With PATH essentially serving the role of LD_LIBRARY_PATH under
Windows, there was the notion that this needs to be provided in
Windows notation, for win32 gnumake.
That was perhaps once true; currently we're always evaluating PATH
inside a shell, not the Makefile. So this since a while only worked
accidentally, due to cygwin transparently converting between DOS and
UNIX PATH vars. It did break though for corner-cases, e.g.
SRCDIR!=BUILDDIR, and BUILDDIR e.g. D:\FOO.
With that simplification, also GNUMAKE_WIN_NATIVE can go.
Change-Id: Ied5a0443dc70e7dc629c0c0620e6ce911d9a73d0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119941
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Let's move common configury to distro config, so people get
necessary changes across updates w/o manual intervention.
Change-Id: Ic27db86e7681bcef0632ed6b5fdd2fe8df0fdba3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114629
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
- gets auto-detected if an sccache binary is in the path
- currently external projects using gcc-wrapper are _not_
cached - this needs fixing in the gcc-wrapper
- current sccache versions won't work with -Fp (precompiled
headers), so while sccache gets called, nothing really
is cached. Best build with --enable-pch=no therefore.
Change-Id: I78dd7e08ea20ae888236c8c8e8e7a25a405f23b5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113530
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
When using that new-ish method, try giving the compiler a chance to
construct in-place. Left out harder cases using initializer lists,
and might have missed slightly less obvious places.
Change-Id: Ifcc3a6d4599474457e37dd17a35c41fc73e7a17e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111980
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins