distro-configs/LibreOfficeLinux.conf | 1 download.lst | 14 +++++----- external/liblangtag/UnpackedTarball_liblangtag.mk | 2 - external/liblangtag/Wformat-overflow.patch | 17 ------------ external/liblangtag/langtag-valencia.patch.0 | 29 ---------------------- external/libxml2/ExternalPackage_libxml2.mk | 2 - external/libxml2/ExternalProject_libxml2.mk | 4 +-- external/libxml2/UnpackedTarball_libxml2.mk | 1 external/libxml2/libxml2-XMLCALL-redefine.patch.0 | 11 ++++++++ external/libxml2/libxml2-global-symbols.patch | 14 +++++++++- external/libxml2/libxml2-icu-sym.patch.0 | 2 - external/libxml2/libxml2-icu.patch.0 | 2 - external/libxslt/ExternalPackage_libxslt.mk | 2 - external/libxslt/README | 2 - external/redland/UnpackedTarball_raptor.mk | 1 external/redland/raptor/raptor-libxml2-11.patch.1 | 15 +++++++++++ filter/source/xsltfilter/LibXSLTTransformer.cxx | 16 ++++++++++++ helpcompiler/source/HelpCompiler.cxx | 14 ++++++++++ solenv/flatpak-manifest.in | 7 +++-- xmlsecurity/source/xmlsec/saxhelper.cxx | 15 ++++++++++- 20 files changed, 103 insertions(+), 68 deletions(-)
New commits: commit f16d1ea1c7da64022077a9c4544aa11768029a0e Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Thu Feb 15 13:06:32 2024 +0100 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Thu Feb 22 21:08:01 2024 +0100 tdf#159502 remove --without-system-libxml from LibreOfficeLinux.conf configure.ac explicitly excludes libxml from --without-system-libs but this distro-config "helpfully" adds it explicitly, when the system already contains a usable libxml/libxslt anyway. Change-Id: I79d65d9ed9185277ffde8624efc152b290a6ffb3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163438 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit 6f6364e572a0570fb097fec098314bffadc5b474) diff --git a/distro-configs/LibreOfficeLinux.conf b/distro-configs/LibreOfficeLinux.conf index 00a70c75010b..607699b5c610 100644 --- a/distro-configs/LibreOfficeLinux.conf +++ b/distro-configs/LibreOfficeLinux.conf @@ -4,7 +4,6 @@ --without-system-poppler --without-system-openssl --without-system-libpng ---without-system-libxml --without-system-jpeg --without-system-jars --without-system-postgresql commit 830f4bfda35fe1acb1c208669f6a56c026b33f25 Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Thu Feb 22 11:57:37 2024 +0100 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Thu Feb 22 21:08:01 2024 +0100 libxml2: upgrade to release 2.12.5 Fixes CVE-2024-25062 Change-Id: I0e98fd919328e9633a602c4872de0b06eb972cc0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163734 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit 4c3ee61e3eda0cbfd812443f80af89aa3a24ac73) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163753 Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> (cherry picked from commit ca089311678ca6f84771c145178bf4153243ed45) diff --git a/download.lst b/download.lst index f3bef85ab8d1..4102d8231629 100644 --- a/download.lst +++ b/download.lst @@ -356,8 +356,8 @@ XMLSEC_TARBALL := xmlsec1-1.2.28.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -LIBXML_SHA256SUM := 8c8f1092340a89ff32bc44ad5c9693aff9bc8a7a3e161bb239666e5d15ac9aaa -LIBXML_VERSION_MICRO := 3 +LIBXML_SHA256SUM := a972796696afd38073e0f59c283c3a2f5a560b5268b4babc391b286166526b21 +LIBXML_VERSION_MICRO := 5 LIBXML_TARBALL := libxml2-2.12.$(LIBXML_VERSION_MICRO).tar.xz # three static lines # so that git cherry-pick commit 7a300c9b0dcfccde72df684e305c8063351925a3 Author: Caolán McNamara <caolan.mcnam...@collabora.com> AuthorDate: Wed Jan 3 20:45:14 2024 +0000 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Thu Feb 22 21:08:01 2024 +0100 upgrade libxml2, libxslt & liblangtag what I'm really after is some vexating not-reproducible oss-fuzz msan warnings when using libxml2 in the fodt2pdf fuzzer. So lets upgrade libxml2 to the latest, which requires bumping libxslt, and then requires a newer liblangtag because of no longer implicit includes that it depended on. xmlKeepBlanksDefaultValue and xmlSubstituteEntitiesDefault are deprecated, we should get around to updating those uses Change-Id: I8fda0dffda0a7ea65407d246a3121875cb8ad4a4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161598 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com> (cherry picked from commit 6875c975f80d8b813b1829a530162869a1e2d92e) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163751 Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit 050a2db3964d5f02e2dd149cb7f76342457a6719) diff --git a/download.lst b/download.lst index 9b772a985dd5..f3bef85ab8d1 100644 --- a/download.lst +++ b/download.lst @@ -336,8 +336,8 @@ LIBGPGERROR_TARBALL := libgpg-error-1.27.tar.bz2 # three static lines # so that git cherry-pick # will not run into conflicts -LIBLANGTAG_SHA256SUM := 1f12a20a02ec3a8d22e54dedb8b683a43c9c160bda1ba337bf1060607ae733bd -LIBLANGTAG_TARBALL := liblangtag-0.6.3.tar.bz2 +LIBLANGTAG_SHA256SUM := 5ed6bcd4ae3f3c05c912e62f216cd1a44123846147f729a49fb5668da51e030e +LIBLANGTAG_TARBALL := liblangtag-0.6.7.tar.bz2 # three static lines # so that git cherry-pick # will not run into conflicts @@ -356,14 +356,14 @@ XMLSEC_TARBALL := xmlsec1-1.2.28.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -LIBXML_SHA256SUM := 737e1d7f8ab3f139729ca13a2494fd17bf30ddb4b7a427cf336252cab57f57f7 -LIBXML_VERSION_MICRO := 4 -LIBXML_TARBALL := libxml2-2.11.$(LIBXML_VERSION_MICRO).tar.xz +LIBXML_SHA256SUM := 8c8f1092340a89ff32bc44ad5c9693aff9bc8a7a3e161bb239666e5d15ac9aaa +LIBXML_VERSION_MICRO := 3 +LIBXML_TARBALL := libxml2-2.12.$(LIBXML_VERSION_MICRO).tar.xz # three static lines # so that git cherry-pick # will not run into conflicts -LIBXSLT_SHA256SUM := 1f32450425819a09acaff2ab7a5a7f8a2ec7956e505d7beeb45e843d0e1ecab1 -LIBXSLT_VERSION_MICRO := 38 +LIBXSLT_SHA256SUM := 2a20ad621148339b0759c4d4e96719362dee64c9a096dbba625ba053846349f0 +LIBXSLT_VERSION_MICRO := 39 LIBXSLT_TARBALL := libxslt-1.1.$(LIBXSLT_VERSION_MICRO).tar.xz # three static lines # so that git cherry-pick diff --git a/external/libxml2/ExternalPackage_libxml2.mk b/external/libxml2/ExternalPackage_libxml2.mk index 3c399970cd5b..799044575f9a 100644 --- a/external/libxml2/ExternalPackage_libxml2.mk +++ b/external/libxml2/ExternalPackage_libxml2.mk @@ -21,7 +21,7 @@ else # COM=MSC $(eval $(call gb_ExternalPackage_add_file,libxml2,$(LIBO_URE_LIB_FOLDER)/libxml2.dll,win32/bin.msvc/libxml2.dll)) endif else # OS!=WNT -$(eval $(call gb_ExternalPackage_add_file,libxml2,$(LIBO_URE_LIB_FOLDER)/libxml2.so.2,.libs/libxml2.so.2.11.$(LIBXML_VERSION_MICRO))) +$(eval $(call gb_ExternalPackage_add_file,libxml2,$(LIBO_URE_LIB_FOLDER)/libxml2.so.2,.libs/libxml2.so.2.12.$(LIBXML_VERSION_MICRO))) endif endif # DISABLE_DYNLOADING diff --git a/external/libxml2/libxml2-global-symbols.patch b/external/libxml2/libxml2-global-symbols.patch index cbbe5a622284..32146da4b3d7 100644 --- a/external/libxml2/libxml2-global-symbols.patch +++ b/external/libxml2/libxml2-global-symbols.patch @@ -13,7 +13,7 @@ } LIBXML2_2.6.28; LIBXML2_2.6.32 { -@@ -2231,3 +2231,49 @@ +@@ -2231,3 +2231,55 @@ xmlPopOutputCallbacks; } LIBXML2_2.9.8; @@ -23,6 +23,12 @@ + xmlNewSAXParserCtxt; +} LIBXML2_2.9.11; + ++LIBXML2_2.12.3 { ++ global: ++ xmlCtxtSetMaxAmplification; ++ xmlTextReaderSetMaxAmplification; ++} LIBXML2_2.11.4; ++ +# HACK: export global variable accessor functions (globals.h) +LIBXML2_GLOBAL_VARIABLES { + global: diff --git a/filter/source/xsltfilter/LibXSLTTransformer.cxx b/filter/source/xsltfilter/LibXSLTTransformer.cxx index eb715230ce43..47f689bd8f47 100644 --- a/filter/source/xsltfilter/LibXSLTTransformer.cxx +++ b/filter/source/xsltfilter/LibXSLTTransformer.cxx @@ -493,7 +493,23 @@ namespace XSLT { // backward compatibility for old clients using createInstance params = args; } + +#ifdef __GNUC__ +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" +#endif +#if defined(_MSC_VER) +#pragma warning(push) +#pragma warning(disable:4996) +#endif xmlSubstituteEntitiesDefault(0); +#if defined(_MSC_VER) +#pragma warning(pop) +#endif +#ifdef __GNUC__ +#pragma GCC diagnostic pop +#endif + m_parameters.clear(); for (int i = 0; i < params.getLength(); i++) { diff --git a/helpcompiler/source/HelpCompiler.cxx b/helpcompiler/source/HelpCompiler.cxx index 70159a2c65fd..0436d9efb461 100644 --- a/helpcompiler/source/HelpCompiler.cxx +++ b/helpcompiler/source/HelpCompiler.cxx @@ -44,7 +44,21 @@ HelpCompiler::HelpCompiler(StreamTable &in_streamTable, const fs::path &in_input src(in_src), zipdir(in_zipdir), module(in_module), lang(in_lang), resCompactStylesheet(in_resCompactStylesheet), resEmbStylesheet(in_resEmbStylesheet), bExtensionMode( in_bExtensionMode ) { +#ifdef __GNUC__ +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" +#endif +#if defined(_MSC_VER) +#pragma warning(push) +#pragma warning(disable:4996) +#endif xmlKeepBlanksDefaultValue = 0; +#if defined(_MSC_VER) +#pragma warning(pop) +#endif +#ifdef __GNUC__ +#pragma GCC diagnostic pop +#endif char* os = getenv("OS"); if (os) { diff --git a/xmlsecurity/source/xmlsec/saxhelper.cxx b/xmlsecurity/source/xmlsec/saxhelper.cxx index 1410eb5b0874..8ae3622c24a4 100644 --- a/xmlsecurity/source/xmlsec/saxhelper.cxx +++ b/xmlsecurity/source/xmlsec/saxhelper.cxx @@ -118,11 +118,24 @@ SAXHelper::SAXHelper( ) * compile error: * xmlLoadExtDtdDefaultValue = XML_DETECT_IDS | XML_COMPLETE_ATTRS ; */ +#ifdef __GNUC__ +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" +#endif +#if defined(_MSC_VER) +#pragma warning(push) +#pragma warning(disable:4996) +#endif xmlSubstituteEntitiesDefault(0) ; - #ifndef XMLSEC_NO_XSLT xmlIndentTreeOutput = 1 ; #endif /* XMLSEC_NO_XSLT */ +#if defined(_MSC_VER) +#pragma warning(pop) +#endif +#ifdef __GNUC__ +#pragma GCC diagnostic pop +#endif m_pParserCtxt = xmlNewParserCtxt() ; commit aafc831572e9773593c790548bf1c2edd28a3054 Author: Stephan Bergmann <sberg...@redhat.com> AuthorDate: Tue Jul 4 08:31:28 2023 +0200 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Thu Feb 22 21:08:01 2024 +0100 Fix Linux --without-system-libxml build ...after 362dfc50a28a918ec73609a00d2851eb3058375d "libxslt: upgrade to release 1.1.38" Change-Id: Id0ebf5676f79c43bb4fab3a33a2a19e303881aef Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153942 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sberg...@redhat.com> (cherry picked from commit d1fc1c326470461def5ab092a311afee31950880) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154000 Reviewed-by: Taichi Haradaguchi <20001...@ymail.ne.jp> (cherry picked from commit 2808d5a6874d5956d99e02feb0fbf55a7343d63c) diff --git a/external/libxslt/ExternalPackage_libxslt.mk b/external/libxslt/ExternalPackage_libxslt.mk index c22a2e1b5dad..c1a8ee1217f1 100644 --- a/external/libxslt/ExternalPackage_libxslt.mk +++ b/external/libxslt/ExternalPackage_libxslt.mk @@ -25,7 +25,7 @@ $(eval $(call gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libexslt.dl endif else # OS!=WNT $(eval $(call gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libxslt.so.1,libxslt/.libs/libxslt.so.1.1.$(LIBXSLT_VERSION_MICRO))) -$(eval $(call gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libexslt.so.0,libexslt/.libs/libexslt.so.0.8.20)) +$(eval $(call gb_ExternalPackage_add_file,libxslt,$(LIBO_LIB_FOLDER)/libexslt.so.0,libexslt/.libs/libexslt.so.0.8.21)) endif endif # DISABLE_DYNLOADING commit 3ec245f0908fc87784cad9c4760fd2f5c0b329ad Author: Taichi Haradaguchi <20001...@ymail.ne.jp> AuthorDate: Mon Jul 3 18:38:33 2023 +0900 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Thu Feb 22 21:08:01 2024 +0100 libxslt: upgrade to release 1.1.38 Change-Id: I0534d7e02c9486b3d58f56e1a26fe6846b4a20b7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153874 Tested-by: Jenkins Reviewed-by: Taichi Haradaguchi <20001...@ymail.ne.jp> (cherry picked from commit 362dfc50a28a918ec73609a00d2851eb3058375d) diff --git a/download.lst b/download.lst index ddb8166fe3ee..9b772a985dd5 100644 --- a/download.lst +++ b/download.lst @@ -362,8 +362,8 @@ LIBXML_TARBALL := libxml2-2.11.$(LIBXML_VERSION_MICRO).tar.xz # three static lines # so that git cherry-pick # will not run into conflicts -LIBXSLT_SHA256SUM := 8247f33e9a872c6ac859aa45018bc4c4d00b97e2feac9eebc10c93ce1f34dd79 -LIBXSLT_VERSION_MICRO := 35 +LIBXSLT_SHA256SUM := 1f32450425819a09acaff2ab7a5a7f8a2ec7956e505d7beeb45e843d0e1ecab1 +LIBXSLT_VERSION_MICRO := 38 LIBXSLT_TARBALL := libxslt-1.1.$(LIBXSLT_VERSION_MICRO).tar.xz # three static lines # so that git cherry-pick diff --git a/external/libxslt/README b/external/libxslt/README index dd69a9d732c3..2eb71661b903 100644 --- a/external/libxslt/README +++ b/external/libxslt/README @@ -1 +1 @@ -Gnome xslt library written in C, from [http://xmlsoft.org/xslt/] +libxslt is an XSLT processor based on libxml2, from [https://gitlab.gnome.org/GNOME/libxslt/] commit 9dc252ec50a6e9516424cfcd95386ce4363a40e7 Author: Stephan Bergmann <sberg...@redhat.com> AuthorDate: Fri May 26 09:13:04 2023 +0200 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Thu Feb 22 21:08:01 2024 +0100 external/libxml2: Fix missing external symbols needed by xmllint After 5b42f148e206cda19467e76c2f9915fc2b6fa5f6 "ExternalProject_libxml2 still needs to build the xmllint executable" (which I had happened to prepare on macOS, so didn't originally notice the issue addressed here now), Linux builds like <https://ci.libreoffice.org/job/lo_callgrind_linux/13374/> started to fail with > CCLD xmllint > /opt/rh/devtoolset-11/root/usr/libexec/gcc/x86_64-redhat-linux/11/ld: xmllint-xmllint.o: in function `testSAX': > /home/tdf/lode/jenkins/workspace/lo_callgrind_linux/workdir/UnpackedTarball/libxml2/xmllint.c:1646: undefined reference to `xmlNewSAXParserCtxt' > /opt/rh/devtoolset-11/root/usr/libexec/gcc/x86_64-redhat-linux/11/ld: xmllint-xmllint.o: in function `myReallocFunc': > /home/tdf/lode/jenkins/workspace/lo_callgrind_linux/workdir/UnpackedTarball/libxml2/xmllint.c:357: undefined reference to `xmlMemSize' > collect2: error: ld returned 1 exit status > make[2]: *** [Makefile:1007: xmllint] Error 1 > make[1]: *** [/home/tdf/lode/jenkins/workspace/lo_callgrind_linux/external/libxml2/ExternalProject_libxml2.mk:37: /home/tdf/lode/jenkins/workspace/lo_callgrind_linux/workdir/ExternalProject/libxml2/build] Error 1 Turns out that those two functions have been introduced after the previously used libxml2 2.10.4. No idea how things are supposed to work (given that workdir/UnpackedTarball/libxml2/libxml2.syms starts off with "Retained for backward compatibility. Don't add new symbols.", it appears that there should be some other mechanism at play to make xmllint on Linux find the libxml2.so symbols it needs, but which doesn't work as intended in our build), but just add those two symbols to libxml2.syms for now. (With a new version named LIBXML2_2.11.4, even if the symbols can actually have been introduced in some other version between 2.10.4 and 2.11.4, but who cares.) Change-Id: Ib9d5c7901fe94b8014a87b049fc27ef5658fd954 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152292 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sberg...@redhat.com> (cherry picked from commit 7d9b3393e2632247624d8a1e3129365290d1b60b) diff --git a/external/libxml2/libxml2-global-symbols.patch b/external/libxml2/libxml2-global-symbols.patch index cfec9c530281..cbbe5a622284 100644 --- a/external/libxml2/libxml2-global-symbols.patch +++ b/external/libxml2/libxml2-global-symbols.patch @@ -13,10 +13,16 @@ } LIBXML2_2.6.28; LIBXML2_2.6.32 { -@@ -2231,3 +2231,43 @@ +@@ -2231,3 +2231,49 @@ xmlPopOutputCallbacks; } LIBXML2_2.9.8; ++LIBXML2_2.11.4 { ++ global: ++ xmlMemSize; ++ xmlNewSAXParserCtxt; ++} LIBXML2_2.9.11; ++ +# HACK: export global variable accessor functions (globals.h) +LIBXML2_GLOBAL_VARIABLES { + global: commit 779943be8510ab024e665ca6cab064542ee2773a Author: Stephan Bergmann <sberg...@redhat.com> AuthorDate: Thu May 25 08:21:20 2023 +0200 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Thu Feb 22 21:08:01 2024 +0100 ExternalProject_libxml2 still needs to build the xmllint executable No idea why fd6cbd983a3021d22321854d0414bdc42c6cb1b7 "upgrade to libxml2-2.11.4" started to only explicitly make libxml2.la (the commit message doesn't say), but that caused at least <https://ci.libreoffice.org/job/lo_ubsan/2788/> to fail with > make[1]: *** Deleting file '/home/tdf/lode/jenkins/workspace/lo_ubsan/workdir/CustomTarget/sfx2/classification/example.validated' > [build VAL] CustomTarget/sfx2/classification/example.validated > /bin/sh: /home/tdf/lode/jenkins/workspace/lo_ubsan/workdir/UnpackedTarball/libxml2//xmllint: No such file or directory > make[1]: *** [/home/tdf/lode/jenkins/workspace/lo_ubsan/sfx2/CustomTarget_classification.mk:20: /home/tdf/lode/jenkins/workspace/lo_ubsan/workdir/CustomTarget/sfx2/classification/example.validated] Error 1 Change-Id: I7e7aa2bae05cf8674720cfd72c78840cd7a28919 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152256 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sberg...@redhat.com> (cherry picked from commit 5b42f148e206cda19467e76c2f9915fc2b6fa5f6) diff --git a/external/libxml2/ExternalProject_libxml2.mk b/external/libxml2/ExternalProject_libxml2.mk index aea6ec2423c6..5a044e3098dd 100644 --- a/external/libxml2/ExternalProject_libxml2.mk +++ b/external/libxml2/ExternalProject_libxml2.mk @@ -36,7 +36,7 @@ $(call gb_ExternalProject_get_state_target,libxml2,build): LDFLAGS="$(if $(SYSBASE),-L$(SYSBASE)/usr/lib)" \ CFLAGS="$(if $(SYSBASE),-I$(SYSBASE)/usr/include) $(if $(debug),-g)" \ $(if $(filter TRUE,$(DISABLE_DYNLOADING)),--disable-shared,--disable-static) \ - && $(MAKE) libxml2.la \ + && $(MAKE) libxml2.la xmllint \ ) endif commit f942172f65f3fea9a5c81dc166d790617961c139 Author: Caolán McNamara <caolan.mcnam...@collabora.com> AuthorDate: Tue May 23 21:15:52 2023 +0100 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Thu Feb 22 21:08:01 2024 +0100 upgrade to libxml2-2.11.4 'checked' field removed with: https://gitlab.gnome.org/GNOME/libxml2/-/commit/ce76ebfd1312459951d555ad9d87fb9a89eede55 win32 'run_debug' removed with: https://gitlab.gnome.org/GNOME/libxml2/-/commit/59f2f60e3eff07324f1c7cd861a444d714be750b add libxml2-XMLCALL-redefine.patch.0 to avoid: UnpackedTarball\libxml2\include\libxml/xmlexports.h(41): error C2220: the following warning is treated as an error UnpackedTarball\libxml2\include\libxml/xmlexports.h(41): warning C4005: 'XMLCALL': macro redefinition UnpackedTarballxpat\libxpat_external.h(69): note: see previous definition of 'XMLCALL' Change-Id: Ia9b1540dc1b4eccf91662c8d995c036f71de6fc6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152176 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com> (cherry picked from commit fd6cbd983a3021d22321854d0414bdc42c6cb1b7) diff --git a/download.lst b/download.lst index 374ffc8cdd83..ddb8166fe3ee 100644 --- a/download.lst +++ b/download.lst @@ -356,9 +356,9 @@ XMLSEC_TARBALL := xmlsec1-1.2.28.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts -LIBXML_SHA256SUM := ed0c91c5845008f1936739e4eee2035531c1c94742c6541f44ee66d885948d45 +LIBXML_SHA256SUM := 737e1d7f8ab3f139729ca13a2494fd17bf30ddb4b7a427cf336252cab57f57f7 LIBXML_VERSION_MICRO := 4 -LIBXML_TARBALL := libxml2-2.10.$(LIBXML_VERSION_MICRO).tar.xz +LIBXML_TARBALL := libxml2-2.11.$(LIBXML_VERSION_MICRO).tar.xz # three static lines # so that git cherry-pick # will not run into conflicts diff --git a/external/libxml2/ExternalPackage_libxml2.mk b/external/libxml2/ExternalPackage_libxml2.mk index 6338fb20b9df..3c399970cd5b 100644 --- a/external/libxml2/ExternalPackage_libxml2.mk +++ b/external/libxml2/ExternalPackage_libxml2.mk @@ -21,7 +21,7 @@ else # COM=MSC $(eval $(call gb_ExternalPackage_add_file,libxml2,$(LIBO_URE_LIB_FOLDER)/libxml2.dll,win32/bin.msvc/libxml2.dll)) endif else # OS!=WNT -$(eval $(call gb_ExternalPackage_add_file,libxml2,$(LIBO_URE_LIB_FOLDER)/libxml2.so.2,.libs/libxml2.so.2.10.$(LIBXML_VERSION_MICRO))) +$(eval $(call gb_ExternalPackage_add_file,libxml2,$(LIBO_URE_LIB_FOLDER)/libxml2.so.2,.libs/libxml2.so.2.11.$(LIBXML_VERSION_MICRO))) endif endif # DISABLE_DYNLOADING diff --git a/external/libxml2/ExternalProject_libxml2.mk b/external/libxml2/ExternalProject_libxml2.mk index 0d8559dfb04f..aea6ec2423c6 100644 --- a/external/libxml2/ExternalProject_libxml2.mk +++ b/external/libxml2/ExternalProject_libxml2.mk @@ -21,7 +21,7 @@ $(eval $(call gb_ExternalProject_use_nmake,libxml2,build)) $(call gb_ExternalProject_get_state_target,libxml2,build): $(call gb_ExternalProject_run,build,\ cscript /e:javascript configure.js \ - iconv=no icu=yes sax1=yes $(if $(MSVC_USE_DEBUG_RUNTIME),run_debug=yes cruntime=/MDd) \ + iconv=no icu=yes sax1=yes $(if $(MSVC_USE_DEBUG_RUNTIME),cruntime=/MDd) \ $(if $(filter TRUE,$(ENABLE_DBGUTIL)),debug=yes) \ && nmake \ ,win32) @@ -36,7 +36,7 @@ $(call gb_ExternalProject_get_state_target,libxml2,build): LDFLAGS="$(if $(SYSBASE),-L$(SYSBASE)/usr/lib)" \ CFLAGS="$(if $(SYSBASE),-I$(SYSBASE)/usr/include) $(if $(debug),-g)" \ $(if $(filter TRUE,$(DISABLE_DYNLOADING)),--disable-shared,--disable-static) \ - && $(MAKE) \ + && $(MAKE) libxml2.la \ ) endif diff --git a/external/libxml2/UnpackedTarball_libxml2.mk b/external/libxml2/UnpackedTarball_libxml2.mk index 8c81c3d26e4c..d50d52cbeef8 100644 --- a/external/libxml2/UnpackedTarball_libxml2.mk +++ b/external/libxml2/UnpackedTarball_libxml2.mk @@ -16,6 +16,7 @@ $(eval $(call gb_UnpackedTarball_update_autoconf_configs,libxml2)) $(eval $(call gb_UnpackedTarball_add_patches,libxml2,\ external/libxml2/libxml2-global-symbols.patch \ external/libxml2/libxml2-vc10.patch \ + external/libxml2/libxml2-XMLCALL-redefine.patch.0 \ $(if $(filter ANDROID,$(OS)),external/libxml2/libxml2-android.patch) \ $(if $(gb_Module_CURRENTMODULE_SYMBOLS_ENABLED), \ external/libxml2/libxml2-icu-sym.patch.0, \ diff --git a/external/libxml2/libxml2-XMLCALL-redefine.patch.0 b/external/libxml2/libxml2-XMLCALL-redefine.patch.0 new file mode 100644 index 000000000000..d9ca23be7ce4 --- /dev/null +++ b/external/libxml2/libxml2-XMLCALL-redefine.patch.0 @@ -0,0 +1,11 @@ +--- include/libxml/xmlexports.h 2023-05-24 12:48:46.179570708 +0100 ++++ include/libxml/xmlexports.h 2023-05-24 12:48:56.563577488 +0100 +@@ -38,8 +38,6 @@ + + /** DOC_DISABLE */ + /* Compatibility */ +-#define XMLCALL +-#define XMLCDECL + #if !defined(LIBXML_DLL_IMPORT) + #define LIBXML_DLL_IMPORT XMLPUBVAR + #endif diff --git a/external/libxml2/libxml2-icu-sym.patch.0 b/external/libxml2/libxml2-icu-sym.patch.0 index aac9d09ef13e..07676228da19 100644 --- a/external/libxml2/libxml2-icu-sym.patch.0 +++ b/external/libxml2/libxml2-icu-sym.patch.0 @@ -25,7 +25,7 @@ diff -up win32/Makefile.msvc.dt win32/Makefile.msvc !if "$(STATIC)" == "1" LIBS = $(LIBS) advapi32.lib sicuuc.lib sicuin.lib sicudt.lib !else -+!if "$(WITH_RUN_DEBUG)" == "1" ++!if "$(DEBUG)" == "1" +LIBS = $(LIBS) icuind.lib icuucd.lib icudtd.lib +!else LIBS = $(LIBS) icuuc.lib icuin.lib icudt.lib diff --git a/external/libxml2/libxml2-icu.patch.0 b/external/libxml2/libxml2-icu.patch.0 index b390b03d8787..84197763f878 100644 --- a/external/libxml2/libxml2-icu.patch.0 +++ b/external/libxml2/libxml2-icu.patch.0 @@ -23,7 +23,7 @@ diff -up win32/Makefile.msvc.dt win32/Makefile.msvc !if "$(STATIC)" == "1" LIBS = $(LIBS) advapi32.lib sicuuc.lib sicuin.lib sicudt.lib !else -+!if "$(WITH_RUN_DEBUG)" == "1" ++!if "$(DEBUG)" == "1" +LIBS = $(LIBS) icuind.lib icuucd.lib icudtd.lib +!else LIBS = $(LIBS) icuuc.lib icuin.lib icudt.lib diff --git a/external/redland/UnpackedTarball_raptor.mk b/external/redland/UnpackedTarball_raptor.mk index fbdc8b6f5510..92bc586a3e60 100644 --- a/external/redland/UnpackedTarball_raptor.mk +++ b/external/redland/UnpackedTarball_raptor.mk @@ -30,6 +30,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,raptor,\ external/redland/raptor/0001-Calcualte-max-nspace-declarations-correctly-for-XML-.patch.1 \ external/redland/raptor/0001-CVE-2020-25713-raptor2-malformed-input-file-can-lead.patch.1 \ external/redland/raptor/libtool.patch \ + external/redland/raptor/raptor-libxml2-11.patch.1 \ )) # vim: set noet sw=4 ts=4: diff --git a/external/redland/raptor/raptor-libxml2-11.patch.1 b/external/redland/raptor/raptor-libxml2-11.patch.1 new file mode 100644 index 000000000000..9bed29e50d0b --- /dev/null +++ b/external/redland/raptor/raptor-libxml2-11.patch.1 @@ -0,0 +1,15 @@ +--- raptor/src/raptor_libxml.c 2023-05-24 09:55:21.589275008 +0100 ++++ raptor/src/raptor_libxml.c 2023-05-24 09:56:41.100324810 +0100 +@@ -246,9 +246,11 @@ + + ret->owner = 1; + +-#if LIBXML_VERSION >= 20627 ++#if LIBXML_VERSION >= 20627 && LIBXML_VERSION < 21100 + /* Checked field was released in 2.6.27 on 2006-10-25 + * http://git.gnome.org/browse/libxml2/commit/?id=a37a6ad91a61d168ecc4b29263def3363fff4da6 ++ * and removed with ++ * https://gitlab.gnome.org/GNOME/libxml2/-/commit/ce76ebfd1312459951d555ad9d87fb9a89eede55 + * + */ + commit a1ff9717aa43e565d20fa8c9c168d7296d373a22 Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Wed Oct 20 12:42:10 2021 +0100 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Thu Feb 22 21:08:00 2024 +0100 upgrade liblangtag to 0.6.3 langtag-valencia.patch.0 merged as: https://bitbucket.org/tagoh/liblangtag/commits/fe35532a0b98d5a8179b9edee0d61ea8db9b5921 external/liblangtag/Wformat-overflow.patch redundant since: https://bitbucket.org/tagoh/liblangtag/commits/49135ef561f309078f0bfd6e1f15052769cf75b4 Change-Id: Ieeb19679837f03a6938c97f069d6fb1e6dd9a30d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123890 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit 3667da75208e6ccc6deb927555c861ddb3d34dd5) diff --git a/download.lst b/download.lst index 4f76904b1b35..374ffc8cdd83 100644 --- a/download.lst +++ b/download.lst @@ -336,8 +336,8 @@ LIBGPGERROR_TARBALL := libgpg-error-1.27.tar.bz2 # three static lines # so that git cherry-pick # will not run into conflicts -LIBLANGTAG_SHA256SUM := d6242790324f1432fb0a6fae71b6851f520b2c5a87675497cf8ea14c2924d52e -LIBLANGTAG_TARBALL := liblangtag-0.6.2.tar.bz2 +LIBLANGTAG_SHA256SUM := 1f12a20a02ec3a8d22e54dedb8b683a43c9c160bda1ba337bf1060607ae733bd +LIBLANGTAG_TARBALL := liblangtag-0.6.3.tar.bz2 # three static lines # so that git cherry-pick # will not run into conflicts diff --git a/external/liblangtag/UnpackedTarball_liblangtag.mk b/external/liblangtag/UnpackedTarball_liblangtag.mk index 66b8051782d0..16b9ea999f71 100644 --- a/external/liblangtag/UnpackedTarball_liblangtag.mk +++ b/external/liblangtag/UnpackedTarball_liblangtag.mk @@ -30,8 +30,6 @@ endif $(eval $(call gb_UnpackedTarball_add_patches,liblangtag, \ $(if $(SYSTEM_LIBXML),,external/liblangtag/langtag-libtool-rpath.patch.0) \ external/liblangtag/clang-cl.patch.0 \ - external/liblangtag/langtag-valencia.patch.0 \ - external/liblangtag/Wformat-overflow.patch \ )) # vim: set noet sw=4 ts=4: diff --git a/external/liblangtag/Wformat-overflow.patch b/external/liblangtag/Wformat-overflow.patch deleted file mode 100644 index f2d017e4b395..000000000000 --- a/external/liblangtag/Wformat-overflow.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- liblangtag/lt-script-db.c -+++ liblangtag/lt-script-db.c -@@ -134,8 +134,12 @@ - cnode = cnode->next; - } - if (!subtag) { -- lt_warning("No subtag node: description = '%s'", -- desc); -+ if (!desc) { -+ lt_warning("No subtag nor description node"); -+ } else { -+ lt_warning("No subtag node: description = '%s'", -+ desc); -+ } - goto bail1; - } - if (!desc) { diff --git a/external/liblangtag/langtag-valencia.patch.0 b/external/liblangtag/langtag-valencia.patch.0 deleted file mode 100644 index dc28043042e4..000000000000 --- a/external/liblangtag/langtag-valencia.patch.0 +++ /dev/null @@ -1,29 +0,0 @@ ---- liblangtag/lt-tag.c -+++ liblangtag/lt-tag.c -@@ -2009,11 +2009,23 @@ - if (ctag->region) - lt_string_append_printf(string, "_%s", - lt_region_get_tag(ctag->region)); -- if (ctag->script) { -+ if (ctag->script) - mod = lt_script_convert_to_modifier(ctag->script); -- if (mod) -- lt_string_append_printf(string, "@%s", mod); -+ if (!mod && ctag->variants) -+ { -+ lt_list_t* l; -+ for (l = ctag->variants; l != NULL; l = lt_list_next(l)) { -+ lt_variant_t *variant = lt_list_value(l); -+ const char *s = lt_variant_get_tag(variant); -+ if (lt_strcmp0(s, "valencia") == 0) { -+ mod = "valencia"; -+ break; -+ } -+ } - } -+ if (mod) -+ lt_string_append_printf(string, "@%s", mod); -+ - lt_tag_unref(ctag); - - bail: diff --git a/solenv/flatpak-manifest.in b/solenv/flatpak-manifest.in index f92a45251d7c..47be6cfd2af8 100644 --- a/solenv/flatpak-manifest.in +++ b/solenv/flatpak-manifest.in @@ -256,10 +256,11 @@ "dest-filename": "external/tarballs/language-subtag-registry-2020-04-01.tar.bz2" }, { - "url": "https://dev-www.libreoffice.org/src/liblangtag-0.6.2.tar.bz2", - "sha256": "d6242790324f1432fb0a6fae71b6851f520b2c5a87675497cf8ea14c2924d52e", + "url": "https://dev-www.libreoffice.org/src/liblangtag-0.6.3.tar.bz2", + "sha256": "1f12a20a02ec3a8d22e54dedb8b683a43c9c160bda1ba337bf1060607ae733bd", "type": "file", - "dest-filename": "external/tarballs/liblangtag-0.6.2.tar.bz2" + "dest": "external/tarballs", + "dest-filename": "liblangtag-0.6.3.tar.bz2" }, { "url": "https://dev-www.libreoffice.org/src/libmspub-0.1.4.tar.xz",