There is no simple "Windows is 10 or newer" check in MSI, with the
Microsoft policy of "you don't need to know real Windows version".
See also https://developercommunity.visualstudio.com/t/detect-a-windows-version-from-msi/412198
The values that MSI sees (e.g. on my Win11) are:
Property(C): VersionNT = 603
Property(C): VersionNT64 = 603
Property(C): WindowsBuild = 9600
So those can't be used for the check. I use the WINMAJORVER that is
read from registry (Software\Microsoft\Windows NT\CurrentVersion).
There is no more need to check and install UCRT; it was dropped.
Change-Id: Ic02d6aeb965e9684bafd4357f969980f77000e73
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178049
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
jom (https://wiki.qt.io/Jom) is a parallel version of nmake that
especially helps with building openssl since everything is compiled
individually/the compiler cannot use parallelism either.
Also in a LibreOffice build there's not much else that can be done in
parallel/other stuff requires openssl to be built to continue.
Change-Id: Ib16b0f947991a1d3255aeae7dc5d9bdee0b157a0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177743
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Tested-by: Jenkins
i.e. strawberry-perl-portable for the installsets and openssl
The only module that needs to be installed (and only when building
installation sets) is Font::TTF::Font - but only on the windows side,
not in the wsl-container.
in the wsl-as-helper case there are three different versions of perl
involved:
* one inside wsl, since autogen.sh is a perl script
* one provided by git-bash - used for the majority of the build
whenever a recipe uses perl
* and strawberry-perl-portable for building openssl (since that is
picky and needs one that handles the windows-paths a certain way)
and for building the installation sets (because of similar
assumptions in path mangling)
Change-Id: I8374749f21c7862f2e9e77d760077e836a6e9166
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177560
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Because some architecture(such as riscv64) does not support NaN
payload (NaN propagation), skipping the related tests might be a
good choice for builders who has already known the risk of lacking
NaN payload support.
Currently the tests that could be skipped via --disable-nan-tests are:
- rtl_math: test_payloadNaN
- sc_ucalc_formula2: testExternalRefFunctions
- sc_ucalc_formula2: testFuncGCD
- sc_ucalc_formula2: testFuncLCM
- sc_ucalc_nanpayload: testNanPayload
Change-Id: Ia8834595a8b469d8c542809b3e580a3f6316ef20
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174801
Reviewed-by: René Engelhard <rene@debian.org>
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: René Engelhard <rene@debian.org>
Unused since
commit ed07ec7606
Date: Sun Dec 20 16:49:12 2020 +0000
drop never completed GtkSalPrinter
Change-Id: Iacbf84449175863e5a6ad09f6946b3bd3b503a9a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177237
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
...which I've seen fundamentally working when building with recent emsdk against
recent Qt6 trunk (and including <https://github.com/qt/qtbase/pull/108> "Update
the check for WebAssembly JSPI support") and running on recent Chrome (with JSPI
enabled under <chrome://flags/>)
Change-Id: I98c11c5ee7e95b135ddc33c95c95752055ecd4c5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176031
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
...and just unused dummies since 3.1.58, so don't install them for >= 3.1.58,
even if the dummies would still be available for < 3.1.68
Change-Id: Ida55be2fa3b75982bfd764b7b2676e63c092fe79
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175822
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
- ${var/pattern/replacement} and here-string are bashism.
- here string (<<<<) is bashism too, depsited it's intended for Windows
build only (which uses Bash inside msys), however the code block is
still parsed on other platforms (without bash a /bin/sh) before
evaluated. Let's remove that too.
Change-Id: I3ba59d97b9e9a6b29496b3401c29c4fbf99f46d4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170969
Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
...as is convenient for some experiments
Change-Id: I74aedb38ecc0f7b5a0d913799f649dce77dc7bba
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174753
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
* Drop redundant "minor version >= 0" check
* For kf6, require version >= 6.0, i.e. drop support
for older pre-release development versions
Change-Id: Idffbc8eef513887727f6b256cb47a770294435bc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174587
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Those KDE version check can be moved into compile-time.
This change will also reduce the time to check when native compiling,
too, since we don't need to run the just-built binaries.
Change-Id: I0d60ade17b1ab5aaf4f729e39aba1345f088e6b9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174512
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
The hack was introduced in 7db1150b2c "fix macos
build with clang 16". (And for our --enable-pch for Clang being known-broken,
also see ffc1ab15ae "Work around some Clang PCH
consteval issue by disabling HAVE_CPP_CONSTEVAL".)
Change-Id: I5dcd7f96ba39bf4d0748940778699cb7d368f449
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173891
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
there was a system Java-WebSocket in Fedora 35, f.e. but unaware
if this is actively packaged standalone in contemporary distros,
but useful for the coverity build case.
Change-Id: Id6393dbfb1c449b75391752a8bb5e5ea4481a084
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173725
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
...since 411e8c24a2 "vscode: make it work better
when srcdir=buildir and add mac lldb config" removed its use in
.vscode/vs-code-template.code-workspace.in
Change-Id: I7454f5d4443eedbb8ca143eb3e140cd0a0d708f1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173694
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
...which had been done in 7a9e4c4ba8 "WASM add
strip flags to configure.ac", but without giving a rationale. For
--enable-assert-always-abort builds, it could have caused the
> assert(pUpperMonthText[0] == "JANUAR");
in ImpSvNumberInputScan::GetMonth (svl/source/numbers/zforfind.cxx) to fire when
running in a German-locale browser, because the rule to generate the
DISABLE_DYNLOADING-specific localedata_static.hxx in
i18npool/Library_i18npool.mk then only included English-locale fallback
locale data, so pUpperMonthText[0] was always the English "JANUARY", regardless
of locale used.
With with_locales left uninitialized here, the generated localedata_static.hxx
now includes the full set of locale data. Which comes with a small increase in
size, though: For one non-debug build scenario, sofice.data stayed at ca. 68M
but soffice.wasm grew from ca. 138M to ca. 143M.
Change-Id: I46dae3f5c795ae30fc44d3ac4cb8dd162cd72966
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173619
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
...that appears to be broken ever since 9892af3cbf85e9793f21683aa16c84354d866ad5
"Modernize wasm debug symbol generation" and to have gone largely unnoticed, but
now happened to cause
> ./configure: line 14652: -gpubnames: command not found
> checking whether ccache emcc supports ... configure: error: no
in an odd Emscripten build of mine where I accidentally used a broken emcc (so
that autogen.sh started to draw bogus conclusions and get into otherwise
untested code branches)
Change-Id: Idff3a52d61464f00f2c811b207c5a214672b5b42
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/173480
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
In wsl, Windows path is also added to the WSL shell path. Therefore,
dotnet.exe from Windows is also found, if it is searched for, causing
build issues.
To avoid the build problem, and in general, to avoid using Windows
builds from outside the WSL container, search for dotnet.exe is only
done on Windows builds.
Change-Id: I2c8c412f08008b24faf50d00dc166ad7a3c09b23
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172175
Tested-by: Hossein <hossein@libreoffice.org>
Tested-by: Jenkins
Reviewed-by: Hossein <hossein@libreoffice.org>
In line with what's done for most optional,
build-time configurable features, use a config
header `config_cups.h` that has a `ENABLE_CUPS` define,
include that header in the relevant source file and use
#if ENABLE_CUPS
for code depending on CUPS being enabled instead of defining
a macro and using
#ifdef ENABLE_CUPS
This also aligns this with the `ENABLE_CPDB` macro used
in the same source file.
Change-Id: I71a5205fd63f9fc18470afcaf808c489ff833319
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172397
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
On platforms built with --enable-online-update-mar, make the automatic
online update the default now.
Change-Id: I4d8355023f185b89aa25701bcc02a15986d3d969
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172335
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
to enabling bundling or not bundling the docrepair fonts of
https://github.com/docrepair-fonts
(which provide replacments for: Agency FB, Baskerville Old Face,
Berlin Sans FB, Cooper Black, Lucida Calligraphy, Lucida Grande,
Lucida Handwriting)
Change-Id: I4ea442fa54d21f213ccbdccba9aea1b9c0675c90
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172337
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
...see
<https://emscripten.org/docs/porting/networking.html#full-posix-sockets-over-websocket-proxy-server>.
This requires
<4aff1f28b8>
"-sPROXY_POSIX_SOCKETS: Add websocket_proxy_poll". When configured with
--disable-socketpair (which appears to have no negative consequences),
external/curl appears to only call poll(2) with socket-related file descriptors,
so we can use websocket_proxy_poll instead.
The URL on which the websocket_to_posix_proxy process listens must be specified
as Module.uno_websocket_to_posix_socket_url.
Change-Id: I4ad23098b5bbc0646fa50859c0aeb9870d1cc92a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172243
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
* Which also requires external/curl. But implicitly use --without-gssapi,
checking for it in configure.ac would fail with
> configure: error: could not find function 'gss_init_sec_context' required for GSSAPI
And building ExternalProject_curl needs to see the -pthread from
gb_EMSCRIPTEN_CPPFLAGS, otherwise linking Executable_soffice_bin would fail with
> wasm-ld: error: --shared-memory is disallowed by libcurl_la-easy.o because it was not compiled with 'atomics' or 'bulk-memory' features.
* By default, GetCABundleFile in include/systools/opensslinit.hxx will fail
now. (But to make https work, applications could bring along their own such
file in the Emscripten FS, in one of the places where GetCABundleFile checks for
it.) So, for Emscripten only, make failure of GetCABundleFile non-fatal in
InitCurl_easy.
* Some code in sw was erroneously hidden behind !ENABLE_WASM_STRIP_EXTRA (off
by default for Emscripten), but is needed with HAVE_FEATURE_CURL.
* See <https://emscripten.org/docs/porting/networking.html> for how to actually
use networking in an Emscripten application.
Change-Id: I2bbe9f3fd0e20143e18eb1e8104568b1c7a304de
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172167
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
...than an EMSCRIPTEN_EXTRA_SOFFICE_POST_JS. That way, we can e.g. set up
Module.arguments there.
Change-Id: I4990ab6daac2f74326ab2ee9508828f1b79bceb7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172154
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
`QT_CLEAN_NAMESPACE` and `QT_THREAD_SUPPORT` seem to
have long been dropped from Qt (are only seen in Qt 3 changelogs
in current qtbase git dev history) and the most likely explanation
why they were still defined for the Qt based VCL plugins seems
to be that they were just copied over from the KDE 3 support
that was dropped in
commit 72699595aa
Date: Wed Sep 2 14:37:23 2015 +0200
remove KDE3 support, --enable-kde and --enable-kdeab
Drop the obsolete defines for qt5, qt6, kf5 and kf6.
Change-Id: I052e5e082455150c04e57d3be2e23b6245ad940d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172062
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
This commit adds Package targets for the net_basetypes, net_uretypes
and net_oootypes libraries to install them into instdir/program/dotnet.
Also adds a LIBO_SHARE_DOTNET_FOLDER variable mirroring the
LIBO_SHARE_JAVA_FOLDER variable.
Change-Id: I28cdb2dac799bd72d11c3e550bba1a946db8b49c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170098
Tested-by: Jenkins
Reviewed-by: Hossein <hossein@libreoffice.org>
This commit changes the existing --enable-dotnet switch into
--with-dotnet, allowing users to pass in a different dotnet
executable than the one on their PATH, similar to --with-java.
This is used to determine the variables DOTNET and DOTNET_ROOT.
Change-Id: Ia4f02dfdbd33d7629a800a076f758b26bb186d9f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169656
Tested-by: Jenkins
Reviewed-by: Hossein <hossein@libreoffice.org>
...to have $(WORKDIR)/installation/LibreOffice/emscripten populated with just
the relevant files from $(INSTDIR). (This doesn't reuse the complicated
CustomTarget_instsetoo_native/install used for other PKGFORMATs; as a special
case, it uses a much simpler CustomTarget_instsetoo_native/emscripten-install.)
Change-Id: I9c7509aadbc0e6e49ec95bf51c748c2ff9f778b9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171066
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
This will link libgssapi_krb5.so.2 which is in krb5-libs (ABI CL1 in
RHEL8, ABI CL2 in RHEL9).
Change-Id: I2dbaa64e70f4502c5a47c6c85123c94b9ad41277
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170758
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
the classic linker will be removed in upcoming versions of XCode and is
deprecated
XCode 15.0 has a bug that would cause runtime crashes on macOS 11, but
that bug has been fixed with XCode 15.1 and all users of XCode 15.0
could update to 15.1 or 15.2 (15.3 or later requires newer version of
macOS) - so remove the workaround of using the old linker and instead
require a fixed version of Xcode (or a different minimum deployment
target)
Change-Id: If516ac85539da83f54b1792450cf43ea55d0d808
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170640
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
Tested-by: Jenkins
My debug build is slow enough already, no need to make it worse.
People who want it, can turn it on explicitly.
Change-Id: I8677534d8f0142699baa6b95a249ae5f70c5cc3c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170269
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
- Fixes CVE-2017-18926 and CVE-2020-25713.
- drop 0001-Calcualte-max-nspace-declarations-correctly-for-XML-.patch.1:
merged upstream
- drop 0001-CVE-2020-25713-raptor2-malformed-input-file-can-lead.patch.1:
merged upstream
- drop libtool.patch: merged upstream
- drop most of raptor-freebsd.patch.1: merged upstream
- drop most of raptor-msvc.patch.1: merged upsttream
- drop most of ubsan.patch: merged upstream
- drop Wint-conversion.patch: merged upstream
depend on package icu_ure to have libicuuc delivered and add corresponding
directory to rpath-link to make sure the right copy is picked up
use $(strip ...) in LDFLAGS to avoid having to escape , with $(COMMA)
Change-Id: Ic05269ade5dae3761d98432ee504a51434a4c753
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161704
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Tested-by: Jenkins
For the gtk4 VCL plugin, require GTK version >= 4.10
and drop code for older versions.
This simplifies maintenance, in particular since
requiring 4.10 ensures that the basic GtkAccessible API
is available.
GTK 4.10 was released on 2023-03-04 [1], so it
will be almost 2 years by the time that LO 25.2
will be released.
Given that the gtk4 VCL plugin is still experimental,
providing support for older GTK 4 releases shouldn't
have to be a concern.
[1] https://gitlab.gnome.org/GNOME/gtk/-/blob/4.10.0/NEWS?ref_type=tags
Change-Id: I6f361b533391225d0e74c174e0479b767b9d827a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169324
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
This commit adds an --enable-cli/--disable-cli switch to autoconf to
control generation of the old CLI bindings (Windows only). It is
enabled by default, to not be a breaking change to users just yet.
Over time, when the old bindings are deprecated in favor of the new
.NET bindings, it could be set to disabled by default.
Change-Id: Ib60b372459cb0c735275ed17d004d037279357eb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168751
Tested-by: Jenkins
Reviewed-by: Hossein <hossein@libreoffice.org>
same for gb_Executable_BINDIR[_FOR_BUILD] and fold
gb_Library_WORKDIR_FOR_BUILD into gb_Library_DLLDIR_FOR_BUILD (the
latter also has a workdir variant)
Change-Id: If7e4cf9aab46728182c89344546065bc33b452b4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169201
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>