summaryrefslogtreecommitdiff
path: root/media-gfx/inkscape
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-11-18 10:15:03 +0000
committerV3n3RiX <venerix@redcorelinux.org>2019-11-18 10:15:03 +0000
commitb284a3168fa91a038925d2ecf5e4791011ea5e7d (patch)
tree16fe44748708acacd909d4e2e160a09a7f6d936a /media-gfx/inkscape
parent77398e424e45d9e98c1cef3c43bdadb9d56e81ef (diff)
gentoo resync : 18.11.2019
Diffstat (limited to 'media-gfx/inkscape')
-rw-r--r--media-gfx/inkscape/Manifest7
-rw-r--r--media-gfx/inkscape/files/inkscape-0.92.4-poppler-0.82.0.patch76
-rw-r--r--media-gfx/inkscape/files/inkscape-1.0_beta1-avoid-reordering-cmake-cxx-flags.patch130
-rw-r--r--media-gfx/inkscape/inkscape-0.92.4.ebuild1
-rw-r--r--media-gfx/inkscape/inkscape-1.0_beta1.ebuild5
-rw-r--r--media-gfx/inkscape/inkscape-9999.ebuild153
6 files changed, 368 insertions, 4 deletions
diff --git a/media-gfx/inkscape/Manifest b/media-gfx/inkscape/Manifest
index 07c2661eaa6b..80e24805e9e8 100644
--- a/media-gfx/inkscape/Manifest
+++ b/media-gfx/inkscape/Manifest
@@ -5,11 +5,14 @@ AUX inkscape-0.91_pre3-sk-man.patch 362 BLAKE2B adfe363332dcf46297d01feb986ffaf4
AUX inkscape-0.92.1-automagic.patch 5416 BLAKE2B 3b17fd7a4cd305b6e683fd6a3f6bd6b81559be5097603f80bb438467f63594dea353acdf92ed5410399b641b6a5a92950e5c6bea582807717891073fe2877b5b SHA512 48f5d20cc32bcaa5fbbd7b9177ef1c68f2c6d2d0c39553bfc9f8e37fa7e74c63129a9ad94d93f26265dd2492359c983c50539286b86830783e001bb5dc3fa4c5
AUX inkscape-0.92.1-desktop.patch 919 BLAKE2B c9952613e8d8dca1cd11146afd4d8db210be0f65f61b1a674cf5443dfaed3422e7082667cb93e183589d1e840ac3b55c7e70d03f44c0302b8c7db8ae621a976d SHA512 0000e5c6bd83e7d3994712d5a9f7369b2ecb7a15ba8371bfc9e2646b33293334eff987ffc360c2753025d0561395368024587d71ffc015f5a0e8c39077fd45b2
AUX inkscape-0.92.4-poppler-0.76.0.patch 1579 BLAKE2B c8c578dc3c6f0d79403bc0716bb6875544fbf19c98e721294cf9e5f58d9c89c1b8414dd58975846100c4ae5c21eba8e7e4797c037300ce05d741d9245a0dc59c SHA512 2f45e16aba67f4d1498cf012ac6198ec2bb977b9e39b3d4e2d14a216d86b1d407ff7ea5a889b58b5e800c129c0f99ec8bbc0a42dd7d41578d94ae1ab59208698
+AUX inkscape-0.92.4-poppler-0.82.0.patch 3223 BLAKE2B 6e530a2d2602d61c9f97f61813fad837536ccd3dc25405cf79ebda6563c56ff09e4a98b99c83aced6e8995473b27c7942c5774abafc7c33a2dbe45df58f419e4 SHA512 4a5f2e3ec9f16abe76786945e3085e405bbe7a4c57dfa0e6e7d4ddd4aadd17463766c7392846db08fa41419e05ef8c688d989ded8905755c010db6b08afa2feb
+AUX inkscape-1.0_beta1-avoid-reordering-cmake-cxx-flags.patch 4720 BLAKE2B 561623ee56ebc933b4997fd3b53f761ff5fdbf212e72e09ffd79539bde74d88b46959340012381396b761dad81712c7101c5dc94887bb96f973428d969dc8034 SHA512 a4252e9e1b19b63356c9b4af09f511e544da825b29edadf5352f0e4eb14fd150732ab6eb1abc1e0d814b37bd644179bc2f35c8a13e82c589975c01ca3d8838be
AUX inkscape-1.0_beta1-detect-imagemagick.patch 653 BLAKE2B 1e217306b083550d1f4628dc8385c78336c4c9019f8b35fe474c18c1f917105f423d3a958491432109eea22ef04b63ad5c5d23c03ae36ed7663ed86de3e295ed SHA512 5ee7080d5134b970a7b70b6b5052523e98860d66ee42897b5a84c5e70676359c918ea0d5e603a83b27d0e4656d49f711ae76d2dad47083c8ade223cc7da9e123
AUX inkscape-1.0_beta1-do-not-compress-man.patch 454 BLAKE2B d680993be80d9069c7986f110d512643849f97fae81a8fdf1ab020a418dfbe44cc2bce3d71c8a79e8acac5170dfc01d084420a439d83f6f0e85706acdc8a0399 SHA512 3fc7ac0750a67b9d90d4ec0eed404ffdaa6910397849fa916eeacf5fb1e77cb0cb17f3f1ba99ad39f16610f2b3d7df387e35d36a0404fbd1fd0f857fa8be822b
AUX inkscape-1.0_beta1-poppler-0.82.patch 3030 BLAKE2B 746111982b19f2bd17a91ae0049c7615914b5b5b8eb052810f6d45642da84fdec85d41ddd419289b9b556ff1cb98c424b9b9f79dffe9d0b73d26c8af9fdf24db SHA512 26caa1a35a5e3243cf3ffeb9cc12e981237006a9540b8316d4c4d2ddbdcce1aaf64fc34ee1c09bd7264b33faa115e1c096837a3171b22d3c0ccdff916b73d9c7
DIST inkscape-0.92.4.tar.bz2 31929728 BLAKE2B 892bf4ed913019b27a9b8897e3ae32c44152163ded0eb345d59915ffdc9818d29f210de3294ef1b05601141185b5e3b10779778551b860f31e7df5c659492c77 SHA512 b9034605a79cd8aea808edf42e284819951ae1ea67778f0922f4c10224e94aca6c844acbc2294625773f0a7047d4e32ccdada876238a792a2c17db172c88e120
DIST inkscape-1.0beta1.tar.bz2 31096177 BLAKE2B 72769d0e15f20fcc5cdf81987896e7d354c2c71fc31feaa18dfff12df2791d2ed85be4451e76e8191c5f469b2e70fd03f4888270e67628c50978a3fd30c41264 SHA512 35b3ba46d76b55eb268209631ea652b3512d3aaf07f577543081c311acff13b0a667ecf069e9f1c2f47dc16525df952cfb9ca29e9a3078f9096ee7865b917245
-EBUILD inkscape-0.92.4.ebuild 3708 BLAKE2B dde8a2b0339cf7dbb0683b36f2f69038b2cb4b5e48f2bd8bb908a75b6127cd9eb14848c0b2ed44906e7d326a2fdf51cbbedad2ec882368b27fa38f399a754f77 SHA512 2b35ccbbde4610bb403b58c5a1185676e3a8c6bfa6497eda89f1aa524f0cb08e35aada5a7f94e09209b2df6f8318263a0849b0cfab8a85fa9c2f7f0dc023f7ad
-EBUILD inkscape-1.0_beta1.ebuild 3882 BLAKE2B f1f9a2a3460b42172a114af17ffbd0dc6451acab9673088cb53e2458f2581ab6303ef420dd2a1d912bf6a90c32f6b1704a5b2bb42d51f9dda3f4c6bf7134c7f2 SHA512 cce2b68fa16faa85b9223d2dbbb53ef85fc3c0d727d4b2fa8b2875bd888dac56a2501b766a2dd028f893ffeb60c0f26a2b74dc328ac58b6e99bfa95183849046
+EBUILD inkscape-0.92.4.ebuild 3757 BLAKE2B af42502189a61742629d1b016d5f8efdf4b96358aba951eeba3a591b1e6ca5f4ecc75a0e80b39416903e2b60b26ca7c7490628b7a23df2b96365b3aa3b6b4600 SHA512 6c6ad92323f157922fdea7f31c497b120b2b21bffadcf3bafeedb75b72da351071b7b04c081a5c0fb46b8e10497dd0168d8dfa6349bb63b2db9093a40fc422d9
+EBUILD inkscape-1.0_beta1.ebuild 4055 BLAKE2B d991c2c28be04ee7c8d4299ddf70b6e751fd2917d8cfb9d83da8c10a8eb7ab9a95c1c71f57f8d744b2de85d11882d7916ba3c3c4afa365356639d8d5f4e0d4cf SHA512 2d4007c77938ad2c72bb9b5fe5ba807162e26e114c60ae5ba3dc752d3ae1ae6fed060cacb1add17722ac4e234375cf823cd65a7906a59c1af51d4209d8460fa8
+EBUILD inkscape-9999.ebuild 3864 BLAKE2B ab5f9f44bc42c703734e4f9782c38c2b97b1b92e1816866e051005ff94ad8b14e7793c89f755e9bf068f99f56f98d8e97d3ca0cc7bcd13e3bfa5717b847e678b SHA512 5d839456b149ac5971a894ab02c2c7d9579fe81921135eeb4773514dfad550c5324a9f9042f9d41ee65e9b9ab2e27ea6d442538c379f7e6ff607460cef83add5
MISC metadata.xml 951 BLAKE2B 5610cce03a912f378f4bbb997bb9acc028f2f02c1ec40034ed523b7f7cee2cc980f1f24fb8fbd26b40d494a514769b722ca64e93078c82ad75c9db94a9f19ca4 SHA512 f62078fa96c501f4d8e01d4e539b74b91cbf90997392e903e30db9c3a117c2ccc7f2d3e1c2e62c85362cd0a2d504dd565cfd70f92e5b947d416f8a3f2cd88f8e
diff --git a/media-gfx/inkscape/files/inkscape-0.92.4-poppler-0.82.0.patch b/media-gfx/inkscape/files/inkscape-0.92.4-poppler-0.82.0.patch
new file mode 100644
index 000000000000..73cc4f97c37b
--- /dev/null
+++ b/media-gfx/inkscape/files/inkscape-0.92.4-poppler-0.82.0.patch
@@ -0,0 +1,76 @@
+From 9b2f1a99bd8a411926925ac0c91f50289c7db8ee Mon Sep 17 00:00:00 2001
+From: Thomas Holder <thomas@thomas-holder.de>
+Date: Sat, 16 Nov 2019 14:12:24 +0100
+Subject: [PATCH] fix poppler 0.82.0 build
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Backport of 324c7903d9fd62e74c042c31477299be3b980fd2 from master by
+Andreas K. Hüttel <dilfridge@gentoo.org>
+---
+ src/extension/internal/pdfinput/pdf-parser.cpp | 2 +-
+ src/extension/internal/pdfinput/poppler-transition-api.h | 6 ++++++
+ src/extension/internal/pdfinput/svg-builder.cpp | 2 +-
+ src/extension/internal/pdfinput/svg-builder.h | 2 +-
+ 4 files changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/src/extension/internal/pdfinput/pdf-parser.cpp b/src/extension/internal/pdfinput/pdf-parser.cpp
+index ddbff7671f..e71bb79381 100644
+--- a/src/extension/internal/pdfinput/pdf-parser.cpp
++++ b/src/extension/internal/pdfinput/pdf-parser.cpp
+@@ -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 --git a/src/extension/internal/pdfinput/poppler-transition-api.h b/src/extension/internal/pdfinput/poppler-transition-api.h
+index 21a60702fa..93c0f99ba1 100644
+--- a/src/extension/internal/pdfinput/poppler-transition-api.h
++++ b/src/extension/internal/pdfinput/poppler-transition-api.h
+@@ -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, 76, 0)
+ #define _POPPLER_NEW_PARSER(xref, obj) Parser(xref, obj, gFalse)
+ #else
+diff --git a/src/extension/internal/pdfinput/svg-builder.cpp b/src/extension/internal/pdfinput/svg-builder.cpp
+index 1cefb92abd..ea2940ffe1 100644
+--- a/src/extension/internal/pdfinput/svg-builder.cpp
++++ b/src/extension/internal/pdfinput/svg-builder.cpp
+@@ -1379,7 +1379,7 @@ void SvgBuilder::beginString(GfxState *state) {
+ 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 --git a/src/extension/internal/pdfinput/svg-builder.h b/src/extension/internal/pdfinput/svg-builder.h
+index 34b42e17b8..78e302081f 100644
+--- a/src/extension/internal/pdfinput/svg-builder.h
++++ b/src/extension/internal/pdfinput/svg-builder.h
+@@ -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);
+
+--
+2.24.0
+
diff --git a/media-gfx/inkscape/files/inkscape-1.0_beta1-avoid-reordering-cmake-cxx-flags.patch b/media-gfx/inkscape/files/inkscape-1.0_beta1-avoid-reordering-cmake-cxx-flags.patch
new file mode 100644
index 000000000000..bd78bc582325
--- /dev/null
+++ b/media-gfx/inkscape/files/inkscape-1.0_beta1-avoid-reordering-cmake-cxx-flags.patch
@@ -0,0 +1,130 @@
+From 09319f688e10d47f9fc9be2b6feb831fb132660a Mon Sep 17 00:00:00 2001
+From: Patrick Storz <eduard.braun2@gmx.de>
+Date: Sat, 12 Oct 2019 15:56:14 +0200
+Subject: [PATCH] CMake: Avoid reordering CMAKE_CXX_FLAGS
+
+Order matters; the reordering caused the _FORTIFY_SOURCE flag to be
+always undefined (as we flipped a "-U" and "-D")
+
+Also skip removing duplicates to avoid similar pitfalls (we kept
+only the first occurrence but should've kept the last)
+It did not work properly anyway (we still had duplicates in the end)
+and was only required as we wrote the final CMAKE_CXX_FLAGS back to
+cache and consequently appended new flags with every run of CMAKE.
+---
+ CMakeLists.txt | 13 -----------
+ CMakeScripts/CanonicalizeFlagsVar.cmake | 11 ----------
+ CMakeScripts/DefineDependsandFlags.cmake | 28 ++++++++++++++----------
+ 3 files changed, 17 insertions(+), 35 deletions(-)
+ delete mode 100644 CMakeScripts/CanonicalizeFlagsVar.cmake
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b30f013f38..aa14e13e01 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -207,19 +207,6 @@ if(GMOCK_PRESENT)
+ endif()
+ endif()
+
+-# -----------------------------------------------------------------------------
+-# Canonicalize the flags to speed up recompilation using ccache/etc.
+-# This should be the last thing we do:
+-# -----------------------------------------------------------------------------
+-include(CMakeScripts/CanonicalizeFlagsVar.cmake)
+-canonicalize_flags_var("${CMAKE_CXX_FLAGS}" _new_cxx)
+-set(CMAKE_CXX_FLAGS "${_new_cxx}" CACHE STRING "" FORCE)
+-canonicalize_flags_var("${CMAKE_CXX_FLAGS_DEBUG}" _new_cxx)
+-set(CMAKE_CXX_FLAGS_DEBUG "${_new_cxx}" CACHE STRING "" FORCE)
+-# message(FATAL_ERROR "CMAKE_CXX_FLAGS = <${CMAKE_CXX_FLAGS}>")
+-
+-
+-
+
+ # -----------------------------------------------------------------------------
+ # Clean Targets
+diff --git a/CMakeScripts/CanonicalizeFlagsVar.cmake b/CMakeScripts/CanonicalizeFlagsVar.cmake
+deleted file mode 100644
+index ddc5b7b5d3..0000000000
+--- a/CMakeScripts/CanonicalizeFlagsVar.cmake
++++ /dev/null
+@@ -1,11 +0,0 @@
+-# This file is copyright by Shlomi Fish, 2016.
+-#
+-# This file is licensed under the MIT/X11 license:
+-# https://opensource.org/licenses/mit-license.php
+-
+-macro (canonicalize_flags_var in_val out_var)
+- string(REPLACE " " ";" _c "${in_val}")
+- list(REMOVE_DUPLICATES _c)
+- list(SORT _c)
+- string(REPLACE ";" " " "${out_var}" "${_c}")
+-endmacro()
+diff --git a/CMakeScripts/DefineDependsandFlags.cmake b/CMakeScripts/DefineDependsandFlags.cmake
+index 996100b4d7..9dd7f7785f 100644
+--- a/CMakeScripts/DefineDependsandFlags.cmake
++++ b/CMakeScripts/DefineDependsandFlags.cmake
+@@ -2,6 +2,7 @@ set(INKSCAPE_LIBS "")
+ set(INKSCAPE_INCS "")
+ set(INKSCAPE_INCS_SYS "")
+ set(INKSCAPE_CXX_FLAGS "")
++set(INKSCAPE_CXX_FLAGS_DEBUG "")
+
+ list(APPEND INKSCAPE_INCS ${PROJECT_SOURCE_DIR}
+ ${PROJECT_SOURCE_DIR}/src
+@@ -98,7 +99,7 @@ list(APPEND INKSCAPE_INCS_SYS ${INKSCAPE_DEP_INCLUDE_DIRS})
+ add_definitions(${INKSCAPE_DEP_CFLAGS_OTHER})
+
+ find_package(DoubleConversion REQUIRED) # lib2geom dependency
+-
++
+ if(WITH_JEMALLOC)
+ find_package(JeMalloc)
+ if (JEMALLOC_FOUND)
+@@ -369,14 +370,6 @@ sanitize_ldflags_for_libs(SIGC++_LDFLAGS)
+ list(APPEND INKSCAPE_LIBS ${SIGC++_LDFLAGS})
+ list(APPEND INKSCAPE_CXX_FLAGS ${SIGC++_CFLAGS_OTHER})
+
+-list(REMOVE_DUPLICATES INKSCAPE_CXX_FLAGS)
+-foreach(flag ${INKSCAPE_CXX_FLAGS})
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}" CACHE STRING "" FORCE)
+-endforeach()
+-foreach(flag ${INKSCAPE_CXX_FLAGS_DEBUG})
+- set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${flag}" CACHE STRING "" FORCE)
+-endforeach()
+-
+ # Some linkers, like gold, don't find symbols recursively. So we have to link against X11 explicitly
+ find_package(X11)
+ if(X11_FOUND)
+@@ -386,14 +379,27 @@ endif(X11_FOUND)
+
+ # end Dependencies
+
++
++
++# Set include directories and CXX flags
++# (INKSCAPE_LIBS are set as target_link_libraries for inkscape_base in src/CMakeLists.txt)
++
++foreach(flag ${INKSCAPE_CXX_FLAGS})
++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
++endforeach()
++foreach(flag ${INKSCAPE_CXX_FLAGS_DEBUG})
++ set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${flag}")
++endforeach()
++
+ list(REMOVE_DUPLICATES INKSCAPE_LIBS)
+ list(REMOVE_DUPLICATES INKSCAPE_INCS_SYS)
+
+-# C/C++ Flags
+ include_directories(${INKSCAPE_INCS})
+ include_directories(SYSTEM ${INKSCAPE_INCS_SYS})
+
+-include(${CMAKE_CURRENT_LIST_DIR}/ConfigChecks.cmake)
++include(${CMAKE_CURRENT_LIST_DIR}/ConfigChecks.cmake) # TODO: Check if this needs to be "hidden" here
+
+ unset(INKSCAPE_INCS)
+ unset(INKSCAPE_INCS_SYS)
++unset(INKSCAPE_CXX_FLAGS)
++unset(INKSCAPE_CXX_FLAGS_DEBUG)
+--
+2.22.0
+
diff --git a/media-gfx/inkscape/inkscape-0.92.4.ebuild b/media-gfx/inkscape/inkscape-0.92.4.ebuild
index c38fe42d1a66..87203911632c 100644
--- a/media-gfx/inkscape/inkscape-0.92.4.ebuild
+++ b/media-gfx/inkscape/inkscape-0.92.4.ebuild
@@ -98,6 +98,7 @@ PATCHES=(
"${FILESDIR}/${PN}-0.91_pre3-sk-man.patch"
"${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"
)
S="${WORKDIR}/${MY_P}"
diff --git a/media-gfx/inkscape/inkscape-1.0_beta1.ebuild b/media-gfx/inkscape/inkscape-1.0_beta1.ebuild
index 759c5313e039..da91d92ffc50 100644
--- a/media-gfx/inkscape/inkscape-1.0_beta1.ebuild
+++ b/media-gfx/inkscape/inkscape-1.0_beta1.ebuild
@@ -102,6 +102,7 @@ PATCHES=(
"${FILESDIR}"/${P}-detect-imagemagick.patch
"${FILESDIR}"/${P}-do-not-compress-man.patch
"${FILESDIR}"/${P}-poppler-0.82.patch
+ "${FILESDIR}"/${P}-avoid-reordering-cmake-cxx-flags.patch
)
pkg_pretend() {
@@ -126,8 +127,8 @@ src_configure() {
-DWITH_PROFILING=OFF
-DWITH_LIBCDR=$(usex cdr)
-DWITH_DBUS=$(usex dbus)
- -DWITH_IMAGE_MAGICK=$(usex imagemagick) # requires ImageMagick 6
- -DWITH_GRAPHICS_MAGICK=$(usex graphicsmagick)
+ -DWITH_IMAGE_MAGICK=$(usex imagemagick $(usex !graphicsmagick)) # requires ImageMagick 6, only IM must be enabled
+ -DWITH_GRAPHICS_MAGICK=$(usex graphicsmagick $(usex imagemagick)) # both must be enabled to use GraphicsMagick
-DWITH_JEMALLOC=$(usex jemalloc)
-DENABLE_LCMS=$(usex lcms)
-DWITH_NLS=$(usex nls)
diff --git a/media-gfx/inkscape/inkscape-9999.ebuild b/media-gfx/inkscape/inkscape-9999.ebuild
new file mode 100644
index 000000000000..bb14d85592ec
--- /dev/null
+++ b/media-gfx/inkscape/inkscape-9999.ebuild
@@ -0,0 +1,153 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{5,6,7} )
+PYTHON_REQ_USE="xml"
+MY_P="${P/_/}"
+inherit cmake-utils flag-o-matic xdg toolchain-funcs python-single-r1 git-r3
+
+DESCRIPTION="SVG based generic vector-drawing program"
+HOMEPAGE="https://inkscape.org/"
+EGIT_REPO_URI="https://gitlab.com/inkscape/inkscape.git"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS=""
+IUSE="cdr dbus dia exif gnome graphicsmagick imagemagick inkjar jemalloc jpeg
+lcms nls openmp postscript spell static-libs svg2 visio wpg"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+BDEPEND="
+ dev-util/glib-utils
+ >=dev-util/intltool-0.40
+ >=sys-devel/gettext-0.17
+ virtual/pkgconfig
+"
+COMMON_DEPEND="${PYTHON_DEPS}
+ >=app-text/poppler-0.57.0:=[cairo]
+ >=dev-cpp/cairomm-1.12
+ >=dev-cpp/glibmm-2.54.1
+ dev-cpp/gtkmm:3.0
+ >=dev-cpp/pangomm-2.40
+ >=dev-libs/boehm-gc-7.1:=
+ dev-libs/double-conversion:=
+ >=dev-libs/glib-2.41
+ >=dev-libs/libsigc++-2.8
+ >=dev-libs/libxml2-2.7.4
+ >=dev-libs/libxslt-1.1.25
+ dev-libs/gdl:3
+ dev-libs/popt
+ dev-python/lxml[${PYTHON_USEDEP}]
+ media-gfx/potrace
+ media-gfx/scour[${PYTHON_USEDEP}]
+ media-libs/fontconfig
+ media-libs/freetype:2
+ media-libs/libpng:0=
+ net-libs/libsoup
+ sci-libs/gsl:=
+ x11-libs/libX11
+ >=x11-libs/pango-1.37.2
+ x11-libs/gtk+:3
+ cdr? (
+ app-text/libwpg:0.3
+ dev-libs/librevenge
+ media-libs/libcdr
+ )
+ dbus? ( dev-libs/dbus-glib )
+ exif? ( media-libs/libexif )
+ gnome? ( >=gnome-base/gnome-vfs-2.0 )
+ imagemagick? (
+ !graphicsmagick? ( <media-gfx/imagemagick-7:=[cxx] )
+ graphicsmagick? ( media-gfx/graphicsmagick:=[cxx] )
+ )
+ jemalloc? ( dev-libs/jemalloc )
+ jpeg? ( virtual/jpeg:0 )
+ lcms? ( media-libs/lcms:2 )
+ spell? (
+ app-text/aspell
+ app-text/gtkspell:3
+ )
+ visio? (
+ app-text/libwpg:0.3
+ dev-libs/librevenge
+ media-libs/libvisio
+ )
+ wpg? (
+ app-text/libwpg:0.3
+ dev-libs/librevenge
+ )
+"
+# These only use executables provided by these packages
+# See share/extensions for more details. inkscape can tell you to
+# install these so we could of course just not depend on those and rely
+# on that.
+RDEPEND="${COMMON_DEPEND}
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dia? ( app-office/dia )
+ postscript? ( app-text/ghostscript-gpl )
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-libs/boost-1.65
+"
+
+S="${WORKDIR}/${MY_P}"
+
+RESTRICT="test"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.0_beta1-detect-imagemagick.patch
+ "${FILESDIR}"/${PN}-1.0_beta1-do-not-compress-man.patch
+)
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-has-openmp || die "Please switch to an openmp compatible compiler"
+ fi
+}
+
+src_prepare() {
+ cmake-utils_src_prepare
+ sed -i "/install.*COPYING/d" CMakeScripts/ConfigCPack.cmake || die
+}
+
+src_configure() {
+ # aliasing unsafe wrt #310393
+ append-flags -fno-strict-aliasing
+
+ local mycmakeargs=(
+ # -DWITH_LPETOOL # Compile with LPE Tool and experimental LPEs enabled
+ -DENABLE_POPPLER=ON
+ -DENABLE_POPPLER_CAIRO=ON
+ -DWITH_PROFILING=OFF
+ -DWITH_LIBCDR=$(usex cdr)
+ -DWITH_DBUS=$(usex dbus)
+ -DWITH_IMAGE_MAGICK=$(usex imagemagick $(usex !graphicsmagick)) # requires ImageMagick 6, only IM must be enabled
+ -DWITH_GRAPHICS_MAGICK=$(usex graphicsmagick $(usex imagemagick)) # both must be enabled to use GraphicsMagick
+ -DWITH_JEMALLOC=$(usex jemalloc)
+ -DENABLE_LCMS=$(usex lcms)
+ -DWITH_NLS=$(usex nls)
+ -DWITH_OPENMP=$(usex openmp)
+ -DBUILD_SHARED_LIBS=$(usex !static-libs)
+ -DWITH_SVG2=$(usex svg2)
+ -DWITH_LIBVISIO=$(usex visio)
+ -DWITH_LIBWPG=$(usex wpg)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ find "${ED}" -type f -name "*.la" -delete || die
+
+ # No extensions are present in beta1
+ local extdir="${ED}"/usr/share/${PN}/extensions
+
+ if [[ -e "${extdir}" ]] && [[ -n $(find "${extdir}" -mindepth 1) ]]; then
+ python_optimize "${ED}"/usr/share/${PN}/extensions
+ fi
+}