*/*: Clean PYTHON_COMPAT of obsolete impls
[gentoo.git] / media-gfx / inkscape / inkscape-1.0_beta2.ebuild
1 # Copyright 1999-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=7
5
6 PYTHON_COMPAT=( python3_{6,7} )
7 PYTHON_REQ_USE="xml"
8 MY_P="${P/_/}"
9 RELEASE_SUFFIX="_2019-12-03_2b71d25d45"
10 inherit cmake flag-o-matic xdg toolchain-funcs python-single-r1
11
12 DESCRIPTION="SVG based generic vector-drawing program"
13 HOMEPAGE="https://inkscape.org/"
14 SRC_URI="https://inkscape.org/gallery/item/16197/${MY_P}${RELEASE_SUFFIX}.tar.xz"
15
16 LICENSE="GPL-2 LGPL-2.1"
17 SLOT="0"
18 KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~x86"
19 IUSE="cdr dbus dia exif graphicsmagick imagemagick inkjar jemalloc jpeg lcms nls
20 openmp postscript spell static-libs svg2 visio wpg"
21
22 REQUIRED_USE="${PYTHON_REQUIRED_USE}"
23
24 BDEPEND="
25         dev-util/glib-utils
26         >=dev-util/intltool-0.40
27         >=sys-devel/gettext-0.17
28         virtual/pkgconfig
29 "
30 COMMON_DEPEND="${PYTHON_DEPS}
31         >=app-text/poppler-0.57.0:=[cairo]
32         >=dev-cpp/cairomm-1.12
33         >=dev-cpp/glibmm-2.54.1
34         dev-cpp/gtkmm:3.0
35         >=dev-cpp/pangomm-2.40
36         >=dev-libs/boehm-gc-7.1:=
37         dev-libs/double-conversion:=
38         >=dev-libs/glib-2.41
39         >=dev-libs/libsigc++-2.8
40         >=dev-libs/libxml2-2.7.4
41         >=dev-libs/libxslt-1.1.25
42         dev-libs/gdl:3
43         dev-libs/popt
44         dev-python/lxml[${PYTHON_USEDEP}]
45         media-gfx/potrace
46         media-gfx/scour[${PYTHON_USEDEP}]
47         media-libs/fontconfig
48         media-libs/freetype:2
49         media-libs/libpng:0=
50         net-libs/libsoup
51         sci-libs/gsl:=
52         x11-libs/libX11
53         >=x11-libs/pango-1.37.2
54         x11-libs/gtk+:3
55         cdr? (
56                 app-text/libwpg:0.3
57                 dev-libs/librevenge
58                 media-libs/libcdr
59         )
60         dbus? ( dev-libs/dbus-glib )
61         exif? ( media-libs/libexif )
62         imagemagick? (
63                 !graphicsmagick? ( <media-gfx/imagemagick-7:=[cxx] )
64                 graphicsmagick? ( media-gfx/graphicsmagick:=[cxx] )
65         )
66         jemalloc? ( dev-libs/jemalloc )
67         jpeg? ( virtual/jpeg:0 )
68         lcms? ( media-libs/lcms:2 )
69         spell? (
70                 app-text/aspell
71                 app-text/gtkspell:3
72         )
73         visio? (
74                 app-text/libwpg:0.3
75                 dev-libs/librevenge
76                 media-libs/libvisio
77         )
78         wpg? (
79                 app-text/libwpg:0.3
80                 dev-libs/librevenge
81         )
82 "
83 # These only use executables provided by these packages
84 # See share/extensions for more details. inkscape can tell you to
85 # install these so we could of course just not depend on those and rely
86 # on that.
87 RDEPEND="${COMMON_DEPEND}
88         dev-python/numpy[${PYTHON_USEDEP}]
89         dia? ( app-office/dia )
90         postscript? ( app-text/ghostscript-gpl )
91 "
92 DEPEND="${COMMON_DEPEND}
93         >=dev-libs/boost-1.65
94 "
95
96 S="${WORKDIR}/${MY_P}${RELEASE_SUFFIX}"
97
98 RESTRICT="test"
99
100 PATCHES=(
101         "${FILESDIR}"/${PN}-1.0_beta1-detect-imagemagick.patch
102         "${FILESDIR}"/${PN}-1.0_beta1-do-not-compress-man.patch
103 )
104
105 pkg_pretend() {
106         if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
107                 tc-has-openmp || die "Please switch to an openmp compatible compiler"
108         fi
109 }
110
111 src_prepare() {
112         cmake_src_prepare
113         sed -i "/install.*COPYING/d" CMakeScripts/ConfigCPack.cmake || die
114 }
115
116 src_configure() {
117         # aliasing unsafe wrt #310393
118         append-flags -fno-strict-aliasing
119
120         local mycmakeargs=(
121                 # -DWITH_LPETOOL   # Compile with LPE Tool and experimental LPEs enabled
122                 -DENABLE_POPPLER=ON
123                 -DENABLE_POPPLER_CAIRO=ON
124                 -DWITH_PROFILING=OFF
125                 -DWITH_LIBCDR=$(usex cdr)
126                 -DWITH_DBUS=$(usex dbus)
127                 -DWITH_IMAGE_MAGICK=$(usex imagemagick $(usex !graphicsmagick)) # requires ImageMagick 6, only IM must be enabled
128                 -DWITH_GRAPHICS_MAGICK=$(usex graphicsmagick $(usex imagemagick)) # both must be enabled to use GraphicsMagick
129                 -DWITH_JEMALLOC=$(usex jemalloc)
130                 -DENABLE_LCMS=$(usex lcms)
131                 -DWITH_NLS=$(usex nls)
132                 -DWITH_OPENMP=$(usex openmp)
133                 -DBUILD_SHARED_LIBS=$(usex !static-libs)
134                 -DWITH_SVG2=$(usex svg2)
135                 -DWITH_LIBVISIO=$(usex visio)
136                 -DWITH_LIBWPG=$(usex wpg)
137         )
138
139         cmake_src_configure
140 }
141
142 src_install() {
143         cmake_src_install
144
145         find "${ED}" -type f -name "*.la" -delete || die
146
147         # No extensions are present in beta1
148         local extdir="${ED}"/usr/share/${PN}/extensions
149
150         if [[ -e "${extdir}" ]] && [[ -n $(find "${extdir}" -mindepth 1) ]]; then
151                 python_optimize "${ED}"/usr/share/${PN}/extensions
152         fi
153 }