summaryrefslogtreecommitdiffstats
path: root/config_host.mk.in
Commit message (Collapse)AuthorAgeFilesLines
* aarch64 callVirtualFunction needs to be compiled w/o -fstack-clash-protectionStephan Bergmann2020-08-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At least when doing an aarch64 Flatpak build against org.freedesktop.Sdk//19.08, which uses GCC 9.2.0 and passes in `CXXFLAGS=-O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection`, callVirtualMethod (in bridges/source/cpp_uno/gcc3_linux_aarch64/callvirtualfunction.cxx) would decrement the stack pointer another 16 bytes after the stackargs = alloca(...); and before the asm block, so in the called virtual function, arguments read from the stack would read garbage (and CustomTarget_testtools/uno_test would fail with SIGSEGV at > #0 0x0000ffffb733eb48 in rtl::OUString::operator= (this=0xaaaaf9c1ac30, str=...) at /run/build/libreoffice/include/rtl/ustring.hxx:453 > #1 0x0000ffffb733a7bc in bridge_object::assign (rData=..., bBool=true, cChar=64 u'@', nByte=17 '\021', nShort=4660, nUShort=65244, nLong=305419896, nULong=4275878552, nHyper=0, nUHyper=187651311381888, fFloat=17.0814991, fDouble=3.1415926358999999, eEnum=-1698898192, rStr=..., xTest=..., rAny=...) at /run/build/libreoffice/testtools/source/bridgetest/cppobj.cxx:99 > #2 0x0000ffffb733a87c in bridge_object::assign (rData=..., bBool=true, cChar=64 u'@', nByte=17 '\021', nShort=4660, nUShort=65244, nLong=305419896, nULong=4275878552, nHyper=0, nUHyper=187651311381888, fFloat=17.0814991, fDouble=3.1415926358999999, eEnum=-1698898192, rStr=..., xTest=..., rAny=..., rSequence=...) at /run/build/libreoffice/testtools/source/bridgetest/cppobj.cxx:115 > #3 0x0000ffffb733ade4 in bridge_object::Test_Impl::setValues (this=0xaaaaf9c1abb0, bBool=1 '\001', cChar=64 u'@', nByte=17 '\021', nShort=4660, nUShort=65244, nLong=305419896, nULong=4275878552, nHyper=0, nUHyper=187651311381888, fFloat=17.0814991, fDouble=3.1415926358999999, eEnum=-1698898192, rStr=..., xTest=..., rAny=..., rSequence=..., rStruct=...) at /run/build/libreoffice/testtools/source/bridgetest/cppobj.cxx:548 > #4 0x0000ffffb740bff4 in callVirtualFunction (function=281473755360772, gpr=0xffffd1ab1f28, fpr=0xffffd1ab1f68, stack=0xffffd1ab1d40, sp=8, ret=0xffffd1ab22c0) at /run/build/libreoffice/bridges/source/cpp_uno/gcc3_linux_aarch64/callvirtualfunction.cxx:63 > #5 0x0000ffffb740ca70 in (anonymous namespace)::call (proxy=0xaaaaf9c291c0, slot=..., returnType=0xaaaaf9c00770, count=17, parameters=0xaaaaf9c3a210, returnValue=0xffffd1ab22c0, arguments=0xffffd1ab2230, exception=0xffffd1ab2370) at /run/build/libreoffice/bridges/source/cpp_uno/gcc3_linux_aarch64/uno2cpp.cxx:178 > #6 0x0000ffffb740d4c4 in bridges::cpp_uno::shared::unoInterfaceProxyDispatch (pUnoI=0xaaaaf9c291c0, pMemberDescr=0xaaaaf9c55950, pReturn=0xffffd1ab22c0, pArgs=0xffffd1ab2230, ppException=0xffffd1ab2370) at /run/build/libreoffice/bridges/source/cpp_uno/gcc3_linux_aarch64/uno2cpp.cxx:361 > #7 0x0000ffffb740720c in (anonymous namespace)::call (proxy=0xaaaaf9c549c0, description=..., returnType=0xaaaaf9c00770, count=17, parameters=0xaaaaf9c3a210, gpr=0xffffd1ab2510, fpr=0xffffd1ab2550, stack=0xffffd1ab2590, indirectRet=0xffffb7d24790) at /run/build/libreoffice/bridges/source/cpp_uno/gcc3_linux_aarch64/cpp2uno.cxx:120 > #8 0x0000ffffb74079a0 in (anonymous namespace)::vtableCall (functionIndex=40, vtableOffset=0, gpr=0xffffd1ab2510, fpr=0xffffd1ab2550, stack=0xffffd1ab2590, indirectRet=0xffffb7d24790) at /run/build/libreoffice/bridges/source/cpp_uno/gcc3_linux_aarch64/cpp2uno.cxx:291 > #9 0x0000ffffb7407b00 in (anonymous namespace)::vtableSlotCall (gpr0=187651311618536, gpr1=1, gpr2=64, gpr3=17, gpr4=4660, gpr5=65244, gpr6=305419896, gpr7=4275878552, fpr0=5.4321266044931319e-315, fpr1=3.1415926358999999, fpr2=0, fpr3=4.0039072046065485, fpr4=0, fpr5=4.003911019303815, fpr6=8.9589789687541617e+102, fpr7=-4.4588500238274385e-308) at /run/build/libreoffice/bridges/source/cpp_uno/gcc3_linux_aarch64/cpp2uno.cxx:348 > #10 0x0000ffffb739e60c in bridge_test::performTest (xContext=..., xLBT=..., noCurrentContext=false) at /run/build/libreoffice/testtools/source/bridgetest/bridgetest.cxx:378 > #11 0x0000ffffb73a3d58 in bridge_test::TestBridgeImpl::run (this=0xaaaaf9c18550, rArgs=...) at /run/build/libreoffice/testtools/source/bridgetest/bridgetest.cxx:1162 > #12 0x0000aaaad292a3ec in sal_main () at /run/build/libreoffice/cpputools/source/unoexe/unoexe.cxx:509 > #13 0x0000aaaad29297a0 in main (argc=8, argv=0xffffd1ab31b8) at /run/build/libreoffice/cpputools/source/unoexe/unoexe.cxx:349 .) By experiment, I found the problematic thing to be -fstack-clash-protection, which can apparently be cancelled with a subsequent -fno-stack-clash-protection at least on that GCC 9.2.0. (And -f[no-]stack-clash-protection appears to only be available since GCC 8, and not at all for Clang, so check for it with HAVE_GCC_STACK_CLASH_PROTECTION.) Change-Id: If667fdf704b1ba20a04593b38d2d1f079280df41 Reviewed-on: https://gerrit.libreoffice.org/80701 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100016 Tested-by: Jan Holesovsky <kendy@collabora.com> Reviewed-by: Jan Holesovsky <kendy@collabora.com>
* android: Introduce --enable-android-lok configure switch to fix RGB vs. BGR.Jan Holesovsky2019-11-251-0/+1
| | | | | | | | | | | | | | | This indicates that the build targets the Online-based Android app, for which we need to avoid various tweaks that are needed for the 'old' Android app present in the android/ subdir of core.git. In particular, the switch used in this patch fixes a RGBA vs. BGRA confusion that caused yellow <-> cyan switch in the Online-based Android app. Change-Id: I5f394868f51ce87013677834cfafb967b9bb333e Reviewed-on: https://gerrit.libreoffice.org/83342 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Jan Holesovsky <kendy@collabora.com>
* Introduce --enable-android-editingStephan Bergmann2019-10-091-0/+1
| | | | | | | | | | | | | ...to select the experimental ...Editing... Android build variant. (Ignored for non-Android builds, but using libo_FUZZ_ARG_ENABLE anyway, just in case.) Change-Id: I670925ff358039e38edc29db69f48a78d484f133 Reviewed-on: https://gerrit.libreoffice.org/65077 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Reviewed-on: https://gerrit.libreoffice.org/80282 Reviewed-by: Jan Holesovsky <kendy@collabora.com> Tested-by: Jan Holesovsky <kendy@collabora.com>
* Drop LINK_X64_BINARY: any MSVC linker is suitable for any target platformMike Kaganski2019-06-201-1/+0
| | | | | | | | | | Change-Id: I8b080ad44f10e52fa5a726bd7cdf7dd8ff7e2dd4 Reviewed-on: https://gerrit.libreoffice.org/71913 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> (cherry picked from commit 0c0e73584f125025fb17d6be8f8050f3b7649c7d) Reviewed-on: https://gerrit.libreoffice.org/74413 Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
* tdf#114635: reimplement TWAIN-based scan using 32-bit shim on WindowsMike Kaganski2019-06-201-0/+2
| | | | | | | | | | | | | | | | | | | | | Since TWAIN is only actually available as 32-bit component on Windows, to use it in a 64-bit program, we need a 32-bit shim program that does all actual communication with TWAIN subsystem. This change reimplements TWAIN implementation to be a separate 32-bit process. Image is transfered from the shim to main program using file mapping API. This reverts most of commit 585d9806961342e95f7318fb947bd31e9f86dee0. 64-bit LibreOffice doesn't bundle TWAIN DSM library now. TWAIN DSM source code is still used for TWAIN headers. Change-Id: I46f178ad36acd97a9eff156624b99036fcbb83f8 Reviewed-on: https://gerrit.libreoffice.org/65688 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/74415 Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
* build: support disabling popplerAshod Nakashian2019-06-151-0/+1
| | | | | | | | | | | This adds --enable-poppler configure option. Poppler can be enabled/disabled by setting this parameter to yes or no. Change-Id: I42ba2d27de7b5014d28523394310616d20073b71 Reviewed-on: https://gerrit.libreoffice.org/68602 Reviewed-by: Andras Timar <andras.timar@collabora.com> Tested-by: Andras Timar <andras.timar@collabora.com>
* Fix creation/removal of GPG socketdirStephan Bergmann2018-11-091-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | <https://gerrit.libreoffice.org/#/c/50978/> "gpg4libre: fix failing gpg test due to over-long filenames" had introduced the gb_CppunitTest_run_gpgconf target in xmlsecurity/CppunitTest_xmlsecurity_signing.mk, calling `gpgconf --craete-socketdir`. A 2018-03-18 comment there notes that "Stephan's last comment: (and `gpgconf --remove-sockedir` be called after the test?) is not addressed yet, will do in follow-up commit". Follow-up d7ecf4a4e37a9eeffa2b40f9fe5a2e6a8f90c876 "properly check for gpgconf (and --create-socketdir) working" makes gb_CppunitTest_run_gpgconf conditional. However, in configure.ac, HAVE_GPGCONF_SOCKETDIR=TRUE is missing, so even after follow-up 7a95ee8d0badb2cbbd137a6e18af1bada35ae933 "actually add HAVE_GPGCONF_SOCKETDIR to config_host.mk.in...", config_host.mk will always contain export HAVE_GPGCONF_SOCKETDIR= so gb_CppunitTest_run_gpgconf will never be executed (and `pgconf --crate-socketdir` will never called). But even if it were executed, it would not create the socket dir that the test code in xmlsecurity/qa/unit/signing/signing.cxx is actually using, as gb_CppunitTest_run_gpgconf sets GNUPGHOME=.../workdir/CppunitTest/xmlsecurity_signing.test.user while xmlsecurity/qa/unit/signing/signing.cxx's SigningTest::setUp sets GNUPGHOME=.../workdir//CppunitTest/xmlsecurity_signing.test.user/ and the GPG software is apparently picky about extra slashes when computing the socket dir name from the GNUPGHOME env var. (That `gpgconf --create-socketdir` was never executed with the current setup shows that calling it explicitly is probably not really needed, as the GPG software apparently creates it automatically on demand.) However, what is still missing is to remove the socket dir again (see the comment quoted above), and, probably more importantly, to exit any gpg-agent daemon operating on that socket dir that has (indirectly) been started by the tests in xmlsecurity/qa/unit/signing/signing.cxx. At least with Fedora 29 gpgconf from gnupg2-2.2.9-1.fc29.x86_64, that daemon is successfully terminated by calling `gpgconf --remove-socket`. So move the call to `gpgconf --create-socketdir` from the makefile to the test setup code (which makes it easier to guarantee that a single GNUPGHOME value, and thus a single socket dir, is used), and add a corresponding `gpgconf --remove-socketdir` call to the test shutdown code. (As argued above, the `gpgconf --create-socketdir` call shouldn't be stricktly necessary, but it looks cleaner to do it explicitly anyway.) Change-Id: I2ec8f08943ed63ec27f8507461588ee7cdadf372 Reviewed-on: https://gerrit.libreoffice.org/63181 Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de> Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
* Re-introduce the functionality to look for multiple iOS SDK versionsTor Lillqvist2018-10-311-2/+0
| | | | | | | | | | Currently, look for 12.1, 12.0 and 11.4. (But of course I recommend people keep their Xcode updated, and thus now build against the 12.1 SDK.) Also get rid of two AC_SUBST variables that were not used anywhere. Change-Id: Ic1abf3eb1d900c843263dc781fd4c9a8ab126f09
* tdf#72987 run firebird test for little endian only for nowRene Engelhard2018-10-031-0/+1
| | | | | | | | | | since those old(er) files still use the endianness-depending format. And remove x64 from the filename... Change-Id: I24e56cd8561c2ec6a1f77a66907c14cdea8248b6 Reviewed-on: https://gerrit.libreoffice.org/60916 Tested-by: Jenkins Reviewed-by: Rene Engelhard <rene@debian.org>
* No more use of MACOSX_SDK_VERSION outside configure.acStephan Bergmann2018-09-121-1/+0
| | | | | | | | | | | | | ...after <https://gerrit.libreoffice.org/60376> "Remove Library_avmediaQuickTime, which is dead" and <https://gerrit.libreoffice.org/60377> "Remove MACOSX_SDK_VERSION < 101200 code, which is dead". (This commit can be reverted if MACOSX_SDK_VERSION ever needs to be used again in makefiles or source code.) Change-Id: Iaff300d325e357f96c329cc84b3b37d91863d4b0 Reviewed-on: https://gerrit.libreoffice.org/60378 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
* Add --enable-ios-libreofficelight-app option to build stuff for janI's appTor Lillqvist2018-08-281-0/+1
| | | | Change-Id: I1310cb8f5f543f49f9667ee10cb26c9809df259e
* rename ENABLE_HEADLESS option to DISABLE_GUINoel Grandin2018-08-271-1/+1
| | | | | | | | | | since it has nothing to do with the headless command line option, so use the name it has in the configure.ac file Change-Id: Ibf0615ed02695d6e48a797f5632e4f417c010c70 Reviewed-on: https://gerrit.libreoffice.org/59611 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
* drop unnecessary SYSTEM_MYSQL_CONNECTOR_CPPCaolán McNamara2018-08-261-1/+0
| | | | | | | Change-Id: I41cfbf41247270d29e08e5125adc05aac198b175 Reviewed-on: https://gerrit.libreoffice.org/59608 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
* rhbz#1618703: Allow to use OpenSSL as backend for rtl/cipher.hStephan Bergmann2018-08-231-0/+1
| | | | | | | | | | | | | | | | | | | | | ...with new configuration option --enable-cipher-openssl-backend rtl/cipher.h (which is part of the stable URE interface) offers functionality to en-/decrypt data with Blowfish in ECB, CBC, and streaming CFB mode, and with RC4 (aka ARCFOUR; which is a stream cipher). LO itself only uses Blowfish CFB and RC4, so only those are wired to OpenSSL for now, for simplicity. Using Blowfish ECB and CBC, or Blowfish CFB in DirectionBoth mode would cause failures for now (cf. sal/qa/rtl/cipher/rtl_cipher.cxx); the assumption is that no external code actually makes use of this functionality. Using NSS instead of OpenSSL could be an alternative, but there appears to be no support in NSS for Blowfish in streaming CFB mode, only CKM_BLOWFISH_CBC for CBC mode. Change-Id: I0bc042961539ed46844c96cb1c808209578528a0 Reviewed-on: https://gerrit.libreoffice.org/59428 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
* tdf#112343 Change dependency from dbus-glib to dbusArkadiy Illarionov2018-08-081-0/+3
| | | | | | | | | | | Add check for GLib support for modules which depends on dbus and glib separately. Also fix copy-paste typo. Change-Id: Ibd33573b2f8dff9e0a7f2e0fc983d93878bb5357 Reviewed-on: https://gerrit.libreoffice.org/57157 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
* KF5_HAVE_GLIB etc. are apparently unusedStephan Bergmann2018-08-021-3/+0
| | | | | | | | | | ...ever since their introduction with 4d78cf97d7b1629556df68fc461922fda930d9ec "Extend build system to support linking against KDE Frameworks 5" Change-Id: I47f0b6c440aa345d564abac5a12a4af35b8fcf4e Reviewed-on: https://gerrit.libreoffice.org/58476 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
* WITH_HELPPACK_INTEGRATION is no longer substitutedStephan Bergmann2018-08-021-1/+0
| | | | | | | | | | ...since 255bfc283c531512c93401bb4a23cb617137b864 "WITH_HELPPACK_INTEGRATION isn't substituted anywhere" Change-Id: I59d8befc55b36cc32096f75217d91bccc8b72160 Reviewed-on: https://gerrit.libreoffice.org/58474 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
* ALLOC is no longer substitutedStephan Bergmann2018-08-021-1/+0
| | | | | | | | | | ...since db354dfad541fe2edd64a618a2d7cc83a6be2b9e "the custom SAL allocator is no longer used" Change-Id: Ie4cca54568091f20448997bb4eae7e01230572bf Reviewed-on: https://gerrit.libreoffice.org/58471 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
* add --enable-gdb-index for --gdb-index from gold/lldLuboš Luňák2018-07-041-0/+1
| | | | | | | | | https://lists.freedesktop.org/archives/libreoffice/2018-June/080437.html Change-Id: I66904333bf329e804025d4b229a0db573e21c3af Reviewed-on: https://gerrit.libreoffice.org/56566 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
* add configure option --enable-ld to use GNU gold or LLVM lldLuboš Luňák2018-07-041-0/+1
| | | | | | | | | https://lists.freedesktop.org/archives/libreoffice/2018-June/080437.html Change-Id: I06214459fcebe5cc58fd7979f3cbe5ac3d97db7d Reviewed-on: https://gerrit.libreoffice.org/56417 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
* add --enable-split-debug for -gsplit-dwarfLuboš Luňák2018-07-041-0/+1
| | | | | | | | | | https://lists.freedesktop.org/archives/libreoffice/2018-June/080437.html Change-Id: I2a02e23e46d7a54083249408f09fba87932b1d44 Reviewed-on: https://gerrit.libreoffice.org/56416 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
* Respect --bindir..orbea2018-06-131-0/+1
| | | | | | | Change-Id: I2ed73a296b813de722156c69ac64cf9d6cff199d Reviewed-on: https://gerrit.libreoffice.org/55197 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Rene Engelhard <rene@debian.org>
* add --enable-build-opensymbol option to build opens___.ttf from sourceRene Engelhard2018-05-291-0/+2
| | | | | | | | | | | ... and handle opens___.ttf like unowinreg.dll (-> download.lst/$(TARFILE_LOCATION)) Change-Id: Id4723fb15c4b4b04133dedf97b1262441baa4756 Reviewed-on: https://gerrit.libreoffice.org/54938 Tested-by: Rene Engelhard <rene@debian.org> Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Rene Engelhard <rene@debian.org>
* remove Linux ("UNX") systray "Quickstarter"Rene Engelhard2018-05-231-1/+0
| | | | | | | Change-Id: Ie0e8b8b7ad59ee640d6b195dfae1a7cf745056fd Reviewed-on: https://gerrit.libreoffice.org/54543 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
* actually export SYSTEM_LIBNUMBERTEXT_DATA in config_host.mkRene Engelhard2018-05-041-0/+1
| | | | Change-Id: I5cd6d0b3fe610d0152a3d5345d8412161a1d0544
* fix system-libnumbertext buildRene Engelhard2018-05-031-1/+2
| | | | | | actually export SYSTEM_LIBNUMBERTEXT Change-Id: I758ef7ee868c5b06fc4e8ae43e6f2091925232aa
* tdf#117171 support localized number name numbering stylesLászló Németh2018-05-031-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | in page number, chapter and outline numbering in ~30 languages by integrating libnumbertext library. - offapi: add linguistic2::NumberText New NumberingType constants: - ordinal indicators (1st, 2nd, 3rd...) - cardinal number names (One, Two, Three...) - ordinal number names (First, Second, Third...) Note: these numberings are parts of OOXML, too. Plain text files of Libnumbertext's language data are installed in share/numbertext (similar to share/fingerprint), allowing further customization. Change-Id: I4034da0a40a8c926f14a3f591749a89a8d807d5a Reviewed-on: https://gerrit.libreoffice.org/53313 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: László Németh <nemeth@numbertext.org>
* Install UCRT from MSUs, not using nested VC Redist installMike Kaganski2018-04-251-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using nested install is bad because (1) MS advises against it (though it most possibly doesn't relate to our specific case, when we install the vc redist exe package in UI part, so actually only a single MSI session is active at any time); (2) because it adds some extra interactions (user sees something "unrelated" being installed, which raises concerns; additional admin authentication required); and (3) because it runs in InstallUISequence, thus only installing the UCRT when doing interactive installation (unattended installs, including GPO, need to install UCRT separately). This patch aims to incorporate the original UCRT MSU (Windows Update) packages (https://support.microsoft.com/en-us/help/2999226) available as a zip archive from https://www.microsoft.com/en-us/download/details.aspx?id=48234 - the same as used in VC redists for VS 2015 and 2017. This obsoletes the separate installation of the redist; since we also have the redist as merge module in our MSI, that is enough (and removes redundancy). The MSUs are installed using wusa.exe in a custom action (deferred, non-impersonating). As a small bonus, embedding MSUs instead of redist EXE allows us to shrink the size of installer a little (~10 MB). As deferred custom actions cannot access current installer database, we workaround this by using initial immediate impersonating action to extract the binaries into a temporary location. To ensure that the file gets removed upon completion (both successful and failed), we use an additional cleanup action. Commit 61b1d631331551b43bc7d619be33bfbfeff7cad6 is effectively reverted. Change-Id: I1529356fdcc67ff24b232c01ddf8bb3a31bb00bd Reviewed-on: https://gerrit.libreoffice.org/52923 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
* Remove unused HELP_COMMON_ONLYStephan Bergmann2018-04-201-1/+0
| | | | | | | | | | | | Unused ever since its introduction in b70d4ad13b909265c54a9ff55f07224a14e9feb2 "add --with-help=common parameter to the configure option". (Whether --with-help=common is also unused is a different question that needs to be addressed separately.) Change-Id: Ic7843c838242bfe95dba7388f63358973f42e5b7 Reviewed-on: https://gerrit.libreoffice.org/53187 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
* Do use -O1 for Apple Clang older than 9.1.0Tor Lillqvist2018-04-181-0/+1
| | | | | | | | | | | Don't want to risk breaking something by using -O2 with an older Clang, even if I don't remember exactly what the issue was when introducing the -O1 in 7b660e1423554928350e1de2cd4cb7eb577a27ec. Change-Id: I2adeb0e8eb85a9b5021fca3d9e1e703cb5604a81 Reviewed-on: https://gerrit.libreoffice.org/53068 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tor Lillqvist <tml@collabora.com>
* Revert "Remove dead HSQLDB driver"Sophia Schröder2018-04-121-0/+3
| | | | | | | | | | | | | | | We cannot silently convert user data or their used file formats and then await them to accept it or reinstall an older version. Let us make a soft change instead of an hard (heart) break and avoid us to been attacked with fire and forks from our users. This reverts commit 8d381ae8d6c742a7e15bf7ad9e07b65f81728ef6. Change-Id: Ia153640935e355771acb85cf652f8fe4c21fafbb Reviewed-on: https://gerrit.libreoffice.org/52731 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tamás Bunth <btomi96@gmail.com>
* Remove dead HSQLDB driverTamas Bunth2018-04-101-3/+0
| | | | | | | Change-Id: Id4cfb69079f0150c9cca2626c16df7fab441d916 Reviewed-on: https://gerrit.libreoffice.org/52611 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tamás Bunth <btomi96@gmail.com>
* revert accidentially comitted local changes :(Rene Engelhard2018-03-181-4/+5
| | | | Change-Id: Icaee7383332240b8b1780f5524d2faf55feb6e76
* actually add HAVE_GPGCONF_SOCKETDIR to config_host.mk.in...Rene Engelhard2018-03-181-5/+5
| | | | Change-Id: Ib98112a31f9df44a8b03b00f3348193d16ff1390
* actually add GPGCONF to config_host.mk.inRene Engelhard2018-03-181-0/+1
| | | | Change-Id: Iebc767f920bbe8e017bb748e1298c58c7d470ec6
* Build external lxml if not provided by systemSamuel Thibault2018-02-281-1/+0
| | | | | | | | | | | | except on windows, where gla11y will resort to python's internal xml parser, which does not provide line numbers. This allows gla11y to be runnable on all systems. Change-Id: Ica4eb90f59bddfcefd783fc2ed9c8c27357e7572 Reviewed-on: https://gerrit.libreoffice.org/50115 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
* Integrate initial version of gla11y tool in the build systemSamuel Thibault2018-02-201-0/+1
| | | | | | | | | | | | | | This is part of integrating an accessibility non-regression tool. This adds checks in configure.ac for the presence of python lxml which we will need, and adds support for calling the tool at build time, to check for definite UI errors. For now, that only emits errors for missing or duplicate accessibility relation targets, and senseless relations: a label being mnemonic for several widgets. Change-Id: Idda91b15b9a9e0322d16db33dfac8e03f2aa518c Reviewed-on: https://gerrit.libreoffice.org/49856 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
* Introduce gtk3_kde5 vcl pluginMilian Wolff2018-01-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a hybrid plugin which mostly wraps the GTK3 vclplug. Only the file and folder picker are replaced by KDE dialogs. This gives us a well-maintained GTK LO base with basic KDE integration with minimum effort. To prevent issues with nested event loops, the KDE dialogs are launched from a separate process, the new lo_kde5filepicker helper executable. A trivial stdin/stdout IPC mechanism transfers the data between LO and the Qt/KDE helper. The usage of an external process also allows us to copy'n'paste between LO and the KDE file dialog without freezing the UI, as would happen when one would do this in-process. This is in general also the architecture applied by the kmozillahelper, which is used to integrate KDE file dialogs into Firefox. While the KDE dialog is shown, the GTK3 main window is disabled and close requests are ignored. The KDE dialog in turn also sets the LO window as transient parent. Together, this makes the illusion perfect and the KDE dialog behaves like a modal dialog. This works properly also with multiple LO main windows, and only individual windows will get blocked as one would expect. Functionality wise, most of the features of the KDE4 dialog are supported. You can pick files and folders, and save files under a new name. Some custom checkbox widgets are supported, but lists, buttons and preview widgets are not yet implemented. Also, loading remote files via KIO is not possible yet. Change-Id: I1a97cf7c272307a19ace4222d5f12253bc722829 Reviewed-on: https://gerrit.libreoffice.org/47718 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
* Extend build system to support linking against KDE Frameworks 5Milian Wolff2018-01-231-0/+4
| | | | | | | | | | | | Pass --enable-kde5 to autogen.sh to enable this feature. Then add kde5 to the list of externals to link against KF5. I will introduce other code that depends on KF5 though which will leverage this feature. Change-Id: I17e434a53ac769000b0f805b1f41cdc5c2c84ee2 Reviewed-on: https://gerrit.libreoffice.org/47715 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
* android: use unified headers and llvm-c++ STL (x86) with NDK 16Christian Lohmaier2018-01-181-0/+1
| | | | | | | | | | | | | 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 Change-Id: Ic794c3293b599b77ec48096bf3283a99c09cbb79 Reviewed-on: https://gerrit.libreoffice.org/45163 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
* tdf#108580: integrate vc_redist.exe into MSIMike Kaganski2017-12-181-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... in InstallUISequense. Use --with-vcredist-dir to point to a directory with vc_redist.x64.exe and/or vc_redist.x86.exe. Use --without-vcredist-dir (or --with-vcredist-dir=no) if you don't want to ship it as part of installer and want to silence the configure warning. VCRedist 2015 version 14.0.24215.1 is available at https://www.microsoft.com/en-us/download/details.aspx?id=53840 Since VisualStudio 2015, VC redist merge module that we used before started to work differently: it installs the UCRT only on WinXP, but not on later OSes (Vista to 8.1) which may lack the UCRT (Win10 has it out of the box). The merge module only installs VCRuntime on those systems, which still leaves us with "api-ms-*.dll is missing" problem. (https://blogs.msdn.microsoft.com/vcblog/2015/03/03/introducing-the-universal-crt/ gives more information on VCRedist refactoring background.) Since commit 71d9a61302e65fe091cf70c13fa72b3df09b7e3a, we use a workaround described at the page mentioned above as "App-local deployment of the Universal CRT". We just copy all UCRT DLLs to LibreOffice/program. This has a drawback though, that our UCRT is not updated by Windows Update, so users would rely on LibreOffice updates in case of some vulnerabilities in UCRT (and they could even not realize they have that problem). MS recommends to install UCRT using EXEs they provide from their site. The EXEs install both VCRuntimes and UCRTs, along with required patches, for all Windows versions (Windows XP through Windows 10, where they only install VCRuntimes); the installed libraries are managed by system's update mechanism. But those EXEs cannot be used in MSI custom actions inside InstallExecuteSequence, because they use MSI themselves. So this patch integrates the vc_redist.xXX.exe into MSI binary table, and uses custom action to run the EXE after ExecuteAction in InstallUISequence. This will show the user a VCRedist install window after the main LibreOffice installation finishes; no user interaction is required (except for one additional UAC request), and errors are ignored. Since this installation takes care of both VCRuntime and UCRT, we can ultimately drop both the app-local workaround, and vcredist merge module (so VCRuntime would also be updated by system). The former is done here: this reverts commit 71d9a61302e65fe091cf70c13fa72b3df09b7e3a. This approach has its drawback: if one wants to use unattended installation (without UI; one example is deployment using ActiveDirectory GPO), then InstallUISequence is not run, and so VCRedist isn't installed. In this case, one should install VCRedist separately. Supposedly this should not be huge problem, because this is the case for many existing applications that need separate VCRedist deployment in these scenarios, and unattended installation is advanced stuff that requires prepared user. A notice would be required in release notes and FAQ, though. Change-Id: Ia6a16be60af8a08f41ea7c3dbd457d8f89006006 Reviewed-on: https://gerrit.libreoffice.org/46356 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
* New --enable-compiler-plugins=debug modeStephan Bergmann2017-12-081-0/+1
| | | | | | | | | | | | | | | | | | | | | ...to enable debug-only code in the plugins. Some situations in the plugin code should never happen, yet must not by default report errors or trigger assertions, as some newly written LO code could trigger them nevertheless (in which case the plugin code will likely need to be adapted, to cater for these presumed-impossible situations). Such code can now be included in the plugins behind an if(isDebugMode()) guard, and can explicitly be enabled with --enable-compiler-plugins=debug. I deliberately made this a runtime rather than a compile time option (using some #ifdef guards in the plugin code, say), as it IMO keeps the code more readable, and also allows overridding COMPILER_PLUGINS_DEBUG=... on the make command line. Change-Id: Iea4f0c2783ad968a0de097fa710b3be1a248de73 Reviewed-on: https://gerrit.libreoffice.org/46096 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
* allow to build online help tooDavid Tardon2017-12-071-0/+1
| | | | Change-Id: I9b26f952dc681893b25712451535f4b539fd615d
* allow to build only HTML helpDavid Tardon2017-12-071-0/+1
| | | | Change-Id: I4debf079be228e5ce5fae5f1a153f78800407a59
* fix build with system gpgmeppDavid Tardon2017-11-241-0/+1
| | | | | | | Change-Id: If0c81f5095b61d41b90db2e596bf5905b15ab506 Reviewed-on: https://gerrit.libreoffice.org/45210 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: David Tardon <dtardon@redhat.com>
* iOS, added IOS_DEPLOYMENT_VERSIONjan Iversen2017-11-241-0/+1
| | | | Change-Id: Ie72c8303011df8a4e0e489ab505e619bd7a40e12
* QT5 rename from KF5Jan-Marek Glogowski2017-11-061-1/+0
| | | | | | | | Move out of unx, as this will eventually compile on other OS platforms. At least currently it doesn't contain platform dependant code. Change-Id: Iea0bebf574201881ea158381fe7ba8af2a9a6488
* KF5 seperate Qt5 detection from KF5Jan-Marek Glogowski2017-11-061-3/+6
| | | | | | Splits the configure checks into a Qt5 and KF5 specific part. Change-Id: I0a616ba031e1f7fd0385219ac48179adb4bdaf14
* KF5 initial VCL pluginJan-Marek Glogowski2017-11-061-0/+7
| | | | | | | Something that compiles, basically just interface stubs. All used Svp classes don't use any cairo. Change-Id: I9a8858c930989438cc2a3f3346c01a7abc579d62
* tdf#108580 ship universal crts with the program as workaroundChristian Lohmaier2017-10-311-0/+2
| | | | | | | | | | | | | the universal crts redistributables are available as part of the Windows 10 SDK. Point to the dir (or a copy of the dir) using --with-ucrt-dir Use --without-ucrt-dir (or --with-ucrt-dir=no) if you don't want to ship them as part of LO and are annoyed by the configure warning. Change-Id: I5487e3f6e583222fa053b2fc03176f061d57746c Reviewed-on: https://gerrit.libreoffice.org/44074 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>