summaryrefslogtreecommitdiff
path: root/external
AgeCommit message (Collapse)Author
2020-06-02bump to libnumbertext 1.0.6László Németh
Fixes in various languages, also word transliteration support in Old Hungarian (renamed to hu_Hung.sor). Change-Id: I2eed60142273b8c353304a5b714f4e4bde5af1b7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95302 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2020-06-01NSS: update Android and iOS patchesJan-Marek Glogowski
They now apply again without any fuzz hunks. Change-Id: I8200494b43b97ada66aeb4fa8f9737c3a720dbe2
2020-05-31NSS: enable parallel buildJan-Marek Glogowski
Since NSS 3.53, the Makefile based build should be fixed (upstream bug 290526). The only missing patch is a minimal NSPR fix for the "NSPR, configure + make, parallel, Windows, MS VS, debug" build. That patch isn't incuded in the NSPR 4.25 release (but it's already in the mercurial repo for NSPR 4.26). Change-Id: I8eaa3792a12bdff734e56ac3f552991478957e23 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95218 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-05-31neon: upgrade to release 0.31.1Jan-Marek Glogowski
Drops some of the LO patches upstreamed since 0.31.0. Version 0.31.0 introduced an new session flag for MS SharePoint compatibility, NE_SESSFLAG_SHAREPOINT, which enables a few workarounds, where SharePoint breaks the WebDAV RFCs. In 0.31.1 a compiler warning and the MD5 ABI break introduced in 0.31.0 are fixed, so LO can now update neon. Change-Id: Ia79ce530271664c0e6bab30a5e2516319da328d8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91070 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-05-20external/skia: Mark c++20.patch.0 as reported upstreamStephan Bergmann
Change-Id: Ia8434915829682880c0f2161f935d6608a18fd81 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94555 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-05-19external/skia: Adapt to C++20 rewritten equality comparisonsStephan Bergmann
...by avoiding the selection of rewritten ones that would use synthesized operator== with non-bool return type: > workdir/UnpackedTarball/skia/src/core/SkVM.cpp:1317:37: error: return type 'skvm::I32' of selected 'operator==' function for rewritten '==' comparison is not 'bool' > select(s == 0.0f , d * (1-src.a) > ~ ^ ~~~~ > workdir/UnpackedTarball/skia/src/core/SkVM.cpp:1217:17: note: in instantiation of function template specialization 'skvm::Builder::blend(SkBlendMode, skvm::Color, skvm::Color)::(anonymous class)::operator()<skvm::F32, skvm::F32>' requested here > fn(src.r, dst.r), > ^ > workdir/UnpackedTarball/skia/src/core/SkVM.cpp:1311:43: note: in instantiation of function template specialization 'skvm::Builder::blend(SkBlendMode, skvm::Color, skvm::Color)::(anonymous class)::operator()<(lambda at workdir/UnpackedTarball/skia/src/core/SkVM.cpp:1311:44)>' requested here > return apply_rgb_srcover_a([&](auto s, auto d) { > ^ > workdir/UnpackedTarball/skia/src/core/SkVM.h:912:23: note: declared here > static inline I32 operator==(float x, F32 y) { return y->eq(x,y); } > ^ (There are more such operators here that could cause similar issues, but I only adapted the one that caused the overall build of LibreOffice to fail.) Change-Id: Ib880191f8bfa44dacb65692e27f32d2e62a96371 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94473 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-05-18update to Skia chrome/m84 snapshotLuboš Luňák
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-17Update icu4c-android.patch.1 to recent ICU 67 upgradeThorsten Behrens
Looks fixed upstream (if slightly differently) Change-Id: If53722b867346d390866d9502fe36f976d702c31 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94372 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2020-05-17external: bundle box2dSarper Akdemir
Bundled box2d with the build system of LO as a static library. If --with-system-box2d was specified checks for instance box2d in the system, defines SYSTEM_BOX2D and uses the library from the system. Change-Id: Ifb05912f2acaff273b25abebafc5af1cac3afec4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94103 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2020-05-13external: update pdfium to 4137Miklos Vajna
Change-Id: Ib7c12461e04fa97bf55ee967e8d6c9bcf92fdf4a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94078 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-05-12external/icu: Silence UBSan invalid-null-argumentStephan Bergmann
...as seen during CppunitTest_i18npool_test_ordinalsuffix: > uloc.cpp:1206:5: runtime error: null pointer passed as argument 1, which is declared to never be null > /usr/include/string.h:44:28: note: nonnull attribute specified here > #0 in ulocimp_getLanguage_67 at workdir/UnpackedTarball/icu/source/common/uloc.cpp:1206:5 > #1 in uloc_getCountry_67 at workdir/UnpackedTarball/icu/source/common/uloc.cpp:1803:5 > #2 in ulocimp_getRegionForSupplementalData_67 at workdir/UnpackedTarball/icu/source/common/loclikely.cpp:1334:17 > #3 in idForLocale(char const*, char*, int, UErrorCode*) at workdir/UnpackedTarball/icu/source/common/ucurr.cpp:350:5 > #4 in ucurr_forLocale_67 at workdir/UnpackedTarball/icu/source/common/ucurr.cpp:535:5 > #5 in icu_67::DecimalFormatSymbols::initialize(icu_67::Locale const&, UErrorCode&, signed char, icu_67::NumberingSystem const*) at workdir/UnpackedTarball/icu/source/i18n/dcfmtsym.cpp:461:29 > #6 in icu_67::DecimalFormatSymbols::DecimalFormatSymbols(icu_67::Locale const&, UErrorCode&) at workdir/UnpackedTarball/icu/source/i18n/dcfmtsym.cpp:110:5 > #7 in icu_67::RuleBasedNumberFormat::initializeDecimalFormatSymbols(UErrorCode&) at workdir/UnpackedTarball/icu/source/i18n/rbnf.cpp:1854:53 > #8 in icu_67::RuleBasedNumberFormat::init(icu_67::UnicodeString const&, icu_67::LocalizationInfo*, UParseError&, UErrorCode&) at workdir/UnpackedTarball/icu/source/i18n/rbnf.cpp:1488:5 > #9 in icu_67::RuleBasedNumberFormat::RuleBasedNumberFormat(icu_67::URBNFRuleSetTag, icu_67::Locale const&, UErrorCode&) at workdir/UnpackedTarball/icu/source/i18n/rbnf.cpp:867:9 > #10 in i18npool::OrdinalSuffixService::getOrdinalSuffix(int, com::sun::star::lang::Locale const&) at i18npool/source/ordinalsuffix/ordinalsuffix.cxx:79:32 > #11 in non-virtual thunk to i18npool::OrdinalSuffixService::getOrdinalSuffix(int, com::sun::star::lang::Locale const&) at i18npool/source/ordinalsuffix/ordinalsuffix.cxx > #12 in TestOrdinalSuffix::testFrench() at i18npool/qa/cppunit/test_ordinalsuffix.cxx:53:29 etc. Change-Id: I4a87ee36fd33791c3906d6b6adc72ec824c4b3ae Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94047 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-05-11Upgrade to internal ICU 67Eike Rathke
Change-Id: I9b8d5cb6d6f4610f2b20c0e0f49eb674d55ce3b8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94009 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Jenkins
2020-05-11avoid deep copies of pixels with Skia raster surfaces (tdf#132856)Luboš Luňák
SkCanvas::draw() leads to deep copies of the source bitmap, moreover RasterWindowContext_win allocates the pixels in a way that SkSurface_Raster has to do a deep copy because of not owning the pixels. Change-Id: I22f6a2c0f96faf99f94140eff26ec0c22fae96d9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93958 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-05-11skia: add SkOpts_crc32Rene Engelhard
I get /usr/bin/ld: /home/rene/libreoffice-7.0.0~alpha1/workdir/GenCxxObject/UnpackedTarball/skia/src/core/SkOpts.o: in function `SkOpts::Init()': ././workdir/UnpackedTarball/skia/src/core/SkOpts.cpp:135: undefined reference to `SkOpts::Init_crc32()' collect2: error: ld returned 1 exit status make[2]: *** [/home/rene/libreoffice-7.0.0~alpha1/external/skia/Library_skia.mk:10: /home/rene/libreoffice-7.0.0~alpha1/instdir/program/libskialo.so] Error 1 on aarch64 otherwise Change-Id: I713df3438e48fb7cb08ecdb07a998d21068ab464 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93901 Tested-by: Rene Engelhard <rene@debian.org> Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-05-07no longer force -arch:SSE on WindowsLuboš Luňák
SSE2 has been pretty much a requirement for running Windows since about 2018, so there should be ~nobody needing this. https://lists.freedesktop.org/archives/libreoffice/2020-May/085029.html Change-Id: I579eb92c18e42c57aa1421b889cfa7997b84915f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93558 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-05-06Move all public Java classes to libreoffice.jarSamuel Mehrbrodt
This moves the classes from juh.jar and ridl.jar to libreoffice.jar The goal is to have one single jar (and Java module, will be added later) which developers can include to work with LO. juh.jar and ridl.jar are kept as basically empty jars with libreoffice.jar on its classpath to keep backwards compatibility. This is a continuation of ae855bf48163ff64d94cfc34aff8e37abdb5518d and a preparation to have Java 9 module support. Change-Id: Ifbbfb97f60373d14256e62ae3122913bd17d5bbb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91930 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-05-06always build Skia optimized, unless --enable-skia=debugLuboš Luňák
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-29Fix gb_ExternalProject_get_state_target,python3,removeunnecessarystuffStephan Bergmann
...which had been introduced with 0f2f719ccd5544eb37d1aacb0a50c317ae963e50 "tdf#106324: Remove unnecessary test folder from LibreOfficePython framework", but had apparently forgotten to touch the target file when done, so any make target that would (indirectly) depend on it would keep rebuilding python3 et al. Change-Id: I0ac3611383c82c4e91a1eaa02e4cf5db28d326fd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93117 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-26update pchesCaolán McNamara
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 Bergmann
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 Bergmann
...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 Lillqvist
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 Lillqvist
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 Bergmann
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 Bergmann
(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 Bergmann
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 Rathke
Change-Id: Ice1e559df0614fd34c40890fc798b1ddef492618
2020-04-21better handling of SSEx,AVX intrinsics for ClangLuboš Luňák
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ňák
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 Tardon
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 Tardon
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 Tardon
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 Bergmann
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 Bergmann
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 Behrens
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ňák
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ňák
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ňák
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ňák
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 Stahl
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ňák
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 Bergmann
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ňák
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ňák
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ňák
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 Vajna
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 Bergmann
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ňák
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 Bergmann
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 Bergmann
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>