diff options
author | Alois Nespor | 2017-09-29 09:55:21 +0200 |
---|---|---|
committer | Alois Nespor | 2017-09-29 09:55:21 +0200 |
commit | c0f60168f82b9e8c41750501c7403d939ba747b2 (patch) | |
tree | bdc61a1c5bdb2716d5c18e0b1c51596c98f5aab0 | |
parent | 3dab561072f27d59c0fe15ff236527c210b1cd78 (diff) | |
download | aur-c0f60168f82b9e8c41750501c7403d939ba747b2.tar.gz |
Update + patch for poppler>=0.58
-rwxr-xr-x | .SRCINFO | 10 | ||||
-rwxr-xr-x | PKGBUILD | 20 | ||||
-rw-r--r-- | poppler0.58.patch | 195 |
3 files changed, 215 insertions, 10 deletions
@@ -1,9 +1,9 @@ # Generated by mksrcinfo v8 -# Sat Aug 5 09:44:38 UTC 2017 +# Fri Sep 29 07:51:32 UTC 2017 pkgbase = boomaga-qt5 pkgdesc = is a virtual printer for viewing a document before printing it out using the physical printer - QT5 version without KDE pkgver = 0.9.1 - pkgrel = 1 + pkgrel = 2 url = http://www.boomaga.org/ arch = i686 arch = x86_64 @@ -12,10 +12,12 @@ pkgbase = boomaga-qt5 depends = qt5-tools depends = ghostscript depends = snappy - depends = poppler + depends = poppler>=0.58 conflicts = boomaga source = https://github.com/boomaga/boomaga/archive/v0.9.1.tar.gz - md5sums = 412769d55f72afc6a646a00725274b1a + source = poppler0.58.patch + sha256sums = e09548f5938d391ee85d044aec8871b93ff9c912b05932af3c2a1efaf83473ea + sha256sums = 5fe507db5151358f8da74fecc73bdbb2638a734a9b168de7f7cc5a9152d00098 pkgname = boomaga-qt5 @@ -3,19 +3,25 @@ pkgname=boomaga-qt5 _name=boomaga pkgver=0.9.1 -pkgrel=1 +pkgrel=2 pkgdesc="is a virtual printer for viewing a document before printing it out using the physical printer - QT5 version without KDE" arch=('i686' 'x86_64') url="http://www.boomaga.org/" license=('LGPL') -depends=('qt5-tools' 'ghostscript' 'snappy' 'poppler') +depends=('qt5-tools' 'ghostscript' 'snappy' 'poppler>=0.58') makedepends=('cmake') conflicts=('boomaga') -source=("https://github.com/boomaga/boomaga/archive/v$pkgver.tar.gz") -md5sums=('412769d55f72afc6a646a00725274b1a') +source=("https://github.com/boomaga/boomaga/archive/v$pkgver.tar.gz" +poppler0.58.patch) + +prepare() { + cd $_name-$pkgver + patch -Np1 -i ../poppler0.58.patch +} + build() { - cd $srcdir/${_name}-$pkgver + cd $_name-$pkgver cmake . -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=Release \ -DUSE_QT5=Yes @@ -23,7 +29,9 @@ build() { } package() { - cd ${srcdir}/${_name}-${pkgver} + cd $_name-$pkgver make "DESTDIR=$pkgdir" install install -D -m755 $srcdir/$_name-$pkgver/scripts/installPrinter.sh ${pkgdir}/usr/bin/ } +sha256sums=('e09548f5938d391ee85d044aec8871b93ff9c912b05932af3c2a1efaf83473ea' + '5fe507db5151358f8da74fecc73bdbb2638a734a9b168de7f7cc5a9152d00098') diff --git a/poppler0.58.patch b/poppler0.58.patch new file mode 100644 index 000000000000..85df3b22c601 --- /dev/null +++ b/poppler0.58.patch @@ -0,0 +1,195 @@ +From bee6187c7d70ea3e66b5428433b15ddb9e849200 Mon Sep 17 00:00:00 2001 +From: David Tardon <dtardon@redhat.com> +Date: Tue, 5 Sep 2017 17:23:29 +0200 +Subject: [PATCH] adapt to poppler 0.58 + +--- + gui/kernel/boomagapoppler.cpp | 16 ++++++++++++++++ + gui/pdfmerger/pdfmerger.cpp | 43 +++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 59 insertions(+) + +diff --git a/gui/kernel/boomagapoppler.cpp b/gui/kernel/boomagapoppler.cpp +index 0a9d8c7..f975a94 100644 +--- a/gui/kernel/boomagapoppler.cpp ++++ b/gui/kernel/boomagapoppler.cpp +@@ -134,7 +134,11 @@ class PJLFileStream: protected PJLFileStreamData, public FileStream + public: + PJLFileStream(const QString &fileName, qint64 startPos, qint64 endPos): + PJLFileStreamData(fileName, startPos, endPos), ++#if POPPLER_VERSION < 5800 + FileStream(mFile, mStartPos, true, mLength, new Object()) ++#else ++ FileStream(mFile, mStartPos, true, mLength, Object()) ++#endif + { + } + +@@ -189,12 +193,20 @@ QString BoomagaPDFDoc::getMetaInfo(const char *tag) + QString result; + Object docInfo; + ++#if POPPLER_VERSION < 5800 + getDocInfo(&docInfo); ++#else ++ docInfo = getDocInfo(); ++#endif + if (docInfo.isDict()) + { + Dict *dict = docInfo.getDict(); + Object obj; ++#if POPPLER_VERSION < 5800 + dict->lookup((char*)tag, &obj); ++#else ++ obj = dict->lookup((char*)tag); ++#endif + + if (obj.isString()) + { +@@ -211,10 +223,14 @@ QString BoomagaPDFDoc::getMetaInfo(const char *tag) + } + } + ++#if POPPLER_VERSION < 5800 + obj.free(); ++#endif + + } ++#if POPPLER_VERSION < 5800 + docInfo.free(); ++#endif + + return result; + } +diff --git a/gui/pdfmerger/pdfmerger.cpp b/gui/pdfmerger/pdfmerger.cpp +index 848ae09..ff85868 100644 +--- a/gui/pdfmerger/pdfmerger.cpp ++++ b/gui/pdfmerger/pdfmerger.cpp +@@ -109,11 +109,18 @@ void writeTrailer(XRef *xRef, int rootNum, OutStream* stream) + ref.num = rootNum; + ref.gen = 0; + ++#if POPPLER_VERSION < 5800 + Dict *trailerDict = PDFDoc::createTrailerDict(xRef->getNumObjects(), false, 0, &ref, xRef, + "fileName", stream->getPos()); + PDFDoc::writeXRefTableTrailer(trailerDict, xRef, false /* do not write unnecessary entries */, + uxrefOffset, stream, xRef); + delete trailerDict; ++#else ++ Object trailerDict = PDFDoc::createTrailerDict(xRef->getNumObjects(), false, 0, &ref, xRef, ++ "fileName", stream->getPos()); ++ PDFDoc::writeXRefTableTrailer(std::move(trailerDict), xRef, false /* do not write unnecessary entries */, ++ uxrefOffset, stream, xRef); ++#endif + #endif + } + +@@ -238,9 +245,15 @@ OutStream &operator<<(OutStream &stream, const int value) + OutStream &operator<<(OutStream &stream, Stream &value) + { + Object obj1; ++#if POPPLER_VERSION < 5800 + value.getDict()->lookup((char*)"Length", &obj1); ++#else ++ obj1 = value.getDict()->lookup((char*)"Length"); ++#endif + const int length = obj1.getInt(); ++#if POPPLER_VERSION < 5800 + obj1.free(); ++#endif + + value.unfilteredReset(); + +@@ -278,8 +291,10 @@ class PdfMergerPageInfo: public PdfPageInfo + + ~PdfMergerPageInfo() + { ++#if POPPLER_VERSION < 5800 + page.free(); + stream.free(); ++#endif + } + + PDFDoc *doc; +@@ -308,7 +323,11 @@ QString PdfMergerPageInfo::dump() + for (int i=0; i < array->getLength(); ++i) + { + Object o; ++#if POPPLER_VERSION < 5800 + array->get(i, &o); ++#else ++ o = array->get(i); ++#endif + res += QString(" * %1 - %2\n").arg(i).arg(o.getTypeName()); + } + } +@@ -448,7 +467,11 @@ bool PdfMerger::run(const QString &outFileName) + + pageInfo->doc = doc; + pageInfo->numOffset = numOffset; ++#if POPPLER_VERSION < 5800 + doc->getXRef()->fetch(refPage->num, refPage->gen, &(pageInfo->page)); ++#else ++ pageInfo->page = doc->getXRef()->fetch(refPage->num, refPage->gen); ++#endif + Dict *pageDict = pageInfo->page.getDict(); + + PDFRectangle *mediaBox = page->getMediaBox(); +@@ -469,7 +492,11 @@ bool PdfMerger::run(const QString &outFileName) + pageInfo->pageNum = i; + if (pageDict->hasKey((char *)"Contents")) + { ++#if POPPLER_VERSION < 5800 + pageDict->lookup((char *)"Contents", &(pageInfo->stream)); ++#else ++ pageInfo->stream = pageDict->lookup((char *)"Contents"); ++#endif + pageDict->remove((char *)"Contents"); + } + +@@ -575,11 +602,17 @@ void PdfMerger::writeStreamAsXObject(PdfMergerPageInfo *pageInfo, Stream *stream + for (int i=0; i<dict->getLength(); ++i) + { + Object value; ++#if POPPLER_VERSION < 5800 + dict->getVal(i, &value); ++#else ++ dict->getVal(i); ++#endif + *mStream << "/" << dict->getKey(i) << " "; + POPPLER_WriteObject(&value, 0, mStream, &mXRef, pageInfo->numOffset); + *mStream << "\n"; ++#if POPPLER_VERSION < 5800 + value.free(); ++#endif + } + *mStream << " >>\n"; + +@@ -617,7 +650,11 @@ bool PdfMerger::writePageAsXObject(PdfMergerPageInfo *pageInfo) + for (int i=0; i < array->getLength(); ++i) + { + Object o; ++#if POPPLER_VERSION < 5800 + array->get(i, &o); ++#else ++ o = array->get(i); ++#endif + if (!o.isStream()) + { + warning("Page content is array with incorrect item type:\n" + pageInfo->dump() + "\n"); +@@ -643,10 +680,16 @@ bool PdfMerger::writeDictValue(Dict *dict, const char *key, Guint numOffset) + return false; + + Object value; ++#if POPPLER_VERSION < 5800 + dict->lookupNF((char*)key, &value); ++#else ++ value = dict->lookupNF((char*)key); ++#endif + *mStream << "/" << key << " "; + POPPLER_WriteObject(&value, 0, mStream, &mXRef, numOffset); + *mStream << "\n"; ++#if POPPLER_VERSION < 5800 + value.free(); ++#endif + return true; + } |