commit 7e9f180c2be73ce50ce1fb530e11fbe1d3621dfe Author: Danny Rawlins <monster.romster@gmail.com> Date: Sat Feb 1 18:38:43 2020 +1100 inkscape: poppler rebuild diff --git a/inkscape/.footprint b/inkscape/.footprint index 9c5e21ce2..c82f48be8 100644 --- a/inkscape/.footprint +++ b/inkscape/.footprint @@ -3,7 +3,7 @@ drwxr-xr-x root/root usr/bin/ -rwxr-xr-x root/root usr/bin/inkscape -rwxr-xr-x root/root usr/bin/inkview drwxr-xr-x root/root usr/lib/ --rwxr-xr-x root/root usr/lib/libpoppler.so.92 +-rwxr-xr-x root/root usr/lib/libpoppler.so.95 drwxr-xr-x root/root usr/share/ drwxr-xr-x root/root usr/share/appdata/ -rw-r--r-- root/root usr/share/appdata/inkscape.appdata.xml diff --git a/inkscape/.signature b/inkscape/.signature index fdceb2df5..5ab3cf612 100644 --- a/inkscape/.signature +++ b/inkscape/.signature @@ -1,9 +1,9 @@ untrusted comment: verify with /etc/ports/contrib.pub -RWSagIOpLGJF3xO3mkq6GAVQA3D3Auv24u4Ohg/t32+yxV3Rqpv6mV+0l8nI2RPjKVgZIBUQR1VCQHMGchalyTpqLKbNHhuflwA= -SHA256 (Pkgfile) = 5ddcc664da2ca044bb3c18f327e1c1397c199f811c7f70da5a8048f769679379 -SHA256 (.footprint) = 795147c6b14f9a6ca03cf99ac16bbef4145331c7c5d0472eabb805215507f6a6 +RWSagIOpLGJF35eIMLi8vam0hL0y6E2gIHcYJnmCudbi45d7p6ITVZwzwVDGEHstBNx2fzCs6Pu5o/VJiC2jCuDB2yAkrGu9cwE= +SHA256 (Pkgfile) = 5fc280e2b2e46c51d38884267ad00fddf67b7a6bbbd5c5dbaff258d2f781f8c0 +SHA256 (.footprint) = 51f3fc24d9125a92681790957a90cfe5026847213ded06c84828a9835f9e4c7c SHA256 (inkscape-0.92.4.tar.bz2) = 57ec2da8177b36614a513e2822efd73af721e690f7ddc6bd0a5fbb1525b4515e -SHA256 (poppler-0.82.0.tar.xz) = 234f8e573ea57fb6a008e7c1e56bfae1af5d1adf0e65f47555e1ae103874e4df -SHA256 (inkscape-0.92.4-poppler_0_82_0_fixes-1.patch) = 0c35bc0be8d681531233b43123c11bd6d375e8d780b9b78b5ca018c6ae61484e +SHA256 (poppler-0.85.0.tar.xz) = 2bc875eb323002ae6b287e09980473518e2b2ed6b5b7d2e1089e36a6cd00d94b +SHA256 (inkscape-0.92.4-poppler_0_83_0_fixes-1.patch) = 0b8d8e8915af3a50ee4c19e1dc954aa9c21171c90aa8e3d439cfe3f44fdf1eb8 SHA256 (inkscape-0.92.4-use_versioned_ImageMagick6-1.patch) = 7f0e401e359285590f545c1b1225ec98682922d2f82e805c722c2f086be28c4c SHA256 (inkscape-0.92.4-upstream_fixes-1.patch) = 6932d7f140ba0ee4992bdea165f94854a3114d9eac190b7003b18af7f6cf7341 diff --git a/inkscape/Pkgfile b/inkscape/Pkgfile index e4d48eafb..f7f75a4fa 100644 --- a/inkscape/Pkgfile +++ b/inkscape/Pkgfile @@ -6,17 +6,17 @@ name=inkscape version=0.92.4 -release=3 +release=4 source=(https://media.inkscape.org/dl/resources/file/$name-$version.tar.bz2 - https://poppler.freedesktop.org/poppler-0.82.0.tar.xz - inkscape-0.92.4-poppler_0_82_0_fixes-1.patch + https://poppler.freedesktop.org/poppler-0.85.0.tar.xz + inkscape-0.92.4-poppler_0_83_0_fixes-1.patch inkscape-0.92.4-use_versioned_ImageMagick6-1.patch inkscape-0.92.4-upstream_fixes-1.patch) poppler() { #-boehm-gc boost gsl gtkmm poppler-glib popt #+cmake cairo lcms2 boehm-gc boost gsl gtkmm popt - cd poppler-0.82.0 + cd poppler-0.85.0 cmake . \ -DCMAKE_INSTALL_PREFIX=$SRC/poppler \ -DCMAKE_INSTALL_LIBDIR=$SRC/poppler/lib \ @@ -34,7 +34,7 @@ poppler() { make make install - install -D -t $PKG/usr/lib/ $SRC/poppler/lib/libpoppler.so.92 + install -D -t $PKG/usr/lib/ $SRC/poppler/lib/libpoppler.so.95 export CXXFLAGS+=" -I$SRC/poppler/include -I$SRC/poppler/include/poppler" export PKG_CONFIG_PATH="$SRC/poppler/lib/pkgconfig:$PKG_CONFIG_PATH" @@ -48,7 +48,10 @@ build() { # fix a problem introduced by Poppler-0.76.1 sed -e 's|new Lexer(xref, obj)|obj|g' -i src/extension/internal/pdfinput/pdf-parser.cpp - patch -p1 -i $SRC/inkscape-0.92.4-poppler_0_82_0_fixes-1.patch + # fix Inkscape to be able to build with poppler-0.82.0 and higher + sed -e 's|Unicode \*u|Unicode const *u|g' -i src/extension/internal/pdfinput/* + + patch -p1 -i $SRC/inkscape-0.92.4-poppler_0_83_0_fixes-1.patch patch -p1 -i $SRC/inkscape-0.92.4-use_versioned_ImageMagick6-1.patch patch -p1 -i $SRC/inkscape-0.92.4-upstream_fixes-1.patch diff --git a/inkscape/inkscape-0.92.4-poppler_0_82_0_fixes-1.patch b/inkscape/inkscape-0.92.4-poppler_0_82_0_fixes-1.patch deleted file mode 100644 index 61c568eac..000000000 --- a/inkscape/inkscape-0.92.4-poppler_0_82_0_fixes-1.patch +++ /dev/null @@ -1,63 +0,0 @@ -Submitted By: Douglas R. Reno <renodr at linuxfromscratch dot org> -Date: 2019-10-28 -Initial Package Version: 0.92.4 -Origin: Upstream (https://gitlab.com/inkscape/inkscape/merge_requests/986) -Upstream Status: Applied -Description: Adjusts the usage of the poppler-glib API to use a - const int instead of a standard int, since the - data types are incompatible and causes a build failure. - This required modification to the SVG Builder and - PDF Parser. - -diff -Naurp 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 2019-01-14 22:29:27.000000000 -0600 -+++ inkscape-0.92.4/src/extension/internal/pdfinput/pdf-parser.cpp 2019-10-28 09:54:48.488255747 -0500 -@@ -2414,7 +2414,7 @@ void PdfParser::doShowText(GooString *s) - int wMode; - double riseX, riseY; - CharCode code; -- Unicode *u = NULL; -+ Unicode _POPPLER_CONST_82 *u = NULL; - double x, y, dx, dy, tdx, tdy; - double originX, originY, tOriginX, tOriginY; - double oldCTM[6], newCTM[6]; -diff -Naurp 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 2019-01-14 22:29:27.000000000 -0600 -+++ inkscape-0.92.4/src/extension/internal/pdfinput/poppler-transition-api.h 2019-10-28 09:55:37.586507369 -0500 -@@ -3,6 +3,12 @@ - - #include <glib/poppler-features.h> - -+#if POPPLER_CHECK_VERSION(0, 82, 0) -+#define _POPPLER_CONST_82 const -+#else -+#define _POPPLER_CONST_82 -+#endif -+ - #if POPPLER_CHECK_VERSION(0, 72, 0) - #define getCString c_str - #endif -diff -Naurp 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 2019-01-14 22:29:27.000000000 -0600 -+++ inkscape-0.92.4/src/extension/internal/pdfinput/svg-builder.cpp 2019-10-28 09:56:03.815112158 -0500 -@@ -1379,7 +1379,7 @@ void SvgBuilder::beginString(GfxState *s - void SvgBuilder::addChar(GfxState *state, double x, double y, - double dx, double dy, - double originX, double originY, -- CharCode /*code*/, int /*nBytes*/, Unicode *u, int uLen) { -+ CharCode /*code*/, int /*nBytes*/, Unicode const *u, int uLen) { - - - bool is_space = ( uLen == 1 && u[0] == 32 ); -diff -Naurp inkscape-0.92.4.orig/src/extension/internal/pdfinput/svg-builder.h inkscape-0.92.4/src/extension/internal/pdfinput/svg-builder.h ---- inkscape-0.92.4.orig/src/extension/internal/pdfinput/svg-builder.h 2019-01-14 22:29:27.000000000 -0600 -+++ inkscape-0.92.4/src/extension/internal/pdfinput/svg-builder.h 2019-10-28 09:56:25.743784036 -0500 -@@ -141,7 +141,7 @@ public: - void addChar(GfxState *state, double x, double y, - double dx, double dy, - double originX, double originY, -- CharCode code, int nBytes, Unicode *u, int uLen); -+ CharCode code, int nBytes, Unicode const *u, int uLen); - void beginTextObject(GfxState *state); - void endTextObject(GfxState *state); - diff --git a/inkscape/inkscape-0.92.4-poppler_0_83_0_fixes-1.patch b/inkscape/inkscape-0.92.4-poppler_0_83_0_fixes-1.patch new file mode 100644 index 000000000..30a551e98 --- /dev/null +++ b/inkscape/inkscape-0.92.4-poppler_0_83_0_fixes-1.patch @@ -0,0 +1,90 @@ +Submitted By: Ken Moffat <ken at linuxfromscratch dot org> +Date: 2019-12-03 +Initial Package Version: 0.92.4 +Upstream Status: Applied, commit 51351358a62a +Origin: Jan Tojnar +Description: Fixes for poppler-0.83.0. + +To fix earlier changes made for poppler 0.82.0 without pulling +in a load of other things, this also needs a sed found at Arch: + +sed -e 's|Unicode \*u|Unicode const *u|g' -i src/extension/internal/pdfinput/* + +diff -Naur a/src/extension/internal/pdfinput/pdf-input.cpp b/src/extension/internal/pdfinput/pdf-input.cpp +--- a/src/extension/internal/pdfinput/pdf-input.cpp 2019-01-15 04:29:27.000000000 +0000 ++++ b/src/extension/internal/pdfinput/pdf-input.cpp 2019-12-03 13:24:09.800623725 +0000 +@@ -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 -Naur a/src/extension/internal/pdfinput/pdf-parser.cpp b/src/extension/internal/pdfinput/pdf-parser.cpp +--- a/src/extension/internal/pdfinput/pdf-parser.cpp 2019-01-15 04:29:27.000000000 +0000 ++++ b/src/extension/internal/pdfinput/pdf-parser.cpp 2019-12-03 13:25:45.431129854 +0000 +@@ -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 -Naur a/src/extension/internal/pdfinput/poppler-transition-api.h b/src/extension/internal/pdfinput/poppler-transition-api.h +--- a/src/extension/internal/pdfinput/poppler-transition-api.h 2019-01-15 04:29:27.000000000 +0000 ++++ b/src/extension/internal/pdfinput/poppler-transition-api.h 2019-12-03 13:29:10.319199158 +0000 +@@ -3,6 +3,18 @@ + + #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, 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 + #endif +diff -Naur a/src/extension/internal/pdfinput/svg-builder.cpp b/src/extension/internal/pdfinput/svg-builder.cpp +--- a/src/extension/internal/pdfinput/svg-builder.cpp 2019-01-15 04:29:27.000000000 +0000 ++++ b/src/extension/internal/pdfinput/svg-builder.cpp 2019-12-03 13:24:09.801623720 +0000 +@@ -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;