diff --git a/app-office/scribus/patches/scribus-1.5.4.patchset b/app-office/scribus/patches/scribus-1.5.4.patchset index 1b0263530..505f52fbe 100644 --- a/app-office/scribus/patches/scribus-1.5.4.patchset +++ b/app-office/scribus/patches/scribus-1.5.4.patchset @@ -1,18 +1,10 @@ -From 691f1ceb388207bd990a58282782ca07bf6e6904 Mon Sep 17 00:00:00 2001 +From f327995510c233822ae2b8751eea66cead967efe Mon Sep 17 00:00:00 2001 From: Gerasim Troeglazov <3dEyes@gmail.com> Date: Thu, 3 May 2018 21:03:11 +1000 Subject: Fix build for Haiku Disable python and scriptplugin Add paths for Haiku ---- - CMakeLists.txt | 6 +++--- - scribus/CMakeLists.txt | 2 +- - scribus/plugins/CMakeLists.txt | 4 ++-- - scribus/scpaths.cpp | 25 +++++++++++++++++++++++++ - scribus/third_party/pgf/PGFplatform.h | 4 ++-- - scribus/util_debug.cpp | 2 +- - 6 files changed, 34 insertions(+), 9 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0862e48..3ac3c9c 100644 @@ -165,3 +157,785 @@ index 483a7dc..228614b 100644 -- 2.21.0 + +From baea04052f11243914763d6ca4ed54d114eb0759 Mon Sep 17 00:00:00 2001 +From: Jerome Duval +Date: Fri, 3 May 2019 19:56:10 +0200 +Subject: import poppler patchs from scribus team. + + +diff --git a/scribus/plugins/import/pdf/importpdf.cpp b/scribus/plugins/import/pdf/importpdf.cpp +index c180286..a2aa5a7 100644 +--- a/scribus/plugins/import/pdf/importpdf.cpp ++++ b/scribus/plugins/import/pdf/importpdf.cpp +@@ -556,10 +556,21 @@ bool PdfPlug::convert(const QString& fn) + } + else + { +- GooList *ocgs; +- int i; +- ocgs = ocg->getOCGs (); +- for (i = 0; i < ocgs->getLength (); ++i) ++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 69, 0) ++ const auto& ocgs = ocg->getOCGs (); ++ for (const auto& ocg : ocgs) ++ { ++ OptionalContentGroup *oc = ocg.second.get(); ++ QString ocgName = UnicodeParsedString(oc->getName()); ++ if (!ocgNames.contains(ocgName)) ++ { ++ ocgGroups.prepend(oc); ++ ocgNames.append(ocgName); ++ } ++ } ++#else ++ GooList *ocgs = ocg->getOCGs (); ++ for (int i = 0; i < ocgs->getLength (); ++i) + { + OptionalContentGroup *oc = (OptionalContentGroup *)ocgs->get(i); + QString ocgName = UnicodeParsedString(oc->getName()); +@@ -569,15 +580,27 @@ bool PdfPlug::convert(const QString& fn) + ocgNames.append(ocgName); + } + } ++#endif + } + } + } + else + { +- GooList *ocgs; +- int i; +- ocgs = ocg->getOCGs (); +- for (i = 0; i < ocgs->getLength (); ++i) ++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 69, 0) ++ const auto& ocgs = ocg->getOCGs (); ++ for (const auto& ocg : ocgs) ++ { ++ OptionalContentGroup *oc = ocg.second.get(); ++ QString ocgName = UnicodeParsedString(oc->getName()); ++ if (!ocgNames.contains(ocgName)) ++ { ++ ocgGroups.prepend(oc); ++ ocgNames.append(ocgName); ++ } ++ } ++#else ++ GooList *ocgs = ocg->getOCGs (); ++ for (int i = 0; i < ocgs->getLength (); ++i) + { + OptionalContentGroup *oc = (OptionalContentGroup *)ocgs->get(i); + QString ocgName = UnicodeParsedString(oc->getName()); +@@ -587,6 +610,7 @@ bool PdfPlug::convert(const QString& fn) + ocgNames.append(ocgName); + } + } ++#endif + } + } + } +@@ -1081,7 +1105,7 @@ QRectF PdfPlug::getCBox(int box, int pgNum) + return cRect; + } + +-QString PdfPlug::UnicodeParsedString(GooString *s1) ++QString PdfPlug::UnicodeParsedString(POPPLER_CONST GooString *s1) + { + if ( !s1 || s1->getLength() == 0 ) + return QString(); +diff --git a/scribus/plugins/import/pdf/importpdf.h b/scribus/plugins/import/pdf/importpdf.h +index c8c5efc..fbf607b 100644 +--- a/scribus/plugins/import/pdf/importpdf.h ++++ b/scribus/plugins/import/pdf/importpdf.h +@@ -7,11 +7,6 @@ for which a new license (GPL+exception) is in place. + #ifndef IMPORTPDF_H + #define IMPORTPDF_H + +- +-#include "pluginapi.h" +-#include "pageitem.h" +-#include "sccolor.h" +-#include "fpointarray.h" + #include + #include + #include +@@ -26,6 +21,11 @@ for which a new license (GPL+exception) is in place. + #include + #include + ++#include "fpointarray.h" ++#include "importpdfconfig.h" ++#include "pluginapi.h" ++#include "pageitem.h" ++#include "sccolor.h" + + class QColor; + class QMatrix; +@@ -81,7 +81,7 @@ public: + private: + bool convert(const QString& fn); + QRectF getCBox(int box, int pgNum); +- QString UnicodeParsedString(GooString *s1); ++ QString UnicodeParsedString(POPPLER_CONST GooString *s1); + + QList Elements; + double baseX, baseY; +diff --git a/scribus/plugins/import/pdf/slaoutput.cpp b/scribus/plugins/import/pdf/slaoutput.cpp +index be1815d..2e261e1 100644 +--- a/scribus/plugins/import/pdf/slaoutput.cpp ++++ b/scribus/plugins/import/pdf/slaoutput.cpp +@@ -6,7 +6,7 @@ for which a new license (GPL+exception) is in place. + */ + + #include "slaoutput.h" +-#include ++ + #include + #include + #include +@@ -20,12 +20,6 @@ for which a new license (GPL+exception) is in place. + #include "util_math.h" + #include + +-#define POPPLER_VERSION_ENCODE(major, minor, micro) ( \ +- ((major) * 10000) \ +- + ((minor) * 100) \ +- + ((micro) * 1)) +-#define POPPLER_ENCODED_VERSION POPPLER_VERSION_ENCODE(POPPLER_VERSION_MAJOR, POPPLER_VERSION_MINOR, POPPLER_VERSION_MICRO) +- + LinkSubmitForm::LinkSubmitForm(Object *actionObj) + { + Object obj1, obj2, obj3; +@@ -44,7 +38,7 @@ LinkSubmitForm::LinkSubmitForm(Object *actionObj) + { + if (obj3.isName()) + { +- char *name = obj3.getName(); ++ POPPLER_CONST char *name = obj3.getName(); + if (!strcmp(name, "URL")) + { + obj2 = obj1.dictLookup("F"); +@@ -508,8 +502,8 @@ bool SlaOutputDev::handleLinkAnnot(Annot* annota, double xCoor, double yCoor, do + QString fileName = ""; + if (act->getKind() == actionGoTo) + { +- LinkGoTo *gto = (LinkGoTo*)act; +- LinkDest *dst = gto->getDest(); ++ LinkGoTo *gto = (LinkGoTo*) act; ++ POPPLER_CONST LinkDest *dst = gto->getDest(); + if (dst) + { + if (dst->getKind() == destXYZ) +@@ -528,7 +522,7 @@ bool SlaOutputDev::handleLinkAnnot(Annot* annota, double xCoor, double yCoor, do + } + else + { +- GooString *ndst = gto->getNamedDest(); ++ POPPLER_CONST GooString *ndst = gto->getNamedDest(); + if (ndst) + { + LinkDest *dstn = pdfDoc->findDest(ndst); +@@ -555,7 +549,7 @@ bool SlaOutputDev::handleLinkAnnot(Annot* annota, double xCoor, double yCoor, do + { + LinkGoToR *gto = (LinkGoToR*)act; + fileName = UnicodeParsedString(gto->getFileName()); +- LinkDest *dst = gto->getDest(); ++ POPPLER_CONST LinkDest *dst = gto->getDest(); + if (dst) + { + if (dst->getKind() == destXYZ) +@@ -568,7 +562,7 @@ bool SlaOutputDev::handleLinkAnnot(Annot* annota, double xCoor, double yCoor, do + } + else + { +- GooString *ndst = gto->getNamedDest(); ++ POPPLER_CONST GooString *ndst = gto->getNamedDest(); + if (ndst) + { + LinkDest *dstn = pdfDoc->findDest(ndst); +@@ -709,7 +703,7 @@ bool SlaOutputDev::handleWidgetAnnot(Annot* annota, double xCoor, double yCoor, + bool bgFound = false; + if (achar) + { +- AnnotColor *bgCol = achar->getBackColor(); ++ POPPLER_CONST AnnotColor *bgCol = achar->getBackColor(); + if (bgCol) + { + bgFound = true; +@@ -717,7 +711,7 @@ bool SlaOutputDev::handleWidgetAnnot(Annot* annota, double xCoor, double yCoor, + } + else + CurrColorFill = CommonStrings::None; +- AnnotColor *fgCol = achar->getBorderColor(); ++ POPPLER_CONST AnnotColor *fgCol = achar->getBorderColor(); + if (fgCol) + { + fgFound = true; +@@ -1054,7 +1048,7 @@ void SlaOutputDev::handleActions(PageItem* ite, AnnotWidget *ano) + int xco = 0; + int yco = 0; + LinkGoTo *gto = (LinkGoTo*)Lact; +- LinkDest *dst = gto->getDest(); ++ POPPLER_CONST LinkDest *dst = gto->getDest(); + if (dst) + { + if (dst->getKind() == destXYZ) +@@ -1075,7 +1069,7 @@ void SlaOutputDev::handleActions(PageItem* ite, AnnotWidget *ano) + } + else + { +- GooString *ndst = gto->getNamedDest(); ++ POPPLER_CONST GooString *ndst = gto->getNamedDest(); + if (ndst) + { + LinkDest *dstn = pdfDoc->findDest(ndst); +@@ -1107,7 +1101,7 @@ void SlaOutputDev::handleActions(PageItem* ite, AnnotWidget *ano) + int yco = 0; + LinkGoToR *gto = (LinkGoToR*)Lact; + QString fileName = UnicodeParsedString(gto->getFileName()); +- LinkDest *dst = gto->getDest(); ++ POPPLER_CONST LinkDest *dst = gto->getDest(); + if (dst) + { + if (dst->getKind() == destXYZ) +@@ -1123,7 +1117,7 @@ void SlaOutputDev::handleActions(PageItem* ite, AnnotWidget *ano) + } + else + { +- GooString *ndst = gto->getNamedDest(); ++ POPPLER_CONST GooString *ndst = gto->getNamedDest(); + if (ndst) + { + LinkDest *dstn = pdfDoc->findDest(ndst); +@@ -3002,6 +2996,14 @@ void SlaOutputDev::drawImage(GfxState *state, Object *ref, Stream *str, int widt + if ((mm.type() == QTransform::TxShear) || (mm.type() == QTransform::TxRotate)) + { + ite->setImageRotation(-tline.angle()); ++ /*QTransform rotMat; ++ rotMat.rotate(tline.angle()); ++ QTransform imgMat = m_ctm * rotMat.inverted(); ++ double scaleX = sqrt(imgMat.m11() * imgMat.m11() + imgMat.m12() * imgMat.m12()); ++ double scaleY = sqrt(imgMat.m21() * imgMat.m21() + imgMat.m22() * imgMat.m22()); ++ imgMat.scale(1.0 / scaleX, 1.0 / scaleY); ++ if (!imgMat.isIdentity()) ++ img = img.transformed(imgMat);*/ + } + else + { +@@ -4032,7 +4034,7 @@ QString SlaOutputDev::getColor(GfxColorSpace *color_space, GfxColor *color, int + return fNam; + } + +-QString SlaOutputDev::getAnnotationColor(AnnotColor *color) ++QString SlaOutputDev::getAnnotationColor(const AnnotColor *color) + { + QString fNam; + QString namPrefix = "FromPDF"; +@@ -4252,7 +4254,7 @@ void SlaOutputDev::pushGroup(QString maskName, GBool forSoftMask, GBool alpha, b + m_groupStack.push(gElements); + } + +-QString SlaOutputDev::UnicodeParsedString(GooString *s1) ++QString SlaOutputDev::UnicodeParsedString(POPPLER_CONST GooString *s1) + { + if ( !s1 || s1->getLength() == 0 ) + return QString(); +diff --git a/scribus/plugins/import/pdf/slaoutput.h b/scribus/plugins/import/pdf/slaoutput.h +index 20e8b2d..888cd06 100644 +--- a/scribus/plugins/import/pdf/slaoutput.h ++++ b/scribus/plugins/import/pdf/slaoutput.h +@@ -7,19 +7,21 @@ for which a new license (GPL+exception) is in place. + #ifndef SLAOUTPUT_H + #define SLAOUTPUT_H + +-#include +-#include +-#include + #include + #include + #include +-#include ++#include + #include ++#include + #include +-#include ++#include + #include +-#include ++#include ++#include ++#include ++ + #include "fpointarray.h" ++#include "importpdfconfig.h" + #include "pageitem.h" + #include "scribusdoc.h" + #include "scribusview.h" +@@ -61,9 +63,9 @@ public: + // Destructor. + virtual ~LinkSubmitForm(); + // Was the LinkImportData created successfully? +- virtual GBool isOk() { return fileName != NULL; } ++ virtual GBool isOk() POPPLER_CONST { return fileName != NULL; } + // Accessors. +- virtual LinkActionKind getKind() { return actionUnknown; } ++ virtual LinkActionKind getKind() POPPLER_CONST { return actionUnknown; } + GooString *getFileName() { return fileName; } + int getFlags() { return m_flags; } + private: +@@ -83,9 +85,9 @@ public: + // Destructor. + virtual ~LinkImportData(); + // Was the LinkImportData created successfully? +- virtual GBool isOk() { return fileName != NULL; } ++ virtual GBool isOk() POPPLER_CONST { return fileName != NULL; } + // Accessors. +- virtual LinkActionKind getKind() { return actionUnknown; } ++ virtual LinkActionKind getKind() POPPLER_CONST { return actionUnknown; } + GooString *getFileName() { return fileName; } + private: + GooString *fileName; // file name +@@ -98,7 +100,7 @@ class SplashOutFontFileID: public SplashFontFileID + { + public: + +- SplashOutFontFileID(Ref *rA) { r = *rA; } ++ SplashOutFontFileID(const Ref *rA) { r = *rA; } + ~SplashOutFontFileID() {} + GBool matches(SplashFontFileID *id) + { +@@ -146,6 +148,7 @@ class SlaOutputDev : public OutputDev + public: + SlaOutputDev(ScribusDoc* doc, QList *Elements, QStringList *importedColors, int flags); + virtual ~SlaOutputDev(); ++ + LinkAction* SC_getAction(AnnotWidget *ano); + LinkAction* SC_getAdditionalAction(const char *key, AnnotWidget *ano); + static GBool annotations_callback(Annot *annota, void *user_data); +@@ -261,12 +264,12 @@ public: + private: + void getPenState(GfxState *state); + QString getColor(GfxColorSpace *color_space, GfxColor *color, int *shade); +- QString getAnnotationColor(AnnotColor *color); ++ QString getAnnotationColor(const AnnotColor *color); + QString convertPath(GfxPath *path); + int getBlendMode(GfxState *state); + void applyMask(PageItem *ite); + void pushGroup(QString maskName = "", GBool forSoftMask = gFalse, GBool alpha = gFalse, bool inverted = false); +- QString UnicodeParsedString(GooString *s1); ++ QString UnicodeParsedString(POPPLER_CONST GooString *s1); + bool checkClip(); + bool pathIsClosed; + QString CurrColorFill; +-- +2.21.0 + + +From f4e555b6603f9d32e62cf5e487e10705a8701a01 Mon Sep 17 00:00:00 2001 +From: Jerome Duval +Date: Fri, 3 May 2019 20:25:41 +0200 +Subject: import patchs from arch linux for poppler 0.70=>0.76. + + +diff --git a/scribus/plugins/import/pdf/importpdf.cpp b/scribus/plugins/import/pdf/importpdf.cpp +index a2aa5a7..da08dd4 100644 +--- a/scribus/plugins/import/pdf/importpdf.cpp ++++ b/scribus/plugins/import/pdf/importpdf.cpp +@@ -461,7 +461,7 @@ bool PdfPlug::convert(const QString& fn) + GBool useMediaBox = gTrue; + GBool crop = gTrue; + GBool printing = gFalse; +- PDFRectangle *mediaBox = pdfDoc->getPage(1)->getMediaBox(); ++ const PDFRectangle *mediaBox = pdfDoc->getPage(1)->getMediaBox(); + QRectF mediaRect = QRectF(QPointF(mediaBox->x1, mediaBox->y1), QPointF(mediaBox->x2, mediaBox->y2)).normalized(); + bool boxesAreDifferent = false; + if (getCBox(Crop_Box, 1) != mediaRect) +@@ -535,7 +535,7 @@ bool PdfPlug::convert(const QString& fn) + if (orderItem.isDict()) + { + #if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 58, 0) +- Object ref = order->getNF(i); ++ Object ref = order->getNF(i).copy(); + #else + Object ref; + order->getNF(i, &ref); +@@ -1090,7 +1090,7 @@ QImage PdfPlug::readPreview(int pgNum, int width, int height, int box) + + QRectF PdfPlug::getCBox(int box, int pgNum) + { +- PDFRectangle *cBox = NULL; ++ const PDFRectangle *cBox = NULL; + if (box == Media_Box) + cBox = m_pdfDoc->getPage(pgNum)->getMediaBox(); + else if (box == Bleed_Box) +diff --git a/scribus/plugins/import/pdf/importpdfconfig.h b/scribus/plugins/import/pdf/importpdfconfig.h +new file mode 100644 +index 0000000..6213baf +--- /dev/null ++++ b/scribus/plugins/import/pdf/importpdfconfig.h +@@ -0,0 +1,47 @@ ++/* ++For general Scribus (>=1.3.2) copyright and licensing information please refer ++to the COPYING file provided with the program. Following this notice may exist ++a copyright and/or license notice that predates the release of Scribus 1.3.2 ++for which a new license (GPL+exception) is in place. ++*/ ++#ifndef IMPORTPDFCONFIG_H ++#define IMPORTPDFCONFIG_H ++ ++#include ++ ++#define POPPLER_VERSION_ENCODE(major, minor, micro) ( \ ++ ((major) * 10000) \ ++ + ((minor) * 100) \ ++ + ((micro) * 1)) ++#define POPPLER_ENCODED_VERSION POPPLER_VERSION_ENCODE(POPPLER_VERSION_MAJOR, POPPLER_VERSION_MINOR, POPPLER_VERSION_MICRO) ++ ++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 64, 0) ++#define POPPLER_CONST const ++#else ++#define POPPLER_CONST ++#endif ++ ++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 70, 0) ++#define POPPLER_CONST_070 const ++#else ++#define POPPLER_CONST_070 ++#endif ++ ++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 71, 0) ++#define GBool bool ++#define gTrue true ++#define gFalse false ++#endif ++ ++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 72, 0) ++#define getCString c_str ++#endif ++ ++#if POPPLER_ENCODED_VERSION >= POPPLER_VERSION_ENCODE(0, 73, 0) ++#define Guchar unsigned char ++#define Gushort unsigned short ++#define Guint unsigned int ++#define Gulong unsigned long ++#endif ++ ++#endif +diff --git a/scribus/plugins/import/pdf/slaoutput.cpp b/scribus/plugins/import/pdf/slaoutput.cpp +index 2e261e1..a85df1e 100644 +--- a/scribus/plugins/import/pdf/slaoutput.cpp ++++ b/scribus/plugins/import/pdf/slaoutput.cpp +@@ -183,7 +183,7 @@ void AnoOutputDev::drawString(GfxState *state, GooString *s) + m_itemText = s->copy(); + } + +-QString AnoOutputDev::getColor(GfxColorSpace *color_space, GfxColor *color, int *shade) ++QString AnoOutputDev::getColor(GfxColorSpace *color_space, POPPLER_CONST_070 GfxColor *color, int *shade) + { + QString fNam; + QString namPrefix = "FromPDF"; +@@ -310,7 +310,7 @@ LinkAction* SlaOutputDev::SC_getAction(AnnotWidget *ano) + if (obj.isDict()) + { + Dict* adic = obj.getDict(); +- additionalActions = adic->lookupNF("A"); ++ additionalActions = adic->lookupNF("A").copy(); + Object additionalActionsObject = additionalActions.fetch(pdfDoc->getXRef()); + if (additionalActionsObject.isDict()) + { +@@ -370,7 +370,7 @@ LinkAction* SlaOutputDev::SC_getAdditionalAction(const char *key, AnnotWidget *a + if (obj.isDict()) + { + Dict* adic = obj.getDict(); +- additionalActions = adic->lookupNF("AA"); ++ additionalActions = adic->lookupNF("AA").copy(); + Object additionalActionsObject = additionalActions.fetch(pdfDoc->getXRef()); + if (additionalActionsObject.isDict()) + { +@@ -511,7 +511,7 @@ bool SlaOutputDev::handleLinkAnnot(Annot* annota, double xCoor, double yCoor, do + if (dst->isPageRef()) + { + Ref dstr = dst->getPageRef(); +- pagNum = pdfDoc->findPage(dstr.num, dstr.gen); ++ pagNum = pdfDoc->findPage(dstr); + } + else + pagNum = dst->getPageNum(); +@@ -533,7 +533,7 @@ bool SlaOutputDev::handleLinkAnnot(Annot* annota, double xCoor, double yCoor, do + if (dstn->isPageRef()) + { + Ref dstr = dstn->getPageRef(); +- pagNum = pdfDoc->findPage(dstr.num, dstr.gen); ++ pagNum = pdfDoc->findPage(dstr); + } + else + pagNum = dstn->getPageNum(); +@@ -939,7 +939,7 @@ bool SlaOutputDev::handleWidgetAnnot(Annot* annota, double xCoor, double yCoor, + QList radList; + for (int i = 0; i < obj2.arrayGetLength(); i++) + { +- Object childRef = obj2.arrayGetNF(i); ++ Object childRef = obj2.arrayGetNF(i).copy(); + if (!childRef.isRef()) + continue; + Object childObj = obj2.arrayGet(i); +@@ -1056,7 +1056,7 @@ void SlaOutputDev::handleActions(PageItem* ite, AnnotWidget *ano) + if (dst->isPageRef()) + { + Ref dstr = dst->getPageRef(); +- pagNum = pdfDoc->findPage(dstr.num, dstr.gen); ++ pagNum = pdfDoc->findPage(dstr); + } + else + pagNum = dst->getPageNum(); +@@ -1080,7 +1080,7 @@ void SlaOutputDev::handleActions(PageItem* ite, AnnotWidget *ano) + if (dstn->isPageRef()) + { + Ref dstr = dstn->getPageRef(); +- pagNum = pdfDoc->findPage(dstr.num, dstr.gen); ++ pagNum = pdfDoc->findPage(dstr); + } + else + pagNum = dstn->getPageNum(); +@@ -1598,7 +1598,7 @@ void SlaOutputDev::updateStrokeColor(GfxState *state) + void SlaOutputDev::clip(GfxState *state) + { + // qDebug() << "Clip"; +- double *ctm; ++ const double *ctm; + ctm = state->getCTM(); + m_ctm = QTransform(ctm[0], ctm[1], ctm[2], ctm[3], ctm[4], ctm[5]); + QString output = convertPath(state->getPath()); +@@ -1635,7 +1635,7 @@ void SlaOutputDev::clip(GfxState *state) + void SlaOutputDev::eoClip(GfxState *state) + { + // qDebug() << "EoClip"; +- double *ctm; ++ const double *ctm; + ctm = state->getCTM(); + m_ctm = QTransform(ctm[0], ctm[1], ctm[2], ctm[3], ctm[4], ctm[5]); + QString output = convertPath(state->getPath()); +@@ -1672,7 +1672,7 @@ void SlaOutputDev::eoClip(GfxState *state) + void SlaOutputDev::stroke(GfxState *state) + { + // qDebug() << "Stroke"; +- double *ctm; ++ const double *ctm; + ctm = state->getCTM(); + double xCoor = m_doc->currentPage()->xOffset(); + double yCoor = m_doc->currentPage()->yOffset(); +@@ -1764,7 +1764,7 @@ void SlaOutputDev::stroke(GfxState *state) + void SlaOutputDev::fill(GfxState *state) + { + // qDebug() << "Fill"; +- double *ctm; ++ const double *ctm; + ctm = state->getCTM(); + double xCoor = m_doc->currentPage()->xOffset(); + double yCoor = m_doc->currentPage()->yOffset(); +@@ -1809,7 +1809,7 @@ void SlaOutputDev::fill(GfxState *state) + void SlaOutputDev::eoFill(GfxState *state) + { + // qDebug() << "EoFill"; +- double *ctm; ++ const double *ctm; + ctm = state->getCTM(); + double xCoor = m_doc->currentPage()->xOffset(); + double yCoor = m_doc->currentPage()->yOffset(); +@@ -1858,14 +1858,14 @@ GBool SlaOutputDev::axialShadedFill(GfxState *state, GfxAxialShading *shading, d + double GrEndX; + double GrEndY; + int shade = 100; +- Function *func = shading->getFunc(0); ++ POPPLER_CONST_070 Function *func = shading->getFunc(0); + VGradient FillGradient = VGradient(VGradient::linear); + FillGradient.clearStops(); + GfxColorSpace *color_space = shading->getColorSpace(); + if (func->getType() == 3) + { + StitchingFunction *stitchingFunc = (StitchingFunction*)func; +- double *bounds = stitchingFunc->getBounds(); ++ const double *bounds = stitchingFunc->getBounds(); + int num_funcs = stitchingFunc->getNumFuncs(); + // Add stops from all the stitched functions + for ( int i = 0 ; i < num_funcs ; i++ ) +@@ -1899,8 +1899,7 @@ GBool SlaOutputDev::axialShadedFill(GfxState *state, GfxAxialShading *shading, d + state->getClipBBox(&xmin, &ymin, &xmax, &ymax); + QRectF crect = QRectF(QPointF(xmin, ymin), QPointF(xmax, ymax)); + crect = crect.normalized(); +- double *ctm; +- ctm = state->getCTM(); ++ const double *ctm = state->getCTM(); + m_ctm = QTransform(ctm[0], ctm[1], ctm[2], ctm[3], ctm[4], ctm[5]); + FPointArray gr; + gr.addPoint(GrStartX, GrStartY); +@@ -1969,14 +1968,14 @@ GBool SlaOutputDev::radialShadedFill(GfxState *state, GfxRadialShading *shading, + double GrEndX; + double GrEndY; + int shade = 100; +- Function *func = shading->getFunc(0); ++ POPPLER_CONST_070 Function *func = shading->getFunc(0); + VGradient FillGradient = VGradient(VGradient::linear); + FillGradient.clearStops(); + GfxColorSpace *color_space = shading->getColorSpace(); + if (func->getType() == 3) + { + StitchingFunction *stitchingFunc = (StitchingFunction*)func; +- double *bounds = stitchingFunc->getBounds(); ++ const double *bounds = stitchingFunc->getBounds(); + int num_funcs = stitchingFunc->getNumFuncs(); + // Add stops from all the stitched functions + for ( int i = 0 ; i < num_funcs ; i++ ) +@@ -2015,8 +2014,7 @@ GBool SlaOutputDev::radialShadedFill(GfxState *state, GfxRadialShading *shading, + double GrFocalY = y1; + GrEndX = GrFocalX + r1; + GrEndY = GrFocalY; +- double *ctm; +- ctm = state->getCTM(); ++ const double *ctm = state->getCTM(); + m_ctm = QTransform(ctm[0], ctm[1], ctm[2], ctm[3], ctm[4], ctm[5]); + FPointArray gr; + gr.addPoint(GrStartX, GrStartY); +@@ -2098,8 +2096,7 @@ GBool SlaOutputDev::gouraudTriangleShadedFill(GfxState *state, GfxGouraudTriangl + output += QString("Z"); + pathIsClosed = true; + Coords = output; +- double *ctm; +- ctm = state->getCTM(); ++ const double *ctm = state->getCTM(); + m_ctm = QTransform(ctm[0], ctm[1], ctm[2], ctm[3], ctm[4], ctm[5]); + int z = m_doc->itemAdd(PageItem::Polygon, PageItem::Rectangle, xCoor + crect.x(), yCoor + crect.y(), crect.width(), crect.height(), 0, CurrColorFill, CommonStrings::None); + PageItem* ite = m_doc->Items->at(z); +@@ -2179,8 +2176,7 @@ GBool SlaOutputDev::patchMeshShadedFill(GfxState *state, GfxPatchMeshShading *sh + output += QString("Z"); + pathIsClosed = true; + Coords = output; +- double *ctm; +- ctm = state->getCTM(); ++ const double *ctm = state->getCTM(); + m_ctm = QTransform(ctm[0], ctm[1], ctm[2], ctm[3], ctm[4], ctm[5]); + int z = m_doc->itemAdd(PageItem::Polygon, PageItem::Rectangle, xCoor + crect.x(), yCoor + crect.y(), crect.width(), crect.height(), 0, CurrColorFill, CommonStrings::None); + PageItem* ite = m_doc->Items->at(z); +@@ -2205,7 +2201,7 @@ GBool SlaOutputDev::patchMeshShadedFill(GfxState *state, GfxPatchMeshShading *sh + for (int i = 0; i < shading->getNPatches(); i++) + { + int shade = 100; +- GfxPatch *patch = shading->getPatch(i); ++ const GfxPatch *patch = shading->getPatch(i); + GfxColor color; + meshGradientPatch patchM; + int u, v; +@@ -2333,8 +2329,7 @@ GBool SlaOutputDev::tilingPatternFill(GfxState *state, Gfx * /*gfx*/, Catalog *c + box.y1 = bbox[1]; + box.x2 = bbox[2]; + box.y2 = bbox[3]; +- double *ctm; +- ctm = state->getCTM(); ++ const double *ctm = state->getCTM(); + m_ctm = QTransform(ctm[0], ctm[1], ctm[2], ctm[3], ctm[4], ctm[5]); + QTransform mm = QTransform(mat[0], mat[1], mat[2], mat[3], mat[4], mat[5]); + QTransform mmx = mm * m_ctm; +@@ -2506,8 +2501,7 @@ void SlaOutputDev::drawImageMask(GfxState *state, Object *ref, Stream *str, int + t++; + } + } +- double *ctm; +- ctm = state->getCTM(); ++ const double *ctm = state->getCTM(); + double xCoor = m_doc->currentPage()->xOffset(); + double yCoor = m_doc->currentPage()->yOffset(); + QRectF crect = QRectF(0, 0, width, height); +@@ -2652,8 +2646,7 @@ void SlaOutputDev::drawSoftMaskedImage(GfxState *state, Object *ref, Stream *str + t++; + } + } +- double *ctm; +- ctm = state->getCTM(); ++ const double *ctm = state->getCTM(); + double xCoor = m_doc->currentPage()->xOffset(); + double yCoor = m_doc->currentPage()->yOffset(); + QRectF crect = QRectF(0, 0, width, height); +@@ -2802,8 +2795,7 @@ void SlaOutputDev::drawMaskedImage(GfxState *state, Object *ref, Stream *str, i + t++; + } + } +- double *ctm; +- ctm = state->getCTM(); ++ const double *ctm = state->getCTM(); + double xCoor = m_doc->currentPage()->xOffset(); + double yCoor = m_doc->currentPage()->yOffset(); + QRectF crect = QRectF(0, 0, width, height); +@@ -2967,8 +2959,7 @@ void SlaOutputDev::drawImage(GfxState *state, Object *ref, Stream *str, int widt + delete image; + return; + } +- double *ctm; +- ctm = state->getCTM(); ++ const double *ctm = state->getCTM(); + double xCoor = m_doc->currentPage()->xOffset(); + double yCoor = m_doc->currentPage()->yOffset(); + QRectF crect = QRectF(0, 0, width, height); +@@ -3328,7 +3319,7 @@ void SlaOutputDev::updateFont(GfxState *state) + char *tmpBuf; + int tmpBufLen = 0; + int *codeToGID; +- double *textMat; ++ const double *textMat; + double m11, m12, m21, m22, fontSize; + SplashCoord mat[4]; + int n = 0; +@@ -3795,8 +3786,7 @@ void SlaOutputDev::drawChar(GfxState *state, double x, double y, double dx, doub + if (f & splashPathLast) + qPath.closeSubpath(); + } +- double *ctm; +- ctm = state->getCTM(); ++ const double *ctm = state->getCTM(); + m_ctm = QTransform(ctm[0], ctm[1], ctm[2], ctm[3], ctm[4], ctm[5]); + double xCoor = m_doc->currentPage()->xOffset(); + double yCoor = m_doc->currentPage()->yOffset(); +@@ -3950,7 +3940,7 @@ void SlaOutputDev::endTextObject(GfxState *state) + } + } + +-QString SlaOutputDev::getColor(GfxColorSpace *color_space, GfxColor *color, int *shade) ++QString SlaOutputDev::getColor(GfxColorSpace *color_space, POPPLER_CONST_070 GfxColor *color, int *shade) + { + QString fNam; + QString namPrefix = "FromPDF"; +diff --git a/scribus/plugins/import/pdf/slaoutput.h b/scribus/plugins/import/pdf/slaoutput.h +index 888cd06..f948724 100644 +--- a/scribus/plugins/import/pdf/slaoutput.h ++++ b/scribus/plugins/import/pdf/slaoutput.h +@@ -28,7 +28,9 @@ for which a new license (GPL+exception) is in place. + #include "selection.h" + #include "vgradient.h" + ++#if POPPLER_ENCODED_VERSION < POPPLER_VERSION_ENCODE(0, 73, 0) + #include ++#endif + #include + #include + #include +@@ -137,7 +139,7 @@ public: + GooString *m_fontName; + GooString *m_itemText; + private: +- QString getColor(GfxColorSpace *color_space, GfxColor *color, int *shade); ++ QString getColor(GfxColorSpace *color_space, POPPLER_CONST_070 GfxColor *color, int *shade); + ScribusDoc* m_doc; + QStringList *m_importedColors; + }; +@@ -263,7 +265,7 @@ public: + + private: + void getPenState(GfxState *state); +- QString getColor(GfxColorSpace *color_space, GfxColor *color, int *shade); ++ QString getColor(GfxColorSpace *color_space, POPPLER_CONST_070 GfxColor *color, int *shade); + QString getAnnotationColor(const AnnotColor *color); + QString convertPath(GfxPath *path); + int getBlendMode(GfxState *state); +-- +2.21.0 + diff --git a/app-office/scribus/scribus-1.5.4.recipe b/app-office/scribus/scribus-1.5.4.recipe index c3a8a25dd..ea446dc2b 100644 --- a/app-office/scribus/scribus-1.5.4.recipe +++ b/app-office/scribus/scribus-1.5.4.recipe @@ -9,15 +9,9 @@ versatile PDF creation." HOMEPAGE="https://www.scribus.net" COPYRIGHT="2014-2017 Scribus Team" LICENSE="GNU GPL v2" -REVISION="1" +REVISION="2" SOURCE_URI="http://downloads.sourceforge.net/project/scribus/scribus-devel/$portVersion/scribus-$portVersion.tar.xz" CHECKSUM_SHA256="6480925250b2bb07028e2f378c02b67fe3e33206743671e03c07c701cd05da03" -SOURCE_URI_2="https://github.com/scribusproject/scribus/commit/d867ec3c386baaed1b8e076dd70b278863411480.patch#noarchive" -CHECKSUM_SHA256_2="0a782958360ad70145a588a5e1c0044d162344e96b4ff9b0aeb31388cc9b2e36" -SOURCE_URI_3="https://github.com/scribusproject/scribus/commit/7d4ceeb5cac32287769e3c0238699e0b3e56c24d.patch#noarchive" -CHECKSUM_SHA256_3="b20bf0588b30d7777551ea6eb5744caf31ef31dd396b2b08cc4bddf9dd3a22cf" -SOURCE_URI_4="https://github.com/scribusproject/scribus/commit/76561c1a55cd07c268f8f2b2fea888532933700b.patch#noarchive" -CHECKSUM_SHA256_4="29b09c7cc95e8a5432010b39a6c0478cb106a1bbb425747fb383092465476106" PATCHES="scribus-$portVersion.patchset" ADDITIONAL_FILES="scribus.rdef.in" @@ -86,7 +80,7 @@ BUILD_REQUIRES=" devel:libmspub_0.1$secondaryArchSuffix devel:libpagemaker_0.0$secondaryArchSuffix devel:libpodofo$secondaryArchSuffix - devel:libpoppler$secondaryArchSuffix + devel:libpoppler$secondaryArchSuffix >= 87 devel:libQt5Core$secondaryArchSuffix devel:libQt5Gui$secondaryArchSuffix devel:libQt5Network$secondaryArchSuffix @@ -107,16 +101,6 @@ BUILD_PREREQUIRES=" cmd:pkg_config$secondaryArchSuffix " -PATCH() -{ - # Fix openssl search - sed -i 's/find_package(OPENSSL)/find_package(OpenSSL)/g' \ - cmake/modules/FindLIBPODOFO.cmake - patch -p1 < $sourceDir2/d867ec3c386baaed1b8e076dd70b278863411480.patch - patch -p1 < $sourceDir3/7d4ceeb5cac32287769e3c0238699e0b3e56c24d.patch - patch -p1 < $sourceDir4/76561c1a55cd07c268f8f2b2fea888532933700b.patch -} - BUILD() { cmake . -DCMAKE_INSTALL_PREFIX=$appsDir/Scribus \