diff options
author | Andreas K. Hüttel <dilfridge@gentoo.org> | 2020-01-06 11:29:32 +0100 |
---|---|---|
committer | Andreas K. Hüttel <dilfridge@gentoo.org> | 2020-01-06 11:31:20 +0100 |
commit | 63a3936462dd26cc99802cb9a8263fd157796fb8 (patch) | |
tree | 1c7dbb2a3eebd22acb0a5983ef9ef6f29cd89c05 /media-gfx/inkscape | |
parent | dev-libs/efl: set +X by default (diff) | |
download | gentoo-63a3936462dd26cc99802cb9a8263fd157796fb8.tar.gz gentoo-63a3936462dd26cc99802cb9a8263fd157796fb8.tar.bz2 gentoo-63a3936462dd26cc99802cb9a8263fd157796fb8.zip |
media-gfx/inkscape: Fix build with Poppler 0.83.0 and 0.84.0
Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>
Diffstat (limited to 'media-gfx/inkscape')
-rw-r--r-- | media-gfx/inkscape/files/inkscape-0.92.4-poppler-0.83.0.patch | 92 | ||||
-rw-r--r-- | media-gfx/inkscape/inkscape-0.92.4.ebuild | 3 |
2 files changed, 94 insertions, 1 deletions
diff --git a/media-gfx/inkscape/files/inkscape-0.92.4-poppler-0.83.0.patch b/media-gfx/inkscape/files/inkscape-0.92.4-poppler-0.83.0.patch new file mode 100644 index 000000000000..bcfb1cd482eb --- /dev/null +++ b/media-gfx/inkscape/files/inkscape-0.92.4-poppler-0.83.0.patch @@ -0,0 +1,92 @@ +From 51351358a62acb6887eab49bc0dc4a7a3d18c17a Mon Sep 17 00:00:00 2001 +From: Jan Tojnar <jtojnar@gmail.com> +Date: Tue, 3 Dec 2019 00:17:05 +0100 +Subject: [PATCH] Fix build with Poppler 0.83.0 + +Fixed for gentoo by dilfridge@gentoo.org + +diff -ruN inkscape-0.92.4.orig/src/extension/internal/pdfinput/pdf-input.cpp inkscape-0.92.4/src/extension/internal/pdfinput/pdf-input.cpp +--- inkscape-0.92.4.orig/src/extension/internal/pdfinput/pdf-input.cpp 2019-01-15 05:29:27.000000000 +0100 ++++ inkscape-0.92.4/src/extension/internal/pdfinput/pdf-input.cpp 2020-01-06 10:55:05.105063212 +0100 +@@ -689,12 +689,12 @@ + // + gchar const *poppler_datadir = g_getenv("POPPLER_DATADIR"); + if (poppler_datadir != NULL) { +- globalParams = new GlobalParams(poppler_datadir); ++ globalParams = _POPPLER_NEW_GLOBAL_PARAMS(poppler_datadir); + } else { +- globalParams = new GlobalParams(); ++ globalParams = _POPPLER_NEW_GLOBAL_PARAMS(); + } + #else +- globalParams = new GlobalParams(); ++ globalParams = _POPPLER_NEW_GLOBAL_PARAMS(); + #endif // ENABLE_OSX_APP_LOCATIONS + } + +diff -ruN inkscape-0.92.4.orig/src/extension/internal/pdfinput/pdf-parser.cpp inkscape-0.92.4/src/extension/internal/pdfinput/pdf-parser.cpp +--- inkscape-0.92.4.orig/src/extension/internal/pdfinput/pdf-parser.cpp 2020-01-06 10:53:44.947229010 +0100 ++++ inkscape-0.92.4/src/extension/internal/pdfinput/pdf-parser.cpp 2020-01-06 10:56:49.611773932 +0100 +@@ -272,7 +272,7 @@ + ClipHistoryEntry *save(); + ClipHistoryEntry *restore(); + GBool hasSaves() { return saved != NULL; } +- void setClip(GfxPath *newClipPath, GfxClipType newClipType = clipNormal); ++ void setClip(_POPPLER_CONST_83 GfxPath *newClipPath, GfxClipType newClipType = clipNormal); + GfxPath *getClipPath() { return clipPath; } + GfxClipType getClipType() { return clipType; } + +@@ -3394,7 +3394,7 @@ + } + } + +-void ClipHistoryEntry::setClip(GfxPath *clipPathA, GfxClipType clipTypeA) { ++void ClipHistoryEntry::setClip(_POPPLER_CONST_83 GfxPath *clipPathA, GfxClipType clipTypeA) { + // Free previous clip path + if (clipPath) { + delete clipPath; +diff -ruN inkscape-0.92.4.orig/src/extension/internal/pdfinput/poppler-transition-api.h inkscape-0.92.4/src/extension/internal/pdfinput/poppler-transition-api.h +--- inkscape-0.92.4.orig/src/extension/internal/pdfinput/poppler-transition-api.h 2020-01-06 10:53:44.947229010 +0100 ++++ inkscape-0.92.4/src/extension/internal/pdfinput/poppler-transition-api.h 2020-01-06 10:55:05.107063491 +0100 +@@ -3,6 +3,12 @@ + + #include <glib/poppler-features.h> + ++#if POPPLER_CHECK_VERSION(0, 83, 0) ++#define _POPPLER_CONST_83 const ++#else ++#define _POPPLER_CONST_83 ++#endif ++ + #if POPPLER_CHECK_VERSION(0, 82, 0) + #define _POPPLER_CONST_82 const + #else +@@ -15,6 +21,12 @@ + #define _POPPLER_NEW_PARSER(xref, obj) Parser(xref, new Lexer(xref, obj), gFalse) + #endif + ++#if POPPLER_CHECK_VERSION(0, 83, 0) ++#define _POPPLER_NEW_GLOBAL_PARAMS(args...) std::unique_ptr<GlobalParams>(new GlobalParams(args)) ++#else ++#define _POPPLER_NEW_GLOBAL_PARAMS(args...) new GlobalParams(args) ++#endif ++ + + #if POPPLER_CHECK_VERSION(0, 72, 0) + #define getCString c_str +diff -ruN inkscape-0.92.4.orig/src/extension/internal/pdfinput/svg-builder.cpp inkscape-0.92.4/src/extension/internal/pdfinput/svg-builder.cpp +--- inkscape-0.92.4.orig/src/extension/internal/pdfinput/svg-builder.cpp 2020-01-06 10:53:44.948229017 +0100 ++++ inkscape-0.92.4/src/extension/internal/pdfinput/svg-builder.cpp 2020-01-06 10:55:05.107063491 +0100 +@@ -264,10 +264,10 @@ + /** + * \brief Generates a SVG path string from poppler's data structure + */ +-static gchar *svgInterpretPath(GfxPath *path) { ++static gchar *svgInterpretPath(_POPPLER_CONST_83 GfxPath *path) { + Inkscape::SVG::PathString pathString; + for (int i = 0 ; i < path->getNumSubpaths() ; ++i ) { +- GfxSubpath *subpath = path->getSubpath(i); ++ _POPPLER_CONST_83 GfxSubpath *subpath = path->getSubpath(i); + if (subpath->getNumPoints() > 0) { + pathString.moveTo(subpath->getX(0), subpath->getY(0)); + int j = 1; diff --git a/media-gfx/inkscape/inkscape-0.92.4.ebuild b/media-gfx/inkscape/inkscape-0.92.4.ebuild index 87203911632c..912f6b6098bd 100644 --- a/media-gfx/inkscape/inkscape-0.92.4.ebuild +++ b/media-gfx/inkscape/inkscape-0.92.4.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -99,6 +99,7 @@ PATCHES=( "${FILESDIR}/${PN}-0.48.4-epython.patch" "${FILESDIR}/${PN}-0.92.4-poppler-0.76.0.patch" #684246 "${FILESDIR}/${PN}-0.92.4-poppler-0.82.0.patch" + "${FILESDIR}/${PN}-0.92.4-poppler-0.83.0.patch" ) S="${WORKDIR}/${MY_P}" |