From 9e628ad5e53de1efe616497d5811757fd74c494fcad87ca706cfe0cebe8d81c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Br=C3=BCns?= Date: Thu, 5 Dec 2019 22:32:58 +0000 Subject: [PATCH] Accepting request 754504 from home:iznogood:factory - Add inkscape-fix-for-poppler-0.83.patch: Fix build with poppler 0.83 and newer. - Update URL to new homepage. OBS-URL: https://build.opensuse.org/request/show/754504 OBS-URL: https://build.opensuse.org/package/show/graphics/inkscape?expand=0&rev=56 --- inkscape-fix-for-poppler-0.83.patch | 105 ++++++++++++++++++++++++++++ inkscape.changes | 7 ++ inkscape.spec | 6 +- 3 files changed, 116 insertions(+), 2 deletions(-) create mode 100644 inkscape-fix-for-poppler-0.83.patch diff --git a/inkscape-fix-for-poppler-0.83.patch b/inkscape-fix-for-poppler-0.83.patch new file mode 100644 index 0000000..d46598d --- /dev/null +++ b/inkscape-fix-for-poppler-0.83.patch @@ -0,0 +1,105 @@ +From b5360a807b12d4e8318475ffd0464b84882788b5 Mon Sep 17 00:00:00 2001 +From: Jan Tojnar +Date: Tue, 3 Dec 2019 00:17:05 +0100 +Subject: [PATCH] Fix build with Poppler 0.83.0 + +(cherry picked from commit 51351358a62acb6887eab49bc0dc4a7a3d18c17a) +--- + src/extension/internal/pdfinput/pdf-input.cpp | 6 +++--- + src/extension/internal/pdfinput/pdf-parser.cpp | 4 ++-- + .../internal/pdfinput/poppler-transition-api.h | 12 ++++++++++++ + src/extension/internal/pdfinput/svg-builder.cpp | 4 ++-- + 4 files changed, 19 insertions(+), 7 deletions(-) + +diff --git a/src/extension/internal/pdfinput/pdf-input.cpp b/src/extension/internal/pdfinput/pdf-input.cpp +index 9621e306a0..7027b7e642 100644 +--- a/src/extension/internal/pdfinput/pdf-input.cpp ++++ b/src/extension/internal/pdfinput/pdf-input.cpp +@@ -689,12 +689,12 @@ PdfInput::open(::Inkscape::Extension::Input * /*mod*/, const gchar * uri) { + // + 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 --git a/src/extension/internal/pdfinput/pdf-parser.cpp b/src/extension/internal/pdfinput/pdf-parser.cpp +index e71bb79381..2ff448828d 100644 +--- a/src/extension/internal/pdfinput/pdf-parser.cpp ++++ b/src/extension/internal/pdfinput/pdf-parser.cpp +@@ -272,7 +272,7 @@ public: + 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 @@ ClipHistoryEntry::~ClipHistoryEntry() + } + } + +-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 --git a/src/extension/internal/pdfinput/poppler-transition-api.h b/src/extension/internal/pdfinput/poppler-transition-api.h +index 93c0f99ba1..1118c0849f 100644 +--- a/src/extension/internal/pdfinput/poppler-transition-api.h ++++ b/src/extension/internal/pdfinput/poppler-transition-api.h +@@ -3,6 +3,12 @@ + + #include + ++#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(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 --git a/src/extension/internal/pdfinput/svg-builder.cpp b/src/extension/internal/pdfinput/svg-builder.cpp +index ea2940ffe1..6454089134 100644 +--- a/src/extension/internal/pdfinput/svg-builder.cpp ++++ b/src/extension/internal/pdfinput/svg-builder.cpp +@@ -264,10 +264,10 @@ static void svgSetTransform(Inkscape::XML::Node *node, double c0, double c1, + /** + * \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; +-- +2.22.0 + diff --git a/inkscape.changes b/inkscape.changes index 1ec29fe..e364304 100644 --- a/inkscape.changes +++ b/inkscape.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Thu Dec 5 18:13:25 UTC 2019 - Bjørn Lie + +- Add inkscape-fix-for-poppler-0.83.patch: Fix build with poppler + 0.83 and newer. +- Update URL to new homepage. + ------------------------------------------------------------------- Sat Nov 2 11:46:16 UTC 2019 - Bjørn Lie diff --git a/inkscape.spec b/inkscape.spec index 77c9f70..2910631 100644 --- a/inkscape.spec +++ b/inkscape.spec @@ -1,7 +1,7 @@ # # spec file for package inkscape # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -22,7 +22,7 @@ Release: 0 Summary: Vector Illustration Program License: GPL-3.0-only Group: Productivity/Graphics/Vector Editors -Url: http://www.inkscape.org/ +URL: https://inkscape.org/ #Source: https://media.inkscape.org/dl/resources/file/%%{name}-%%{version}.tar.bz2 Source: %{name}-%{version}.tar.bz2 @@ -47,6 +47,8 @@ Patch6: f5e0ea893f34_extensions_python3_compatibility.patch Patch7: mr_582_extensions_python3_compatibility.patch # PATCH-FIX-UPSTREAM inkscape-fix-for-poppler-0.82.patch -- Fix build poppler 0.82 Patch8: inkscape-fix-for-poppler-0.82.patch +# PATCH-FIX-UPSTREAM inkscape-fix-for-poppler-0.83.patch -- Fix build poppler 0.83 +Patch9: inkscape-fix-for-poppler-0.83.patch BuildRequires: gtkspell-devel %if 0%{?suse_version} > 1325