Age | Commit message (Collapse) | Author |
|
...for (Linux) systems that don't store core.* files in the current working
directory. When enabled, this wraps test execution in `systemd-run --scope
--user --unit=...` with unit values unique per individual test invocation, so
that solenv/bin/gdb-core-bt.sh can query coredumpctl for matching core dumps.
(See the mailing list thread starting at
<https://lists.freedesktop.org/archives/systemd-devel/2023-March/048884.html>
"[systemd-devel] coredumpctl: matching by e.g. env var?" for further details.)
The used --unit=... scheme is a best effort to produce system-wide unique
values, combining the target location path of the given test with a
second-granularity date/time and the current PID. (In case there would be
multiple invocations of the same test per second, which then hopefully wouldn't
reuse the same PID. The date/time and PID could be replaced with a
high-resolution system-wide monotonic clock/counter if one were easily
available. The advantage of the current scheme is that it only uses Posix
features.) The overall length of the unit value (incl. the appended ".scope"
suffix) must not exceed 256 characters, or else systemd-run would fail with
"Failed to mangle scope name: Invalid argument".
It might look more natural to pass the unit value into gdb-core-bt.sh as a
fourth positional argument rather than via a new LIBO_TEST_UNIT env var. But
for one, the unit value is most easily computed from within the recipe shell
command lines, where an env var is the most natural fit. And for another, this
avoids having to tunnel yet another value through the tearDown method in
unotest/source/java/org/openoffice/test/OfficeConnection.java to the given
postprocesscommand.
Change-Id: Idcb20cd1e1141d8ec7f10947e5edc70aa2aa7d32
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/149690
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
While e.g. NDK 23.0.7599858 has both,
`$HOME/Android/Sdk/ndk/23.0.7599858/sources/cxx-stl/llvm-libc++/libs/x86/libc++_shared.so`
and
`$HOME/Android/Sdk/ndk/23.0.7599858/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/lib/i686-linux-android/libc++_shared.so`
(with the same content), NDK 25.1.8937393 no longer
ships that under the former path scheme, just the latter.
Therefore, use that one when copying the library,
in preparation to add support for NDK 24 and 25.
Change-Id: I20894701f4f436f41781467b57ec4f5311a8317f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146133
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
When an Android API level is explicitly set with the
`--with-android-api-level` switch introduced in
commit 4c0bccbb21ba022fd9d630eb1d9ae34673b4dc11
Date: Thu Jul 4 09:06:49 2019 +0200
android: Allow specification of the API level.
, use that for the minSdkVersion for the Android Viewer app
and the API level for the NSS build, rather than leaving
that hard-coded at API level 16.
Building with a newer API level means that the
app won't run on devices with older API levels.
With this in place, this will be recognized at
install time (installation will fail: INSTALL_FAILED_OLDER_SDK)
rather than crashing at run time.
Change-Id: Id6047b768d265b965696f3a3161d7828e5f3696e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146127
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Relevant announcement from revision history for NDK 23 [1]:
> * GNU binutils, excluding the GNU Assembler (GAS), has been removed. GAS
> will be removed in the next release. If you are building with
> -fno-integrated-as, file bugs if anything is preventing you from
> removing that flag.
Therefore, switch from uses of GNU binutils to the
corresponding LLVM tools instead.
NDK 20.x doesn't provide `llvm-ranlib` yet, so bump the minimum
version to 21.x.
Also drop the previous uses of `ANDROID_BINUTILS_PREBUILT_ROOT`,
which appear to no longer be relevant by now.
commit 4082a18406c18af7b4fcef7bd501c3679c3be56b
Date: Wed Nov 22 23:08:06 2017 +0100
android: use unified headers and llvm-c++ STL (x86) with NDK 16
gnustl (and others) are to be removed in future versions of the ndk
also bump gradle and build-tools to current versions along with it
arm unfortunately crashes with llvm-c++, so keep with gnustl for now/fix
that later
that introduced one of those uses mentions issues on ARM, but building
and running the app at least on my 32-bit ARM device (Samsung Galaxy S4 I9505,
LineageOS 17.1/Android 10) didn't show any issues in a quick test
with this change in place.
Update the Jenkins config to switch from the now no longer
supported NDK 20.1.5948944 to 23.2.8568313 for which building and
running the app has been tested on devices for all of the four
supported architectures with upcoming change
Change-Id I9ea714255faf29d50bb5f8e206f13495637da867
"android: Require NDK 23 and use default linker lld" in place
on top, s. that one's commit message for more details.
Note however that the NDK version will be further updated to use
NDK 25 in upcoming change
Change-Id Ib8e65f433ee89ff1bc12432722570bf8f9f7ed85
("android: Support NDK 24.x and 25.x, use NDK 25 for Jenkins").
[1] https://developer.android.com/ndk/downloads/revision_history
[2] https://lists.freedesktop.org/archives/libreoffice/2023-January/089878.html
Change-Id: I7645f8025d42f0fa384b5bceb31bb4b1c0a44cb5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146118
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
those are only meant to be used by the build system (primarily
RepositoryExternal.mk) - of course no rule without exception:
concat-deps reads SYSTEM_BOOST from env, so set it in the corresponding
recipe lines
Change-Id: I83c88fc6ad4467b429771c43650fe7fc0ccde407
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/144343
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
|
this further frees the environment for Windows builders, to reduce the
risk of running into "environment is too large for exec" errors when
attempting to use xargs in a recipe.
Change-Id: I7e0b97163372018edb12329f24bb1dfafeefc526
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/144235
Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
|
This already was a requirement for Windows for a few years now, and make
4.0 was released nearly 9 years ago, and it has been used in LO's build
system since it has been added 11 years ago while it was only available
in prerelease versions of make, providing an alternative workaround for
systems that didn't have make built from cvs… I guess it is finally time
to get rid of those workarounds and just require make 4.0 for everyone.
NOTE: reading files with the $(file …) function was only added with
version 4.2 of GNU make, and just using it without contents was added in
4.1, so those usages aren't supported
Change-Id: Ia1c2c86cfdbbd81f349bb9f7188299e16bdd155f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143910
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
|
6204336cc7242ff1b0fdc26ccb7f8dd4f362fb78 added support for building installsets
in parrallel using the GNU parallel tool, this patch changes that to use make's
own parallelism, dropping the need for the external tool.
By not creating huge commandline for all packages at once/sequentially, the
workarounds to modify the PATH variable can also be dropped.
Since : is a special character in makefiles separating a target from
prerequisites delimiter in the installer-tuples has been changed to the
hyphenation point.
The dependencies on the install.phony target have been moved to the actual
installset targets (and those are .PHONY targets as well since the target file
isn't actually generatead).
Also unify the tuples for the different platforms, even if the first element is
only used for Windows.
Move the msi templates to a separate directory for the different types, so that
packaging can also be done in parallel on Windows. Move the setup back to the
makefile so it can be setup prior to running the script.
Previoulsy the script used grep to remove comments from the msi template files,
and had to use "|| true" since grep would also return error when not finding a
match/on empty files. Switch that to awk so it can run without that workaround.
Change-Id: I2f8b73e04d0f601cb0b4e2d8352a38ef9957bc17
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143679
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
|
Change-Id: Icd0face05c33bbb1b56230a59015402d5f565422
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143385
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
|
|
90babff28406d5366df153e2d3c6d4206f06d614 missed the config_host.mk.in
part
Change-Id: Ic18964f02fc80b0f9b3de6518e069038f03932af
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142637
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
A new configure argument is introduced:
--with-gtk3-build=<absolute path to GTK3 build>
When provided, libreofficekit_selectionhandles package, libreofficekitgtk
library and gtktiledviewer executable would be built on Windows using the
GTK3 libraries in the passed directory, that must contain lib/pkgconfig
subdirectory with correct pkg-config data.
Change-Id: I6504af6eec0fc73cceb26a1ce923337abe14b5c4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141624
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Adding new config option: --with-main-module=<writer/calc>
With this switcher we can build only WASM writer module or
calc module. The default value is 'writer'.
This commit also reverts: 26603bc9ef0116ed31c510dab82b69d3666447b5
(WASM fix orcus native exception handling (NEH))
Because Calc import is using liborcus for loading styles.xml.
Change-Id: I4c330ef8eea7d08214bf357531ee0bf7383ab788
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137946
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Tested-by: Jenkins
|
|
This reverts commit ce54ba96f38b4af3aab1a7064078ee406eb021c6 and the
followup commit 88c511981e31c73dced95b5dc3c200fdf2a4e932.
Both effectively disabled enabling libeot support.
See also: https://lists.freedesktop.org/archives/libreoffice/2022-August/089205.html
Change-Id: I54780c69ca83b230b0c9b3b18065782fb5626da6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/140838
Tested-by: René Engelhard <rene@debian.org>
Reviewed-by: René Engelhard <rene@debian.org>
Tested-by: Jenkins
Reviewed-by: خالد حسني <khaled@aliftype.com>
|
|
This commit reverts 3749d9af3745c0eaff7239e379578e4e2af89e9d
which removes the dependency on the external library cuckoo
Without using cuckoo the same file in tdf#130795 takes
real 0m4,892s
user 0m5,298s
sys 0m0,449s
With it, it takes
real 0m4,914s
user 0m5,276s
sys 0m0,444s
pretty much the same time
Change-Id: I4cc9000ac5bf26de22bb9835283ae8d5b3230196
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138435
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
building installation sets takes a long time, and is a .PHONY action.
Having a way to skip that when running make is esp. useful with IDEs
that have no nice way of separating the "run/debug" action from the
build action. (XCode, looking at you and your awkward schemes…)
Use with »make build PKGFORMAT=""«
Change-Id: Iab0c03a4096fe5571a5496b52504b3393e9f3cf6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137111
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
|
On 2022-07-04 I submitted 268f0f3f0d70902acaeb3f99e0d206ad66ffd67c
"run CppunitTest_chart2_xshape without ENABLE_CHART_TESTS" to
see if CppunitTest_chart2_xshape would fail for anyone.
Since then, no one has complained about it, so I suppose
the tests are stable nowadays, thus removing
--enable-chart-tests which does nothing since the mentioned
commit
Change-Id: I0407c0379ea45eee93bd6689c90d1759b48e2844
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137022
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
having one is one of the prerequisites of using TestFlight
Change-Id: I9e20eb99905071fade4179dfbe2da5b7e5dd1c24
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136618
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
|
* Client code must replace uses of idlc and regmerge with uses of unoidl-write,
see the changes to odk/examples/ and ure/source/uretext/ in
40f2aee6584eafcf4cd1d95fcf1f775e5435440d "Provide unoidl-write also for the
SDK" for examples.
* The new types.rdb format is not compatible with LibreOffice < 4.1. Clients
generating extensions containing such files are advised to use appropriate
LibreOffice-minimal-version elements.
* For compatibility with old extensions, reading the legacy types.rdb format is
still supported.
* The SDK no longer ships an idl/ sub-directory containing the udkap and offapi
.idl files (as, unlike idlc, unoidl-write does not need them).
odk/config/cfgWin.js had to be adapted to look (somewhat arbitrarily) for an
examples/ sub-directory instead of idl/ when checking for "an sdk folder".
gb_UnoApi_package_idlfiles became unused and has been removed.
* The idlc and regmerge executables have been removed. Module idlc has been
removed except for idlc/test/parser/, which is also used by
CustomTarget_unoidl/unoidl-write_test, and which may eventually be moved into
module unoidl. Module external/ucpp and the corresponding configure options
have also been removed.
Change-Id: I42a0231699b863b5ebe2bee63bc32c8f79278cc1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122363
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
This way at least e.g. std::vector::operator[] will still check
bounds even though things like iterator debugging will not work.
Change-Id: If3c550cfec68eee9a19050fc8e60fca07148b4a4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134946
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
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>
|
|
Change-Id: Id9b6e1355147c3f68b9922db14f1b4904a05c686
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134650
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Now includes a configure check for the std::to_string() crash.
Change-Id: I45c3b804b7a1ff5f6520f7bdf772497f72ddee47
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134338
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
It's currently too broken (https://reviews.llvm.org/D125184),
but they're working on fixing it, so hopefully somewhen later.
Change-Id: I3ca243a57d41bd9d8c4cdbdc4a6a3b5fdc49e4c6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134023
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
Nowadays the bin/find-unneeded-includes script is a better
solution for this problem
This essentially reverts the commits:
c716b3888e7e8150d1c1053ee6550afb56438b1f
096c7e889f3b9bd42a81fb0216e2a68fb27159fc
40e7eecb7efeeb9af59206d7a9c82ac55adf5279
Change-Id: I404a4b34176efaacf961605559af9de6d6cba10a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133540
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
|
|
It seems to run slightly faster in --enable-dbgutil mode and also
builds a bit faster (at least with Clang). But libc++ on Mac
isn't built with debug mode support.
Change-Id: Idf5dba9c4a56aba1f4163aa518a78d34b6837149
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133664
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
Otherwise, upgrading to Android Gradle Plugin 7.1.3 and
gradle 7.2 (which will be done in a follow-up commit)
would make the build fail like this:
> FAILURE: Build failed with an exception.
>
> * Where:
> Build file '/home/michi/development/git/libreoffice-WORKTREE-for-android-x86/android/source/build.gradle' line: 1
>
> * What went wrong:
> A problem occurred evaluating root project 'source'.
> > Failed to apply plugin 'com.android.internal.application'.
> > ANDROID_SDK_HOME is set to the root of your SDK: /home/michi/Android/Sdk
> ANDROID_SDK_HOME was meant to be the parent path of the preference folder expected by the Android tools.
> It is now deprecated.
>
> To set a custom preference folder location, use ANDROID_USER_HOME.
>
> It should NOT be set to the same directory as the root of your SDK.
> To set a custom SDK location, use ANDROID_HOME.
We don't actually rely on `ANDROID_SDK_HOME` being evaluated
by the Android toolchain, but it used to be set in configure.ac,
and the value was then assigned to the `sdk.dir` property written to
`android/source/local.properties`.
Just use a new variable name `ANDROID_SDK_DIR`
and keep the mechanism otherwise unchanged for now.
Change-Id: I44826621a1342119d40036fb704d8ff1eeed7c77
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133178
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Write an `ndk.dir` property with the directory path to
`android/source/local.properties` instead, similar
to how it's done for `sdk.dir`.
Also, rename the `ANDROID_NDK_HOME` variable that's
assigned in configure.ac that holds the corresponding
value to `ANDROID_NDK_DIR`, because the gradle warning
still shows up if that environment variable is set in
addition to having an `ndk.dir` property in `local.properties`.
This makes the following gradle warning disappear:
> > Task :stripStrippedUIDebugDebugSymbols
> WARNING: Support for ANDROID_NDK_HOME is deprecated and will be removed in the future. Use android.ndkVersion in build.gradle instead.
> Support for ANDROID_NDK_HOME is deprecated and will be removed in the future. Use android.ndkVersion in build.gradle instead.
Note however, that with this approach of using the `ndk.dir`
property instead of the suggested `android.ndkVersion`
(with the latter having the stricter requirement that
the `ndk` dir would have to be a subdir of the SDK dir),
doing the actual upgrade to a newer Gradle (plugin) version
in follow-up commit
Change-Id Ia982d72d877e229c3006c6d528b830d16c88481f
"android: Update Android Gradle Plugin to 7.1.3"
revealed that the use of the `ndk.dir` property
is deprecated in newer Gradle (plugin) versions as well,
resulting in this warning.
> > Task :stripStrippedUIDebugDebugSymbols
> [CXX5106] NDK was located by using ndk.dir property. This method is
> deprecated and will be removed in a future release. Please delete
> ndk.dir from local.properties and set android.ndkVersion to
> [20.0.5594570] in all native modules in the project.
> https://developer.android.com/r/studio-ui/ndk-dir
It might make sense to address that in a follow-up step,
but for now, it's an improvement and keeps it working
after the upgrade without potentially causing any incompatibility
problems with existing autogen configurations,
while support for the `ANDROID_NDK_HOME` env var that was
used so far seems to have been dropped, resulting in
> > Task :stripStrippedUIDebugDebugSymbols
> Unable to strip the following libraries, packaging them as they are:
> libc++_shared.so, libfreebl3.so, liblo-native-code.so, libnspr4.so,
> libnss3.so, libnssckbi.so, libnssdbm3.so, libnssutil3.so,
> libplc4.so, libplds4.so, libsmime3.so, libsoftokn3.so,
> libsqlite3.so, libssl3.so.
instead if upgrading gradle without switching to the use of the property.
Change-Id: I4a090e8736dac80777f69b0e12819b9c056f582b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133177
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
...that must always be true ever since 1b8c61d5ca8e2a7ae7a0bcd189b7a87defecea03
"Bump JDK buildtime requirement to 1.6"
Change-Id: I9432ac9d0a0e2c4999a80b6f144099d0e4dc15bc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132616
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...where ExternalProject_hsqldb failed with
> [java] java.lang.UnsupportedOperationException: The Security Manager is deprecated and will be removed in a future release
> [java] at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:194)
> [java] at org.apache.tools.ant.taskdefs.Java.run(Java.java:891)
> [java] at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:231)
> [java] at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:135)
> [java] at org.apache.tools.ant.taskdefs.Java.execute(Java.java:108)
> [java] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:299)
> [java] at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
> [java] at java.base/java.lang.reflect.Method.invoke(Method.java:577)
> [java] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99)
> [java] at org.apache.tools.ant.Task.perform(Task.java:350)
> [java] at org.apache.tools.ant.Target.execute(Target.java:449)
> [java] at org.apache.tools.ant.Target.performTasks(Target.java:470)
> [java] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1401)
> [java] at org.apache.tools.ant.Project.executeTarget(Project.java:1374)
> [java] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
> [java] at org.apache.tools.ant.Project.executeTargets(Project.java:1264)
> [java] at org.apache.tools.ant.Main.runBuild(Main.java:818)
> [java] at org.apache.tools.ant.Main.startAnt(Main.java:223)
> [java] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:284)
> [java] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:101)
> [java] Caused by: java.lang.UnsupportedOperationException: The Security Manager is deprecated and will be removed in a future release
> [java] at java.base/java.lang.System.setSecurityManager(System.java:416)
> [java] at org.apache.tools.ant.types.Permissions.setSecurityManager(Permissions.java:103)
> [java] at org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:216)
> [java] at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:155)
> [java] ... 19 more
while building target switchtojdk17 (but then unfortunately carried on, without
the source modifications that should have been done by that target, leading to
confusing errors like
> [javac] workdir/UnpackedTarball/hsqldb/src/org/hsqldb/jdbc/jdbcConnection.java:426: error: jdbcConnection is not abstract and does not override abstract method createStruct(String,Object[]) in Connection
that should have been under control at least ever since
7dbfc0012cc75e7dac9a416b53149ad8ec33f071 "make hsqldb build with java 1.7".)
Unconditionally passing ANT_OPTS -Djava.security.manager=allow would cause older
JDK versions (like Java 11) to fail with a java.lang.Error "Could not create
SecurityManager" caused by a java.lang.ClassNotFoundException "allow", so
introduce JDK_SECURITYMANAGER_DISALLOWED_FOR_BUILD.
This should allow us to keep building against at least JDK 18, even though later
versions of Java may remove the Security Manager completely, but in which case
hopefully an updated version of Apache Ant will become available.
Change-Id: I9d143d8bcfff67870017bb1c874eec53e0ff9672
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132558
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Jenkins
|
|
On 32bit platforms tools::Long is 32bit, which is not enough
for pixel coordinates with 1m+ Calc rows+. So do not allow jumbo
sheets for such platforms.
Change-Id: I2ebd56a051470d33fca967918af3e7d2b0172dc7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130713
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
Missed in 9eb9083ff2fdaeb96399a0830a4394de4e29ef64
Change-Id: I1d001b39f55c8504a76bfbdadd1423b414adc9c5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130209
Tested-by: René Engelhard <rene@debian.org>
Reviewed-by: René Engelhard <rene@debian.org>
|
|
This reverts
commit 2483cd198b51bd5d0819cbebf40f211b2ef1236d
Author: Jan-Marek Glogowski <glogow@fbihome.de>
Date: Fri Feb 11 19:40:36 2022 +0100
Correctly depend on source component file
and
commit 17ec55c48082254e1f55bcfa00808e45a50a9801
Author: Jan-Marek Glogowski <glogow@fbihome.de>
Date: Thu Jan 20 10:06:54 2022 +0100
Fail on non-optional, but filtered component names
because they cause failures on Windows builds that look
like:
warning: failed to load external entity "C:/cygwin/home/tdf/lode/jenkins/workspace/gerrit_windows@2/workdir/ComponentTarget/binaryurp/source/binaryurp.component"
cannot process C:/cygwin/home/tdf/lode/jenkins/workspace/gerrit_windows@2/workdir/ComponentTarget/binaryurp/source/binaryurp.component
Change-Id: Ia34cdabd76b47a6a4686ebd0f96ceb774d3236f2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129956
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
This commit implements a WebP reader and writer for both lossless
and lossy WebP, export dialog options for selecting lossless/lossy
and quality for lossy, and various internal support for the format.
Since writing WebP to e.g. ODT documents would make those images
unreadable by previous versions with no WebP support, support
for that is explicitly disabled in GraphicFilter, to be enabled
somewhen later.
Change-Id: I9b10f6da6faa78a0bb74415a92e9f163c14685f7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128920
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
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>
|
|
Change-Id: Ifba53b95fdefed59123a2e682e787119b6c67857
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128689
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
If any of the optional component lists contain a non-optional
component implementation, fail the component file generation and
show a diff of the offending component implementation name.
Change-Id: Ieac876e613f6945362186d4586dd2aacc5669920
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128645
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
Change-Id: I13c50ac005e1e990bd185115b6e1717ce2c6bb45
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128654
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
... 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>
|
|
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>
|
|
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>
|
|
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>
|
|
..., 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>
|
|
...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
|
|
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>
|
|
I'm not sure how useful this is today. Still hard-disabled on Mac
and Win. Obviously unneeded for static builds.
Change-Id: I3a95dede3c596ccdc0d15eba9edc072ad35f33fa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128089
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
Tested-by: Jenkins
|
|
The include is set explicitly in RepositoryExternal.mk . And
when using system cuckoo, it's not necessary to refer to the
unpacked tarball location.
Change-Id: Idd241f7551fb98cb5948c4e7007204ad3a8d87a3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128061
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
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>
|
|
Instead of always testing for DISABLE_GUI, just disable the epoxy
test and handle !ENABLE_EPOXY in RepositoryExternal.mk.
Change-Id: I38213ffa77353bc93f32caa1b4164c5fa88170ac
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127999
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
...that were left behind by 023ebf17898db4bca63129f079fd90b5cf76c1a9 "ucb:
remove --with-webdav=neon"
Change-Id: I617ca74d1c4b46d8f0b9dac317b5972bfb911813
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127986
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
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>
|