From 1eb3a8e62952825cb4436af9035c15c818e7db81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?= Date: Mon, 15 Sep 2025 12:07:00 +0700 Subject: [PATCH] calligra: update to 4.0.1. --- common/shlibs | 31 -- srcpkgs/calligra/files/gemini-webkit.patch | 56 --- srcpkgs/calligra/files/no-webengine.patch | 86 ++++ .../patches/0001-Fix-some-more-warnings.patch | 440 ------------------ .../0002-Make-show-hidden-row-s-work.patch | 29 -- srcpkgs/calligra/patches/32bit.patch | 54 +++ srcpkgs/calligra/patches/c++20.patch | 16 - srcpkgs/calligra/patches/cmake-4.patch | 12 + srcpkgs/calligra/patches/gemini.patch | 15 + .../patches/macro-optional-find-package.patch | 6 +- srcpkgs/calligra/patches/openexr3.patch | 94 ---- .../patches/poppler-22.03.0-fix.patch | 70 --- .../patches/poppler-22.04.0-fix.patch | 91 ---- ...-compile-with-poppler-2405-or-higher.patch | 59 --- srcpkgs/calligra/template | 85 ++-- 15 files changed, 211 insertions(+), 933 deletions(-) delete mode 100644 srcpkgs/calligra/files/gemini-webkit.patch create mode 100644 srcpkgs/calligra/files/no-webengine.patch delete mode 100644 srcpkgs/calligra/patches/0001-Fix-some-more-warnings.patch delete mode 100644 srcpkgs/calligra/patches/0002-Make-show-hidden-row-s-work.patch create mode 100644 srcpkgs/calligra/patches/32bit.patch delete mode 100644 srcpkgs/calligra/patches/c++20.patch create mode 100644 srcpkgs/calligra/patches/cmake-4.patch create mode 100644 srcpkgs/calligra/patches/gemini.patch delete mode 100644 srcpkgs/calligra/patches/openexr3.patch delete mode 100644 srcpkgs/calligra/patches/poppler-22.03.0-fix.patch delete mode 100644 srcpkgs/calligra/patches/poppler-22.04.0-fix.patch delete mode 100644 srcpkgs/calligra/patches/upstream_Fix-compile-with-poppler-2405-or-higher.patch diff --git a/common/shlibs b/common/shlibs index 2a66146420218a..3916904a4daa04 100644 --- a/common/shlibs +++ b/common/shlibs @@ -2531,37 +2531,6 @@ libchardet.so.1 libchardet-1.0.4_1 libcollectdclient.so.1 libcollectdclient-5.12.0_3 libpinktrace_1.0.so.100 pinktrace-1.0.0_1 libsyd_1.0.so.0 sydbox-1.0.2_1 -libcalligrasheetsodf.so.17 calligra-sheets-3.2.0_1 -libkokross.so.17 calligra-libs-3.2.1_3 -libkotext.so.17 calligra-libs-3.2.0_1 -libkoodf.so.17 calligra-libs-3.2.0_1 -libkarbonui.so.17 calligra-karbon-3.2.0_1 -libkomain.so.17 calligra-libs-3.2.0_1 -libkowidgets.so.17 calligra-libs-3.2.0_1 -libflake.so.17 calligra-libs-3.2.0_1 -libcalligrasheetscommon.so.17 calligra-sheets-3.2.0_1 -libkovectorimage.so.17 calligra-libs-3.2.0_1 -libwordsprivate.so.17 calligra-words-3.2.0_1 -libkotextlayout.so.17 calligra-libs-3.2.0_1 -libkowidgetutils.so.17 calligra-libs-3.2.0_1 -libkundo2.so.17 calligra-libs-3.2.0_1 -libpigmentcms.so.17 calligra-libs-3.2.0_1 -libbasicflakes.so.17 calligra-libs-3.2.0_1 -libkoplugin.so.17 calligra-libs-3.2.0_1 -libkoversion.so.17 calligra-libs-3.2.0_1 -libkopageapp.so.17 calligra-libs-3.2.0_1 -libkostore.so.17 calligra-libs-3.2.0_1 -libkomsooxml.so.17 calligra-filters-3.2.0_1 -libkoodf2.so.17 calligra-filters-3.2.0_1 -libkowv2.so.9 calligra-filters-2.9.7_1 -libRtfReader.so.17 calligra-filters-3.2.0_1 -libkoodfreader.so.17 calligra-filters-3.2.0_1 -libkoformula.so.17 calligra-plugins-3.2.0_1 -libkarboncommon.so.17 calligra-karbon-3.2.0_1 -libcalligrastageprivate.so.17 calligra-stage-3.2.0_1 -libkookularGenerator_odt.so.17 calligra-extras-3.2.0_1 -libkookularGenerator_odp.so.17 calligra-extras-3.2.0_1 -libgemini.so.17 calligra-gemini-3.2.0_1 libarpack.so.2 arpack-ng-3.3.0_2 libfts.so.0 musl-fts-1.2_2 libobstack.so.1 musl-obstack-1.2.1_1 diff --git a/srcpkgs/calligra/files/gemini-webkit.patch b/srcpkgs/calligra/files/gemini-webkit.patch deleted file mode 100644 index 2459521d76fe52..00000000000000 --- a/srcpkgs/calligra/files/gemini-webkit.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 41ec43e4a5c2f8a0b5cfc025d2a1159b2d0dfb2d Mon Sep 17 00:00:00 2001 -From: q66 -Date: Mon, 20 Jan 2020 18:53:06 +0100 -Subject: [PATCH] gemini: restore WebKit support for dropbox - -Reverts upstream 23e6060411e4eac69d79458515a27db6963e51cd. - -This allows Gemini to be used on systems without support for -Qt5 WebEngine. ---- - .../qml/welcomepages/cloud/dropbox/DropboxWebView.qml | 10 +++++----- - gemini/qml/welcomepages/cloud/dropbox/LoginPage.qml | 1 + - 2 files changed, 6 insertions(+), 5 deletions(-) - -diff --git a/gemini/qml/welcomepages/cloud/dropbox/DropboxWebView.qml b/gemini/qml/welcomepages/cloud/dropbox/DropboxWebView.qml -index 9f4bb7a..3a21379 100644 ---- a/gemini/qml/welcomepages/cloud/dropbox/DropboxWebView.qml -+++ b/gemini/qml/welcomepages/cloud/dropbox/DropboxWebView.qml -@@ -18,18 +18,18 @@ - - import QtQuick 2.11 - import QtQuick.Controls 2.5 as QtControls --import QtWebEngine 1.5 -+import QtWebKit 3.0 - --WebEngineView { -+WebView { - id: webView - anchors.fill: parent - - // experimental.userAgent: "Mozilla/5.0 (Linux; U; like Android 4.0.3; ko-kr; Jolla Build/Alpha) AppleWebkit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30" - onLoadingChanged: { -- if(loadRequest.status == WebEngineView.LoadSucceededStatus) { -+ if(status == WebView.LoadSucceededStatus) { - tryingText.visible = false; -- if(loadRequest.url.toString().length === 48) { controllerMIT.oauth_v1_access_token() } -- // if(loadRequest.url.toString().length === 140) experimental.test.touchTap(webView, 100, 150) -+ if(url.toString().length === 48) { controllerMIT.oauth_v1_access_token() } -+ // if(url.toString().length === 140) experimental.test.touchTap(webView, 100, 150) - } - } - -diff --git a/gemini/qml/welcomepages/cloud/dropbox/LoginPage.qml b/gemini/qml/welcomepages/cloud/dropbox/LoginPage.qml -index 6a02f7b..6680beb 100644 ---- a/gemini/qml/welcomepages/cloud/dropbox/LoginPage.qml -+++ b/gemini/qml/welcomepages/cloud/dropbox/LoginPage.qml -@@ -18,6 +18,7 @@ - - import QtQuick 2.11 - import org.kde.kirigami 2.7 as Kirigami -+import QtWebKit 3.0 - import "../../../components" - - Kirigami.Page { --- -2.24.0 diff --git a/srcpkgs/calligra/files/no-webengine.patch b/srcpkgs/calligra/files/no-webengine.patch new file mode 100644 index 00000000000000..0333ff5fc2905a --- /dev/null +++ b/srcpkgs/calligra/files/no-webengine.patch @@ -0,0 +1,86 @@ + +--- a/gemini/qml/welcomepages/WelcomePageCloud.qml ++++ b/gemini/qml/welcomepages/WelcomePageCloud.qml +@@ -8,7 +8,7 @@ import QtQuick 2.0 + import QtQuick.Layouts 1.11 as QtLayouts + import QtQuick.Controls 2.2 as QtControls + import org.kde.kirigami 2.7 as Kirigami +-import Calligra.Gemini.Dropbox 1.0 ++// import Calligra.Gemini.Dropbox 1.0 + import org.calligra 1.0 + import "../components" + import "cloud" +@@ -37,18 +37,9 @@ Kirigami.ScrollablePage { + Connections { + target: controllerMIT; + onNeedAuthenticateChanged: { +- if(controllerMIT.needAuthenticate) { +- cloudAccounts.removeAccountByName("Dropbox"); +- } +- else { +- cloudAccounts.addAccount("Dropbox", "DropBox", "accountsPageDropbox", 0, true); +- } + } + } + Component.onCompleted: { +- if(!controllerMIT.needAuthenticate) { +- cloudAccounts.addAccount("Dropbox", "DropBox", "accountsPageDropbox", 0, true); +- } + } + ListView { + id: accountsView; +@@ -76,7 +67,7 @@ Kirigami.ScrollablePage { + spacing: Kirigami.Units.largeSpacing; + Repeater { + model: ListModel { +- ListElement { text: "Dropbox"; accountType: "DropBox"; serviceName: "dropbox"; } ++ // ListElement { text: "Dropbox"; accountType: "DropBox"; serviceName: "dropbox"; } + ListElement { text: "WebDav"; accountType: "WebDav"; serviceName: ""; } + //ListElement { text: "ownCloud"; accountType: "WebDav"; serviceName: "ownCloud"; } + ListElement { text: "Git"; accountType: "Git"; serviceName: ""; } +@@ -178,25 +169,25 @@ Kirigami.ScrollablePage { + + function addComponentFromName(name) { + var elements = { +- "DropBox": addDropBox, ++ // "DropBox": addDropBox, + "WebDav": addWebDav, + "Git": addGit + }; + return elements[name]; + } +- Component { id: addDropBox; AddDropbox { } } ++ // Component { id: addDropBox; AddDropbox { } } + Component { id: addWebDav; AddWebdav { } } + Component { id: addGit; AddGit { } } + + function editComponentFromName(name) { + var elements = { +- "DropBox": editDropBox, ++ // "DropBox": editDropBox, + "WebDav": editWebDav, + "Git": editGit + }; + return elements[name]; + } +- Component { id: editDropBox; AddDropbox { } } ++ // Component { id: editDropBox; AddDropbox { } } + Component { id: editWebDav; EditDetailsBase { } } + Component { id: editGit; EditGit { } } + +@@ -204,13 +195,13 @@ Kirigami.ScrollablePage { + + function elementFromName(name) { + var elements = { +- "accountsPageDropbox": accountsPageDropbox, ++ // "accountsPageDropbox": accountsPageDropbox, + "accountsPageWebdav": accountsPageWebdav, + "accountsPageGit": accountsPageGit + }; + return elements[name]; + } +- Component { id: accountsPageDropbox; Dropbox { } } ++ // Component { id: accountsPageDropbox; Dropbox { } } + Component { id: accountsPageWebdav; Webdav { } } + Component { id: accountsPageGit; Git { } } + } diff --git a/srcpkgs/calligra/patches/0001-Fix-some-more-warnings.patch b/srcpkgs/calligra/patches/0001-Fix-some-more-warnings.patch deleted file mode 100644 index 6cc132925b1645..00000000000000 --- a/srcpkgs/calligra/patches/0001-Fix-some-more-warnings.patch +++ /dev/null @@ -1,440 +0,0 @@ -From 068cd9aec11052733e393976142516d2190e4564 Mon Sep 17 00:00:00 2001 -From: Pierre Ducroquet -Date: Sun, 28 Feb 2021 23:23:02 +0100 -Subject: [PATCH] Fix some more warnings - ---- - filters/libmsooxml/MsooXmlDiagramReader_p.cpp | 1 + - filters/sheets/csv/csvimport.cc | 2 +- - filters/sheets/excel/sidewinder/excel.cpp | 1 + - filters/sheets/excel/sidewinder/formulas.cpp | 2 +- - filters/sheets/gnumeric/gnumericexport.cc | 5 ++--- - filters/sheets/html/htmlexport.cc | 2 -- - filters/sheets/latex/export/latexexport.cc | 1 - - filters/sheets/latex/export/table.cc | 1 + - filters/sheets/xlsx/XlsxXmlWorksheetReader.cpp | 1 - - filters/stage/pptx/PptxXmlDocumentReader.cpp | 2 +- - filters/words/msword-odf/texthandler.cpp | 2 ++ - filters/words/msword-odf/wv2/src/parser9x.cpp | 4 +++- - filters/words/msword-odf/wv2/src/styles.cpp | 4 +--- - filters/words/msword-odf/wv2/src/styles.h | 11 ++++++++--- - gemini/lib/GeminiMainWindow.cpp | 2 ++ - libs/pageapp/KoPAOdfPageSaveHelper.cpp | 2 +- - plugins/spacenavigator/SpaceNavigatorDevice.h | 6 ++---- - plugins/spacenavigator/SpaceNavigatorEvent.h | 2 +- - plugins/spacenavigator/SpaceNavigatorPollingThread.h | 3 +-- - plugins/vectorshape/VectorShape.cpp | 1 + - sheets/functions/datetime.cpp | 1 + - sheets/part/Digest.cpp | 8 ++++---- - sheets/shape/TableToolFactory.h | 2 +- - sheets/tests/TestSort.cpp | 4 ++-- - 24 files changed, 38 insertions(+), 32 deletions(-) - -diff --git a/filters/libmsooxml/MsooXmlDiagramReader_p.cpp b/filters/libmsooxml/MsooXmlDiagramReader_p.cpp -index 14b08531262..14fc6ab9a71 100644 ---- a/filters/libmsooxml/MsooXmlDiagramReader_p.cpp -+++ b/filters/libmsooxml/MsooXmlDiagramReader_p.cpp -@@ -872,6 +872,7 @@ void LayoutNodeAtom::finishBuild(Context* context) { - case AlgorithmAtom::UnknownAlg: - warnMsooXml << "Layout with name=" << m_name << "defines an unknown algorithm."; - // fall through and use the composite-algorithm -+ // fall through - case AlgorithmAtom::CompositeAlg: m_algorithmImpl = new CompositeAlgorithm; break; - case AlgorithmAtom::ConnectorAlg: m_algorithmImpl = new ConnectorAlgorithm; break; - case AlgorithmAtom::CycleAlg: m_algorithmImpl = new CycleAlgorithm; break; -diff --git a/filters/sheets/csv/csvimport.cc b/filters/sheets/csv/csvimport.cc -index 89fb7162e00..1008d186f18 100644 ---- a/filters/sheets/csv/csvimport.cc -+++ b/filters/sheets/csv/csvimport.cc -@@ -97,8 +97,8 @@ KoFilter::ConversionStatus CSVFilter::convert(const QByteArray& from, const QByt - return KoFilter::FileNotFound; - } - -- QString csv_delimiter; - // ###### FIXME: disabled for now -+ //QString csv_delimiter; - //if (!config.isNull()) - // csv_delimiter = config[0]; - -diff --git a/filters/sheets/excel/sidewinder/excel.cpp b/filters/sheets/excel/sidewinder/excel.cpp -index ab592225ca6..7fa5633d433 100644 ---- a/filters/sheets/excel/sidewinder/excel.cpp -+++ b/filters/sheets/excel/sidewinder/excel.cpp -@@ -2449,6 +2449,7 @@ bool ExcelReader::load(Workbook* workbook, const char* filename) - } else { - bytes_read = combObjStream->read( buffer, markerOrLength ); - QString ansiString = readByteString(buffer, markerOrLength); -+ Q_UNUSED(ansiString); - //TODO... - //printf( "markerOrLength=%i ansiString=%s\n",markerOrLength,ansiString.ascii() ); - } -diff --git a/filters/sheets/excel/sidewinder/formulas.cpp b/filters/sheets/excel/sidewinder/formulas.cpp -index 62747469a49..0132d39e024 100644 ---- a/filters/sheets/excel/sidewinder/formulas.cpp -+++ b/filters/sheets/excel/sidewinder/formulas.cpp -@@ -1513,7 +1513,7 @@ static void mergeTokens(UStringStack* stack, unsigned count, const QString &merg - if (!stack) return; - if (stack->size() < count) return; - -- QString s1, s2; -+ QString s1; - - while (count) { - count--; -diff --git a/filters/sheets/gnumeric/gnumericexport.cc b/filters/sheets/gnumeric/gnumericexport.cc -index 1256c68bc74..2468548edb3 100644 ---- a/filters/sheets/gnumeric/gnumericexport.cc -+++ b/filters/sheets/gnumeric/gnumericexport.cc -@@ -1293,15 +1293,13 @@ KoFilter::ConversionStatus GNUMERICExport::convert(const QByteArray& from, const - i = 0; - } - -- QString line; - for (int currentcolumn = 1; currentcolumn <= iMaxColumn; currentcolumn++) { - QDomElement cell_contents; - Cell cell(table, currentcolumn, currentrow); - -- QString text, style; -+ QString text; - QDomDocument domLink; - QDomElement domRoot; -- QDomNode domNode; - QDomNodeList childNodes; - - if (!cell.isDefault() && !cell.isEmpty()) { -@@ -1342,6 +1340,7 @@ KoFilter::ConversionStatus GNUMERICExport::convert(const QByteArray& from, const - text = domNode.toElement().text(); - - while (!domNode.isNull()) { -+ QString style; - style = domNode.toElement().tagName(); - - if (style == "b") -diff --git a/filters/sheets/html/htmlexport.cc b/filters/sheets/html/htmlexport.cc -index 2d116e0608c..bf41a6f743e 100644 ---- a/filters/sheets/html/htmlexport.cc -+++ b/filters/sheets/html/htmlexport.cc -@@ -242,7 +242,6 @@ void HTMLExport::convertSheet(Sheet *sheet, QString &str, int iMaxUsedRow, int i - i = 0; - } - -- QString separators; - QString line; - unsigned int nonempty_cells = 0; - -@@ -435,7 +434,6 @@ void HTMLExport::detectFilledCells(Sheet *sheet, int &rows, int &columns) - int iUsedColumn = 0; - for (int currentcolumn = 1 ; currentcolumn <= iMaxColumn ; currentcolumn++) { - cell = Cell(sheet, currentcolumn, currentrow); -- QString text; - if (!cell.isDefault() && !cell.isEmpty()) { - iUsedColumn = currentcolumn; - } -diff --git a/filters/sheets/latex/export/latexexport.cc b/filters/sheets/latex/export/latexexport.cc -index 8d0698a3420..4f8caf235d9 100644 ---- a/filters/sheets/latex/export/latexexport.cc -+++ b/filters/sheets/latex/export/latexexport.cc -@@ -38,7 +38,6 @@ LATEXExport::LATEXExport(QObject* parent, const QVariantList&) : - - KoFilter::ConversionStatus LATEXExport::convert(const QByteArray& from, const QByteArray& to) - { -- QString config; - - if (to != "text/x-tex" || from != "application/x-kspread") - return KoFilter::NotImplemented; -diff --git a/filters/sheets/latex/export/table.cc b/filters/sheets/latex/export/table.cc -index 8d8b6701a39..e58827dfbc7 100644 ---- a/filters/sheets/latex/export/table.cc -+++ b/filters/sheets/latex/export/table.cc -@@ -118,6 +118,7 @@ void Table::analyzePaper(const QDomNode node) - - /* borders */ - QDomNode border = getChild(node, "borders"); -+ Q_UNUSED(border); - setBorderRight(getAttr(node, "right").toLong()); - setBorderLeft(getAttr(node, "left").toLong()); - setBorderBottom(getAttr(node, "bottom").toLong()); -diff --git a/filters/sheets/xlsx/XlsxXmlWorksheetReader.cpp b/filters/sheets/xlsx/XlsxXmlWorksheetReader.cpp -index 782a5914729..eda8ffc6b47 100644 ---- a/filters/sheets/xlsx/XlsxXmlWorksheetReader.cpp -+++ b/filters/sheets/xlsx/XlsxXmlWorksheetReader.cpp -@@ -872,7 +872,6 @@ KoFilter::ConversionStatus XlsxXmlWorksheetReader::read_conditionalFormatting() - while (index < m_conditionalIndices.size()) { - QString conditionalArea; - Condition examinedCondition = m_conditionalIndices.at(index); -- QString sqrefOriginal = sqref; - int areaIndex = 0; - Condition previousCond; - -diff --git a/filters/stage/pptx/PptxXmlDocumentReader.cpp b/filters/stage/pptx/PptxXmlDocumentReader.cpp -index 4cf86aea8c8..11b5ad266b9 100644 ---- a/filters/stage/pptx/PptxXmlDocumentReader.cpp -+++ b/filters/stage/pptx/PptxXmlDocumentReader.cpp -@@ -316,7 +316,7 @@ KoFilter::ConversionStatus PptxXmlDocumentReader::read_sldId() - - QString slideMasterPath, slideMasterFile; - MSOOXML::Utils::splitPathAndFile(m_context->relationships->targetForType(slidePath, slideFile, QLatin1String(MSOOXML::Schemas::officeDocument::relationships) + "/slideLayout"), &slideMasterPath, &slideMasterFile); -- const QString slideMasterPathAndFile = m_context->relationships->targetForType(slideMasterPath, slideMasterFile, QLatin1String(MSOOXML::Schemas::officeDocument::relationships) + "/slideMaster"); -+ // const QString slideMasterPathAndFile = m_context->relationships->targetForType(slideMasterPath, slideMasterFile, QLatin1String(MSOOXML::Schemas::officeDocument::relationships) + "/slideMaster"); - - // Delay the reading of a tableStyle until we find a table as we need the - // clrMap from the master slide -diff --git a/filters/words/msword-odf/texthandler.cpp b/filters/words/msword-odf/texthandler.cpp -index e167d86e028..89ef678961a 100644 ---- a/filters/words/msword-odf/texthandler.cpp -+++ b/filters/words/msword-odf/texthandler.cpp -@@ -408,6 +408,7 @@ void WordsTextHandler::footnoteFound(wvWare::FootnoteData data, - } - case msonfcUCLetter: - letter = 'A'; -+ // fall through - case msonfcLCLetter: - { - while (noteNumber / 25 > 0) { -@@ -1064,6 +1065,7 @@ void WordsTextHandler::fieldStart(const wvWare::FLD* fld, wvWare::SharedPtrm_type = UNSUPPORTED; -diff --git a/filters/words/msword-odf/wv2/src/parser9x.cpp b/filters/words/msword-odf/wv2/src/parser9x.cpp -index 9a6d1606ce9..e5d7d14691c 100644 ---- a/filters/words/msword-odf/wv2/src/parser9x.cpp -+++ b/filters/words/msword-odf/wv2/src/parser9x.cpp -@@ -581,7 +581,8 @@ void Parser9x::processPiece( String* string, U32 fc, U32 limit, const Position& - // same ASCII code as TTP_MARK (0x0007), NOTE: table depth == 1 - case CELL_MARK: - m_cellMarkFound = true; -- // Fall-through intended. A row/cell end is also a paragraph end. -+ // A row/cell end is also a paragraph end. -+ // fall through - case PARAGRAPH_MARK: - { - // No "index - start + 1" here, as we don't want to copy the -@@ -1064,6 +1065,7 @@ void Parser9x::emitSpecialCharacter( UChar character, U32 globalCP, SharedPtrtell(); // address where the STD starts -@@ -938,7 +936,7 @@ void Style::mergeUpechpx( const Style* parentStyle, WordVersion version ) - } - - --StyleSheet::StyleSheet( OLEStreamReader* tableStream, U32 fcStshf, U32 lcbStshf ) throw(InvalidFormatException) -+StyleSheet::StyleSheet( OLEStreamReader* tableStream, U32 fcStshf, U32 lcbStshf ) - : m_udsNum(0) - { - WordVersion version = Word8; -diff --git a/filters/words/msword-odf/wv2/src/styles.h b/filters/words/msword-odf/wv2/src/styles.h -index ba02def6845..41c8278dd21 100644 ---- a/filters/words/msword-odf/wv2/src/styles.h -+++ b/filters/words/msword-odf/wv2/src/styles.h -@@ -58,8 +58,9 @@ struct STD - STD(); - /** - * Simply calls read(...) -+ * @throw InvalidFormatException - */ -- STD( U16 stdfSize, U16 totalSize, OLEStreamReader* stream, bool preservePos = false ) throw(InvalidFormatException); -+ STD( U16 stdfSize, U16 totalSize, OLEStreamReader* stream, bool preservePos = false ); - /** - * Attention: This struct allocates memory on the heap - */ -@@ -74,8 +75,9 @@ struct STD - * false the state of stream will be changed! - * - * @return true - success, false - failed -+ * @throw InvalidFormatException - */ -- bool read( const U16 cbStd, const U16 stdfSize, OLEStreamReader* stream, bool preservePos = false ) throw(InvalidFormatException); -+ bool read( const U16 cbStd, const U16 stdfSize, OLEStreamReader* stream, bool preservePos = false ); - - /** - * Same as reading :) -@@ -365,7 +367,10 @@ class WV2_EXPORT Style - class WV2_EXPORT StyleSheet - { - public: -- StyleSheet( OLEStreamReader* tableStream, U32 fcStshf, U32 lcbStshf ) throw(InvalidFormatException); -+ /** -+ * @throw InvalidFormatException -+ */ -+ StyleSheet( OLEStreamReader* tableStream, U32 fcStshf, U32 lcbStshf ); - ~StyleSheet(); - - /** -diff --git a/gemini/lib/GeminiMainWindow.cpp b/gemini/lib/GeminiMainWindow.cpp -index 3d05f6461e0..eb5f120c0f7 100644 ---- a/gemini/lib/GeminiMainWindow.cpp -+++ b/gemini/lib/GeminiMainWindow.cpp -@@ -136,8 +136,10 @@ void GeminiMainWindow::setFullScreen(bool newState) - } - - -+ - void GeminiMainWindow::changeState(GeminiMainWindow::GeminiState newState, bool lockNewState) - { -+ Q_UNUSED(lockNewState); - d->syncObject = new GeminiModeSynchronisationObject; - - if(centralWidget()) { -diff --git a/libs/pageapp/KoPAOdfPageSaveHelper.cpp b/libs/pageapp/KoPAOdfPageSaveHelper.cpp -index 92c6dfd4cb4..068501c8af1 100644 ---- a/libs/pageapp/KoPAOdfPageSaveHelper.cpp -+++ b/libs/pageapp/KoPAOdfPageSaveHelper.cpp -@@ -49,7 +49,7 @@ KoPAOdfPageSaveHelper::KoPAOdfPageSaveHelper( KoPADocument * doc, QList( page ); - masterPages.insert( p->masterPage() ); - } -- m_masterPages = masterPages.toList(); -+ m_masterPages = masterPages.values(); - } - } - -diff --git a/plugins/spacenavigator/SpaceNavigatorDevice.h b/plugins/spacenavigator/SpaceNavigatorDevice.h -index b9056ac98c1..ecd696e415f 100644 ---- a/plugins/spacenavigator/SpaceNavigatorDevice.h -+++ b/plugins/spacenavigator/SpaceNavigatorDevice.h -@@ -31,10 +31,8 @@ class SpaceNavigatorDevice : public KoInputDeviceHandler - explicit SpaceNavigatorDevice(QObject *parent); - virtual ~SpaceNavigatorDevice(); - -- /// reimplemented from KoInputDeviceHandler -- virtual bool start(); -- /// reimplemented from KoInputDeviceHandler -- virtual bool stop(); -+ virtual bool start() override; -+ virtual bool stop() override; - private Q_SLOTS: - void slotMoveEvent( int x, int y, int z, int rx, int ry, int rz, Qt::MouseButtons ); - void slotButtonEvent( int x, int y, int z, int rx, int ry, int rz, Qt::MouseButtons, Qt::MouseButton, int type ); -diff --git a/plugins/spacenavigator/SpaceNavigatorEvent.h b/plugins/spacenavigator/SpaceNavigatorEvent.h -index 73751ec88ff..76ee8e2f880 100644 ---- a/plugins/spacenavigator/SpaceNavigatorEvent.h -+++ b/plugins/spacenavigator/SpaceNavigatorEvent.h -@@ -33,7 +33,7 @@ class SpaceNavigatorEvent : public KoInputDeviceHandlerEvent - void setPosition( int x, int y, int z ); - void setRotation( int rx, int ry, int rz ); - -- virtual KoPointerEvent * pointerEvent(); -+ virtual KoPointerEvent * pointerEvent() override; - - private: - int m_x, m_y, m_z; -diff --git a/plugins/spacenavigator/SpaceNavigatorPollingThread.h b/plugins/spacenavigator/SpaceNavigatorPollingThread.h -index 62c4de8ab73..67d59177021 100644 ---- a/plugins/spacenavigator/SpaceNavigatorPollingThread.h -+++ b/plugins/spacenavigator/SpaceNavigatorPollingThread.h -@@ -39,8 +39,7 @@ class SpaceNavigatorPollingThread : public QThread - - protected: - -- /// reimplemented from QThread -- virtual void run(); -+ virtual void run() override; - - private: - bool m_stopped; -diff --git a/plugins/vectorshape/VectorShape.cpp b/plugins/vectorshape/VectorShape.cpp -index a25ab3fc561..9acbd251c94 100644 ---- a/plugins/vectorshape/VectorShape.cpp -+++ b/plugins/vectorshape/VectorShape.cpp -@@ -294,6 +294,7 @@ void VectorShape::saveOdf(KoShapeSavingContext & context) const - break; - case VectorTypeSvg: - mimeType = "image/svg+xml"; -+ break; - default: - // FIXME: What here? - mimeType = "application/x-what"; -diff --git a/sheets/functions/datetime.cpp b/sheets/functions/datetime.cpp -index 9f59fe2cf75..6157b0996c1 100644 ---- a/sheets/functions/datetime.cpp -+++ b/sheets/functions/datetime.cpp -@@ -597,6 +597,7 @@ Value func_currentDate(valVector, ValueCalc * calc, FuncExtra *) - // Function: CURRENTTIME - Value func_currentTime(valVector, ValueCalc * calc, FuncExtra *) - { -+ Q_UNUSED(calc); - return Value(QTime::currentTime()); - } - -diff --git a/sheets/part/Digest.cpp b/sheets/part/Digest.cpp -index 8cd972db989..e9246ce6e7d 100644 ---- a/sheets/part/Digest.cpp -+++ b/sheets/part/Digest.cpp -@@ -596,10 +596,10 @@ static void __rtl_digest_endSHA(DigestContextSHA *ctx) - } - - switch (ctx->m_nDatLen & 0x03) { -- case 0: X[i] = ((sal_uInt32)(*(p++))) << 0L; -- case 1: X[i] |= ((sal_uInt32)(*(p++))) << 8L; -- case 2: X[i] |= ((sal_uInt32)(*(p++))) << 16L; -- case 3: X[i] |= ((sal_uInt32)(*(p++))) << 24L; -+ case 0: X[i] = ((sal_uInt32)(*(p++))) << 0L; /* fall through */ -+ case 1: X[i] |= ((sal_uInt32)(*(p++))) << 8L; /* fall through */ -+ case 2: X[i] |= ((sal_uInt32)(*(p++))) << 16L; /* fall through */ -+ case 3: X[i] |= ((sal_uInt32)(*(p++))) << 24L; /* fall through */ - } - - __rtl_digest_swapLong(X, i + 1); -diff --git a/sheets/shape/TableToolFactory.h b/sheets/shape/TableToolFactory.h -index 679bfe14b8e..9412d8ffdc5 100644 ---- a/sheets/shape/TableToolFactory.h -+++ b/sheets/shape/TableToolFactory.h -@@ -34,7 +34,7 @@ class TableToolFactory : public KoToolFactoryBase - TableToolFactory(); - ~TableToolFactory(); - -- KoToolBase* createTool(KoCanvasBase* canvas); -+ KoToolBase* createTool(KoCanvasBase* canvas) override; - }; - - } // namespace Sheets -diff --git a/sheets/tests/TestSort.cpp b/sheets/tests/TestSort.cpp -index b3f1e35169d..6354d79abc5 100644 ---- a/sheets/tests/TestSort.cpp -+++ b/sheets/tests/TestSort.cpp -@@ -68,7 +68,7 @@ void TestSort::AscendingOrder() - command->setSheet(sheet); - - // Parameters. -- command->setSortRows(Qt::Vertical); -+ command->setSortRows(true); - command->setSkipFirst(false); - command->setCopyFormat(false); - -@@ -121,7 +121,7 @@ void TestSort::DescendingOrder() - command->setSheet(sheet); - - // Parameters. -- command->setSortRows(Qt::Vertical); -+ command->setSortRows(true); - command->setSkipFirst(false); - command->setCopyFormat(false); - diff --git a/srcpkgs/calligra/patches/0002-Make-show-hidden-row-s-work.patch b/srcpkgs/calligra/patches/0002-Make-show-hidden-row-s-work.patch deleted file mode 100644 index d4b082b9a0f1f0..00000000000000 --- a/srcpkgs/calligra/patches/0002-Make-show-hidden-row-s-work.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 22e02998dec8af15a25b7e8e3d53c174810cc3be Mon Sep 17 00:00:00 2001 -From: Dag Andersen -Date: Thu, 11 Jun 2020 10:43:38 +0200 -Subject: [PATCH] Make show hidden row(s) work - -Check for hidden rows was inverted to check for shown rows, -hence hidden rows would never be unhidden. - -BUG:338816 -BUG:354236 -FIXED-IN:3.2.2 -(cherry picked from commit 28920c50e6300d643477f256aba91c8c51836682) ---- - sheets/commands/RowColumnManipulators.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/sheets/commands/RowColumnManipulators.cpp b/sheets/commands/RowColumnManipulators.cpp -index 95282d6e31b..25e8c454e27 100644 ---- a/sheets/commands/RowColumnManipulators.cpp -+++ b/sheets/commands/RowColumnManipulators.cpp -@@ -192,7 +192,7 @@ bool HideShowManipulator::preProcessing() - } - } - for (int row = range.top(); row <= range.bottom(); ++row) { -- if (!m_sheet->rowFormats()->isHidden(row)) { -+ if (m_sheet->rowFormats()->isHidden(row)) { - region.add(QRect(1, row, KS_colMax, 1)); - } - } diff --git a/srcpkgs/calligra/patches/32bit.patch b/srcpkgs/calligra/patches/32bit.patch new file mode 100644 index 00000000000000..9b2be405db8fa8 --- /dev/null +++ b/srcpkgs/calligra/patches/32bit.patch @@ -0,0 +1,54 @@ +--- a/sheets/engine/Value.cpp ++++ b/sheets/engine/Value.cpp +@@ -268,11 +268,11 @@ Value::Value(bool b) + } + + // create an integer value +-Value::Value(int64_t i) ++Value::Value(long long i) + : d(Private::null()) + { + d->type = Integer; +- d->i = i; ++ d->i = static_cast(i); + d->format = fmt_Number; + } + +@@ -285,16 +285,14 @@ Value::Value(int i) + d->format = fmt_Number; + } + +-#ifndef Q_OS_WIN + // create an integer value +-Value::Value(qsizetype i) ++Value::Value(long i) + : d(Private::null()) + { + d->type = Integer; +- d->i = i; ++ d->i = static_cast(i); + d->format = fmt_Number; + } +-#endif + + // create a floating-point value + Value::Value(double f) +--- a/sheets/engine/Value.h ++++ b/sheets/engine/Value.h +@@ -87,14 +87,12 @@ public: + /** + * Creates an integer value. + */ +- explicit Value(int64_t i); ++ explicit Value(long long i); + +-#ifndef Q_OS_WIN + /** + * Creates an integer value. + */ +- explicit Value(qsizetype i); +-#endif ++ explicit Value(long i); + + /** + * Creates an integer value. diff --git a/srcpkgs/calligra/patches/c++20.patch b/srcpkgs/calligra/patches/c++20.patch deleted file mode 100644 index 3e36ce8c222de9..00000000000000 --- a/srcpkgs/calligra/patches/c++20.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -Naur CMakeLists.txt.orig CMakeLists.txt ---- a/CMakeLists.txt.orig -+++ b/CMakeLists.txt -@@ -106,9 +106,9 @@ - - # use CPP-11 - if (CMAKE_VERSION VERSION_LESS "3.1") -- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") -+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++20") - else () -- set (CMAKE_CXX_STANDARD 11) -+ set (CMAKE_CXX_STANDARD 20) - endif () - - ############ - diff --git a/srcpkgs/calligra/patches/cmake-4.patch b/srcpkgs/calligra/patches/cmake-4.patch new file mode 100644 index 00000000000000..04b39b964d2874 --- /dev/null +++ b/srcpkgs/calligra/patches/cmake-4.patch @@ -0,0 +1,12 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -11,9 +11,6 @@ add_compile_options("-DCALLIGRA_YEAR=${C + + project(calligra VERSION ${RELEASE_SERVICE_VERSION}) + +-if (POLICY CMP0022) +- cmake_policy(SET CMP0022 OLD) +-endif () + if (POLICY CMP0063) + cmake_policy(SET CMP0063 NEW) + endif() diff --git a/srcpkgs/calligra/patches/gemini.patch b/srcpkgs/calligra/patches/gemini.patch new file mode 100644 index 00000000000000..2ecf3c1a125aa2 --- /dev/null +++ b/srcpkgs/calligra/patches/gemini.patch @@ -0,0 +1,15 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -971,9 +971,9 @@ if(SHOULD_BUILD_PART_COMPONENTS) + add_subdirectory(components) + endif() + +-#if(SHOULD_BUILD_GEMINI) +-# add_subdirectory(gemini) +-#endif() ++if(SHOULD_BUILD_GEMINI) ++ add_subdirectory(gemini) ++endif() + + # non-app directories are moved here because they can depend on SHOULD_BUILD_{appname} variables set above + add_subdirectory(libs) diff --git a/srcpkgs/calligra/patches/macro-optional-find-package.patch b/srcpkgs/calligra/patches/macro-optional-find-package.patch index 68fb499d5af84a..5edde9d1f97700 100644 --- a/srcpkgs/calligra/patches/macro-optional-find-package.patch +++ b/srcpkgs/calligra/patches/macro-optional-find-package.patch @@ -1,7 +1,5 @@ -Index: calligra-3.2.1/cmake/modules/MacroOptionalFindPackage.cmake -=================================================================== ---- calligra-3.2.1.orig/cmake/modules/MacroOptionalFindPackage.cmake -+++ calligra-3.2.1/cmake/modules/MacroOptionalFindPackage.cmake +--- a/cmake/modules/MacroOptionalFindPackage.cmake ++++ b/cmake/modules/MacroOptionalFindPackage.cmake @@ -25,11 +25,26 @@ macro(_MOFP_SET_EMPTY_IF_DEFINED _name _ endif(DEFINED ${_nameUpper}_${_var}) endmacro(_MOFP_SET_EMPTY_IF_DEFINED _package _var) diff --git a/srcpkgs/calligra/patches/openexr3.patch b/srcpkgs/calligra/patches/openexr3.patch deleted file mode 100644 index 7589f93cb35273..00000000000000 --- a/srcpkgs/calligra/patches/openexr3.patch +++ /dev/null @@ -1,94 +0,0 @@ -From eab11436712f92afc6e7b14b25d1f6df217d79d7 Mon Sep 17 00:00:00 2001 -From: Antonio Rojas -Date: Sat, 24 Apr 2021 11:19:52 +0200 -Subject: [PATCH] Support building with OpenEXR 3 - -Try to find OpenEXR 3 first using the upstream cmake config, and fall back to using our FindOpenEXR ---- - CMakeLists.txt | 9 +++++++-- - libs/pigment/CMakeLists.txt | 2 +- - plugins/colorengines/lcms2/CMakeLists.txt | 6 +++--- - plugins/colorengines/lcms2/tests/CMakeLists.txt | 2 +- - 4 files changed, 12 insertions(+), 7 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 8955357ff97..ea56c84bb11 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -363,8 +363,13 @@ endif () - ## Check for OpenEXR - ## - --macro_optional_find_package(OpenEXR) --macro_bool_to_01(OPENEXR_FOUND HAVE_OPENEXR) -+macro_optional_find_package(OpenEXR 3.0 CONFIG QUIET) -+if(TARGET OpenEXR::OpenEXR) -+ set(OPENEXR_LIBRARIES OpenEXR::OpenEXR) -+else() -+ macro_optional_find_package(OpenEXR) -+endif() -+macro_bool_to_01(OpenEXR_FOUND HAVE_OPENEXR) - - ## - ## Test for GNU Scientific Library -diff --git a/libs/pigment/CMakeLists.txt b/libs/pigment/CMakeLists.txt -index a039251e2ad..6eb6a8e70b6 100644 ---- a/libs/pigment/CMakeLists.txt -+++ b/libs/pigment/CMakeLists.txt -@@ -12,7 +12,7 @@ include_directories( ${PIGMENT_INCLUDES} ${Boost_INCLUDE_DIR}) - - set(FILE_OPENEXR_SOURCES) - set(LINK_OPENEXR_LIB) --if(OPENEXR_FOUND) -+if(OpenEXR_FOUND) - include_directories(${OPENEXR_INCLUDE_DIR}) - set(LINK_OPENEXR_LIB ${OPENEXR_LIBRARIES}) - add_definitions(${OPENEXR_DEFINITIONS}) -diff --git a/plugins/colorengines/lcms2/CMakeLists.txt b/plugins/colorengines/lcms2/CMakeLists.txt -index 77807ff9702..920adbeaf87 100644 ---- a/plugins/colorengines/lcms2/CMakeLists.txt -+++ b/plugins/colorengines/lcms2/CMakeLists.txt -@@ -31,7 +31,7 @@ include_directories( - ${CMAKE_CURRENT_SOURCE_DIR}/colorprofiles - ) - --if (HAVE_LCMS24 AND OPENEXR_FOUND) -+if (HAVE_LCMS24 AND OpenEXR_FOUND) - include_directories( - ${CMAKE_CURRENT_SOURCE_DIR}/colorspaces/gray_f16 - ${CMAKE_CURRENT_SOURCE_DIR}/colorspaces/rgb_f16 -@@ -41,7 +41,7 @@ endif () - - set(FILE_OPENEXR_SOURCES) - set(LINK_OPENEXR_LIB) --if(OPENEXR_FOUND) -+if(OpenEXR_FOUND) - include_directories(${OPENEXR_INCLUDE_DIR}) - set(LINK_OPENEXR_LIB ${OPENEXR_LIBRARIES}) - add_definitions(${OPENEXR_DEFINITIONS}) -@@ -80,7 +80,7 @@ set ( lcmsengine_SRCS - LcmsEnginePlugin.cpp - ) - --if (HAVE_LCMS24 AND OPENEXR_FOUND) -+if (HAVE_LCMS24 AND OpenEXR_FOUND) - set ( lcmsengine_SRCS - ${lcmsengine_SRCS} - colorspaces/gray_f16/GrayF16ColorSpace.cpp -diff --git a/plugins/colorengines/lcms2/tests/CMakeLists.txt b/plugins/colorengines/lcms2/tests/CMakeLists.txt -index 2540acc834c..77bd0b3fe4a 100644 ---- a/plugins/colorengines/lcms2/tests/CMakeLists.txt -+++ b/plugins/colorengines/lcms2/tests/CMakeLists.txt -@@ -12,7 +12,7 @@ include_directories( ../colorspaces/cmyk_u16 - ../colorprofiles - .. - ) --if(OPENEXR_FOUND) -+if(OpenEXR_FOUND) - include_directories(${OPENEXR_INCLUDE_DIR}) - endif() - include_directories( ${PIGMENT_INCLUDES} ${LCMS2_INCLUDE_DIR} ) --- -GitLab - - diff --git a/srcpkgs/calligra/patches/poppler-22.03.0-fix.patch b/srcpkgs/calligra/patches/poppler-22.03.0-fix.patch deleted file mode 100644 index 7dab53bcfc7f24..00000000000000 --- a/srcpkgs/calligra/patches/poppler-22.03.0-fix.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 236bacbe13739414e919de868283b0caf2df5d8a Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid -Date: Wed, 13 Apr 2022 01:25:44 +0200 -Subject: [PATCH] PdfImport: Fix compile with newer poppler - -Brings a dependency on poppler-qt5 to be able to include the version -header, honestly it's not strictly needed, one could do a -check_cxx_source_compiles, but I don't care about Calligra enough to -spend more time making it compile while it's using poppler the wrong -way. ---- - CMakeLists.txt | 1 + - filters/karbon/pdf/CMakeLists.txt | 2 +- - filters/karbon/pdf/PdfImport.cpp | 9 +++++++++ - 3 files changed, 11 insertions(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 51f1d65b8e6..06bbad5c24c 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -952,6 +952,7 @@ calligra_drop_product_on_bad_condition( FILTER_WPG_TO_ODG - calligra_drop_product_on_bad_condition( FILTER_PDF_TO_SVG - NOT_WIN "not supported on Windows" - PopplerXPDFHeaders_FOUND "poppler xpdf headers not found" -+ Poppler_FOUND "poppler qt5 headers not found" - ) - - calligra_drop_product_on_bad_condition( FILTER_HTML_TO_ODS -diff --git a/filters/karbon/pdf/CMakeLists.txt b/filters/karbon/pdf/CMakeLists.txt -index 8fddf1ad757..b71c92cbf04 100644 ---- a/filters/karbon/pdf/CMakeLists.txt -+++ b/filters/karbon/pdf/CMakeLists.txt -@@ -3,7 +3,7 @@ set(pdf2svg_PART_SRCS PdfImportDebug.cpp PdfImport.cpp SvgOutputDev.cpp ) - add_library(calligra_filter_pdf2svg MODULE ${pdf2svg_PART_SRCS}) - calligra_filter_desktop_to_json(calligra_filter_pdf2svg calligra_filter_pdf2svg.desktop) - --target_link_libraries(calligra_filter_pdf2svg komain Poppler::Core) -+target_link_libraries(calligra_filter_pdf2svg komain Poppler::Core Poppler::Qt5) - - install(TARGETS calligra_filter_pdf2svg DESTINATION ${PLUGIN_INSTALL_DIR}/calligra/formatfilters) - -diff --git a/filters/karbon/pdf/PdfImport.cpp b/filters/karbon/pdf/PdfImport.cpp -index abbe681b4e8..e97974fc133 100644 ---- a/filters/karbon/pdf/PdfImport.cpp -+++ b/filters/karbon/pdf/PdfImport.cpp -@@ -17,6 +17,10 @@ - - #include - -+#include -+ -+#define POPPLER_VERSION_MACRO ((POPPLER_VERSION_MAJOR << 16) | (POPPLER_VERSION_MINOR << 8) | (POPPLER_VERSION_MICRO)) -+ - // Don't show this warning: it's an issue in poppler - #ifdef __GNUC__ - #pragma GCC diagnostic ignored "-Wunused-parameter" -@@ -54,8 +58,13 @@ KoFilter::ConversionStatus PdfImport::convert(const QByteArray& from, const QByt - if (! globalParams) - return KoFilter::NotImplemented; - -+#if POPPLER_VERSION_MACRO < QT_VERSION_CHECK(22, 03, 0) - GooString * fname = new GooString(QFile::encodeName(m_chain->inputFile()).data()); - PDFDoc * pdfDoc = new PDFDoc(fname, 0, 0, 0); -+#else -+ std::unique_ptr fname = std::make_unique(QFile::encodeName(m_chain->inputFile()).data()); -+ PDFDoc * pdfDoc = new PDFDoc(std::move(fname)); -+#endif - if (! pdfDoc) { - globalParams.reset(); - return KoFilter::StupidError; diff --git a/srcpkgs/calligra/patches/poppler-22.04.0-fix.patch b/srcpkgs/calligra/patches/poppler-22.04.0-fix.patch deleted file mode 100644 index e47169950b8b33..00000000000000 --- a/srcpkgs/calligra/patches/poppler-22.04.0-fix.patch +++ /dev/null @@ -1,91 +0,0 @@ -From 6b75bec784c9835c78993349845d8c2ef22ec3de Mon Sep 17 00:00:00 2001 -From: Dag Andersen -Date: Wed, 13 Apr 2022 14:45:33 +0200 -Subject: [PATCH] PdfImport: Fix compile with newer poppler - -Also fixes odg2pdf filter. - -Same solution as commit 236bacbe13739414e919de868283b0caf2df5d8a -by accid@kde.org. ---- - filters/karbon/pdf/CMakeLists.txt | 2 +- - filters/karbon/pdf/Pdf2OdgImport.cpp | 9 +++++++++ - filters/karbon/pdf/SvgOutputDev.cpp | 9 +++++++++ - 3 files changed, 19 insertions(+), 1 deletion(-) - -diff --git a/filters/karbon/pdf/CMakeLists.txt b/filters/karbon/pdf/CMakeLists.txt -index b71c92cbf04..4ce138ccdd6 100644 ---- a/filters/karbon/pdf/CMakeLists.txt -+++ b/filters/karbon/pdf/CMakeLists.txt -@@ -13,6 +13,6 @@ set(pdf2odg_PART_SRCS PdfImportDebug.cpp Pdf2OdgImport.cpp SvgOutputDev.cpp) - add_library(calligra_filter_pdf2odg MODULE ${pdf2odg_PART_SRCS}) - calligra_filter_desktop_to_json(calligra_filter_pdf2odg calligra_filter_pdf2odg.desktop) - --target_link_libraries(calligra_filter_pdf2odg kopageapp karbonui Poppler::Core) -+target_link_libraries(calligra_filter_pdf2odg kopageapp karbonui Poppler::Core Poppler::Qt5) - - install(TARGETS calligra_filter_pdf2odg DESTINATION ${PLUGIN_INSTALL_DIR}/calligra/formatfilters) -diff --git a/filters/karbon/pdf/Pdf2OdgImport.cpp b/filters/karbon/pdf/Pdf2OdgImport.cpp -index 934e31dd5aa..a21eac97a77 100644 ---- a/filters/karbon/pdf/Pdf2OdgImport.cpp -+++ b/filters/karbon/pdf/Pdf2OdgImport.cpp -@@ -27,6 +27,8 @@ - - #include - -+#include -+ - // Don't show this warning: it's an issue in poppler - #ifdef __GNUC__ - #pragma GCC diagnostic ignored "-Wunused-parameter" -@@ -36,6 +38,8 @@ - #include - #include - -+#define POPPLER_VERSION_MACRO ((POPPLER_VERSION_MAJOR << 16) | (POPPLER_VERSION_MINOR << 8) | (POPPLER_VERSION_MICRO)) -+ - K_PLUGIN_FACTORY_WITH_JSON(Pdf2OdgImportFactory, "calligra_filter_pdf2odg.json", - registerPlugin();) - -@@ -69,8 +73,13 @@ KoFilter::ConversionStatus Pdf2OdgImport::convert(const QByteArray& from, const - if (! globalParams) - return KoFilter::NotImplemented; - -+#if POPPLER_VERSION_MACRO < QT_VERSION_CHECK(22, 03, 0) - GooString * fname = new GooString(QFile::encodeName(m_chain->inputFile()).data()); - PDFDoc * pdfDoc = new PDFDoc(fname, 0, 0, 0); -+#else -+ std::unique_ptr fname = std::make_unique(QFile::encodeName(m_chain->inputFile()).data()); -+ PDFDoc * pdfDoc = new PDFDoc(std::move(fname)); -+#endif - if (! pdfDoc) { - globalParams.reset(); - return KoFilter::StupidError; -diff --git a/filters/karbon/pdf/SvgOutputDev.cpp b/filters/karbon/pdf/SvgOutputDev.cpp -index 0e6e5a934ca..7caec15175a 100644 ---- a/filters/karbon/pdf/SvgOutputDev.cpp -+++ b/filters/karbon/pdf/SvgOutputDev.cpp -@@ -22,6 +22,10 @@ - #include - #include - -+#include -+ -+#define POPPLER_VERSION_MACRO ((POPPLER_VERSION_MAJOR << 16) | (POPPLER_VERSION_MINOR << 8) | (POPPLER_VERSION_MICRO)) -+ - class SvgOutputDev::Private - { - public: -@@ -386,7 +390,12 @@ void SvgOutputDev::drawString(GfxState * state, const GooString * s) - if (s->getLength() == 0) - return; - -+#if POPPLER_VERSION_MACRO < QT_VERSION_CHECK(22, 03, 0) - GfxFont * font = state->getFont(); -+#else -+ std::shared_ptr font = state->getFont(); -+#endif -+ - - QString str; - diff --git a/srcpkgs/calligra/patches/upstream_Fix-compile-with-poppler-2405-or-higher.patch b/srcpkgs/calligra/patches/upstream_Fix-compile-with-poppler-2405-or-higher.patch deleted file mode 100644 index 66efc1a9b0f786..00000000000000 --- a/srcpkgs/calligra/patches/upstream_Fix-compile-with-poppler-2405-or-higher.patch +++ /dev/null @@ -1,59 +0,0 @@ -From 7ef44c6864cc77abb529e11f83e01ae7dc7d5061 Mon Sep 17 00:00:00 2001 -From: Heiko Becker -Date: Thu, 23 May 2024 22:11:28 +0200 -Subject: [PATCH] Require C++20 to fix the build with poppler>=24.05 - -poppler >= 24.05.0 started to use std::string's starts_with and -ends_with [1] in a public header, but these are only available with -C++20. - -[1] https://gitlab.freedesktop.org/poppler/poppler/-/commit/fbb64544e5ea25ac9b1bd25b48043d074efe9cd9 ---- - CMakeLists.txt | 2 +- - libs/pigment/lut.h | 6 +++--- - 2 files changed, 4 insertions(+), 4 deletions(-) - -Origin: backport, https://github.com/KDE/calligra/commit/7ef44c6864cc77abb529e11f83e01ae7dc7d5061 -Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/calligra/+bug/2070399 -Last-Update: 2024-06-25 - -#--- a/CMakeLists.txt -#+++ b/CMakeLists.txt -#@@ -149,7 +149,7 @@ -# set(REQUIRED_KF5_VERSION "5.7.0") -# set(REQUIRED_QT_VERSION "5.3.0") -# -#-set(CMAKE_CXX_STANDARD 17) -#+set(CMAKE_CXX_STANDARD 20) -# set(CMAKE_CXX_STANDARD_REQUIRED ON) -# set(CMAKE_CXX_EXTENSIONS OFF) - ---- a/libs/pigment/lut.h -+++ b/libs/pigment/lut.h -@@ -143,7 +143,7 @@ - template<> \ - class LutKey<_INT_TYPE_> { \ - public: \ -- LutKey<_INT_TYPE_>(_INT_TYPE_ min, _INT_TYPE_ max) : m_min(min), m_max(max) \ -+ LutKey(_INT_TYPE_ min, _INT_TYPE_ max) : m_min(min), m_max(max) \ - { \ - } \ - public: \ -@@ -183,7 +183,7 @@ - template<> \ - class FullLutKey<_INT_TYPE_> { \ - public: \ -- FullLutKey<_INT_TYPE_>() \ -+ FullLutKey() \ - { \ - } \ - public: \ -@@ -233,7 +233,7 @@ - float f; - }; - public: -- LutKey(float min, float max, float precision) : m_min(min), m_max(max), m_precision(precision) -+ LutKey(float min, float max, float precision) : m_min(min), m_max(max), m_precision(precision) - { - // Those values where computed using the test_linear and setting the shift and then using - // the standard deviation. diff --git a/srcpkgs/calligra/template b/srcpkgs/calligra/template index ecda17c059fa43..70dc199a11fe6a 100644 --- a/srcpkgs/calligra/template +++ b/srcpkgs/calligra/template @@ -1,23 +1,31 @@ # Template file for 'calligra' pkgname=calligra -version=3.2.1 -revision=26 +version=4.0.1 +revision=1 build_style=cmake configure_args="-Wno-dev -DCALLIGRA_SHOULD_BUILD_UNMAINTAINED=ON - -DMEINPROC5_EXECUTABLE=/usr/bin/meinproc5 -DBUILD_TESTING=OFF" -hostmakedepends="perl pkg-config extra-cmake-modules gettext - qt5-qmake qt5-host-tools kcoreaddons kwallet" -makedepends="ecm-devel eigen3.2 kdelibs4support-devel - kguiaddons-devel - exiv2-devel kactivities5-devel gsl-devel qt5-declarative-devel - kcmutils-devel kdelibs4support-devel kdiagram-devel - kholidays-devel khtml-devel knotifyconfig-devel kross-devel lcms2-devel - libetonyek-devel libgit2-devel libodfgen-devel kwallet-devel - libopenexr-devel libspnav-devel libvisio-devel libwpg-devel libwps-devel - poppler-qt5-devel qca-qt5-devel threadweaver-devel marble5-devel - knotifyconfig-devel sonnet-devel kcodecs-devel - kauth-devel kparts-devel kxmlgui-devel kconfigwidgets-devel kconfig-devel - ktextwidgets-devel kservice-devel kcrash-devel kio-devel kiconthemes-devel" + -DKDE_INSTALL_QTPLUGINDIR=lib/qt6/plugins + -DKDE_INSTALL_QMLDIR=lib/qt6/qml + -DBUILD_TESTING=OFF" +hostmakedepends="perl pkg-config extra-cmake-modules gettext pstoedit + qt6-base qt6-declarative-host-tools + kf6-kconfig kf6-kcoreaddons kf6-kdoctools kf6-kcmutils" +makedepends="ecm-devel eigen boost-devel-minimal zlib-devel + openssl-devel imath-devel gsl-devel poppler-devel libgit2-devel + kf6-karchive-devel kf6-kcompletion-devel kf6-kconfig-devel + kf6-kconfigwidgets-devel kf6-kcoreaddons-devel kf6-kcrash-devel + kf6-kdoctools-devel kf6-kguiaddons-devel kf6-ki18n-devel + kf6-kiconthemes-devel kf6-kitemviews-devel kf6-kjobwidgets-devel + kf6-kcmutils-devel kf6-kio-devel kf6-knotifications-devel + kf6-knotifyconfig-devel kf6-sonnet-devel kf6-ktextwidgets-devel + kf6-kwidgetsaddons-devel kf6-kwindowsystem-devel kf6-kxmlgui-devel + kf6-kdbusaddons-devel + qt6-base-devel qt6-svg-devel qt6-declarative-devel + qtkeychain-qt6-devel kdiagram6-devel qca-qt6-devel poppler-qt6-devel + libokular-devel phonon-devel + lcms2-devel fontconfig-devel freetype-devel librevenge-devel + libodfgen-devel libwpd-devel libwpg-devel libwps-devel + libvisio-devel libetonyek-devel" depends="calligra-filters calligra-libs calligra-plugins calligra-karbon calligra-kexi calligra-stage calligra-sheets calligra-extras calligra-words calligra-handbook calligra-gemini calligra-plan" @@ -25,49 +33,42 @@ short_desc="Illustration application" maintainer="John " license="GPL-2.0-or-later, LGPL-2.0-or-later, GFDL-1.2-or-later" homepage="https://www.calligra-suite.org/" -distfiles="${KDE_SITE}/calligra/${version}/calligra-${version}.tar.xz" -checksum=b1f8a6eb8208543a2f908caa83d089075fcd1e530d00e19f5362b2f9cc371147 +distfiles="${KDE_SITE}/calligra/calligra-${version}.tar.xz" +checksum=d401f5e73f4f1bdc0b3548ea1a50b0ac1778c1ede30a6a335944ed7fbd88d95f replaces="calligra-braindump>=0 calligra-flow>=0" -build_options="webengine" -desc_option_webengine="Use Qt5 WebEngine for Calligra Gemini" - -if [ "$XBPS_TARGET_ENDIAN" = "le" ]; then - # webengine does not cross-build from 64bit to 32bit, use webkit - if [ "$XBPS_WORDSIZE" = "$XBPS_TARGET_WORDSIZE" ]; then - build_options_default="webengine" - fi +if [ "$XBPS_WORDSIZE$XBPS_WORDSIZE" = "64$XBPS_TARGET_WORDSIZE" ]; then + makedepends+=" qt6-webengine-devel" fi CXXFLAGS="-DKDE_NO_DEBUG_OUTPUT" if [ "$CROSS_BUILD" ]; then hostmakedepends+=" calligra-devtools" - configure_args+=" -DMODERN_ICONV_RUN=1 -DDESKTOPTOJSON_EXECUTABLE=/usr/bin/desktoptojson" + configure_args+=" -DMODERN_ICONV_RUN=1" fi post_patch() { - [ "$build_option_webengine" ] && return 0 - - msg_normal "Applying gemini-webkit.patch\n" - patch -sNp1 -i ${FILESDIR}/gemini-webkit.patch + if [ "$XBPS_WORDSIZE$XBPS_WORDSIZE" != "64$XBPS_TARGET_WORDSIZE" ]; then + msg_normal "Applying no-webengine.patch\n" + patch -sNp1 -i ${FILESDIR}/no-webengine.patch + fi } # cmake doesn't detect the functions correctly pre_build() { - case $XBPS_TARGET_MACHINE in - *-musl) cat >> build/filters/words/msword-odf/wv2/src/config.h <<-EOF + if [ "$XBPS_TARGET_LIBC" = musl ]; then + cat >> build/filters/words/msword-odf/wv2/src/config.h <<-EOF #define HAVE_FUNC_ISNAN 1 #define HAVE_FUNC_ISINF 1 #define HAVE_FUNC_ISFINITE 1 EOF - ;; - esac + fi } do_install() { - vdoc README + vdoc README.md } calligra-filters_package() { @@ -166,18 +167,16 @@ calligra-devtools_package() { pkg_install() { DESTDIR=$PKGDESTDIR \ cmake -P ${wrksrc}/build/devtools/cmake_install.cmake - vbin build/devtools/rng2cpp/rng2cpp - vbin build/filters/sheets/excel/sidewinder/recordsxml2cpp + vbin build/bin/rng2cpp + vbin build/bin/recordsxml2cpp } } calligra-gemini_package() { short_desc+=" - QML interface for Calligra Words and Stage" - depends="qt5-quickcontrols kirigami2" - if [ "$build_option_webengine" ]; then - depends+=" qt5-webengine" - else - depends+=" qt5-webkit" + depends="kf6-kirigami" + if [ "$XBPS_WORDSIZE$XBPS_WORDSIZE" = "64$XBPS_TARGET_WORDSIZE" ]; then + depends+=" qt6-webengine" fi pkg_install() { DESTDIR=$PKGDESTDIR \