diff --git a/multimedia/graphics/inkscape/actions.py b/multimedia/graphics/inkscape/actions.py index 7ce146c474..00f6b16198 100644 --- a/multimedia/graphics/inkscape/actions.py +++ b/multimedia/graphics/inkscape/actions.py @@ -1,32 +1,24 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -# -# Licensed under the GNU General Public License, version 3. -# See the file http://www.gnu.org/licenses/gpl.txt - -from pisi.actionsapi import autotools -from pisi.actionsapi import pisitools -from pisi.actionsapi import get -from pisi.actionsapi import shelltools -def setup(): - shelltools.system("./autogen.sh") - autotools.configure(" \ - --enable-lcms \ - --disable-static \ - --enable-poppler-cairo \ - --disable-dependency-tracking \ - --without-gnome-vfs \ - --without-inkjar \ - --enable-dbusapi \ - --enable-nls") - - pisitools.dosed("libtool", " -shared ", " -Wl,-O1,--as-needed -shared ") - - -def build(): - autotools.make() - -def install(): - autotools.rawInstall("DESTDIR=%s" % get.installDIR()) - - pisitools.dodoc("AUTHORS", "COPYING", "ChangeLog", "NEWS", "README") +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/copyleft/gpl.txt. + +from pisi.actionsapi import pisitools +from pisi.actionsapi import cmaketools +from pisi.actionsapi import get + +def setup(): + cmaketools.configure("-DCMAKE_INSTALL_PREFIX=/usr \ + -DWITH_DBUS=ON \ + -DCMAKE_BUILD_TYPE=Release") + +def build(): + cmaketools.make() + +def install(): + cmaketools.rawInstall("DESTDIR=%s" % get.installDIR()) + + pisitools.remove("/usr/lib/inkscape/*.a") + + pisitools.dodoc("AUTHORS", "COPYING", "ChangeLog", "NEWS", "README") diff --git a/multimedia/graphics/inkscape/files/im7.patch b/multimedia/graphics/inkscape/files/im7.patch new file mode 100644 index 0000000000..0572cd5f59 --- /dev/null +++ b/multimedia/graphics/inkscape/files/im7.patch @@ -0,0 +1,106 @@ +diff -Naur orig/src/extension/CMakeLists.txt patched/src/extension/CMakeLists.txt +--- orig/src/extension/CMakeLists.txt 2017-03-24 00:51:36.134741323 +0100 ++++ patched/src/extension/CMakeLists.txt 2017-03-24 04:14:34.510756391 +0100 +@@ -218,8 +218,8 @@ + internal/bitmap/normalize.h + internal/bitmap/oilPaint.cpp + internal/bitmap/oilPaint.h +- internal/bitmap/opacity.cpp +- internal/bitmap/opacity.h ++# internal/bitmap/opacity.cpp ++# internal/bitmap/opacity.h + internal/bitmap/raise.cpp + internal/bitmap/raise.h + internal/bitmap/reduceNoise.cpp +diff -Naur orig/src/extension/init.cpp patched/src/extension/init.cpp +--- orig/src/extension/init.cpp 2017-03-24 00:51:36.134741323 +0100 ++++ patched/src/extension/init.cpp 2017-03-24 13:12:39.709882011 +0100 +@@ -88,7 +88,7 @@ + #include "internal/bitmap/negate.h" + #include "internal/bitmap/normalize.h" + #include "internal/bitmap/oilPaint.h" +-#include "internal/bitmap/opacity.h" ++//#include "internal/bitmap/opacity.h" + #include "internal/bitmap/raise.h" + #include "internal/bitmap/reduceNoise.h" + #include "internal/bitmap/sample.h" +@@ -224,7 +224,7 @@ + Internal::Bitmap::Negate::init(); + Internal::Bitmap::Normalize::init(); + Internal::Bitmap::OilPaint::init(); +- Internal::Bitmap::Opacity::init(); ++// Internal::Bitmap::Opacity::init(); + Internal::Bitmap::Raise::init(); + Internal::Bitmap::ReduceNoise::init(); + Internal::Bitmap::Sample::init(); +diff -Naur orig/src/extension/internal/bitmap/channel.cpp patched/src/extension/internal/bitmap/channel.cpp +--- orig/src/extension/internal/bitmap/channel.cpp 2017-03-24 00:51:36.134741323 +0100 ++++ patched/src/extension/internal/bitmap/channel.cpp 2017-03-24 03:06:36.164250664 +0100 +@@ -28,7 +28,7 @@ + else if (!strcmp(_layerName, "Yellow Channel")) layer = Magick::YellowChannel; + else if (!strcmp(_layerName, "Black Channel")) layer = Magick::BlackChannel; + else if (!strcmp(_layerName, "Opacity Channel")) layer = Magick::OpacityChannel; +- else if (!strcmp(_layerName, "Matte Channel")) layer = Magick::MatteChannel; ++ else if (!strcmp(_layerName, "Alpha Channel")) layer = Magick::AlphaChannel; + + image->channel(layer); + } +@@ -56,7 +56,7 @@ + "<_item value='Yellow Channel'>" N_("Yellow Channel") "\n" + "<_item value='Black Channel'>" N_("Black Channel") "\n" + "<_item value='Opacity Channel'>" N_("Opacity Channel") "\n" +- "<_item value='Matte Channel'>" N_("Matte Channel") "\n" ++ "<_item value='Alpha Channel'>" N_("Alpha Channel") "\n" + "\n" + "\n" + "all\n" +diff -Naur orig/src/extension/internal/bitmap/crop.cpp patched/src/extension/internal/bitmap/crop.cpp +--- orig/src/extension/internal/bitmap/crop.cpp 2017-03-24 00:51:36.134741323 +0100 ++++ patched/src/extension/internal/bitmap/crop.cpp 2017-03-24 02:31:09.915343848 +0100 +@@ -24,7 +24,7 @@ + int width = image->baseColumns() - (_left + _right); + int height = image->baseRows() - (_top + _bottom); + if (width > 0 and height > 0) { +- image->crop(Magick::Geometry(width, height, _left, _top, false, false)); ++ image->crop(Magick::Geometry(width, height, _left, _top)); + image->page("+0+0"); + } + } +diff -Naur orig/src/extension/internal/bitmap/levelChannel.cpp patched/src/extension/internal/bitmap/levelChannel.cpp +--- orig/src/extension/internal/bitmap/levelChannel.cpp 2017-03-24 00:51:36.134741323 +0100 ++++ patched/src/extension/internal/bitmap/levelChannel.cpp 2017-03-24 03:45:35.902823802 +0100 +@@ -28,9 +28,9 @@ + else if (!strcmp(_channelName, "Yellow Channel")) channel = Magick::YellowChannel; + else if (!strcmp(_channelName, "Black Channel")) channel = Magick::BlackChannel; + else if (!strcmp(_channelName, "Opacity Channel")) channel = Magick::OpacityChannel; +- else if (!strcmp(_channelName, "Matte Channel")) channel = Magick::MatteChannel; +- Magick::Quantum black_point = Magick::Color::scaleDoubleToQuantum(_black_point / 100.0); +- Magick::Quantum white_point = Magick::Color::scaleDoubleToQuantum(_white_point / 100.0); ++ else if (!strcmp(_channelName, "Alpha Channel")) channel = Magick::AlphaChannel; ++ Magick::Quantum black_point = static_cast(_black_point / 100.0); ++ Magick::Quantum white_point = static_cast(_white_point / 100.0); + image->levelChannel(channel, black_point, white_point, _mid_point); + } + +@@ -60,7 +60,7 @@ + "<_item value='Yellow Channel'>" N_("Yellow Channel") "\n" + "<_item value='Black Channel'>" N_("Black Channel") "\n" + "<_item value='Opacity Channel'>" N_("Opacity Channel") "\n" +- "<_item value='Matte Channel'>" N_("Matte Channel") "\n" ++ "<_item value='Alpha Channel'>" N_("Alpha Channel") "\n" + "\n" + "0.0\n" + "100.0\n" +diff -Naur orig/src/extension/internal/bitmap/level.cpp patched/src/extension/internal/bitmap/level.cpp +--- orig/src/extension/internal/bitmap/level.cpp 2017-03-24 00:51:36.134741323 +0100 ++++ patched/src/extension/internal/bitmap/level.cpp 2017-03-24 03:45:33.306793000 +0100 +@@ -19,8 +19,8 @@ + + void + Level::applyEffect(Magick::Image* image) { +- Magick::Quantum black_point = Magick::Color::scaleDoubleToQuantum(_black_point / 100.0); +- Magick::Quantum white_point = Magick::Color::scaleDoubleToQuantum(_white_point / 100.0); ++ Magick::Quantum black_point = static_cast(_black_point / 100.0); ++ Magick::Quantum white_point = static_cast(_white_point / 100.0); + image->level(black_point, white_point, _mid_point); + } diff --git a/multimedia/graphics/inkscape/files/inkscape-poppler-0.72.patch b/multimedia/graphics/inkscape/files/inkscape-poppler-0.72.patch new file mode 100644 index 0000000000..8cdedbbfdc --- /dev/null +++ b/multimedia/graphics/inkscape/files/inkscape-poppler-0.72.patch @@ -0,0 +1,65 @@ +diff -up ./src/extension/internal/pdfinput/pdf-input.cpp.orig ./src/extension/internal/pdfinput/pdf-input.cpp +--- ./src/extension/internal/pdfinput/pdf-input.cpp.orig 2018-12-08 20:29:53.411394981 +0200 ++++ ./src/extension/internal/pdfinput/pdf-input.cpp 2018-12-08 20:32:35.675968747 +0200 +@@ -319,7 +319,7 @@ PdfImportDialog::PdfImportDialog(PDFDoc + _render_thumb = true; + + // Create PopplerDocument +- Glib::ustring filename = _pdf_doc->getFileName()->getCString(); ++ Glib::ustring filename = _pdf_doc->getFileName()->c_str(); + if (!Glib::path_is_absolute(filename)) { + filename = Glib::build_filename(Glib::get_current_dir(),filename); + } +diff -up ./src/extension/internal/pdfinput/pdf-parser.cpp.orig ./src/extension/internal/pdfinput/pdf-parser.cpp +--- ./src/extension/internal/pdfinput/pdf-parser.cpp.orig 2018-12-08 20:29:53.414394969 +0200 ++++ ./src/extension/internal/pdfinput/pdf-parser.cpp 2018-12-08 20:32:35.683968735 +0200 +@@ -2381,8 +2381,8 @@ void PdfParser::opSetFont(Object args[], + } + if (printCommands) { + printf(" font: tag=%s name='%s' %g\n", +- font->getTag()->getCString(), +- font->getName() ? font->getName()->getCString() : "???", ++ font->getTag()->c_str(), ++ font->getName() ? font->getName()->c_str() : "???", + args[1].getNum()); + fflush(stdout); + } +@@ -2639,7 +2639,7 @@ void PdfParser::doShowText(GooString *s) + double lineX = state->getLineX(); + double lineY = state->getLineY(); + oldParser = parser; +- p = s->getCString(); ++ p = s->c_str(); + len = s->getLength(); + while (len > 0) { + n = font->getNextChar(p, len, &code, +@@ -2694,7 +2694,7 @@ void PdfParser::doShowText(GooString *s) + + } else { + state->textTransformDelta(0, state->getRise(), &riseX, &riseY); +- p = s->getCString(); ++ p = s->c_str(); + len = s->getLength(); + while (len > 0) { + n = font->getNextChar(p, len, &code, +diff -up ./src/extension/internal/pdfinput/svg-builder.cpp.orig ./src/extension/internal/pdfinput/svg-builder.cpp +--- ./src/extension/internal/pdfinput/svg-builder.cpp.orig 2018-12-08 20:29:53.412394977 +0200 ++++ ./src/extension/internal/pdfinput/svg-builder.cpp 2018-12-08 20:32:35.678968742 +0200 +@@ -1020,7 +1020,7 @@ void SvgBuilder::updateFont(GfxState *st + GfxFont *font = state->getFont(); + // Store original name + if (font->getName()) { +- _font_specification = font->getName()->getCString(); ++ _font_specification = font->getName()->c_str(); + } else { + _font_specification = "Arial"; + } +@@ -1047,7 +1047,7 @@ void SvgBuilder::updateFont(GfxState *st + + // Font family + if (font->getFamily()) { // if font family is explicitly given use it. +- sp_repr_css_set_property(_font_style, "font-family", font->getFamily()->getCString()); ++ sp_repr_css_set_property(_font_style, "font-family", font->getFamily()->c_str()); + } else { + int attr_value = 1; + sp_repr_get_int(_preferences, "localFonts", &attr_value); diff --git a/multimedia/graphics/inkscape/pspec.xml b/multimedia/graphics/inkscape/pspec.xml index a5b5620328..364bf9a911 100644 --- a/multimedia/graphics/inkscape/pspec.xml +++ b/multimedia/graphics/inkscape/pspec.xml @@ -15,6 +15,7 @@ Inkscape is an application to create, edit, and convert SVG vector graphics images that can also import from and export to bitmap image files. https://inkscape.global.ssl.fastly.net/media/resources/file/inkscape-0.92.4.tar.bz2 + cmake gtk2-devel gtkmm-devel atkmm-devel @@ -64,10 +65,12 @@ gettext-devel pkgconfig libX11-devel + desktop-file-utils - + + im7.patch + inkscape-poppler-0.72.patch + @@ -121,9 +124,10 @@ /usr/share/inkscape /usr/share/applications /usr/share/appdata + /usr/share/metainfo/inkscape.appdata.xml - + - 2019-06-24 + 2019-06-26 0.92.4 Version Bump. Pisi Linux Community