From 509a796b33102425c9369b9287a707f95fee055f Mon Sep 17 00:00:00 2001 From: Gwyn Ciesla Date: Fri, 8 Dec 2023 13:27:00 -0600 Subject: [PATCH] 7.6.4.1 --- .gitignore | 6 + ...fix-build-against-system-libxml-2.12.patch | 301 ++++++++++++++++++ libreoffice.spec | 3 +- sources | 12 +- 4 files changed, 315 insertions(+), 7 deletions(-) create mode 100644 0001-tdf-158302-fix-build-against-system-libxml-2.12.patch diff --git a/.gitignore b/.gitignore index 026e8fd..e9896cd 100644 --- a/.gitignore +++ b/.gitignore @@ -53,3 +53,9 @@ /libreoffice-help-7.6.3.1.tar.xz.asc /libreoffice-translations-7.6.3.1.tar.xz /libreoffice-translations-7.6.3.1.tar.xz.asc +/libreoffice-7.6.4.1.tar.xz +/libreoffice-7.6.4.1.tar.xz.asc +/libreoffice-help-7.6.4.1.tar.xz +/libreoffice-help-7.6.4.1.tar.xz.asc +/libreoffice-translations-7.6.4.1.tar.xz +/libreoffice-translations-7.6.4.1.tar.xz.asc diff --git a/0001-tdf-158302-fix-build-against-system-libxml-2.12.patch b/0001-tdf-158302-fix-build-against-system-libxml-2.12.patch new file mode 100644 index 0000000..b59552a --- /dev/null +++ b/0001-tdf-158302-fix-build-against-system-libxml-2.12.patch @@ -0,0 +1,301 @@ +From c8f7408db73d2f2ccacb25a2b4fef8dfebdfc6cb Mon Sep 17 00:00:00 2001 +From: Miklos Vajna +Date: Mon, 27 Nov 2023 08:02:59 +0100 +Subject: [PATCH] tdf#158302 fix build against system-libxml-2.12 + +Seen in a fedora:40 container, using --with-system-libcmis, +--with-system-liblangtag and --with-system-xmlsec. + +Change-Id: I9d748d3dc0b70dbfdfcb6b99c9ce8440bda6f326 +Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159980 +Tested-by: Jenkins +Reviewed-by: Miklos Vajna +--- + drawinglayer/source/tools/primitive2dxmldump.cxx | 1 + + filter/source/xsltfilter/LibXSLTTransformer.cxx | 2 +- + helpcompiler/source/HelpLinker.cxx | 4 ++++ + include/xmloff/xmltoken.hxx | 2 +- + sax/source/fastparser/fastparser.cxx | 2 +- + sc/source/core/tool/interpr7.cxx | 1 + + sc/source/filter/xml/XMLExportDataPilot.cxx | 2 +- + sc/source/filter/xml/XMLExportDatabaseRanges.cxx | 2 +- + sc/source/filter/xml/xmlfilti.cxx | 6 +++--- + unoxml/source/dom/attr.cxx | 1 + + unoxml/source/dom/document.cxx | 1 + + unoxml/source/dom/documentbuilder.cxx | 1 + + unoxml/source/dom/entity.cxx | 1 + + unoxml/source/xpath/xpathapi.cxx | 7 ++++++- + xmloff/source/core/xmltoken.cxx | 2 +- + xmloff/source/style/PageMasterStyleMap.cxx | 2 +- + xmlsecurity/inc/xmlsec-wrapper.h | 1 + + xmlsecurity/inc/xmlsec/saxhelper.hxx | 1 + + 18 files changed, 28 insertions(+), 11 deletions(-) + +diff --git a/drawinglayer/source/tools/primitive2dxmldump.cxx b/drawinglayer/source/tools/primitive2dxmldump.cxx +index 76aefec902ea..f3b9ef1bc919 100644 +--- a/drawinglayer/source/tools/primitive2dxmldump.cxx ++++ b/drawinglayer/source/tools/primitive2dxmldump.cxx +@@ -15,6 +15,7 @@ + + #include + #include ++#include + #include + + #include +diff --git a/filter/source/xsltfilter/LibXSLTTransformer.cxx b/filter/source/xsltfilter/LibXSLTTransformer.cxx +index 1a7c34805f1b..5e9a7c4bcd35 100644 +--- a/filter/source/xsltfilter/LibXSLTTransformer.cxx ++++ b/filter/source/xsltfilter/LibXSLTTransformer.cxx +@@ -333,7 +333,7 @@ namespace XSLT + } + else + { +- xmlErrorPtr lastErr = xmlGetLastError(); ++ const xmlError* lastErr = xmlGetLastError(); + OUString msg; + if (lastErr) + msg = OStringToOUString(lastErr->message, RTL_TEXTENCODING_UTF8); +diff --git a/helpcompiler/source/HelpLinker.cxx b/helpcompiler/source/HelpLinker.cxx +index 3d52834dbe6b..898a8b26392a 100644 +--- a/helpcompiler/source/HelpLinker.cxx ++++ b/helpcompiler/source/HelpLinker.cxx +@@ -815,7 +815,11 @@ static const HelpProcessingException* GpXMLParsingException = nullptr; + + extern "C" { + ++#if LIBXML_VERSION >= 21200 ++static void StructuredXMLErrorFunction(SAL_UNUSED_PARAMETER void *, const xmlError* error) ++#else + static void StructuredXMLErrorFunction(SAL_UNUSED_PARAMETER void *, xmlErrorPtr error) ++#endif + { + std::string aErrorMsg = error->message; + std::string aXMLParsingFile; +diff --git a/include/xmloff/xmltoken.hxx b/include/xmloff/xmltoken.hxx +index 4e6441841774..ba42fae4d035 100644 +--- a/include/xmloff/xmltoken.hxx ++++ b/include/xmloff/xmltoken.hxx +@@ -744,7 +744,7 @@ namespace xmloff::token { + XML_EMBEDDED_VISIBLE_AREA, + XML_EMBOSSED, + XML_EMISSIVE_COLOR, +- XML_EMPTY, ++ XML_TOKEN_EMPTY, + XML_EMPTY_LINE_REFRESH, + XML_ENABLE_NUMBERING, + XML_ENABLED, +diff --git a/sax/source/fastparser/fastparser.cxx b/sax/source/fastparser/fastparser.cxx +index ec8065016a12..e0338e053cf0 100644 +--- a/sax/source/fastparser/fastparser.cxx ++++ b/sax/source/fastparser/fastparser.cxx +@@ -578,7 +578,7 @@ Event& Entity::getEvent( CallbackType aType ) + OUString lclGetErrorMessage( xmlParserCtxtPtr ctxt, std::u16string_view sSystemId, sal_Int32 nLine ) + { + const char* pMessage; +- xmlErrorPtr error = xmlCtxtGetLastError( ctxt ); ++ const xmlError* error = xmlCtxtGetLastError( ctxt ); + if( error && error->message ) + pMessage = error->message; + else +diff --git a/sc/source/core/tool/interpr7.cxx b/sc/source/core/tool/interpr7.cxx +index 352c7cf70e45..ecb4ea346396 100644 +--- a/sc/source/core/tool/interpr7.cxx ++++ b/sc/source/core/tool/interpr7.cxx +@@ -31,6 +31,7 @@ + #include + #include + #include ++#include + + using namespace com::sun::star; + +diff --git a/sc/source/filter/xml/XMLExportDataPilot.cxx b/sc/source/filter/xml/XMLExportDataPilot.cxx +index da65bec0dab7..bd5f16d828ff 100644 +--- a/sc/source/filter/xml/XMLExportDataPilot.cxx ++++ b/sc/source/filter/xml/XMLExportDataPilot.cxx +@@ -123,7 +123,7 @@ void ScXMLExportDataPilot::WriteDPCondition(const ScQueryEntry& aQueryEntry, boo + + if (aQueryEntry.IsQueryByEmpty()) + { +- rExport.AddAttribute(XML_NAMESPACE_TABLE, XML_OPERATOR, GetXMLToken(XML_EMPTY)); ++ rExport.AddAttribute(XML_NAMESPACE_TABLE, XML_OPERATOR, GetXMLToken(XML_TOKEN_EMPTY)); + } + else if (aQueryEntry.IsQueryByNonEmpty()) + { +diff --git a/sc/source/filter/xml/XMLExportDatabaseRanges.cxx b/sc/source/filter/xml/XMLExportDatabaseRanges.cxx +index 6905e02d651b..e4307065bd92 100644 +--- a/sc/source/filter/xml/XMLExportDatabaseRanges.cxx ++++ b/sc/source/filter/xml/XMLExportDatabaseRanges.cxx +@@ -376,7 +376,7 @@ private: + case SC_EQUAL: + { + if (rEntry.IsQueryByEmpty()) +- return GetXMLToken(XML_EMPTY); ++ return GetXMLToken(XML_TOKEN_EMPTY); + else if (rEntry.IsQueryByNonEmpty()) + return GetXMLToken(XML_NOEMPTY); + +diff --git a/sc/source/filter/xml/xmlfilti.cxx b/sc/source/filter/xml/xmlfilti.cxx +index 7585ce0c50fa..61f7cfe4a349 100644 +--- a/sc/source/filter/xml/xmlfilti.cxx ++++ b/sc/source/filter/xml/xmlfilti.cxx +@@ -370,7 +370,7 @@ void ScXMLConditionContext::GetOperator( + rEntry.eOp = SC_BOTPERC; + else if (IsXMLToken(aOpStr, XML_BOTTOM_VALUES)) + rEntry.eOp = SC_BOTVAL; +- else if (IsXMLToken(aOpStr, XML_EMPTY)) ++ else if (IsXMLToken(aOpStr, XML_TOKEN_EMPTY)) + rEntry.SetQueryByEmpty(); + else if (aOpStr == u">") + rEntry.eOp = SC_GREATER; +@@ -422,7 +422,7 @@ void SAL_CALL ScXMLConditionContext::endFastElement( sal_Int32 /*nElement*/ ) + if (maQueryItems.empty()) + { + ScQueryEntry::Item& rItem = rEntry.GetQueryItem(); +- if (IsXMLToken(sOperator, XML_EMPTY)) ++ if (IsXMLToken(sOperator, XML_TOKEN_EMPTY)) + return; + if (IsXMLToken(sDataType, XML_NUMBER)) + { +@@ -753,7 +753,7 @@ void SAL_CALL ScXMLDPConditionContext::endFastElement( sal_Int32 /*nElement*/ ) + else + aFilterField.eConnect = SC_AND; + pFilterContext->SetIsCaseSensitive(bIsCaseSensitive); +- if (IsXMLToken(sOperator, XML_EMPTY)) ++ if (IsXMLToken(sOperator, XML_TOKEN_EMPTY)) + aFilterField.SetQueryByEmpty(); + else if (IsXMLToken(sOperator, XML_NOEMPTY)) + aFilterField.SetQueryByNonEmpty(); +diff --git a/unoxml/source/dom/attr.cxx b/unoxml/source/dom/attr.cxx +index dd974d910edb..d8d873cdf055 100644 +--- a/unoxml/source/dom/attr.cxx ++++ b/unoxml/source/dom/attr.cxx +@@ -22,6 +22,7 @@ + #include + + #include ++#include + + #include + #include +diff --git a/unoxml/source/dom/document.cxx b/unoxml/source/dom/document.cxx +index cb48bd1635f8..0825fc2cd7ed 100644 +--- a/unoxml/source/dom/document.cxx ++++ b/unoxml/source/dom/document.cxx +@@ -41,6 +41,7 @@ + #include + + #include ++#include + + #include + +diff --git a/unoxml/source/dom/documentbuilder.cxx b/unoxml/source/dom/documentbuilder.cxx +index c3cd7663d2fc..3898d58e4be4 100644 +--- a/unoxml/source/dom/documentbuilder.cxx ++++ b/unoxml/source/dom/documentbuilder.cxx +@@ -22,6 +22,7 @@ + #include + + #include ++#include + + #include + +diff --git a/unoxml/source/dom/entity.cxx b/unoxml/source/dom/entity.cxx +index ccc8a0872499..98909dfe8f12 100644 +--- a/unoxml/source/dom/entity.cxx ++++ b/unoxml/source/dom/entity.cxx +@@ -22,6 +22,7 @@ + #include + + #include ++#include + + using namespace css::uno; + using namespace css::xml::dom; +diff --git a/unoxml/source/xpath/xpathapi.cxx b/unoxml/source/xpath/xpathapi.cxx +index a60083983882..c2b753783176 100644 +--- a/unoxml/source/xpath/xpathapi.cxx ++++ b/unoxml/source/xpath/xpathapi.cxx +@@ -26,6 +26,7 @@ + #include + #include + #include ++#include + + #include + +@@ -217,7 +218,7 @@ namespace XPath + return selectSingleNode(contextNode, expr); + } + +- static OUString make_error_message(xmlErrorPtr pError) ++ static OUString make_error_message(const xmlError* pError) + { + OUStringBuffer buf; + if (pError) { +@@ -259,7 +260,11 @@ namespace XPath + SAL_WARN("unoxml", "libxml2 error: " << str); + } + ++#if LIBXML_VERSION >= 21200 ++ static void structured_error_func(void *, const xmlError* error) ++#else + static void structured_error_func(void *, xmlErrorPtr error) ++#endif + { + SAL_WARN("unoxml", "libxml2 error: " << make_error_message(error)); + } +diff --git a/xmloff/source/core/xmltoken.cxx b/xmloff/source/core/xmltoken.cxx +index 6879f37db295..e11dc0d16111 100644 +--- a/xmloff/source/core/xmltoken.cxx ++++ b/xmloff/source/core/xmltoken.cxx +@@ -756,7 +756,7 @@ namespace xmloff::token { + TOKEN( "embedded-visible-area", XML_EMBEDDED_VISIBLE_AREA ), + TOKEN( "embossed", XML_EMBOSSED ), + TOKEN( "emissive-color", XML_EMISSIVE_COLOR ), +- TOKEN( "empty", XML_EMPTY ), ++ TOKEN( "empty", XML_TOKEN_EMPTY ), + TOKEN( "empty-line-refresh", XML_EMPTY_LINE_REFRESH ), + TOKEN( "enable-numbering", XML_ENABLE_NUMBERING ), + TOKEN( "enabled", XML_ENABLED ), +diff --git a/xmloff/source/style/PageMasterStyleMap.cxx b/xmloff/source/style/PageMasterStyleMap.cxx +index 7b2cab4751aa..6f631289672b 100644 +--- a/xmloff/source/style/PageMasterStyleMap.cxx ++++ b/xmloff/source/style/PageMasterStyleMap.cxx +@@ -157,7 +157,7 @@ const XMLPropertyMapEntry aXMLPageMasterStyleMap[] = + PLMAP( PROP_FootnoteLineRelativeWidth, XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_PERCENT8|MID_FLAG_SPECIAL_ITEM, CTF_PM_FTN_LINE_WIDTH ), + PLMAP( PROP_FootnoteLineTextDistance, XML_NAMESPACE_STYLE, XML__EMPTY, XML_TYPE_MEASURE|MID_FLAG_SPECIAL_ITEM, CTF_PM_FTN_LINE_DISTANCE ), + PLMAP( PROP_FootnoteLineWeight, XML_NAMESPACE_STYLE, XML_FOOTNOTE_SEP, XML_TYPE_MEASURE16|MID_FLAG_ELEMENT_ITEM, CTF_PM_FTN_LINE_WEIGHT ), +- PLMAP( PROP_FootnoteLineStyle, XML_NAMESPACE_STYLE, XML_EMPTY, XML_TYPE_STRING|MID_FLAG_ELEMENT_ITEM, CTF_PM_FTN_LINE_STYLE ), ++ PLMAP( PROP_FootnoteLineStyle, XML_NAMESPACE_STYLE, XML_TOKEN_EMPTY, XML_TYPE_STRING|MID_FLAG_ELEMENT_ITEM, CTF_PM_FTN_LINE_STYLE ), + PLMAP_EXT(PROP_GutterMargin, XML_NAMESPACE_LO_EXT, XML_MARGIN_GUTTER, XML_TYPE_MEASURE, CTF_PM_MARGINGUTTER), + + ////////////////////////////////////////////////////////////////////////// +diff --git a/xmlsecurity/inc/xmlsec/saxhelper.hxx b/xmlsecurity/inc/xmlsec/saxhelper.hxx +index a49ccef1894c..a5863ffd0e2a 100644 +--- a/xmlsecurity/inc/xmlsec/saxhelper.hxx ++++ b/xmlsecurity/inc/xmlsec/saxhelper.hxx +@@ -23,6 +23,7 @@ + + #include + ++#include + #include + + #include +-- +2.42.0 + +--- libreoffice-7.6.3.2/xmlsecurity/inc/xmlsec-wrapper.h~ 2023-11-16 17:06:03.000000000 -0600 ++++ libreoffice-7.6.3.2/xmlsecurity/inc/xmlsec-wrapper.h 2023-11-27 10:23:27.919378638 -0600 +@@ -28,6 +28,7 @@ + #define XMLSEC_NO_SIZE_T + #endif + ++#include + #include + #include + #include diff --git a/libreoffice.spec b/libreoffice.spec index fa6dfd4..e782bf2 100644 --- a/libreoffice.spec +++ b/libreoffice.spec @@ -1,5 +1,5 @@ # download path contains version without the last (fourth) digit -%global libo_version 7.6.3 +%global libo_version 7.6.4 # Should contain .alphaX / .betaX, if this is pre-release (actually # pre-RC) version. The pre-release string is part of tarball file names, # so we need a way to define it easily at one place. @@ -281,6 +281,7 @@ Patch3: 0001-default-to-sifr-for-gnome-light-mode.patch Patch4: 0001-Only-pass-I.-arguments-to-g-ir-scanner-by-using-pkg-.patch Patch5: limit-tests-giving-dubious-results-to-x86_64.patch Patch6: pdfdoc.patch +Patch7: 0001-tdf-158302-fix-build-against-system-libxml-2.12.patch # not upstreamed # fix FTB in ppc64le from sharkcz # https://lists.freedesktop.org/archives/libreoffice/2023-August/090870.html diff --git a/sources b/sources index 6a445fe..a654e76 100644 --- a/sources +++ b/sources @@ -1,9 +1,9 @@ -SHA512 (libreoffice-7.6.3.1.tar.xz) = 3ce56e96889be565438e4646a662711899bfa1b65a3c80e478a283481594dbd4428bee4193c3034f2422f297c4e3bc45e7af87d4d54172b0d5a2dcb143189a0d -SHA512 (libreoffice-7.6.3.1.tar.xz.asc) = 900dec2eaa586abfde851f968bd38444654b9ed33b4258ddc681b999e2755ca39df8dbc7350fafb11be0828811fc221fbf2cfefb0a207216506141d105655cd7 -SHA512 (libreoffice-help-7.6.3.1.tar.xz) = a364c458b2152fd0ebbfd607d11eb290dbbd9e4c6cb06f11a90d8563638c72365351404eac84c8d08626446cb4e11a6bd23876d94bca77c205b70c6564507c6d -SHA512 (libreoffice-help-7.6.3.1.tar.xz.asc) = b659db1ef3ea2d3b26132230271923b4fe9b707fe066932d02e80c004ea8d3b51472dd0ce7a346af712d691eab122f3650e7f1950180d6dd0ed0e8ed28b03da3 -SHA512 (libreoffice-translations-7.6.3.1.tar.xz) = 5b309b3b6f69628cd2af21a00834281f1deb037b14d8acbc9e8e7933eea56c9488692f5ec283a5086d9ab1487bdb663185e268fd2aa8e310a4db717c7d367c57 -SHA512 (libreoffice-translations-7.6.3.1.tar.xz.asc) = 95722443ba2985a0b58bc29b18a4fa9227d8c33c2e21341444a148833ce4737c127385a8e05f124a0d3bfbbf160ba8863094c9980a8dc904004f743c8604280e +SHA512 (libreoffice-7.6.4.1.tar.xz) = dbfc0cc8aa68e26c89da12156046ccf18201759c0e67757ce259a1150934ad7e2d914837701731fbe00aeab9a2f8c996619eb0892b7907de8012fdd7421da0f6 +SHA512 (libreoffice-7.6.4.1.tar.xz.asc) = 7107e6e790b49fd63482549f29af4354a96251f1a61cc94826ba32ddf81aebb10ce3716bf8c68775138cd506dc6bf6d35433a63b0df0ebcbb364ff41801384cc +SHA512 (libreoffice-help-7.6.4.1.tar.xz) = 0f72cd933ab7b897ec36f7b29bc5e568be289ea50ae0844e6083ff4957eab3cd313b39ffbda2e58f59de7962a05b371d8d61043d80323bb474e5436d23d3a859 +SHA512 (libreoffice-help-7.6.4.1.tar.xz.asc) = a5bae205c346790dbaa6063f4c2cd450c79918eb9849cdef5bc6a55f11d508fc24c36544f3b6fcbff5ed895b07cac82f26e21bee311b67ebc1886e628edb1a9a +SHA512 (libreoffice-translations-7.6.4.1.tar.xz) = 4e7108754f50e117566e16b86e98f1d5e808e2bd07a472be27da1ececdd79b039f731d528e844015ef95dba8dc03e0e771cdd3bd9b5d7df7a9dd4c20683ee4a7 +SHA512 (libreoffice-translations-7.6.4.1.tar.xz.asc) = dabd2c47777129c4fbd08d6b55b0f965051b61fe12f91a4230530dd0ce64c8a04d5b64a7bb222266fa33a2856d4df3e12da5533b487aec92692c2b58080a2f90 SHA512 (17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip) = a231eba4a1baca11766ef292ab45e302081115477fe23018652882923308856835cf8c9ecba61a5cf22543474ccef3136965d794a90c9e4e9e6dcc21f9af6e1a SHA512 (185d60944ea767075d27247c3162b3bc-unowinreg.dll) = 854b8ae29b57b40ba6bb6ff66e723a0e8dad053fcc2849f0ad763cd8a31352f4aeba9636fd4e3f0f2a0cd985a6f49b4261b9ace68d6be821ed42cfa7a73eb13c SHA512 (a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip) = 2d3835f7ac356805025cafedcad97faa48d0f5da386e6ac7b7451030059df8e2fdb0861ade07a576ebf9fb5b88a973585ab0437944b06aac9289d6898ba8586a