summaryrefslogtreecommitdiff
path: root/config_host
AgeCommit message (Collapse)AuthorFilesLines
2021-04-15vcl PDFiumLibraryTest: clean up not needed HAVE_FEATURE_PDFIUM ifdefsMiklos Vajna1-5/+0
This was already conditional in Module_vcl, so no need to have a duplicated check here. Which allows finally removing the HAVE_FEATURE_PDFIUM ifdef completely. New code can just call vcl::pdf::PDFiumLibrary::get() at runtime and see if the result is nullptr or not. Change-Id: I36508181865a31618e48cf7c2680d75465130dd3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114108 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2021-04-09do not #error in clangplugins with --disable-pchLuboš Luňák1-2/+0
I missed that -building-pch-with-obj is checked by configure (and used) only if PCHs are used. So remove the error checking and hope that it gets checked whenever somebody does changes related to the flag. Change-Id: Ibdf991169f023dae48dad0dd2929215fb048d57d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113841 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-04-09make clang plugin check code in headers only once if in PCHLuboš Luňák1-0/+2
When using Clang PCHs, we know for certain that the content of a PCH will be used once by the PCH's dedicated source file. So it is not necessary to let clang plugin check locations coming from a PCH every time, but just once when compiling that dedicated source. For starmath's parse.cxx this reduces compilation time 0.94s->0.4s (0.1s when not using plugins at all), for sc's document.cxx it is 5.9s->5.0s (4.0s without plugins). For reference, without PCHs the numbers are (with/without plugins) 2.1s/1.9s for parse.cxx and 11.2s/10.3s for document.cxx. Change-Id: Ie39787e65d7951187941dcff4899d053da63cbdd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113817 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-04-07Updated README.md files to represent current code / use Markdown formatHossein1-17/+16
Previously, all of the README files have been renamed to README.md and now, the contents of these files were changed to use Markdown format. Other than format inconsistency, some README.md files lacked information about modules, or were out of date. By using LibreOffice / OpenOffice wiki and other documentation websites, these files were updated. Now every README.md file has a title, and some description. The top-level README.md file is changed to add links to the modules. The result of processing the Markdown format README.md files can be seen at: https://docs.libreoffice.org/ Change-Id: Ic3b0c3c064a2498d6a435253b041df010cd7797a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113424 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de> Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2021-03-24Using .md extension/Markdown syntax for modules READMEHossein1-0/+0
Renaming all README files for all top level modules to README.md, applying no content change at this stage to be able to track history of the files. These files should be edited to use correct Markdown syntax later. Change-Id: I542fa3f3d32072156f16eaad2211a397cc212665 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112977 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2021-03-20tdf#139778 qrcodegen library removal.homeboy4451-17/+0
It was replaced by ZXing library. Change-Id: I49eb809586c7b4ba3a93fd77f804bfc93fead669 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112701 Reviewed-by: René Engelhard <rene@debian.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
2021-03-20tdf#139778 bundle external:zxing libhomeboy4451-0/+17
Change-Id: I0023f6ce8315427b1a3deaf755e78ae06475b08c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112053 Reviewed-by: René Engelhard <rene@debian.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: René Engelhard <rene@debian.org> Tested-by: Jenkins
2021-01-19add --disable-librelogo to disable LibreLogo at build timeMichael Stahl1-0/+2
Annoyingly the packinfo_*.txt don't support conditionals but we can work-around that with a little duplication. Change-Id: Id00a6831effcc63a917fc21d2cd201474fdb559d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109569 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2021-01-14Resolves tdf#139343 and tdf#139335 - Community/Enterprise flavorHeiko Tietze1-0/+5
* Switch CE/EE per --disable-community-flavor internally use HAVE_FEATURE_COMMUNITY_FLAVOR * Version info in about dialog shows text depending on this flavor * Start center also shows the brand image now * TDF builds use a brand image with TDF tagline in the about dialog * Brand images with just "Community" (no Edition) Change-Id: I363dd2b39df9aad951c9d79addf9bdedfc4a3495 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108980 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-12-14tdf#115643 make onedrive work again by switching to graph APIChristian Lohmaier1-5/+5
the live SDK method had been deprecated quite a while ago and has been turned off a while back. Notes: While you can access and save existing files using the remote files dialog, creating new files or using "save as" requires using the LibreOffice open/save dialogs. Authentication is clunky: username and password you're asked when creating a new connection is not used at all for connecting, so only fill out a username to label your onedrive entry. Actual authentication is done in browser - copy'n'paste the URL from the dialog into the browser, login and approve access for LibreOffice (approving access only necessary once), then you get redirected to localhost, ignore that there is nothing to display. The important part is the code from the URL-bar. Copy and paste that into the LibreOffice dialog and LO can request an authentication token for API access. Testing this feature requires compiling with corresponding api-keys specified in configure/having an app registered with microsoft. Change-Id: I2db11ac09f9fdc354a10d6c749b2bec84b5d34a9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107646 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2020-11-17update Skia to chrome/m88Luboš Luňák1-0/+3
Change-Id: I74c19597b07e9d07ee90e4191b75787241fdd845 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105829 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-10-17fix build with box2d 2.4.0Rene Engelhard1-0/+7
Change-Id: I60f25f04e2bfcdabf832f42b44ba3d945f4ec169 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104456 Tested-by: Jenkins Tested-by: René Engelhard <rene@debian.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-10-04default to BGRA for Skia, even on X11Luboš Luňák1-0/+4
As that seems to be the X11 setup, at least on my machine. This applies even to Vulkan, as we pass the XVisual to Skia. Change-Id: I2f1ee21c2bcf87bbb3bea7114b3b9a9aa060db13 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103870 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-10-02tdf#136951: Add Võro (vro-EE) locale data and rudimentary autocorrect listMihkel Tõnnov1-0/+1
Change-Id: Id5a5d71b7f457d18b9d0982f9b4df95566c09be9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103122 Tested-by: Jenkins Reviewed-by: Eike Rathke <erack@redhat.com>
2020-09-23clarifications on the use of SKIA_USE_BITMAP32Luboš Luňák1-3/+8
Change-Id: Ia2f80c3dc6ac3e0b16993dde588a4987ce98aa81 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103235 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-09-21add an explicit --disable-qrcodegen configure optionCaolán McNamara1-0/+17
Change-Id: If8e965fa955aecdb9e7011bdddc690de9cad0c4d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103120 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-09-07fix typo in enabling Skia's SK_RELEASELuboš Luňák1-1/+1
Although this was probably harmless, as Skia by default decides this based on NDEBUG, if not explicitly set. Change-Id: I46f0d336cdb940d2214c67bdb461cb4f8d9140f8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102164 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-09-02Turn OStringLiteral into a consteval'ed, static-refcound rtl_StringStephan Bergmann1-0/+4
...from which an OString can cheaply be instantiated. The one downside is that OStringLiteral now needs to be a template abstracting over the string length. But any uses for which that is a problem (e.g., as the element type of a containers that would no longer be homogeneous, or in the signature of a function that shall not be turned into a template for one reason or another) can be replaced with std::string_view, without loss of efficiency compared to the original OStringLiteral, and without loss of expressivity (esp. with the newly introduced OString(std::string_view) ctor). The new OStringLiteral ctor code would probably not be very efficient if it were ever executed at runtime, but it is intended to be only executed at compile time. Where available, C++20 "consteval" is used to statically ensure that. The intended use of the new OStringLiteral is in all cases where an object that shall itself not be an OString (e.g., because it shall be a global static variable for which the OString ctor/dtor would be detrimental at library load/unload) must be converted to an OString instance in at least one place. Other string literal abstractions could use std::string_view (or just plain char const[N]), but interestingly OStringLiteral might be more efficient than constexpr std::string_view even for such cases, as it should not need any relocations at library load time. For now, no existing uses of OUStringLiteral have been changed to some other abstraction (unless technically necessary as discussed above), and no additional places that would benefit from OUStringLiteral have been changed to use it. sal/qa/rtl/strings/test_ostring_concat.cxx documents some workarounds for GCC bug <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96878> "Failed class template argument deduction in unevaluated, parenthesized context". Those places, as well as uses of OStringLiteral in incodemaker/source/javamaker/javaoptions.cxx and i18npool/source/breakiterator/breakiterator_unicode.cxx, which have been replaced with OString::Concat (and which is arguably a better choice, anyway), also caused failures with at least Clang 5.0.2 (but would not have caused failures with at least recent Clang 12 trunk, so appear to be bugs in Clang that have meanwhile been fixed). This change also revealed a bug in at least recent Clang 12 trunk CastExpr::getSubExprAsWritten (still to be reported to LLVM), triggered at least in some calls from loplugin code (for which it can be fixed for now in the existing compat::getSubStringAsWritten). A similar commit for OUStringLiteral is planned, too. Change-Id: Ib192f4ed4c44769512a16364cb55c25627bae6f4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101814 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-07-21Revert "configure: add a --with-product-flavor switch"Heiko Tietze1-1/+0
This reverts commit c540483134482d437ea6e02390ff429f4300cbb0. Reason for revert: https://blog.documentfoundation.org/blog/2020/07/20/update-on-marketing-and-communication-plans-for-the-libreoffice-7-x-series/ Conflicts: icon-themes/colibre/brand/shell/logo_flavor.svg Change-Id: If435d4c4c16fb1b52635fae2d966151970729daa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99053 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2020-07-01configure: add a --with-product-flavor switchMiklos Vajna1-0/+1
Defaults to Personal to point out this is supported by volunteers. This affects the splash screen, the window title, the about dialog and the start center. Change-Id: I216a7f547618377ed268454ebfd2801c4c3901b7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97427 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-06-24faster Skia SkCanvas::drawImageRect() with an offsetLuboš Luňák1-0/+5
Without this, the drawing avoids the fast path just because the position has an offset, even though it normally works. It seems this should be enabled by default, but it isn't. Change-Id: Ic74a2502af3c8cd58222af8b5cade4e7cbef3c4e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96988 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-06-17remove outdated Skia todo commentsLuboš Luňák1-1/+0
Change-Id: Ib2a9e4c25421c20e52ee65b2ec8fb3a190bcb75b
2020-06-11Drop configurability of libnumbertext useTor Lillqvist1-17/+0
It was fairly pointless to be able to --disable-libnumbertext. Besides, disabling it broke the ordinal page (etc) numbering feature: "1st", "2nd", "3rd", etc showed up as "Ordinal-number 1", "Ordinal-number 2", "Ordinal-number 3" etc. Change-Id: I645169054a8fdc8dac89cd48b6c369fd61749467 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96119 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2020-05-18update to Skia chrome/m84 snapshotLuboš Luňák1-0/+3
Change-Id: I7c5ad1673776fd0991a61b4c9f9a947e42764f44 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94414 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-05-06always build Skia optimized, unless --enable-skia=debugLuboš Luňák1-0/+2
In raster mode the performance may make quite a difference, this is the drawing library (that's now the Windows default) and LO developers mostly do not need to debug Skia itself. Change-Id: I42f0407d37a2294b062a41d94566e8a4f5f4354b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93557 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-04-17No need for HAVE_GCC_DEPRECATED_MESSAGEStephan Bergmann1-1/+0
GCC appears to support it at least since <https://gcc.gnu.org/git/ ?p=gcc.git;a=commit;h=9b86d6bb25587db93a322bf5778e9892aaa8b776> "re PR c/36892 (Support __attribute__((deprecated("text string"))))" in GCC 4.5, and Clang appears to support it at least since <https://github.com/llvm/llvm-project/ commit/c7890fed01f8c8accba188236d781af26845cb2c> "Add an optional string argument to DeprecatedAttr for Fix-It" in Clang 3.9. Change-Id: If0939c692703522523d1953c3793070e0f808973 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92455 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-17No need for HAVE_GCC_PRAGMA_OPERATORStephan Bergmann1-2/+0
The _Pragma operator is a C99/C++11 feature, and we only need it for GCC and Clang anyway, to inject some #pragma GCC diagnostic ... directives. (MSVC would only support it with the upcoming VS 2019 Version 16.6, see <https://devblogs.microsoft.com/cppblog/ announcing-full-support-for-a-c-c-conformant-preprocessor-in-msvc/>.) Change-Id: I6de3611021a28ba13860f55e7ad005ad3fbbb5e2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92452 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-17HAVE_CPP_GUARANTEED_COPY_ELISION should always be true nowStephan Bergmann1-3/+0
...since 24973523ba59087185d434396fd614e73d72107f "Bump Windows build baseline to Visual Studio 2019 16.4", where that version of the compiler appears to no longer have the issue that at least VS 2017 15.8.1 had. And according to <view-source:https://en.cppreference.com/w/cpp/compiler_support>, the other compilers support it since GCC 7 and Clang 4, so we should be OK there. But for safety, leave the configure.ac check in for some longer. Change-Id: I07bfaa554d897613c0887ab70e8df93f6e000410 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92422 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-17Just use __builtin_ffs on GCC and ClangStephan Bergmann1-1/+0
GCC appears to support it at least since <https://gcc.gnu.org/git/ ?p=gcc.git;a=commit;h=51e2940139d5e3e86590f6e6802ffc3f3010be5b> "Initial revision" in 1992, and Clang appears to support it since <https://github.com/ llvm/llvm-project/commit/d93abc3bb0acdd430839abdd67bd3920fee87bbc> "Implement ffs, parity, and popcount builtins" in Clang 2.4. (And if a build used a compiler that does not support it, there would be no guarantee that it would support strings.h function ffs from X/Open System Interfaces, either.) Introducing HAVE_GCC_BUILTIN_FFS in 334a9f16cd1d1f9694f885c759903a41aa3d4833 "tdf#113211: fix calculations with big integers" appears to be due to a misguided recommendation at <https://gerrit.libreoffice.org/c/core/+/43477/4# message-899806c724fbdcece0ea9438514a6a5db6a2e645>. Change-Id: Ib6ee6de548172b3aae25483d03efb86620133933 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92421 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-06do not build OpenGL support in SkiaLuboš Luňák1-3/+1
We currently do not use it. If somebody wants to add support for that, you're welcome, but until then there's no point in building this. Change-Id: Ia714a6babdac1824e6cca3438794a0945e175c14 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91746 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-20The idl __attribute__((__weak__)) hack doesn't seem necessary for --enable-ltoStephan Bergmann1-6/+0
dbfc495a9ace0865d764dad7404633a12cda2873 "Add config option used when we try to link one huge object file" had added it for the --enable-lto case, but without documenting exactly what it should help with. And at least my local Linux --enable-lto --enable-dbgutil etc. build successfully does `make check && make screenshot` without it. This removes the only use of STATIC_LINKING, so remove it completely. (And basctl/source/basicide/basidesh.cxx still needs to include config_options.h for ENABLE_MERGELIBS.) Change-Id: I3820e1cacccc92f5ac0c9c7fcc539c29a6864694 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90804 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-19STATIC_LINKING is not set for --enable-mergelibsStephan Bergmann1-1/+1
...at least since fa8aaaadc38372185d6d29d8d91391907e95b689 "Bin confusing --enable-mergelibs=all option" Change-Id: Ib0f4b7eb2333a364538270d07102a95b0c01e5d0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90716 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-18do not use Skia's gamma correction for textLuboš Luňák1-2/+0
Using SK_GAMMA_APPLY_TO_A8 seems to be Skia's build default, but it makes fonts harder to see (gray instead of black). With this change, Skia now looks to be pixel-perfect when compared with the gen VCL backend. Change-Id: I4ae7a15f97c5ecb181b8c35b417496f8c631ace4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90695 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-18update Skia to chrome/m82Luboš Luňák1-3/+2
Also don't build pdf and jpeg support, it's not needed. Change-Id: I5f10b1279072dbaba7695aecba5e415853ae308b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90666 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-06limit symbols exported when using --enable-mergelibsNoel Grandin1-0/+11
when doing LTO and --enable-mergelibs, we can improve the effectiveness of LTO by marking more code as internal to the merged library. So introduce a new macro UNLESS_MERGELIBS, which we can wrap around *_DLLPUBLIC annotations Also introduced here is a script that can be run on a completed build to determine which classes can be marked with this macro. Change-Id: I73fb87c897489da53791277d0b66b01f884ba061 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89991 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-01-28HAVE_GCC_ATTRIBUTE_WARN_UNUSED should always be true now for Clang/GCCStephan Bergmann1-2/+0
...but for safety, leave the configure.ac check in for some longer. Change-Id: I90cba5812492ba85d7723ff71aba75b7721b9622 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87621 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-01-27disable 32bpp bitmap usage for Skia againLuboš Luňák1-2/+2
The code is just not ready for 32bpp bitmaps that actually include alpha directly in the data instead of the stupid VCL way of using a separate bitmap for that. And it seems the performance difference is not that large, so revert and maybe somewhen later. Change-Id: Icb61663665c843fb426206967d0fe7667ed88477 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87466 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-01-09add setting to config_skia.h whether to use 32bpp bitmapsLuboš Luňák1-0/+17
As said in previous Skia commits about BackendCapabilities::mbSupportsBitmap32 this should be preferrably enabled, but there are still parts of LO code that have a problem with it, so make it easier to enable/disable this. Change-Id: Iae7a8d5fc77a27372c00f6745317d168e8b2a05b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86489 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-12-19Fix typoAndrea Gelmini1-1/+1
Change-Id: I5a0f79d4000c823a1fe05cafcb7cbc064b04169e Reviewed-on: https://gerrit.libreoffice.org/85500 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
2019-12-14Rename HAVE_GCC_BUG_87150 to HAVE_P1155R3Stephan Bergmann1-3/+15
...to match the new reality (see comment in config_host/config_global.h.in) Change-Id: I5450e520d8b82584e3fd71d7e42a6840993b5ddb Reviewed-on: https://gerrit.libreoffice.org/85142 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-12-07Adapt o3tl::span to P1872R0Stephan Bergmann1-0/+3
..."span should have size_type, not index_type" (<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1872r0.pdf>), as implemented by libc++ since <https://github.com/llvm/llvm-project/commit/ 1466335cf4b2854a0be1defcf279fe50772bad6f> "[libc++][P1872] span should have size_type, not index_type." All uses of index_type had been added to mitigate the previous std::span change from signed (ptrdiff_t) to unsigned (size_t) index_type, see 6ef8420fdbf8dff16de13147c5ab833bc5e01121 "Adapt o3tl::span to updated C++2a std::span". There is no easy solution to transparently support all three std::span variants currently out there (signed index_type, unsigned index_type, unsigned size_type), without causing compilation failures due to CPPUNIT_ASSERT_EQUAL with arguments of different types, or compiler warnings about mixed signed/unsigned comparisons. So rule out the oldest std::span variant (signed index_type) in configure.ac (so that o3tl::span will use its own hand-rolled code in that case) and simplify the uses of index_type to std::size_t (as had already been mentioned in 6ef8420fdbf8dff16de13147c5ab833bc5e01121). Change-Id: I6ddf424ffb7941da3f69ad66fd29ecd35f09afae Reviewed-on: https://gerrit.libreoffice.org/84652 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-12-06Qt5 fix missing XCB_ICCCM_WM_HINT_WINDOW_GROUPJan-Marek Glogowski1-0/+1
This is the application level equivalent of the Qt5 fix for bug QTBUG-46626 / commit 0de4b32 ("xcb: fix issue with dialogs hidden by other windows"), which was broken since Qt 5.4 and is just fixed since Qt 5.12. It is needed for some window managers, which don't know about the WM_CLIENT_LEADER property. Both settings are the same, but just the latter is set by older Qt5 releases. This probably isn't a real problem, as GNOME or XFCE would use the gtk VCL plugin, but since I already wrote the code when debugging tdf#129071, there is also no reason to drop it (except: more code, more bugs...). This fix is optional and needs development headers for xcb-icccm, which can actually be compiled into Qt5. If missing configure will just print a warning, since it's a runtime requirement and we explicitly drop the linked Qt version symbol, so the potential build Qt version won't matter. Change-Id: Ifc5a8f8a40ee13779a911efb53e8b8b868614d0b Reviewed-on: https://gerrit.libreoffice.org/84299 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2019-11-27android: Introduce --enable-android-lok configure switch to fix RGB vs. BGR.Jan Holesovsky1-0/+6
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> (cherry picked from commit 49002a143a4534df5f6139e07fefd06174621c59) Reviewed-on: https://gerrit.libreoffice.org/83718 Tested-by: Jenkins
2019-11-27use the same config file for skia build and using itLuboš Luňák1-0/+45
So that the setup is consistent. Change-Id: Ia113c7bf79036e3ec7585263ed70da68e461fbac
2019-11-27initial build of the Skia libraryLuboš Luňák1-0/+5
Not quite complete yet, missing e.g. Vulkan sources, and the setup is not completely correct either. Change-Id: I2283bf12f0d226ff8a34554deae5a7bd69045971
2019-10-30fix vcldemo lookup of iconsLuboš Luňák1-0/+6
Icon themes are in [srcdir]/icon-themes, which is not necessarily the same as $PWD/icon-themes. Change-Id: Id2c5037afcbea4ea7dd511a9e10e19e05fa52a5a Reviewed-on: https://gerrit.libreoffice.org/81701 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-10-15move HAVE_FEATURE_DESKTOP/OPENCL to their dedicated headersLuboš Luňák3-27/+41
HAVE_FEATURE_OPENCL is included by a common Calc header and HAVE_FEATURE_DESKTOP is included by a common Writer header, causing pretty much their full rebuilds if any feature changes. Change-Id: If29bf78bd4fd70b37981e0826a577777fd255c89 Reviewed-on: https://gerrit.libreoffice.org/80776 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2019-09-30drop gtk2 supportCaolán McNamara1-1/+0
Change-Id: Ie838cabfecfef7e3225c1555536d5c9cf3b43f15 Reviewed-on: https://gerrit.libreoffice.org/77405 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2019-09-25constinit, here we comeStephan Bergmann1-0/+5
Following up on b13421011d9377676e1adc282634991d5064a866 "better data structures for some static const vars": * Make the o3tl::sorted_vector ctor taking an initializer_list constexpr. <https://wg21.link/P0202R3> "Add Constexpr Modifiers to Functions in <algorithm> and <utility> Headers", which will be in C++2a and is already implemented by recent libc++ and libstdc++ according to <https://en.cppreference.com/w/cpp/compiler_support #C.2B.2B2a_library_features>, makes std::sort constexpr but explicitly keeps std::stable_sort non-constexpr. ("Algorithms stable_partition, inplace_merge and stable_sort allocate memory, construct variables using placement new, use unique_ptr and do other things not acceptable in constexpr expressions. Making those algorithms constexpr seems to be a hard task that would require a lot of intrinsics. Those algorithms are not marked with constexpr in this wording.") But keep o3tl::sorted_vector::Resort (which was introduced in c59355e936446fe55960209e543b072acb6b2170 "fdo#58793: re-implement SwpHintsArray::Resort()") using std::stable_sort instead of std::sort, in case that is relevant for its pre-exisiting uses. * <https://wg21.link/P1004R2> "Making std::vector constexpr", which was voted into C++2a according to <https://wg21.link/n4829> "Editors' Report -- Programming Languages -- C++", will make the relevant parts of std::vector constexpr. But none of libc++, libstdc++, and MSVC implement that as of now. * Introduce HAVE_CPP_CONSTINIT_SORTED_VECTOR to hide the constinit behind for now for the one case from b13421011d9377676e1adc282634991d5064a866 "better data structures for some static const vars" that can clearly be constinit once constexpr std::vector is supported by compilers. The other three cases (s_aContainerDocumentCommands in chart2/source/controller/main/CommandDispatchContainer.cxx, aMetricCompatibleMap in vcl/source/font/PhysicalFontCollection.cxx, and aBlacklist in writerfilter/source/dmapper/PropertyMap.cxx) would each need a constexpr OUString first. (Technically, the constinit would not even be needed, but it nicely documents our intent that this will actually be initialized at compile-time once compilers support that.) Change-Id: Ibeb138f120528be3a7a09b3912143bf795fbab29 Reviewed-on: https://gerrit.libreoffice.org/79556 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-07-21tdf#125922 rename kde5 to kf5 + plasma5Jan-Marek Glogowski1-1/+1
Just as the gtk3 plugin isn't named GNOME, rename kde5 to kf5, as it is based on the KDE frameworks 5 libraries. This also includes: * a convenience alias to load the kf5 VCL plugin in case someone requests the kde5 plugin. * keep convenience kde5 configure switch, but warn about it * rename detected desktop from kde5 to plasma5 Change-Id: I6764a05b81a5edbf284484c234fee2649aacf735 Reviewed-on: https://gerrit.libreoffice.org/75313 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>