Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-video/pitivi/, media-video/pitivi/files/
Date: Wed, 28 Apr 2021 15:36:09
Message-Id: 1619624159.2eb15e6a23ee419081ae9cf954e9087f39ac7202.mgorny@gentoo
1 commit: 2eb15e6a23ee419081ae9cf954e9087f39ac7202
2 Author: Poncho <poncho <AT> spahan <DOT> ch>
3 AuthorDate: Sun Apr 18 07:22:24 2021 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Wed Apr 28 15:35:59 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2eb15e6a
7
8 media-video/pitivi: revision bump, support python3.8
9
10 Closes: https://bugs.gentoo.org/771000
11 Closes: https://bugs.gentoo.org/722446
12 Package-Manager: Portage-3.0.17, Repoman-3.0.2
13 Signed-off-by: Daniel Brandt <poncho <AT> spahan.ch>
14 Closes: https://github.com/gentoo/gentoo/pull/20436
15 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
16
17 .../pitivi/files/pitivi-0.999-metainfo.patch | 12 +++
18 .../pitivi/files/pitivi-0.999-python38.patch | 49 +++++++++
19 media-video/pitivi/pitivi-0.999-r4.ebuild | 113 +++++++++++++++++++++
20 3 files changed, 174 insertions(+)
21
22 diff --git a/media-video/pitivi/files/pitivi-0.999-metainfo.patch b/media-video/pitivi/files/pitivi-0.999-metainfo.patch
23 new file mode 100644
24 index 00000000000..830a246e60d
25 --- /dev/null
26 +++ b/media-video/pitivi/files/pitivi-0.999-metainfo.patch
27 @@ -0,0 +1,12 @@
28 +diff --unified --new-file --recursive --show-c-function '--color=auto' pitivi-0.999/data/meson.build pitivi-0.999-fix/data/meson.build
29 +--- pitivi-0.999/data/meson.build 2018-08-29 16:05:21.000000000 +0200
30 ++++ pitivi-0.999-fix/data/meson.build 2021-04-18 09:10:56.067231216 +0200
31 +@@ -18,7 +18,7 @@ custom_target('org.pitivi.Pitivi.appdata
32 + input : 'org.pitivi.Pitivi.appdata.xml.in',
33 + command : [intltool_merge, '--xml-style', podir, '@INPUT@', '@OUTPUT@'],
34 + install : true,
35 +- install_dir : join_paths(get_option('datadir'), 'appdata'))
36 ++ install_dir : join_paths(get_option('datadir'), 'metainfo'))
37 +
38 + install_data('org.pitivi.Pitivi-mime.xml',
39 + install_dir : join_paths(get_option('datadir'), 'mime/packages'))
40
41 diff --git a/media-video/pitivi/files/pitivi-0.999-python38.patch b/media-video/pitivi/files/pitivi-0.999-python38.patch
42 new file mode 100644
43 index 00000000000..3c240d94911
44 --- /dev/null
45 +++ b/media-video/pitivi/files/pitivi-0.999-python38.patch
46 @@ -0,0 +1,49 @@
47 +From 3c2c03828efb986e66ba2a35e341127e8161c799 Mon Sep 17 00:00:00 2001
48 +From: =?UTF-8?q?Alexandru=20B=C4=83lu=C8=9B?= <alexandru.balut@×××××.com>
49 +Date: Tue, 28 Jan 2020 22:34:40 +0100
50 +Subject: [PATCH] meson: Support Python 3.8
51 +
52 +To link to Python we need to use python-3.8-embed.
53 +---
54 + meson.build | 13 ++++++++++---
55 + meson_options.txt | 3 ++-
56 + 2 files changed, 12 insertions(+), 4 deletions(-)
57 +
58 +diff --git a/meson.build b/meson.build
59 +index 17a7312d..289e0086 100644
60 +--- a/meson.build
61 ++++ b/meson.build
62 +@@ -1,11 +1,18 @@
63 +-project('pitivi', 'c', version : '0.999', meson_version : '>= 0.41.0')
64 ++project('pitivi', 'c', version : '0.999', meson_version : '>= 0.46.0')
65 +
66 +-python = find_program('python3')
67 + intltool_merge = find_program('intltool-merge')
68 + itstool = find_program('itstool')
69 + msgfmt = find_program('msgfmt')
70 +
71 +-python_dep = dependency('python3', version : '>= 3.3')
72 ++pymod = import('python')
73 ++python = pymod.find_installation(get_option('python'))
74 ++pythonver = python.language_version()
75 ++# Workaround for https://github.com/mesonbuild/meson/issues/5629
76 ++# https://gitlab.freedesktop.org/gstreamer/gst-python/issues/28
77 ++python_dep = dependency('python-@0@-embed'.format(pythonver), version: '>= 3.3', required: false)
78 ++if not python_dep.found()
79 ++ python_dep = python.dependency('python3', version: '>= 3.3')
80 ++endif
81 +
82 + if get_option('build-gst')
83 + subproject('gst-build', default_options: ['enable_python=true',
84 +diff --git a/meson_options.txt b/meson_options.txt
85 +index c6590dd1..7d6bad29 100644
86 +--- a/meson_options.txt
87 ++++ b/meson_options.txt
88 +@@ -1,2 +1,3 @@
89 +-option('disable-help', type : 'boolean', value : false)
90 + option('build-gst', type : 'boolean', value : false)
91 ++option('disable-help', type : 'boolean', value : false)
92 ++option('python', type : 'string', value : 'python3')
93 +--
94 +2.26.2
95 +
96
97 diff --git a/media-video/pitivi/pitivi-0.999-r4.ebuild b/media-video/pitivi/pitivi-0.999-r4.ebuild
98 new file mode 100644
99 index 00000000000..0fea03048c4
100 --- /dev/null
101 +++ b/media-video/pitivi/pitivi-0.999-r4.ebuild
102 @@ -0,0 +1,113 @@
103 +# Copyright 1999-2021 Gentoo Authors
104 +# Distributed under the terms of the GNU General Public License v2
105 +
106 +EAPI=7
107 +PYTHON_COMPAT=( python3_8 )
108 +PYTHON_REQ_USE="sqlite"
109 +
110 +inherit gnome.org meson python-single-r1 virtualx xdg
111 +
112 +DESCRIPTION="A non-linear video editor using the GStreamer multimedia framework"
113 +HOMEPAGE="http://www.pitivi.org"
114 +
115 +LICENSE="LGPL-2.1"
116 +SLOT="0"
117 +KEYWORDS="~amd64 ~x86"
118 +
119 +IUSE="v4l test"
120 +RESTRICT="!test? ( test )"
121 +REQUIRED_USE="${PYTHON_REQUIRED_USE}"
122 +
123 +# XXX: recommends gst-plugins-libav and frei0r-plugins
124 +
125 +# Do not forget to check pitivi/check.py for dependencies!!!
126 +# pycanberra, libav, libnotify and liwnck are optional
127 +GST_VER="1.14.2"
128 +
129 +COMMON_DEPEND="
130 + ${PYTHON_DEPS}
131 + $(python_gen_cond_dep '
132 + >=dev-python/pycairo-1.10[${PYTHON_MULTI_USEDEP}]
133 + ')
134 + >=x11-libs/cairo-1.10
135 +
136 + >=media-libs/gstreamer-${GST_VER}:1.0[introspection]
137 + >=media-plugins/gst-transcoder-1.14.1
138 +"
139 +RDEPEND="${COMMON_DEPEND}
140 + >=dev-libs/glib-2.30.0:2
141 +
142 + >=dev-libs/gobject-introspection-1.34:=
143 + $(python_gen_cond_dep '
144 + dev-python/dbus-python[${PYTHON_MULTI_USEDEP}]
145 + >=dev-python/gst-python-1.4:1.0[${PYTHON_MULTI_USEDEP}]
146 + dev-python/matplotlib[${PYTHON_MULTI_USEDEP}]
147 + dev-python/numpy[${PYTHON_MULTI_USEDEP}]
148 + >=dev-python/pygobject-3.8:3[${PYTHON_MULTI_USEDEP}]
149 + ')
150 +
151 + gnome-base/librsvg:=
152 + >=media-libs/gsound-1.0
153 +
154 + >=media-libs/gstreamer-editing-services-${GST_VER}:1.0[introspection]
155 + >=media-libs/gst-plugins-base-${GST_VER}:1.0[introspection,theora]
156 + >=media-libs/gst-plugins-bad-${GST_VER}:1.0
157 + >=media-plugins/gst-plugins-gtk-${GST_VER}:1.0
158 + >=media-libs/gst-plugins-good-${GST_VER}:1.0
159 + >=media-plugins/gst-plugins-libav-${GST_VER}:1.0
160 + >=media-plugins/gst-plugins-gdkpixbuf-${GST_VER}:1.0
161 +
162 + >=x11-libs/libnotify-0.7[introspection]
163 + x11-libs/libwnck:3[introspection]
164 + >=x11-libs/gtk+-3.20.0:3[introspection]
165 +
166 + v4l? ( >=media-plugins/gst-plugins-v4l2-${GST_VER}:1.0 )
167 +"
168 +DEPEND="${RDEPEND}"
169 +BDEPEND="
170 + app-text/yelp-tools
171 + dev-python/setuptools
172 + >=dev-util/intltool-0.35.5
173 + dev-util/itstool
174 + sys-devel/gettext
175 + virtual/pkgconfig
176 + test? (
177 + $(python_gen_cond_dep '
178 + dev-python/nose2[${PYTHON_MULTI_USEDEP}]
179 + ')
180 + )
181 +"
182 +
183 +PATCHES=(
184 + # https://gitlab.gnome.org/GNOME/pitivi/-/merge_requests/245
185 + # support python 3.8
186 + "${FILESDIR}"/${P}-python38.patch
187 +
188 + # use /usr/share/metainfo
189 + "${FILESDIR}"/${P}-metainfo.patch
190 +
191 + # Make tests optional, bug #594096
192 + # https://gitlab.gnome.org/GNOME/pitivi/issues/2303
193 + "${FILESDIR}"/${P}-optional-tests.patch
194 +)
195 +
196 +src_configure() {
197 + local emesonargs=(
198 + -Denable-tests=$(usex test true false)
199 + )
200 + meson_src_configure
201 +}
202 +
203 +src_compile() {
204 + meson_src_compile
205 +}
206 +
207 +src_test() {
208 + export PITIVI_TOP_LEVEL_DIR="${S}"
209 + virtx meson_src_test
210 +}
211 +
212 +src_install() {
213 + meson_src_install
214 + python_fix_shebang "${D}"
215 +}