commit: c9526cde161497cd43721f89c6d8aa23328be8e4 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> AuthorDate: Sun Mar 18 14:06:40 2018 +0000 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> CommitDate: Sat Apr 7 15:35:36 2018 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c9526cde
app-text/poppler: Cleanup vulnerable Bug: https://bugs.gentoo.org/644388 Package-Manager: Portage-2.3.24, Repoman-2.3.6 app-text/poppler/Manifest | 2 - .../files/poppler-0.26.0-qt5-dependencies.patch | 31 --- .../poppler/files/poppler-0.33.0-openjpeg2.patch | 15 -- app-text/poppler/files/poppler-0.40-FindQt4.patch | 31 --- .../files/poppler-0.53.0-respect-cflags.patch | 52 ----- .../files/poppler-0.57.0-CVE-2017-14517.patch | 27 --- .../files/poppler-0.57.0-CVE-2017-14518.patch | 27 --- .../files/poppler-0.57.0-CVE-2017-14519.patch | 100 -------- .../files/poppler-0.57.0-CVE-2017-14520.patch | 24 -- .../files/poppler-0.57.0-CVE-2017-14617.patch | 31 --- .../files/poppler-0.57.0-CVE-2017-14926.patch | 36 --- .../files/poppler-0.57.0-CVE-2017-14927.patch | 32 --- .../files/poppler-0.57.0-CVE-2017-14928.patch | 69 ------ .../files/poppler-0.57.0-CVE-2017-14929.patch | 252 --------------------- .../files/poppler-0.57.0-CVE-2017-15565.patch | 28 --- app-text/poppler/poppler-0.57.0-r1.ebuild | 158 ------------- app-text/poppler/poppler-0.61.1.ebuild | 145 ------------ 17 files changed, 1060 deletions(-) diff --git a/app-text/poppler/Manifest b/app-text/poppler/Manifest index b0c5d45b7c7..2a44f3b9a7f 100644 --- a/app-text/poppler/Manifest +++ b/app-text/poppler/Manifest @@ -1,4 +1,2 @@ -DIST poppler-0.57.0.tar.xz 1703300 BLAKE2B e4126dff2e0ee140fa4c5c30d5a57da5aff38d4c1f566e4ace22d3fe625949db3a662a8513881702cd5c5c302845998dd462048b5158abaf1d119650c997c84c SHA512 197a0bf51e7fd607db83144d771904e48f266ab9e1252c688f9e7700a5bdd239670cf0363e9d77137bafa9c08fb6ddb9d066cc78a74dac7dfd717662b25cac5f -DIST poppler-0.61.1.tar.xz 1433696 BLAKE2B 6749466223d3bb0e891c6b26c7f1faa5c774dd47ac94c22474efe4a52af228aeb2abbb8ab268667acaa83fb41293246266124a111740df764eeedbe229fa70aa SHA512 780ebf07ad757635f3f71c7b1f61ad0849526f99f0dc514c3290c4e8db7000a68dfe50c17253d4c086aec5c5390055102478eba96699088179822f3be5ce278d DIST poppler-0.62.0.tar.xz 1423372 BLAKE2B 01c8745d0c1fa5b412ec92295a8784f5c1deff8b9fa709d09a3236d630f78fecc6af23fe3302964478d6356562712726db422ef51fe59a8b42e13e08370a77ac SHA512 91f7eae7b05965ae97a34e658bed2a676be8a6e4d34f82148ece6eb58932632dcf9a34d50c66412f93f560ce575abf5c608ed6b1e5184604b96024801886c706 DIST poppler-0.63.0.tar.xz 1439552 BLAKE2B 9bf5cff7f5fec93ec7d49d1745aadb2b03a68d38216003e4bff54a5d264c9dda10265da79a755af1f31b582602d034cfefb16b807185d674a2cfe0d20e5de277 SHA512 a151d08480e9940a02191355ef5e7499d6494cff05f22f49de2bb8223512f5e5c9bb9b33651943ded30b4cd7096a2423fb7a01fa62228fbcd1d3a221b885cfe9 diff --git a/app-text/poppler/files/poppler-0.26.0-qt5-dependencies.patch b/app-text/poppler/files/poppler-0.26.0-qt5-dependencies.patch deleted file mode 100644 index bf1effd4377..00000000000 --- a/app-text/poppler/files/poppler-0.26.0-qt5-dependencies.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 95f6a96e390830233d953f8afa37817499912b35 Mon Sep 17 00:00:00 2001 -From: Johannes Huber <j...@gentoo.org> -Date: Sat, 10 May 2014 15:00:48 +0200 -Subject: [PATCH] [Qt5] Drop unused dependencies - ---- - CMakeLists.txt | 6 ++---- - 1 file changed, 2 insertions(+), 4 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index fbafc4e..073f39b 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -106,12 +106,10 @@ if(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION} VERSION_ - find_package(Qt5Core) - find_package(Qt5Gui) - find_package(Qt5Xml) -- find_package(Qt5Widgets) -- find_package(Qt5Test) -- if (Qt5Core_FOUND AND Qt5Gui_FOUND AND Qt5Xml_FOUND AND Qt5Widgets_FOUND AND Qt5Test_FOUND) -+ if (Qt5Core_FOUND AND Qt5Gui_FOUND AND Qt5Xml_FOUND) - set(QT5_FOUND true) - else () -- message("-- Package Qt5Core or Qt5Gui or Qt5Xml or Qt5Widgets or Qt5Test not found") -+ message("-- Package Qt5Core or Qt5Gui or Qt5Xml not found") - set(QT5_FOUND false) - endif() - else(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION} VERSION_GREATER 2.8.7) --- -1.9.2 - diff --git a/app-text/poppler/files/poppler-0.33.0-openjpeg2.patch b/app-text/poppler/files/poppler-0.33.0-openjpeg2.patch deleted file mode 100644 index af1a72fe9aa..00000000000 --- a/app-text/poppler/files/poppler-0.33.0-openjpeg2.patch +++ /dev/null @@ -1,15 +0,0 @@ -Sadly the CMake side of openjpeg slotting in Gentoo is broken. -To reliably find openjpeg:2 we need to use pkg-config. - -diff -ruN poppler-0.33.0.orig/CMakeLists.txt poppler-0.33.0/CMakeLists.txt ---- poppler-0.33.0.orig/CMakeLists.txt 2015-05-14 20:22:31.000000000 +0200 -+++ poppler-0.33.0/CMakeLists.txt 2015-05-24 20:39:30.163709257 +0200 -@@ -172,7 +172,7 @@ - set(USE_OPENJPEG1 ${LIBOPENJPEG_FOUND}) - set(WITH_OPENJPEG ${LIBOPENJPEG_FOUND}) - elseif(ENABLE_LIBOPENJPEG STREQUAL "openjpeg2") -- find_package(LIBOPENJPEG2) -+ pkg_check_modules(LIBOPENJPEG2 libopenjp2) - set(USE_OPENJPEG2 ${LIBOPENJPEG2_FOUND}) - set(WITH_OPENJPEG ${LIBOPENJPEG2_FOUND}) - endif() diff --git a/app-text/poppler/files/poppler-0.40-FindQt4.patch b/app-text/poppler/files/poppler-0.40-FindQt4.patch deleted file mode 100644 index 84c58d5f7c7..00000000000 --- a/app-text/poppler/files/poppler-0.40-FindQt4.patch +++ /dev/null @@ -1,31 +0,0 @@ - -Ensure that the correct version of Qt is always used. - -With the introduction qt-4.8.6, Qt binaries were moved from /usr/bin to -/usr/$(get_libdir)/qt4/bin, leaving behind in their place symlinks to qtchooser. - -There is no guarantee to which version of Qt these symlinks might point, so it -is necessary to find the correct version explicitly. - -Once qmake is found, it is queried for the correct location of all other items. - -Gentoo-bug: 572382 - ---- a/cmake/modules/FindQt4.cmake -+++ b/cmake/modules/FindQt4.cmake -@@ -313,11 +313,10 @@ - - GET_FILENAME_COMPONENT(qt_install_version "[HKEY_CURRENT_USER\\Software\\trolltech\\Versions;DefaultQtVersion]" NAME) - # check for qmake --FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake qmake4 qmake-qt4 PATHS -- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Qt3Versions\\4.0.0;InstallDir]/bin" -- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\4.0.0;InstallDir]/bin" -- "[HKEY_CURRENT_USER\\Software\\Trolltech\\Versions\\${qt_install_version};InstallDir]/bin" -- $ENV{QTDIR}/bin -+FIND_PROGRAM(QT_QMAKE_EXECUTABLE NAMES qmake PATHS -+ /usr/${CMAKE_INSTALL_LIBDIR}/qt4/bin -+ /usr/bin -+ NO_DEFAULT_PATH - ) - - IF (QT_QMAKE_EXECUTABLE) diff --git a/app-text/poppler/files/poppler-0.53.0-respect-cflags.patch b/app-text/poppler/files/poppler-0.53.0-respect-cflags.patch deleted file mode 100644 index 3fdd9c20382..00000000000 --- a/app-text/poppler/files/poppler-0.53.0-respect-cflags.patch +++ /dev/null @@ -1,52 +0,0 @@ -diff --git a/cmake/modules/PopplerMacros.cmake b/cmake/modules/PopplerMacros.cmake -index 8e3ef399..5c20bf63 100644 ---- a/cmake/modules/PopplerMacros.cmake -+++ b/cmake/modules/PopplerMacros.cmake -@@ -98,45 +98,14 @@ if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) - set(CMAKE_BUILD_TYPE RelWithDebInfo) - endif(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) - --if(CMAKE_COMPILER_IS_GNUCXX) - if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS "5.0.0") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wsuggest-override" ) - endif() - -- # set the default compile warnings - set(DEFAULT_COMPILE_WARNINGS_NO) - set(DEFAULT_COMPILE_WARNINGS_YES "-Wall -Wcast-align -fno-exceptions -fno-check-new -fno-common") - set(DEFAULT_COMPILE_WARNINGS_KDE "-Wno-long-long -Wundef -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -Wcast-align -Wconversion -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common") - -- set(CMAKE_CXX_FLAGS "-Wnon-virtual-dtor -Woverloaded-virtual ${CMAKE_CXX_FLAGS}") -- set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") -- set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG") -- set(CMAKE_CXX_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") -- set(CMAKE_CXX_FLAGS_DEBUGFULL "-g3 -fno-inline") -- set(CMAKE_CXX_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") -- set(CMAKE_C_FLAGS "-std=c99") -- set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") -- set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG") -- set(CMAKE_C_FLAGS_DEBUG "-g -O2 -fno-reorder-blocks -fno-schedule-insns -fno-inline") -- set(CMAKE_C_FLAGS_DEBUGFULL "-g3 -fno-inline") -- set(CMAKE_C_FLAGS_PROFILE "-g3 -fno-inline -ftest-coverage -fprofile-arcs") -- -- poppler_check_link_flag("-Wl,--as-needed" GCC_HAS_AS_NEEDED) -- if(GCC_HAS_AS_NEEDED) -- set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--as-needed") -- set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--as-needed") -- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--as-needed") -- endif(GCC_HAS_AS_NEEDED) --endif (CMAKE_COMPILER_IS_GNUCXX) -- --if(CMAKE_C_COMPILER MATCHES "icc") -- set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g") -- set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG") -- set(CMAKE_CXX_FLAGS_DEBUG "-O2 -g -0b0 -noalign") -- set(CMAKE_CXX_FLAGS_DEBUGFULL "-g -Ob0 -noalign") -- set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g") -- set(CMAKE_C_FLAGS_RELEASE "-O2 -DNDEBUG") -- set(CMAKE_C_FLAGS_DEBUG "-O2 -g -Ob0 -noalign") -- set(CMAKE_C_FLAGS_DEBUGFULL "-g -Ob0 -noalign") --endif(CMAKE_C_COMPILER MATCHES "icc") -+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Woverloaded-virtual") - -+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99") diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14517.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14517.patch deleted file mode 100644 index 6a0812cdbe8..00000000000 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14517.patch +++ /dev/null @@ -1,27 +0,0 @@ -From b524efeffa8d192c2597f4612ca961adc30286f6 Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid <aa...@kde.org> -Date: Wed, 13 Sep 2017 22:58:14 +0200 -Subject: [PATCH 1/4] XRef::parseEntry: Fix crash in broken file - -Bug #102687 ---- - poppler/XRef.cc | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/poppler/XRef.cc b/poppler/XRef.cc -index 6ea0fbb6..c74f2f60 100644 ---- a/poppler/XRef.cc -+++ b/poppler/XRef.cc -@@ -1603,6 +1603,9 @@ GBool XRef::parseEntry(Goffset offset, XRefEntry *entry) - { - GBool r; - -+ if (unlikely(entry == nullptr)) -+ return gFalse; -+ - Object obj; - obj.initNull(); - Parser parser = Parser(NULL, new Lexer(NULL, --- -2.14.1 - diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14518.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14518.patch deleted file mode 100644 index 9e8f4bfe624..00000000000 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14518.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 6ba3bba6447897260bf4117e191e09d89d91ff62 Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid <aa...@kde.org> -Date: Wed, 13 Sep 2017 23:09:45 +0200 -Subject: [PATCH 2/4] isImageInterpolationRequired: Fix divide by 0 on broken - documents - -Bug #102688 ---- - splash/Splash.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/splash/Splash.cc b/splash/Splash.cc -index 46b8ce29..39fc7d64 100644 ---- a/splash/Splash.cc -+++ b/splash/Splash.cc -@@ -4134,7 +4134,7 @@ SplashError Splash::arbitraryTransformImage(SplashImageSource src, SplashICCTran - static GBool isImageInterpolationRequired(int srcWidth, int srcHeight, - int scaledWidth, int scaledHeight, - GBool interpolate) { -- if (interpolate) -+ if (interpolate || srcWidth == 0 || srcHeight == 0) - return gTrue; - - /* When scale factor is >= 400% we don't interpolate. See bugs #25268, #9860 */ --- -2.14.1 - diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14519.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14519.patch deleted file mode 100644 index bd84e96fba3..00000000000 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14519.patch +++ /dev/null @@ -1,100 +0,0 @@ -From 778180c0c09002f6adfc272eba6b0d0e4401c4cc Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid <aa...@kde.org> -Date: Wed, 13 Sep 2017 23:01:03 +0200 -Subject: [PATCH 3/4] Gfx::doShowText: Fix infinite recursion on broken files - -Bug #102701 ---- - poppler/Gfx.cc | 25 +++++++++++++++++++++++-- - poppler/Gfx.h | 1 + - poppler/GfxFont.cc | 9 +++++++++ - poppler/GfxFont.h | 1 + - 4 files changed, 34 insertions(+), 2 deletions(-) - -diff --git a/poppler/Gfx.cc b/poppler/Gfx.cc -index 37220280..9feac54c 100644 ---- a/poppler/Gfx.cc -+++ b/poppler/Gfx.cc -@@ -4031,12 +4031,33 @@ void Gfx::doShowText(GooString *s) { - state->transformDelta(dx, dy, &ddx, &ddy); - if (!out->beginType3Char(state, curX + riseX, curY + riseY, ddx, ddy, - code, u, uLen)) { -- ((Gfx8BitFont *)font)->getCharProc(code, &charProc); -+ ((Gfx8BitFont *)font)->getCharProcNF(code, &charProc); -+ int refNum = -1; -+ if (charProc.isRef()) { -+ refNum = charProc.getRef().num; -+ charProc.fetch(((Gfx8BitFont *)font)->getCharProcs()->getXRef(), &charProc); -+ } - if ((resDict = ((Gfx8BitFont *)font)->getResources())) { - pushResources(resDict); - } - if (charProc.isStream()) { -- display(&charProc, gFalse); -+ std::set<int>::iterator charProcDrawingIt; -+ bool displayCharProc = true; -+ if (refNum != -1) { -+ if (charProcDrawing.find(refNum) == charProcDrawing.end()) { -+ charProcDrawingIt = charProcDrawing.insert(refNum).first; -+ } else { -+ displayCharProc = false; -+ error(errSyntaxError, -1, "CharProc wants to draw a CharProc that is already beign drawn"); -+ } -+ } -+ if (displayCharProc) { -+ display(&charProc, gFalse); -+ -+ if (refNum != -1) { -+ charProcDrawing.erase(charProcDrawingIt); -+ } -+ } - } else { - error(errSyntaxError, getPos(), "Missing or bad Type3 CharProc entry"); - } -diff --git a/poppler/Gfx.h b/poppler/Gfx.h -index a82f9f4a..44adaed5 100644 ---- a/poppler/Gfx.h -+++ b/poppler/Gfx.h -@@ -228,6 +228,7 @@ private: - Parser *parser; // parser for page content stream(s) - - std::set<int> formsDrawing; // the forms that are being drawn -+ std::set<int> charProcDrawing; // the charProc that are being drawn - - GBool // callback to check for an abort - (*abortCheckCbk)(void *data); -diff --git a/poppler/GfxFont.cc b/poppler/GfxFont.cc -index b59ec06c..bb87c5a0 100644 ---- a/poppler/GfxFont.cc -+++ b/poppler/GfxFont.cc -@@ -1818,6 +1818,15 @@ Object *Gfx8BitFont::getCharProc(int code, Object *proc) { - return proc; - } - -+Object *Gfx8BitFont::getCharProcNF(int code, Object *proc) { -+ if (enc[code] && charProcs.isDict()) { -+ charProcs.dictLookupNF(enc[code], proc); -+ } else { -+ proc->initNull(); -+ } -+ return proc; -+} -+ - Dict *Gfx8BitFont::getResources() { - return resources.isDict() ? resources.getDict() : (Dict *)NULL; - } -diff --git a/poppler/GfxFont.h b/poppler/GfxFont.h -index de7a7464..89a0ca0d 100644 ---- a/poppler/GfxFont.h -+++ b/poppler/GfxFont.h -@@ -353,6 +353,7 @@ public: - - // Return the Type 3 CharProc for the character associated with <code>. - Object *getCharProc(int code, Object *proc); -+ Object *getCharProcNF(int code, Object *proc); - - // Return the Type 3 Resources dictionary, or NULL if none. - Dict *getResources(); --- -2.14.1 - diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14520.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14520.patch deleted file mode 100644 index f71ff53f61a..00000000000 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14520.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 504b3590182175390f474657a372e78fb1508262 Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid <aa...@kde.org> -Date: Thu, 14 Sep 2017 19:14:23 +0200 -Subject: Splash::scaleImage: Do not try to scale if srcHeight or srcWidth are - < 1 - -Bug #102719 - -diff --git a/splash/Splash.cc b/splash/Splash.cc -index 39fc7d6..aba7814 100644 ---- a/splash/Splash.cc -+++ b/splash/Splash.cc -@@ -4152,7 +4152,7 @@ SplashBitmap *Splash::scaleImage(SplashImageSource src, void *srcData, - SplashBitmap *dest; - - dest = new SplashBitmap(scaledWidth, scaledHeight, 1, srcMode, srcAlpha, gTrue, bitmap->getSeparationList()); -- if (dest->getDataPtr() != NULL) { -+ if (dest->getDataPtr() != NULL && srcHeight > 0 && srcWidth > 0) { - if (scaledHeight < srcHeight) { - if (scaledWidth < srcWidth) { - scaleImageYdXd(src, srcData, srcMode, nComps, srcAlpha, --- -cgit v0.10.2 - diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14617.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14617.patch deleted file mode 100644 index 27947953612..00000000000 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14617.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 939465c40902d72e0c05d4f3a27ee67e4a007ed7 Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid <aa...@kde.org> -Date: Tue, 19 Sep 2017 21:19:03 +0200 -Subject: [PATCH] Fix crash in broken files - -Bug #102854 ---- - poppler/Stream.cc | 5 ++--- - 1 file changed, 2 insertions(+), 3 deletions(-) - -diff --git a/poppler/Stream.cc b/poppler/Stream.cc -index f4eda85b..0ad602c7 100644 ---- a/poppler/Stream.cc -+++ b/poppler/Stream.cc -@@ -454,11 +454,10 @@ ImageStream::ImageStream(Stream *strA, int widthA, int nCompsA, int nBitsA) { - } else { - imgLineSize = nVals; - } -- if (width > INT_MAX / nComps) { -- // force a call to gmallocn(-1,...), which will throw an exception -+ if (nComps <= 0 || width > INT_MAX / nComps) { - imgLineSize = -1; - } -- imgLine = (Guchar *)gmallocn(imgLineSize, sizeof(Guchar)); -+ imgLine = (Guchar *)gmallocn_checkoverflow(imgLineSize, sizeof(Guchar)); - } - imgIdx = nVals; - } --- -2.14.1 - diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14926.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14926.patch deleted file mode 100644 index 882cf0e2b8b..00000000000 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14926.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 170fe21144d469d3f865eda6e298df440b784499 Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid <aa...@kde.org> -Date: Fri, 8 Sep 2017 18:28:15 +0200 -Subject: [PATCH 2/3] Annot: Fix crash on broken files - -Bug #102601 - -(cherry picked from commit 2532df6060092e9fab7f041ae9598aff9cdd94bb) ---- - poppler/Annot.cc | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/poppler/Annot.cc b/poppler/Annot.cc -index 27b698db..643ff12c 100644 ---- a/poppler/Annot.cc -+++ b/poppler/Annot.cc -@@ -6865,13 +6865,13 @@ AnnotRichMedia::Content::Content(Dict *dict) { - assets = (Asset **)gmallocn(nAssets, sizeof(Asset *)); - - int counter = 0; -- for (int i = 0; i < obj2.arrayGetLength(); i += 2) { -+ for (int i = 0; i < nAssets; ++i) { - Object objKey; - - assets[counter] = new AnnotRichMedia::Asset; - -- obj2.arrayGet(i, &objKey); -- obj2.arrayGet(i + 1, &assets[counter]->fileSpec); -+ obj2.arrayGet(i * 2, &objKey); -+ obj2.arrayGet(i * 2 + 1, &assets[counter]->fileSpec); - - assets[counter]->name = new GooString( objKey.getString() ); - ++counter; --- -2.14.1 - diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14927.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14927.patch deleted file mode 100644 index 3595345800f..00000000000 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14927.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 876e7f76159e2b12ee7d2d396f327dd2cc90bcb0 Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid <aa...@kde.org> -Date: Fri, 8 Sep 2017 18:26:05 +0200 -Subject: [PATCH 3/3] SplashOutputDev: Fix crash on broken files - -Bug #102604 - -(cherry picked from commit 6472d8493f7e82cc78b41da20a2bf19fcb4e0a7d) ---- - poppler/SplashOutputDev.cc | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/poppler/SplashOutputDev.cc b/poppler/SplashOutputDev.cc -index 5502be64..46b55a42 100644 ---- a/poppler/SplashOutputDev.cc -+++ b/poppler/SplashOutputDev.cc -@@ -2714,7 +2714,11 @@ void SplashOutputDev::endType3Char(GfxState *state) { - } - - void SplashOutputDev::type3D0(GfxState *state, double wx, double wy) { -- t3GlyphStack->haveDx = gTrue; -+ if (likely(t3GlyphStack != nullptr)) { -+ t3GlyphStack->haveDx = gTrue; -+ } else { -+ error(errSyntaxWarning, -1, "t3GlyphStack was null in SplashOutputDev::type3D0"); -+ } - } - - void SplashOutputDev::type3D1(GfxState *state, double wx, double wy, --- -2.14.1 - diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14928.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14928.patch deleted file mode 100644 index bd2af863423..00000000000 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14928.patch +++ /dev/null @@ -1,69 +0,0 @@ -From 6bf7212c44d0131c8f8227a4a4dadc52a3afebd9 Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid <aa...@kde.org> -Date: Fri, 8 Sep 2017 18:29:42 +0200 -Subject: [PATCH 1/3] Annot: Fix crash on broken files - -Bug #102607 - -(cherry picked from commit 1316c7a41f4dd7276f404f775ebb5fef2d24ab1c) ---- - poppler/Annot.cc | 42 +++++++++++++++++++++++------------------- - 1 file changed, 23 insertions(+), 19 deletions(-) - -diff --git a/poppler/Annot.cc b/poppler/Annot.cc -index 974b098b..27b698db 100644 ---- a/poppler/Annot.cc -+++ b/poppler/Annot.cc -@@ -6982,26 +6982,30 @@ AnnotRichMedia::Configuration::Configuration(Dict *dict) - } else if (!strcmp(name, "Video")) { - type = typeVideo; - } else { -- // determine from first instance -+ // determine from first non null instance -+ type = typeFlash; // default in case all instances are null - if (instances && nInstances > 0) { -- AnnotRichMedia::Instance *instance = instances[0]; -- switch (instance->getType()) { -- case AnnotRichMedia::Instance::type3D: -- type = type3D; -- break; -- case AnnotRichMedia::Instance::typeFlash: -- type = typeFlash; -- break; -- case AnnotRichMedia::Instance::typeSound: -- type = typeSound; -- break; -- case AnnotRichMedia::Instance::typeVideo: -- type = typeVideo; -- break; -- default: -- type = typeFlash; -- break; -- } -+ for (int i = 0; i < nInstances; ++i) { -+ AnnotRichMedia::Instance *instance = instances[i]; -+ if (instance) { -+ switch (instance->getType()) { -+ case AnnotRichMedia::Instance::type3D: -+ type = type3D; -+ break; -+ case AnnotRichMedia::Instance::typeFlash: -+ type = typeFlash; -+ break; -+ case AnnotRichMedia::Instance::typeSound: -+ type = typeSound; -+ break; -+ case AnnotRichMedia::Instance::typeVideo: -+ type = typeVideo; -+ break; -+ } -+ // break the loop since we found the first non null instance -+ break; -+ } -+ } - } - } - } --- -2.14.1 - diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14929.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-14929.patch deleted file mode 100644 index 11745ca5436..00000000000 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-14929.patch +++ /dev/null @@ -1,252 +0,0 @@ -From accdc5be215c7ee3223e3ad21dee7708d910ef23 Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid <aa...@kde.org> -Date: Mon, 25 Sep 2017 19:33:44 +0200 -Subject: [PATCH 4/4] Fix infinite recursion on broken files - -Bug #102969 ---- - poppler/Gfx.cc | 46 ++++++++++++++++++++++++++++++++++------------ - poppler/GfxState.cc | 33 ++++++++++++++++++--------------- - poppler/GfxState.h | 15 +++++++++------ - 3 files changed, 61 insertions(+), 33 deletions(-) - -diff --git a/poppler/Gfx.cc b/poppler/Gfx.cc -index 9feac54c..66d0a24c 100644 ---- a/poppler/Gfx.cc -+++ b/poppler/Gfx.cc -@@ -468,8 +468,14 @@ GfxPattern *GfxResources::lookupPattern(char *name, OutputDev *out, GfxState *st - - for (resPtr = this; resPtr; resPtr = resPtr->next) { - if (resPtr->patternDict.isDict()) { -- if (!resPtr->patternDict.dictLookup(name, &obj)->isNull()) { -- pattern = GfxPattern::parse(resPtr, &obj, out, state); -+ if (!resPtr->patternDict.dictLookupNF(name, &obj)->isNull()) { -+ Ref patternRef = { -1, -1 }; -+ if (obj.isRef()) { -+ patternRef = obj.getRef(); -+ obj.fetch(resPtr->patternDict.getDict()->getXRef(), &obj); -+ } -+ -+ pattern = GfxPattern::parse(resPtr, &obj, out, state, patternRef.num); - obj.free(); - return pattern; - } -@@ -2298,18 +2304,34 @@ void Gfx::doTilingPatternFill(GfxTilingPattern *tPat, - xi0, yi0, xi1, yi1, xstep, ystep)) { - goto restore; - } else { -- out->updatePatternOpacity(state); -- for (yi = yi0; yi < yi1; ++yi) { -- for (xi = xi0; xi < xi1; ++xi) { -- x = xi * xstep; -- y = yi * ystep; -- m1[4] = x * m[0] + y * m[2] + m[4]; -- m1[5] = x * m[1] + y * m[3] + m[5]; -- drawForm(tPat->getContentStream(), tPat->getResDict(), -- m1, tPat->getBBox()); -+ bool shouldDrawForm = gTrue; -+ std::set<int>::iterator patternRefIt; -+ const int patternRefNum = tPat->getPatternRefNum(); -+ if (patternRefNum != -1) { -+ if (formsDrawing.find(patternRefNum) == formsDrawing.end()) { -+ patternRefIt = formsDrawing.insert(patternRefNum).first; -+ } else { -+ shouldDrawForm = gFalse; -+ } -+ } -+ -+ if (shouldDrawForm) { -+ out->updatePatternOpacity(state); -+ for (yi = yi0; yi < yi1; ++yi) { -+ for (xi = xi0; xi < xi1; ++xi) { -+ x = xi * xstep; -+ y = yi * ystep; -+ m1[4] = x * m[0] + y * m[2] + m[4]; -+ m1[5] = x * m[1] + y * m[3] + m[5]; -+ drawForm(tPat->getContentStream(), tPat->getResDict(), -+ m1, tPat->getBBox()); -+ } -+ } -+ out->clearPatternOpacity(state); -+ if (patternRefNum != -1) { -+ formsDrawing.erase(patternRefIt); - } - } -- out->clearPatternOpacity(state); - } - - // restore graphics state -diff --git a/poppler/GfxState.cc b/poppler/GfxState.cc -index f61f8124..90030b10 100644 ---- a/poppler/GfxState.cc -+++ b/poppler/GfxState.cc -@@ -3446,14 +3446,17 @@ void GfxPatternColorSpace::getDefaultColor(GfxColor *color) { - // Pattern - //------------------------------------------------------------------------ - --GfxPattern::GfxPattern(int typeA) { -- type = typeA; -+GfxPattern::GfxPattern(int typeA, int patternRefNumA) -+ : type(typeA) -+ , patternRefNum(patternRefNumA) -+{ -+ - } - - GfxPattern::~GfxPattern() { - } - --GfxPattern *GfxPattern::parse(GfxResources *res, Object *obj, OutputDev *out, GfxState *state) { -+GfxPattern *GfxPattern::parse(GfxResources *res, Object *obj, OutputDev *out, GfxState *state, int patternRefNum) { - GfxPattern *pattern; - Object obj1; - -@@ -3466,9 +3469,9 @@ GfxPattern *GfxPattern::parse(GfxResources *res, Object *obj, OutputDev *out, Gf - } - pattern = NULL; - if (obj1.isInt() && obj1.getInt() == 1) { -- pattern = GfxTilingPattern::parse(obj); -+ pattern = GfxTilingPattern::parse(obj, patternRefNum); - } else if (obj1.isInt() && obj1.getInt() == 2) { -- pattern = GfxShadingPattern::parse(res, obj, out, state); -+ pattern = GfxShadingPattern::parse(res, obj, out, state, patternRefNum); - } - obj1.free(); - return pattern; -@@ -3478,7 +3481,7 @@ GfxPattern *GfxPattern::parse(GfxResources *res, Object *obj, OutputDev *out, Gf - // GfxTilingPattern - //------------------------------------------------------------------------ - --GfxTilingPattern *GfxTilingPattern::parse(Object *patObj) { -+GfxTilingPattern *GfxTilingPattern::parse(Object *patObj, int patternRefNum) { - GfxTilingPattern *pat; - Dict *dict; - int paintTypeA, tilingTypeA; -@@ -3555,7 +3558,7 @@ GfxTilingPattern *GfxTilingPattern::parse(Object *patObj) { - obj1.free(); - - pat = new GfxTilingPattern(paintTypeA, tilingTypeA, bboxA, xStepA, yStepA, -- &resDictA, matrixA, patObj); -+ &resDictA, matrixA, patObj, patternRefNum); - resDictA.free(); - return pat; - } -@@ -3563,8 +3566,8 @@ GfxTilingPattern *GfxTilingPattern::parse(Object *patObj) { - GfxTilingPattern::GfxTilingPattern(int paintTypeA, int tilingTypeA, - double *bboxA, double xStepA, double yStepA, - Object *resDictA, double *matrixA, -- Object *contentStreamA): -- GfxPattern(1) -+ Object *contentStreamA, int patternRefNumA) : -+ GfxPattern(1, patternRefNumA) - { - int i; - -@@ -3589,14 +3592,14 @@ GfxTilingPattern::~GfxTilingPattern() { - - GfxPattern *GfxTilingPattern::copy() { - return new GfxTilingPattern(paintType, tilingType, bbox, xStep, yStep, -- &resDict, matrix, &contentStream); -+ &resDict, matrix, &contentStream, getPatternRefNum()); - } - - //------------------------------------------------------------------------ - // GfxShadingPattern - //------------------------------------------------------------------------ - --GfxShadingPattern *GfxShadingPattern::parse(GfxResources *res, Object *patObj, OutputDev *out, GfxState *state) { -+GfxShadingPattern *GfxShadingPattern::parse(GfxResources *res, Object *patObj, OutputDev *out, GfxState *state, int patternRefNum) { - Dict *dict; - GfxShading *shadingA; - double matrixA[6]; -@@ -3629,11 +3632,11 @@ GfxShadingPattern *GfxShadingPattern::parse(GfxResources *res, Object *patObj, O - } - obj1.free(); - -- return new GfxShadingPattern(shadingA, matrixA); -+ return new GfxShadingPattern(shadingA, matrixA, patternRefNum); - } - --GfxShadingPattern::GfxShadingPattern(GfxShading *shadingA, double *matrixA): -- GfxPattern(2) -+GfxShadingPattern::GfxShadingPattern(GfxShading *shadingA, double *matrixA, int patternRefNumA): -+ GfxPattern(2, patternRefNumA) - { - int i; - -@@ -3648,7 +3651,7 @@ GfxShadingPattern::~GfxShadingPattern() { - } - - GfxPattern *GfxShadingPattern::copy() { -- return new GfxShadingPattern(shading->copy(), matrix); -+ return new GfxShadingPattern(shading->copy(), matrix, getPatternRefNum()); - } - - //------------------------------------------------------------------------ -diff --git a/poppler/GfxState.h b/poppler/GfxState.h -index 7bcedf2a..4b13fb2a 100644 ---- a/poppler/GfxState.h -+++ b/poppler/GfxState.h -@@ -762,18 +762,21 @@ private: - class GfxPattern { - public: - -- GfxPattern(int typeA); -+ GfxPattern(int typeA, int patternRefNumA); - virtual ~GfxPattern(); - -- static GfxPattern *parse(GfxResources *res, Object *obj, OutputDev *out, GfxState *state); -+ static GfxPattern *parse(GfxResources *res, Object *obj, OutputDev *out, GfxState *state, int patternRefNum); - - virtual GfxPattern *copy() = 0; - - int getType() { return type; } - -+ int getPatternRefNum() const { return patternRefNum; } -+ - private: - - int type; -+ int patternRefNum; - }; - - //------------------------------------------------------------------------ -@@ -783,7 +786,7 @@ private: - class GfxTilingPattern: public GfxPattern { - public: - -- static GfxTilingPattern *parse(Object *patObj); -+ static GfxTilingPattern *parse(Object *patObj, int patternRefNum); - ~GfxTilingPattern(); - - GfxPattern *copy() override; -@@ -803,7 +806,7 @@ private: - GfxTilingPattern(int paintTypeA, int tilingTypeA, - double *bboxA, double xStepA, double yStepA, - Object *resDictA, double *matrixA, -- Object *contentStreamA); -+ Object *contentStreamA, int patternRefNumA); - - int paintType; - int tilingType; -@@ -821,7 +824,7 @@ private: - class GfxShadingPattern: public GfxPattern { - public: - -- static GfxShadingPattern *parse(GfxResources *res, Object *patObj, OutputDev *out, GfxState *state); -+ static GfxShadingPattern *parse(GfxResources *res, Object *patObj, OutputDev *out, GfxState *state, int patternRefNum); - ~GfxShadingPattern(); - - GfxPattern *copy() override; -@@ -831,7 +834,7 @@ public: - - private: - -- GfxShadingPattern(GfxShading *shadingA, double *matrixA); -+ GfxShadingPattern(GfxShading *shadingA, double *matrixA, int patternRefNumA); - - GfxShading *shading; - double matrix[6]; --- -2.14.1 - diff --git a/app-text/poppler/files/poppler-0.57.0-CVE-2017-15565.patch b/app-text/poppler/files/poppler-0.57.0-CVE-2017-15565.patch deleted file mode 100644 index 7e4db3f0445..00000000000 --- a/app-text/poppler/files/poppler-0.57.0-CVE-2017-15565.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 19ebd40547186a8ea6da08c8d8e2a6d6b7e84f5d Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid <aa...@kde.org> -Date: Fri, 13 Oct 2017 00:55:49 +0200 -Subject: [PATCH] CairoOutputDev: Fix crash in broken files - -Bug #103016 ---- - poppler/CairoOutputDev.cc | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/poppler/CairoOutputDev.cc b/poppler/CairoOutputDev.cc -index ffd39ef7..80f7a99e 100644 ---- a/poppler/CairoOutputDev.cc -+++ b/poppler/CairoOutputDev.cc -@@ -2714,7 +2714,9 @@ void CairoOutputDev::drawSoftMaskedImage(GfxState *state, Object *ref, Stream *s - for (y = 0; y < maskHeight; y++) { - maskDest = (unsigned char *) (maskBuffer + y * row_stride); - pix = maskImgStr->getLine(); -- maskColorMap->getGrayLine (pix, maskDest, maskWidth); -+ if (likely(pix != nullptr)) { -+ maskColorMap->getGrayLine (pix, maskDest, maskWidth); -+ } - } - - maskImgStr->close(); --- -2.14.1 - diff --git a/app-text/poppler/poppler-0.57.0-r1.ebuild b/app-text/poppler/poppler-0.57.0-r1.ebuild deleted file mode 100644 index 5d861ea5fff..00000000000 --- a/app-text/poppler/poppler-0.57.0-r1.ebuild +++ /dev/null @@ -1,158 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit cmake-utils toolchain-funcs xdg-utils - -if [[ "${PV}" == "9999" ]] ; then - inherit git-r3 - EGIT_REPO_URI="git://git.freedesktop.org/git/${PN}/${PN}" - SLOT="0/9999" -else - SRC_URI="https://poppler.freedesktop.org/${P}.tar.xz" - KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - SLOT="0/68" # CHECK THIS WHEN BUMPING!!! SUBSLOT IS libpoppler.so SOVERSION -fi - -DESCRIPTION="PDF rendering library based on the xpdf-3.0 code base" -HOMEPAGE="https://poppler.freedesktop.org/" - -LICENSE="GPL-2" -IUSE="cairo cjk curl cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt4 qt5 tiff +utils" - -# No test data provided -RESTRICT="test" - -COMMON_DEPEND=" - >=media-libs/fontconfig-2.6.0 - >=media-libs/freetype-2.3.9 - sys-libs/zlib - cairo? ( - dev-libs/glib:2 - >=x11-libs/cairo-1.10.0 - introspection? ( >=dev-libs/gobject-introspection-1.32.1:= ) - ) - curl? ( net-misc/curl ) - jpeg? ( virtual/jpeg:0 ) - jpeg2k? ( media-libs/openjpeg:2= ) - lcms? ( media-libs/lcms:2 ) - nss? ( >=dev-libs/nss-3.19:0 ) - png? ( media-libs/libpng:0= ) - qt4? ( - dev-qt/qtcore:4 - dev-qt/qtgui:4 - ) - qt5? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtxml:5 - ) - tiff? ( media-libs/tiff:0 ) -" -DEPEND="${COMMON_DEPEND} - virtual/pkgconfig -" -RDEPEND="${COMMON_DEPEND} - cjk? ( >=app-text/poppler-data-0.4.7 ) -" - -DOCS=(AUTHORS NEWS README README-XPDF TODO) - -PATCHES=( - "${FILESDIR}/${PN}-0.26.0-qt5-dependencies.patch" - "${FILESDIR}/${PN}-0.28.1-fix-multilib-configuration.patch" - "${FILESDIR}/${PN}-0.53.0-respect-cflags.patch" - "${FILESDIR}/${PN}-0.33.0-openjpeg2.patch" - "${FILESDIR}/${PN}-0.40-FindQt4.patch" - "${FILESDIR}/${P}-disable-internal-jpx.patch" - # Fedora backports from upstream - "${FILESDIR}/${P}-CVE-2017-14517.patch" - "${FILESDIR}/${P}-CVE-2017-14518.patch" - "${FILESDIR}/${P}-CVE-2017-14519.patch" - "${FILESDIR}/${P}-CVE-2017-14520.patch" - "${FILESDIR}/${P}-CVE-2017-14617.patch" - "${FILESDIR}/${P}-CVE-2017-14926.patch" - "${FILESDIR}/${P}-CVE-2017-14927.patch" - "${FILESDIR}/${P}-CVE-2017-14928.patch" - "${FILESDIR}/${P}-CVE-2017-14929.patch" - "${FILESDIR}/${P}-CVE-2017-15565.patch" -) - -src_prepare() { - cmake-utils_src_prepare - - # Clang doesn't grok this flag, the configure nicely tests that, but - # cmake just uses it, so remove it if we use clang - if [[ ${CC} == clang ]] ; then - sed -i -e 's/-fno-check-new//' cmake/modules/PopplerMacros.cmake || die - fi - - if ! grep -Fq 'cmake_policy(SET CMP0002 OLD)' CMakeLists.txt ; then - sed '/^cmake_minimum_required/acmake_policy(SET CMP0002 OLD)' \ - -i CMakeLists.txt || die - else - einfo "policy(SET CMP0002 OLD) - workaround can be removed" - fi - - if tc-is-clang && [[ ${CHOST} == *-darwin* ]] ; then - # we need to up the C++ version, bug #622526 - export CXX="$(tc-getCXX) -std=c++11" - fi -} - -src_configure() { - xdg_environment_reset - local mycmakeargs=( - -DBUILD_GTK_TESTS=OFF - -DBUILD_QT4_TESTS=OFF - -DBUILD_QT5_TESTS=OFF - -DBUILD_CPP_TESTS=OFF - -DENABLE_SPLASH=ON - -DENABLE_ZLIB=ON - -DENABLE_ZLIB_UNCOMPRESS=OFF - -DENABLE_XPDF_HEADERS=ON - -DENABLE_LIBCURL="$(usex curl)" - -DENABLE_CPP="$(usex cxx)" - -DENABLE_UTILS="$(usex utils)" - -DSPLASH_CMYK=OFF - -DUSE_FIXEDPOINT=OFF - -DUSE_FLOAT=OFF - -DWITH_Cairo="$(usex cairo)" - -DWITH_GObjectIntrospection="$(usex introspection)" - -DWITH_JPEG="$(usex jpeg)" - -DWITH_NSS3="$(usex nss)" - -DWITH_PNG="$(usex png)" - -DWITH_Qt4="$(usex qt4)" - $(cmake-utils_use_find_package qt5 Qt5Core) - -DWITH_TIFF="$(usex tiff)" - ) - if use jpeg; then - mycmakeargs+=(-DENABLE_DCTDECODER=libjpeg) - else - mycmakeargs+=(-DENABLE_DCTDECODER=none) - fi - if use jpeg2k; then - mycmakeargs+=(-DENABLE_LIBOPENJPEG=openjpeg2) - else - mycmakeargs+=(-DENABLE_LIBOPENJPEG=none) - fi - if use lcms; then - mycmakeargs+=(-DENABLE_CMS=lcms2) - else - mycmakeargs+=(-DENABLE_CMS=) - fi - - cmake-utils_src_configure -} - -src_install() { - cmake-utils_src_install - - # live version doesn't provide html documentation - if use cairo && use doc && [[ ${PV} != 9999 ]]; then - # For now install gtk-doc there - insinto /usr/share/gtk-doc/html/poppler - doins -r "${S}"/glib/reference/html/* - fi -} diff --git a/app-text/poppler/poppler-0.61.1.ebuild b/app-text/poppler/poppler-0.61.1.ebuild deleted file mode 100644 index c4516a9b703..00000000000 --- a/app-text/poppler/poppler-0.61.1.ebuild +++ /dev/null @@ -1,145 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit cmake-utils flag-o-matic toolchain-funcs xdg-utils - -if [[ "${PV}" == "9999" ]] ; then - inherit git-r3 - EGIT_REPO_URI="git://git.freedesktop.org/git/${PN}/${PN}" - SLOT="0/9999" -else - SRC_URI="https://poppler.freedesktop.org/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" - SLOT="0/72" # CHECK THIS WHEN BUMPING!!! SUBSLOT IS libpoppler.so SOVERSION -fi - -DESCRIPTION="PDF rendering library based on the xpdf-3.0 code base" -HOMEPAGE="https://poppler.freedesktop.org/" - -LICENSE="GPL-2" -IUSE="cairo cjk curl cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt4 qt5 tiff +utils" - -# No test data provided -RESTRICT="test" - -COMMON_DEPEND=" - >=media-libs/fontconfig-2.6.0 - >=media-libs/freetype-2.3.9 - sys-libs/zlib - cairo? ( - dev-libs/glib:2 - >=x11-libs/cairo-1.10.0 - introspection? ( >=dev-libs/gobject-introspection-1.32.1:= ) - ) - curl? ( net-misc/curl ) - jpeg? ( virtual/jpeg:0 ) - jpeg2k? ( media-libs/openjpeg:2= ) - lcms? ( media-libs/lcms:2 ) - nss? ( >=dev-libs/nss-3.19:0 ) - png? ( media-libs/libpng:0= ) - qt4? ( - dev-qt/qtcore:4 - dev-qt/qtgui:4 - ) - qt5? ( - dev-qt/qtcore:5 - dev-qt/qtgui:5 - dev-qt/qtxml:5 - ) - tiff? ( media-libs/tiff:0 ) -" -DEPEND="${COMMON_DEPEND} - virtual/pkgconfig -" -RDEPEND="${COMMON_DEPEND} - cjk? ( >=app-text/poppler-data-0.4.7 ) -" - -DOCS=(AUTHORS NEWS README README-XPDF) - -PATCHES=( - "${FILESDIR}/${PN}-0.60.1-qt5-dependencies.patch" - "${FILESDIR}/${PN}-0.28.1-fix-multilib-configuration.patch" - "${FILESDIR}/${PN}-0.61.0-respect-cflags.patch" - "${FILESDIR}/${PN}-0.33.0-openjpeg2.patch" - "${FILESDIR}/${PN}-0.40-FindQt4.patch" - "${FILESDIR}/${PN}-0.57.0-disable-internal-jpx.patch" -) - -src_prepare() { - cmake-utils_src_prepare - - # Clang doesn't grok this flag, the configure nicely tests that, but - # cmake just uses it, so remove it if we use clang - if [[ ${CC} == clang ]] ; then - sed -i -e 's/-fno-check-new//' cmake/modules/PopplerMacros.cmake || die - fi - - if ! grep -Fq 'cmake_policy(SET CMP0002 OLD)' CMakeLists.txt ; then - sed '/^cmake_minimum_required/acmake_policy(SET CMP0002 OLD)' \ - -i CMakeLists.txt || die - else - einfo "policy(SET CMP0002 OLD) - workaround can be removed" - fi - - # we need to up the C++ version, bug #622526, #643278 - append-cxxflags -std=c++11 -} - -src_configure() { - xdg_environment_reset - local mycmakeargs=( - -DBUILD_GTK_TESTS=OFF - -DBUILD_QT4_TESTS=OFF - -DBUILD_QT5_TESTS=OFF - -DBUILD_CPP_TESTS=OFF - -DENABLE_SPLASH=ON - -DENABLE_ZLIB=ON - -DENABLE_ZLIB_UNCOMPRESS=OFF - -DENABLE_XPDF_HEADERS=ON - -DENABLE_LIBCURL="$(usex curl)" - -DENABLE_CPP="$(usex cxx)" - -DENABLE_UTILS="$(usex utils)" - -DSPLASH_CMYK=OFF - -DUSE_FIXEDPOINT=OFF - -DUSE_FLOAT=OFF - -DWITH_Cairo="$(usex cairo)" - -DWITH_GObjectIntrospection="$(usex introspection)" - -DWITH_JPEG="$(usex jpeg)" - -DWITH_NSS3="$(usex nss)" - -DWITH_PNG="$(usex png)" - -DWITH_Qt4="$(usex qt4)" - $(cmake-utils_use_find_package qt5 Qt5Core) - -DWITH_TIFF="$(usex tiff)" - ) - if use jpeg; then - mycmakeargs+=(-DENABLE_DCTDECODER=libjpeg) - else - mycmakeargs+=(-DENABLE_DCTDECODER=none) - fi - if use jpeg2k; then - mycmakeargs+=(-DENABLE_LIBOPENJPEG=openjpeg2) - else - mycmakeargs+=(-DENABLE_LIBOPENJPEG=none) - fi - if use lcms; then - mycmakeargs+=(-DENABLE_CMS=lcms2) - else - mycmakeargs+=(-DENABLE_CMS=) - fi - - cmake-utils_src_configure -} - -src_install() { - cmake-utils_src_install - - # live version doesn't provide html documentation - if use cairo && use doc && [[ ${PV} != 9999 ]]; then - # For now install gtk-doc there - insinto /usr/share/gtk-doc/html/poppler - doins -r "${S}"/glib/reference/html/* - fi -}