summaryrefslogtreecommitdiff
path: root/media-gfx/inkscape
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-02-16 00:13:18 +0000
committerV3n3RiX <venerix@koprulu.sector>2025-02-16 00:13:18 +0000
commitf2bdc27fe0f79f8f9a3945eb2b1163ce75c56439 (patch)
treedd0f7da0455831dffb2cb662e7dae760f92e68ad /media-gfx/inkscape
parent770d63f36dbe1722e0ff9ab55eeca49986f01527 (diff)
gentoo auto-resync : 16:02:2025 - 00:13:18
Diffstat (limited to 'media-gfx/inkscape')
-rw-r--r--media-gfx/inkscape/Manifest3
-rw-r--r--media-gfx/inkscape/files/inkscape-1.4-poppler-25.02.0.patch179
-rw-r--r--media-gfx/inkscape/inkscape-1.4-r1.ebuild1
3 files changed, 182 insertions, 1 deletions
diff --git a/media-gfx/inkscape/Manifest b/media-gfx/inkscape/Manifest
index c6017b9a63ec..9b1b2b87a7b4 100644
--- a/media-gfx/inkscape/Manifest
+++ b/media-gfx/inkscape/Manifest
@@ -2,7 +2,8 @@ AUX inkscape-1.4-gcc15.patch 1088 BLAKE2B 56e9e4e14d87d20d7a03e388105ccdaa219fc2
AUX inkscape-1.4-poppler-24.10-fix-backport.patch 19196 BLAKE2B 02f58958180e2362f1e11a1cbacd72611b37cdaa41abd922df6106ef5485f243ef105286a92727b5731a4d0f607846a3e0a48fa53e3b9542d3667f136fd07f9b SHA512 6283ccd63157bc8ccdcf6127afa72cb50a72a9f09ec2327a5f180f0eb2d212e5600ed0f3d31df845cf6d20c2fe84d01f1edb126f39456a27de36cca616495fb9
AUX inkscape-1.4-poppler-24.11.0.patch 2860 BLAKE2B e22bdc2ba2b394e3a3b5dcaa47297034b3bf0ef5198ad52d858f473ddb3f07b9b74c6ebc440705c0ca5c143dd5a2712cf70a46d0211a197afd909e177a55799f SHA512 e5a21326bc1191a5c037698a89d3022613a840736f0199954a4685027786126cc65f889241cd813d98807168dd3ddd9156b2cb927d62e29087d2cd51d5fd41f3
AUX inkscape-1.4-poppler-24.12.0.patch 2049 BLAKE2B 23db3612e7c1527394c23de92a4ae25d5120012bfb3f61ddb2d99c282b49f14bee82f25873a8be3e21eff5da55cccfa694317b73726663f9810dbf2060211097 SHA512 99946d8266f818b26993860a96aba32d23d548970b94fe9fc66aefe3bec088c04fae9bdf2f146600f9588e7b4158ac2660e09697e57d7f5d50669d2d56eb4023
+AUX inkscape-1.4-poppler-25.02.0.patch 7137 BLAKE2B 2b1db205866926d59e211873ea0403738642c204822205002a009c77d51ca3a31e40a725c59c41b0d1cbf82b74c196aa75eacea5996214d8cac40e0f91445b38 SHA512 337a987d86feffd316f3a9a9644be079992912d6e4b55ebb8dd2e97a6bc6c49c48694722a811288259a1c3adeea01ac550263cc2154b2c591839b14a97c7b1f9
DIST inkscape-1.4.tar.xz 46321868 BLAKE2B 3f21402019995122f043f5ebd8f07e1c9548c507f27c494e4214e090c46acae016c21f950609c95cef2e1b0011693e6629326d733b257402391e2d919bcd0303 SHA512 3b81306b81416597073e7eda2a103112cee63493bcf96fa737bb1edfbd682ebb329e415bbbbfda877aef2a78dc376460040ebc5c0cc2c90c0fe60db5d7d12368
-EBUILD inkscape-1.4-r1.ebuild 5897 BLAKE2B 270efa14f368ed220b2463ce7f75ce55f8f9cced82f827cf8c0bb82e31f5049e8e56fae3bdfd3139943064d2a0576c0601563a17c9ec90e0d25831cc7649924b SHA512 cb7212c9894cb5e5f5243a3a0eb0bd4d59412a77eda1cf0385686ce1fa0f2ec4dfce70aa97256b8046edebb847232f90ccb6c48aa97e53f20d00d4db3998f3a6
+EBUILD inkscape-1.4-r1.ebuild 5952 BLAKE2B 35e9835016c29e5c88585d2c4950a3bfc8c235cbd231873268d9873889c27cd5e9814e9efd112acb5055db4a55ae04bab32d568d30b05a0c9c997e0536784d5a SHA512 3f1e7413764c77fd937f659f9be17d8c00190e096c946ef40ad55ca8ff53e84fc3bd8b5506d8a2c60c9426f3ff086ee66d3084f9ab6b94cc6338bb372f35c7bd
EBUILD inkscape-9999.ebuild 5683 BLAKE2B 9cb6edc014ae7b2f98a7c919ffd5a71a79168e406f4b6a2eb399e59200f9d0aa13990696c7f63b4910546bb02fd2cbd9a317337dfc184151ad6c625a6b105a47 SHA512 9ed2fcf53d8403a81903ecc62c1be47d36d3f8e62a08e7f1956f50fba72c3f241d542f5bcff0d8f3bf323ed668268643331d89dd7b2d9dc8fc1b09ae57818e09
MISC metadata.xml 982 BLAKE2B f44f534865614c8dd7bf71e92ce69cff708fc08e3eb701765bf93144b433ec52df52a506b69cc98969909c695015881b60592cccdf27613c6fe82812fc50727b SHA512 2963a9b473f139d06cefd1c3231ef148045c005adb4688850522c183f39ba15a36331b7eae7752e9bf15a26e6370f2af14ec02e59735f1753246c45821c0cdbc
diff --git a/media-gfx/inkscape/files/inkscape-1.4-poppler-25.02.0.patch b/media-gfx/inkscape/files/inkscape-1.4-poppler-25.02.0.patch
new file mode 100644
index 000000000000..21f41e1b155c
--- /dev/null
+++ b/media-gfx/inkscape/files/inkscape-1.4-poppler-25.02.0.patch
@@ -0,0 +1,179 @@
+From 5c4c6d116dae5250d75d34a45f0d9220824d2e20 Mon Sep 17 00:00:00 2001
+From: KrIr17 <elendil.krir17@gmail.com>
+Date: Sun, 9 Feb 2025 22:52:53 +0530
+Subject: [PATCH] Fix building with poppler 25.02.0
+
+1. `getCodeToGIDMap`, `getCIDToGID`, `getCIDToGIDMap` are now `std::vector`
+
+2. `pdfDocEncodingToUTF16` returns an `std::string`
+---
+ .../pdfinput/poppler-cairo-font-engine.cpp | 50 +++++++++++++++----
+ .../pdfinput/poppler-transition-api.h | 20 +++++---
+ 3 files changed, 63 insertions(+), 16 deletions(-)
+
+diff --git a/src/extension/internal/pdfinput/poppler-cairo-font-engine.cpp b/src/extension/internal/pdfinput/poppler-cairo-font-engine.cpp
+index 728b1d1aac4..bd1d4e49367 100644
+--- a/src/extension/internal/pdfinput/poppler-cairo-font-engine.cpp
++++ b/src/extension/internal/pdfinput/poppler-cairo-font-engine.cpp
+@@ -405,14 +405,22 @@ CairoFreeTypeFont *CairoFreeTypeFont::create(GfxFont *gfxFont, XRef *xref, FT_Li
+ break;
+ case fontCIDType2:
+ case fontCIDType2OT:
++#if POPPLER_CHECK_VERSION(25,2,0)
++ if (!gfxcid->getCIDToGID().empty()) {
++ const auto src = gfxcid->getCIDToGID();
++ codeToGID = std::move(src);
++ }
++#else
+ if (gfxcid->getCIDToGID()) {
+ n = gfxcid->getCIDToGIDLen();
+ if (n) {
+- const int *src = gfxcid->getCIDToGID();
++ const auto src = gfxcid->getCIDToGID();
+ codeToGID.reserve(n);
+ codeToGID.insert(codeToGID.begin(), src, src + n);
+ }
+- } else {
++ }
++#endif
++ else {
+ #if POPPLER_CHECK_VERSION(22, 1, 0)
+ std::unique_ptr<FoFiTrueType> ff;
+ #else
+@@ -427,13 +435,18 @@ CairoFreeTypeFont *CairoFreeTypeFont::create(GfxFont *gfxFont, XRef *xref, FT_Li
+ goto err2;
+ }
+ #if POPPLER_CHECK_VERSION(22, 1, 0)
+- int *src = gfxcid->getCodeToGIDMap(ff.get(), &n);
++ auto src = gfxcid->_POPPLER_GET_CODE_TO_GID_MAP(ff.get(), &n);
+ #else
+- int *src = gfxcid->getCodeToGIDMap(ff, &n);
++ auto src = gfxcid->_POPPLER_GET_CODE_TO_GID_MAP(ff, &n);
+ #endif
++
++#if POPPLER_CHECK_VERSION(25,2,0)
++ codeToGID = std::move(src);
++#else
+ codeToGID.reserve(n);
+ codeToGID.insert(codeToGID.begin(), src, src + n);
+ gfree(src);
++#endif
+ }
+ /* Fall through */
+ case fontTrueType:
+@@ -455,13 +468,17 @@ CairoFreeTypeFont *CairoFreeTypeFont::create(GfxFont *gfxFont, XRef *xref, FT_Li
+ /* This might be set already for the CIDType2 case */
+ if (fontType == fontTrueType || fontType == fontTrueTypeOT) {
+ #if POPPLER_CHECK_VERSION(22, 1, 0)
+- int *src = gfx8bit->getCodeToGIDMap(ff.get());
++ auto src = gfx8bit->getCodeToGIDMap(ff.get());
+ #else
+- int *src = gfx8bit->getCodeToGIDMap(ff);
++ auto src = gfx8bit->getCodeToGIDMap(ff);
+ #endif
++#if POPPLER_CHECK_VERSION(25,2,0)
++ codeToGID = std::move(src);
++#else
+ codeToGID.reserve(256);
+ codeToGID.insert(codeToGID.begin(), src, src + 256);
+ gfree(src);
++#endif
+ }
+ font_face = getFreeTypeFontFace(fontEngine, lib, fileName, std::move(font_data));
+ if (!font_face) {
+@@ -479,10 +496,14 @@ CairoFreeTypeFont *CairoFreeTypeFont::create(GfxFont *gfxFont, XRef *xref, FT_Li
+ ff1c = FoFiType1C::load(fileName.c_str());
+ }
+ if (ff1c) {
+- int *src = ff1c->getCIDToGIDMap(&n);
++ auto src = ff1c->_POPPLER_GET_CID_TO_GID_MAP(&n);
++#if POPPLER_CHECK_VERSION(25,2,0)
++ codeToGID = std::move(src);
++#else
+ codeToGID.reserve(n);
+ codeToGID.insert(codeToGID.begin(), src, src + n);
+ gfree(src);
++#endif
+ delete ff1c;
+ }
+ }
+@@ -495,14 +516,21 @@ CairoFreeTypeFont *CairoFreeTypeFont::create(GfxFont *gfxFont, XRef *xref, FT_Li
+ break;
+
+ case fontCIDType0COT:
++#if POPPLER_CHECK_VERSION(25,2,0)
++ if (!gfxcid->getCIDToGID().empty()) {
++ const auto src = gfxcid->getCIDToGID();
++ codeToGID = std::move(src);
++ }
++#else
+ if (gfxcid->getCIDToGID()) {
+ n = gfxcid->getCIDToGIDLen();
+ if (n) {
+- const int *src = gfxcid->getCIDToGID();
++ const auto src = gfxcid->getCIDToGID();
+ codeToGID.reserve(n);
+ codeToGID.insert(codeToGID.begin(), src, src + n);
+ }
+ }
++#endif
+
+ if (codeToGID.empty()) {
+ if (!useCIDs) {
+@@ -518,10 +546,14 @@ CairoFreeTypeFont *CairoFreeTypeFont::create(GfxFont *gfxFont, XRef *xref, FT_Li
+ }
+ if (ff) {
+ if (ff->isOpenTypeCFF()) {
+- int *src = ff->getCIDToGIDMap(&n);
++ auto src = ff1c->_POPPLER_GET_CID_TO_GID_MAP(&n);
++#if POPPLER_CHECK_VERSION(25,2,0)
++ codeToGID = std::move(src);
++#else
+ codeToGID.reserve(n);
+ codeToGID.insert(codeToGID.begin(), src, src + n);
+ gfree(src);
++#endif
+ }
+ }
+ }
+diff --git a/src/extension/internal/pdfinput/poppler-transition-api.h b/src/extension/internal/pdfinput/poppler-transition-api.h
+index b7a54828e74..a67132ba6bd 100644
+--- a/src/extension/internal/pdfinput/poppler-transition-api.h
++++ b/src/extension/internal/pdfinput/poppler-transition-api.h
+@@ -15,6 +15,20 @@
+ #include <glib/poppler-features.h>
+ #include <poppler/UTF.h>
+
++#if POPPLER_CHECK_VERSION(25,2,0)
++#define _POPPLER_GET_CODE_TO_GID_MAP(ff, len) getCodeToGIDMap(ff)
++#define _POPPLER_GET_CID_TO_GID_MAP(len) getCIDToGIDMap()
++#else
++#define _POPPLER_GET_CODE_TO_GID_MAP(ff, len) getCodeToGIDMap(ff, len)
++#define _POPPLER_GET_CID_TO_GID_MAP(len) getCIDToGIDMap(len)
++#endif
++
++#if POPPLER_CHECK_VERSION(24,12,0)
++#define _POPPLER_GET_IMAGE_PARAMS(bits, csMode, hasAlpha) getImageParams(bits, csMode, hasAlpha)
++#else
++#define _POPPLER_GET_IMAGE_PARAMS(bits, csMode, hasAlpha) getImageParams(bits, csMode)
++#endif
++
+ #if POPPLER_CHECK_VERSION(24, 10, 0)
+ #define _POPPLER_CONSUME_UNIQPTR_ARG(value) std::move(value)
+ #else
+@@ -39,12 +53,6 @@
+ #define _POPPLER_FUNCTION_TYPE_STITCHING 3
+ #endif
+
+-#if POPPLER_CHECK_VERSION(24,12,0)
+-#define _POPPLER_GET_IMAGE_PARAMS(bits, csMode, hasAlpha) getImageParams(bits, csMode, hasAlpha)
+-#else
+-#define _POPPLER_GET_IMAGE_PARAMS(bits, csMode, hasAlpha) getImageParams(bits, csMode)
+-#endif
+-
+ #if POPPLER_CHECK_VERSION(22, 4, 0)
+ #define _POPPLER_FONTPTR_TO_GFX8(font_ptr) ((Gfx8BitFont *)font_ptr.get())
+ #else
+--
+GitLab
+
diff --git a/media-gfx/inkscape/inkscape-1.4-r1.ebuild b/media-gfx/inkscape/inkscape-1.4-r1.ebuild
index 574250c2b239..5991d288758d 100644
--- a/media-gfx/inkscape/inkscape-1.4-r1.ebuild
+++ b/media-gfx/inkscape/inkscape-1.4-r1.ebuild
@@ -117,6 +117,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-1.4-poppler-24.10-fix-backport.patch
"${FILESDIR}"/${P}-poppler-24.11.0.patch # bug 943499
"${FILESDIR}"/${P}-poppler-24.12.0.patch # bug 946597
+ "${FILESDIR}"/${P}-poppler-25.02.0.patch # bug 949531
)
pkg_pretend() {