summaryrefslogtreecommitdiff
path: root/external
AgeCommit message (Collapse)AuthorFilesLines
2020-04-26update pchesCaolán McNamara1-2/+3
Change-Id: I83a61da7dda6c72552eecd377f1c3744c92a797e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92909 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-04-24Mark external/clucene/patches/heap-buffer-overflow.patch as sent upstreamStephan Bergmann1-0/+2
Change-Id: Idb60ae8a2389197bcfe8b1c7848c08f551702c93 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92839 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-23external/clucene: Avoid heap-buffer-overflowStephan Bergmann2-0/+12
...as seen during a --with-lang=ALL build with ASan on Linux: > [XHC] nlpsolver ja > ================================================================= > ==51396==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x62100000ed00 at pc 0x7fe425640f53 bp 0x7ffd6a0cc900 sp 0x7ffd6a0cc8f8 > READ of size 4 at 0x62100000ed00 thread T0 > #0 in lucene::analysis::cjk::CJKTokenizer::next(lucene::analysis::Token*) at workdir/UnpackedTarball/clucene/src/contribs-lib/CLucene/analysis/cjk/CJKAnalyzer.cpp:70:19 > #1 in lucene::index::DocumentsWriter::ThreadState::FieldData::invertField(lucene::document::Field*, lucene::analysis::Analyzer*, int) at workdir/UnpackedTarball/clucene/src/core/CLucene/index/DocumentsWriterThreadState.cpp:901:32 > #2 in lucene::index::DocumentsWriter::ThreadState::FieldData::processField(lucene::analysis::Analyzer*) at workdir/UnpackedTarball/clucene/src/core/CLucene/index/DocumentsWriterThreadState.cpp:798:9 > #3 in lucene::index::DocumentsWriter::ThreadState::processDocument(lucene::analysis::Analyzer*) at workdir/UnpackedTarball/clucene/src/core/CLucene/index/DocumentsWriterThreadState.cpp:557:24 > #4 in lucene::index::DocumentsWriter::updateDocument(lucene::document::Document*, lucene::analysis::Analyzer*, lucene::index::Term*) at workdir/UnpackedTarball/clucene/src/core/CLucene/index/DocumentsWriter.cpp:946:16 > #5 in lucene::index::DocumentsWriter::addDocument(lucene::document::Document*, lucene::analysis::Analyzer*) at workdir/UnpackedTarball/clucene/src/core/CLucene/index/DocumentsWriter.cpp:930:10 > #6 in lucene::index::IndexWriter::addDocument(lucene::document::Document*, lucene::analysis::Analyzer*) at workdir/UnpackedTarball/clucene/src/core/CLucene/index/IndexWriter.cpp:681:28 > #7 in HelpIndexer::indexDocuments() at helpcompiler/source/HelpIndexer.cxx:66:20 > #8 in main at helpcompiler/source/HelpIndexer_main.cxx:79:22 > 0x62100000ed00 is located 0 bytes to the right of 4096-byte region [0x62100000dd00,0x62100000ed00) > allocated by thread T0 here: > #0 in realloc at /data/sbergman/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:164:3 > #1 in lucene::util::StreamBuffer<wchar_t>::setSize(int) at workdir/UnpackedTarball/clucene/src/core/CLucene/util/_streambuffer.h:114:17 > #2 in lucene::util::StreamBuffer<wchar_t>::makeSpace(int) at workdir/UnpackedTarball/clucene/src/core/CLucene/util/_streambuffer.h:150:5 > #3 in lucene::util::BufferedStreamImpl<wchar_t>::setMinBufSize(int) at workdir/UnpackedTarball/clucene/src/core/CLucene/util/_bufferedstream.h:69:16 > #4 in lucene::util::SimpleInputStreamReader::Internal::JStreamsBuffer::JStreamsBuffer(lucene::util::CLStream<signed char>*, int) at workdir/UnpackedTarball/clucene/src/core/CLucene/util/Reader.cpp:375:6 Note that this is not a proper fix, which would need to properly detect surrogate pairs split across buffer boundaries. But for one the comment says "however, gunichartables doesn't seem to classify any of the surrogates as alpha, so they are skipped anyway", and for another the behavior until now was to replace the high surrogate with soemthing that was likely garbage and leave the low surrogate at the start of the next buffer (if any) alone, so leaving both surrogates alone is likely at least no worse behavior. Change-Id: Ib6f6f1bc20ef8efe0418bf2e715783c8555068de Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92792 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-23Use equal number of leading and trailing context lines in patchTor Lillqvist1-1/+2
Change-Id: I67763a5d612b66f61ed8a60c6331c85cc88f2b85 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92789 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2020-04-23Use equal number of leading and trailing context lines in patchTor Lillqvist1-1/+2
At least the patch program on macOS seems to require it. Change-Id: I9943134c7fb672226cbde52e35ef78f74f060ed0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92756 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>
2020-04-22Mark external/clucene/patches/ostream-wchar_t.patch as sent upstreamStephan Bergmann1-0/+2
Change-Id: I96785db3e7b94b55b3ab3ae911e5fb3058c6502b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92718 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-22Add what looks like a plausible upstream URL to external/clucene/READMEStephan Bergmann1-1/+1
(which looks plausible esp. given the matching mentions of <http://sourceforge.net/mailarchive/> in external/clucene/UnpackedTarball_clucene.mk) Change-Id: I21234a2dd611a561c9eb9c03880ee6d673694be5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92712 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-22Mark external/liblangtag/Wformat-overflow.patch as effectively covered upstreamStephan Bergmann1-0/+3
Change-Id: I31aa3c6d4e381078670cc90ccf83aadf6c7efdde Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92708 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-22Correct upstream URLEike Rathke1-1/+1
Change-Id: Ice1e559df0614fd34c40890fc798b1ddef492618
2020-04-21better handling of SSEx,AVX intrinsics for ClangLuboš Luňák1-5/+6
Clang-cl interprets MSVC's -arch option a bit differently (for MSVC -arch:SSE2 seems to mean SSE2+, but SSE2-only for Clang). So use Clang's -mxxx options when using clang-cl as CC/CXX. Also check intrinsics once again if using CLANG_CC/CXX to compile Skia. Change-Id: I64cd368ef4e5f4fcf1dbe877a1129f418d273a47 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92618 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-04-20prefer building Skia with Clang if possible (tdf#131697)Luboš Luňák4-27/+26
I.e. try to find and use Clang even if the default compiler is something else. Skia is optimized to be built with Clang(-cl) and in CPU-based raster mode some operations are several times slower if built with something else (e.g. fmax/fmin do not get optimized to inline assembly). It is enough to select Clang to be installed in the MSVS installer. At this point it unclear how to handle release binaries, if it should work this way and enforced, or maybe Clang could be used for building everything, or maybe some other way. Change-Id: I6b95a0f2d5cbf176942d9e01136990b14be6dba8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92415 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-04-18upload libwps 0.4.11David Tardon4-164/+1
Change-Id: I068c7fe1ecf28755b095c5502d4c2dd42a54489c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92473 Tested-by: Jenkins Reviewed-by: David Tardon <dtardon@redhat.com>
2020-04-18upload libmwaw 0.3.16David Tardon1-0/+4
Change-Id: Idc7ed6bbcd3298138fb92c81ddf7dd6278d201dc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92472 Tested-by: Jenkins Reviewed-by: David Tardon <dtardon@redhat.com>
2020-04-18upload libstaroffice 0.0.7David Tardon4-116/+0
Change-Id: I3a12e75c61671a17653b7feb2147dfe4aff47613 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92471 Tested-by: Jenkins Reviewed-by: David Tardon <dtardon@redhat.com>
2020-04-17Update neon website URLStephan Bergmann1-1/+1
See <http://lists.manyfish.co.uk/pipermail/neon/2020-April/001659.html> "FYI: website moved to https://notroj.github.io/neon/". Change-Id: I473efd983870ab4f4bd5af14e726ec4e5009f204 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92414 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-16Fix passing --disable-optimized into external/python3Stephan Bergmann1-3/+7
This had originally been covered by dccf47b7f61e088622747539d1487590080da3b8 "Build python3 with debug flags if --enable-debug", which got broken by eeeec33ada5923f1f534334b22c15d6e2c6f1d35 "merge --enable-selective-debuginfo into --enable-symbols" (which removed the definition of gb_Module_CURRENTMODULE_DEBUG_ENABLED without adapting its use here). But looking again, setting OPT for workdir/UnpackedTarball/python3/configure.ac based on our various flags doesn't seem to be such a good idea anyway: It is used to specify a mixture of debuginfo (-g; which is set rather unconditionally, so no need for us to cater for --enable-symbols here), optimization (-fwrapv, -O*), and warning (-Wall) flags. So better let workdir/UnpackedTarball/python3/configure.ac keep deciding for itself what flags to set in OPT, and then just override via CFLAGS those that do not suite us. (Where it appears to be a happy coincidence that the Python build system puts CFLAGS after OPT, so the former can override the latter.) (An alternative approach could have been to pass --with-pydebug based on e.g. --enable-dbgutil, as the former (a) causes OPT to include -O0 rather than -O3, and (b) is documented to change the ABI (see workdir/UnpackedTarball/python3/configure.ac: "Py_DEBUG implies assertions, but also changes the ABI."), so probably best fits --enable-dbgutil. However, at least on Linux, --with-pydebug produces workdir/UnpackedTarball/python3/libpython3.7dm.so rather than workdir/UnpackedTarball/python3/libpython3.so, so would have required further modifications. Also, in a Linux UBsan build, making ExternalProject_python3 would have started to cause some "applying zero offset to null pointer" failures, but which would have been easy to fix.) (I noticed the missing -O0 when I attached gdb to an instdir/program/python.bin process and `py-bt` only showed "(frame information optimized out)" frames, which this change fixes for --disable-optimized builds.) Change-Id: I9583e60692ae7130377422062f3c6df9334d693f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92362 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-13skia: make gcc not crash again for x86 buildsThorsten Behrens1-18/+14
Papered over already with a bandaid in c13f75de521cfb67ca4db431708f8cd366b23587, happened again after skia upgrade; let's now fix th eICE on CentOS7 devtoolset-7's gcc proper. It appears that this error workdir/UnpackedTarball/skia/third_party/skcms/src/Transform_inl.h:696:13: note: The ABI for passing parameters with 16-byte alignment has changed in GCC 4.6 static void clut(const skcms_A2B* a2b, F* r, F* g, F* b, F a) { ^~~~ workdir/UnpackedTarball/skia/third_party/skcms/skcms.cpp: At global scope: workdir/UnpackedTarball/skia/third_party/skcms/skcms.cpp:2645:1: internal compiler error: Segmentation fault is caused by the clut() function still inlined for gcc. Patch makes this go away by leaving clut() with external visibility, thus getting gcc to outline it. Original Google hack with __attribute__((noinline)) alone appears insufficient. Change-Id: I8a566994ac815ae480ef1ce1b80c4fb59bef2f92 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92094 Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2020-04-10prefer DirectWrite for Skia's Windows text renderingLuboš Luňák3-0/+91
Change-Id: Ibfb6206751126def10905bb22effbe1a947cd6d6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91968 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-04-07optimize bit depth conversions to/from Skia where possibleLuboš Luňák2-0/+24
Skia has an optimized function for RGB->RGBA conversion that we are going to do often because 24bpp is the most common LO image format. The function is private, so patch that. Also optimize 32bpp->8bpp conversion with gray palette. Change-Id: I48b06f80d5ca9e1c8e3ee51da61e87541bd83d5a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91768 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-04-06do not build OpenGL support in SkiaLuboš Luňák4-66/+49
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-04-06update Skia to chrome/m83Luboš Luňák7-76/+41
Change-Id: I350cbdf753f3d6f61623e384c4446c9c6890f041 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91745 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-04-06lxml: try to remove some quirky PYPATH stuffMichael Stahl1-1/+1
In RepositoryExternal.mk, a system python automatically gets $PYPATH added to $PYTHONPATH, but the internal one does not - this doesn't make sense. Try to remove it for system-case by fixing the one case that relies on it and for which it was introduced in commit 84ef6d82546b044990f4efd57e51e29c6c6565c8 to directly extend $PYTHONPATH instead, which ought to work as long as it's not evaluated at global scope and thereby avoids affecting all python invocations. Change-Id: I4534f2be92b850dc01193cb1bb2e0a299a5152be Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91748 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-03-31build Skia on Windows with UNICODE setLuboš Luňák3-0/+37
Skia uses the Windows generic macros that map to the ANSI *A variants or the unicode *W variants of functions/types, but in LO code we mostly use explicitly the *W variants and do not set the UNICODE define. So build Skia with UNICODE and explicitly use *W API in SKia's API that we use. Change-Id: I689797b30a412820f97d9ce88e9fe078ead2cf76 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91376 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-30Mark external/boost/c++20-allocator.patch.0 as partially covered upstreamStephan Bergmann1-0/+2
Change-Id: I086e51c581202cd8c68a5a408b8d7575c953461d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91347 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-27fix LOGFONTA/GetObjectW() mismatch and remove Skia HFONT hack (tdf#131426)Luboš Luňák3-144/+30
The GetObjectA/W() functions are type-unsafe, and since we #undef GetObject I accidentally used GetObjectW() with LOGFONT that was LOGFONTA. This caused the font name to be broken, which made Skia use a different font. This means that Skia doesn't actually need the HFONT passing hack. Change-Id: I67b8d18fef6a92f8839b1652e051da96d01c3a4e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91202 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-27revert the gyp-based nss build changesLuboš Luňák16-528/+30
https://lists.freedesktop.org/archives/libreoffice/2020-March/084769.html etc. This reverts commit c76fdcf1cfa1242e66b50ebe80d6eac1baae37a9. This reverts commit 10f52ab4d27263439d59f55f40e88ad2fde0cf71. This reverts commit eac806e8dcd9ee6439ac8695978ff6b62cc6b8d2. This reverts commit d591a682e46ff352f06a61c024ef661dd17f4ea4. This reverts commit 12235d3390a7fc5146bf65f9d6166034b8a048ee. This reverts commit 23245f723fb29262b8543d6447d1b0bb69cb50fb. This reverts commit 91658b402b66b67c785687d5b3a76e3183fe76bf. This reverts commit 5feadfad0cc3be2680213d2e5f6f786b2f4cc74f. This reverts commit fecca49c309fc723c524f12fa671114b316a5562. This reverts commit c6a9454e744289cf2004b42b3c90854b2db8382b. This reverts commit a1a62a70411cb6041b5930ead08280d5e1e7b5f9. This reverts commit 8512f4ca090c85477a6670438aeefe7fdfcf8a98. This reverts commit 532ffb7a297d55b495141ce33692df5d9917b54f. Change-Id: Iaa48d692bea2ca2468cdd5f8ad26ad91c0c31dde Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91199 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-26try to fix UnicodeDecodeError with gyp when building nssLuboš Luňák1-8/+8
https://ci.libreoffice.org/job/gerrit_windows/60353/consoleFull fails for some reason when gyp tries to read the variables set up by the MSVC .bat file that sets up environment for cl.exe . Presumably there is some env. variable that has incorrect content for cp1252 encoding. Try to simply ignore such errors and make Python replace the character with something. Change-Id: Id5fca688fdd533fad2789a391928777b5065ec20 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91149 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-25nss: fix this up to work with Online againMiklos Vajna2-0/+12
Regression from commit 8512f4ca090c85477a6670438aeefe7fdfcf8a98 (build nss using their new build system (gyp/ninja-based), 2020-02-19), the problem was that for some reason nss was pre-loaded in the past in some magic way, but after that commit we need to do this explicitly. Additionally, if the core.git build is a debug one, we now get an nss assert that checks if there was a fork between loading and using nss. I don't think that was enabled before, so just patch that out to fix the build breakage on the online.git side. online.git's unit-password-protected now passes again with this. Change-Id: I56c0019c446b4cabbb73141bbff80e8d8ffdb54c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91068 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-03-25Properly quote $(NINJA)Stephan Bergmann1-2/+2
At least on my Windows machine I had always had C:\Program Files (x86)\Ninja 1.7.1 in Path, so that `which ninja` in configure.ac puts export NINJA=/cygdrive/c/Program Files (x86)/Ninja 1.7.1/ninja into config_host.mk, with spaces and parentheses that need to be quoted here. Change-Id: I938f8914cbc9b7eff7a41009f12cd95abeb4421c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91042 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-25remove a dependency that doesn't make a senseLuboš Luňák1-3/+1
Change-Id: Idc88476213a01643f5ba6b8ea9fbee78673d7769 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91032 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-25Missing dependencyStephan Bergmann1-1/+1
Change-Id: I877364593025de65695995729a12294748c949ec Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91010 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-25external/nss: Fix rpath for Linux et alStephan Bergmann2-0/+15
See CustomTarget_postprocess/check_dynamic_objects (in a --with-package-format=... build) failing after 8512f4ca090c85477a6670438aeefe7fdfcf8a98 "build nss using their new build system (gyp/ninja-based)" with > instdir/program/libsmime3.so has no RPATH > instdir/program/libnssutil3.so has no RPATH > instdir/program/libnssdbm3.so has no RPATH > instdir/program/libfreeblpriv3.so has no RPATH > instdir/program/libsqlite3.so has no RPATH > instdir/program/libfreebl3.so has no RPATH > instdir/program/libnssckbi.so has no RPATH > instdir/program/libnss3.so has no RPATH > instdir/program/libsoftokn3.so has no RPATH > instdir/program/libssl3.so has no RPATH workdir/UnpackedTarball/gyp/pylib/gyp/generator/ninja.py already has logic to add -Wl,-rpath=$ORIGIN/... to certain link command lines, presumably for building certain executables, but of which we apparently include none in ExternalPackage_nss, so it shouldn't hurt to keep them using that other -Wl,-rpath=$ORIGIN/... I have no idea whether there would be a cleaner way than this patch to pass an additional -Wl,-rpath=$ORIGIN to all link command lines via the invocation of build.sh in ExternalProject_nss (even if those executables mentioned in the previous sentence would then have two -Wl,-rpath=..., that should not hurt in practice). (Most, if not all of the rpath-related hunks of external/nss/nss.patch that were needed for the make-based nss build on Linux et al prior to 8512f4ca090c85477a6670438aeefe7fdfcf8a98 can probably be removed in a follow-up commit.) Change-Id: I65eaf52efeb6feceb8540e0aedf340f9a9a18599 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91012 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-24icu: add patch to fix CVE-2020-10531Michael Stahl2-0/+119
Change-Id: I0aca4af1bd79f28bf1c920a4d05e80948106aaac Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90971 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-03-23external/nss: --no-zdefs for gyp-base sanitizer buildsStephan Bergmann3-20/+1
Change-Id: I0516295c340e4b6df2fae852303e423a08784172 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90943 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-23add a configure check for ninjaLuboš Luňák2-1/+16
Internal NSS now needs it for building on most platforms, so better check early in configure. Change-Id: I45d7038536ea1416443f3b2523f25eee22911485 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90859 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-23build also PDBs for nss when using gypLuboš Luňák3-6/+74
This should be the gyp variant of 54acab919e7c7c5d60fc697bda5427. Change-Id: Ic50f5153c4b1f19ae74a52eb9bc0d7c6c23ae131 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90118 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-23build nss using gyp+ninja also on WindowsLuboš Luňák7-13/+211
Change-Id: I3acb0f2a93cee85e382e03c2b2fdd68273e12516 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90117 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-23build nss using their new build system (gyp/ninja-based)Luboš Luňák9-1/+212
This requires installed ninja, gyp is included as source. This allows nss be built as a parallel build, unlike the old Makefile build system. Since gyp internally uses python, even recursively, this requires more complicated setup in case our internal python is used. Moreover gyp itself seems to be kind of deprecated itself and hasn't been ported to python3 yet, so that needs patching too. So far only easy Unix-like systems are converted, Windows I'll do later, the more complicated systems I'll leave to whoever has access to them. Change-Id: I358baad7690d2aa6df44bafa9244dc7cc828fc3f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90115 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-20Missing include (Windows --disable-pch; for HFONT)Stephan Bergmann1-1/+10
Change-Id: Ia1dcd0d6b9f66517a6c2fe0186ed77e007677261 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90800 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-18(do not) use SK_GAMMA_APPLY_TO_A8 also for Skia text on WindowsLuboš Luňák2-0/+29
This is the Windows variant of the SK_GAMMA_APPLY_TO_A8 disabling, again I don't quite understand why we need to disable this, but with this patch Skia text rendering on Windows seems to be pixel-perfect when compared with the VCL gen backend. Change-Id: Iafc1e6353430e695dafa67d19eefd968d4f02ae2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90696 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-18repack the boost tarball to be smaller and fasterLuboš Luňák1-0/+60
The tarball is almost 100MiB and it unpacks to roughly 0.75GiB, because it contains tons of generated html docs and other stuff that is not needed for building. Unpacking it on Cygwin takes several minutes (done in parallel, but still) and even on Linux the unpacking takes longer than the actual compilation. Change-Id: Ied9f3059530f4e9a856170ec3fcc304631ff8e0a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89825 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-18update Skia to chrome/m82Luboš Luňák7-193/+66
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-18implement text rendering using directly Skia (Windows)Luboš Luňák2-0/+135
The Windows code needed for Skia text rendering. Like with the X11 code, the font is slightly lighter than with Skia disabled, but otherwise it seems to work. And like the X11 code this also requires patching Skia to use the font we want. Change-Id: Ib5ba52e4ba51b6523617072b77ed5446e7343f46 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90582 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-18implement text rendering using directly Skia (X11)Luboš Luňák2-0/+33
The Cairo-based way reuses code that is used for OpenGL, but it's needlessly complicated, given that Skia itself is capable of text rendering as well. This requires a small patch for Skia so that it uses the FcPattern* we use for selecting a font. The rendering with this commit is usable, but visually the result is noticeably different, so this will need tweaks to the font rendering (TBD). Change-Id: I058c282307106c929ccc9faa7b2bddfabf0f0a2c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90580 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-03-18external: update pdfium to 4083Miklos Vajna2-14/+13
Change-Id: Iab30effaae86a54852196d6e29d39118e0a2f70c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90667 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-03-04always include assert.h and don't provide a different assert defineCaolán McNamara1-4/+21
rely on the -DNDEBUG we pass in on non-debug builds to to disable assert Change-Id: I089be56aa6fcddb78507bb0f0457c67c226437a5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89989 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-03-04Bump Windows build baseline to Visual Studio 2019 16.4Stephan Bergmann4-4/+0
(where 16.4 is currently the latest version of Visual Studio 2019 available at <https://visualstudio.microsoft.com/downloads/>), see <https://lists.freedesktop.org/archives/libreoffice/2020-February/084575.html> "ESC meeting minutes: 2020-02-27": "Update baseline to VS2019 on master before 7.0 [...] check what’s the current patch level, require that? [...] no objections" The code from 4ea0059bca6dd84f10abcf52f6d6b81c1afec397 "VS detection: Fallback to old registry check if vswhere failed" has been removed in accordance with its comment "The below hack does not work for VS 2019 anyway, so should be removed when upgrading baseline. (Changing the comment "go to Start menu, open 'Visual Studio 2017', [...]" regarding the installation of GNU Make from source is somewhat arbitrary, but lets stick to the tradition of bumping that version number along with any build baseline bump.) Change-Id: Ic4fe8a3d347aa1748377f2d3205e302bff189b79 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89699 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Jenkins
2020-03-04ofz#21036: Avoid UBSan signed-integer-overflow in external/dtoaStephan Bergmann2-0/+12
> workdir/UnpackedTarball/dtoa/src/dtoa.c:3624:12: runtime error: signed integer overflow: 10 * 858993459 cannot be represented in type 'int' > #0 in strtod_nolocale at workdir/UnpackedTarball/dtoa/src/dtoa.c:3624:12 (instdir/program/libuno_sal.so.3 +0x55286d) > #1 in double (anonymous namespace)::stringToDouble<char16_t>(char16_t const*, char16_t const*, char16_t, char16_t, rtl_math_ConversionStatus*, char16_t const**) at sal/rtl/math.cxx:976:20 (instdir/program/libuno_sal.so.3 +0x3b5f0e) > #2 in rtl_math_uStringToDouble at sal/rtl/math.cxx:1028:12 (instdir/program/libuno_sal.so.3 +0x3b1714) [...] Change-Id: If24fca1fb4829ddd763c9920a1af9a90dc2b138c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89966 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-03-03Use thread_local statics in dtoa.c to be thread-safeMike Kaganski3-13/+98
We don't use MULTIPLE_THREADS for that to avoid performance penalty due to locking and memory allocation. Use dtoa.cxx stub to compile dtoa.c as C++, to allow using thread_local keyword in MSVC, which still implements pre-C99. Also don't expose dtoa() and other symbols - make them static. And define IEEE_MC68k, not IEEE_8087 on big endian platforms. Change-Id: Ie59fe0cf057b043556a5ac15ec6b11a1a5b41f47 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89629 Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Tested-by: Jenkins
2020-03-03silence dtoa coverity warningsCaolán McNamara2-0/+35
there isn't a --with-system-dtoa option so add an explicit patch Change-Id: I6ae00fefd3352b1501da3e94e108d3183f951907 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89870 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>