media-sound/whipper: use non-deprecated pygobject
authorMart Raudsepp <leio@gentoo.org>
Sun, 4 Aug 2019 11:48:57 +0000 (14:48 +0300)
committerMart Raudsepp <leio@gentoo.org>
Sun, 4 Aug 2019 11:56:13 +0000 (14:56 +0300)
whipper/extern/task/task.py uses pygobject:3 with a fallback to
pygobject:2. Prefer the modern version instead of the last rites
candidate.
This also gets rid of the gobject-introspection dep (pygobject:3
will pull it in), which had a wrong PYTHON_USEDEP (gobject-introspection
is a python-single-r1 ebuild and consumers mustn't USEDEP), which
will cause problems with an upcoming gobject-introspection bump,
as it drops python2 support - but it doesn't matter for consumers,
because it's only for its own use by the g-ir-scanner tool, so
python2 consumers will continue to work fine if they don't wrongly
PYTHON_USEDEP on this.

Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Mart Raudsepp <leio@gentoo.org>
media-sound/whipper/whipper-0.7.3-r1.ebuild [new file with mode: 0644]

diff --git a/media-sound/whipper/whipper-0.7.3-r1.ebuild b/media-sound/whipper/whipper-0.7.3-r1.ebuild
new file mode 100644 (file)
index 0000000..9491ea3
--- /dev/null
@@ -0,0 +1,62 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1
+
+DESCRIPTION="A Python CD-DA ripper preferring accuracy over speed (forked from morituri)"
+HOMEPAGE="https://github.com/whipper-team/whipper"
+SRC_URI="https://github.com/whipper-team/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+DEPEND="
+       dev-python/setuptools[${PYTHON_USEDEP}]
+       media-libs/libsndfile
+       test? ( dev-python/twisted[${PYTHON_USEDEP}] )
+"
+RDEPEND="
+       app-cdr/cdrdao
+       >=dev-libs/libcdio-paranoia-0.94_p2
+       dev-python/pycdio[${PYTHON_USEDEP}]
+       dev-python/pygobject:3=[${PYTHON_USEDEP}]
+       dev-python/python-musicbrainz-ngs[${PYTHON_USEDEP}]
+       dev-python/requests[${PYTHON_USEDEP}]
+       dev-python/setuptools[${PYTHON_USEDEP}]
+       media-libs/flac
+       media-libs/libsndfile
+       media-libs/mutagen[${PYTHON_USEDEP}]
+       media-sound/sox[flac]
+"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-0.7.0-cdparanoia-name-fix.patch"
+       "${FILESDIR}/${PN}-0.7.0-src-Makefile-respect-CFLAGS.patch"
+)
+
+src_prepare() {
+       # accurip test totally depends on network access
+       rm "${PN}"/test/test_common_accurip.py || die
+
+       distutils-r1_src_prepare
+}
+
+src_compile() {
+       distutils-r1_src_compile
+       emake -C src CC="$(tc-getCC)"
+}
+
+python_test() {
+       "${EPYTHON}" -m unittest discover -v || die "Tests fail with ${EPYTHON}"
+}
+
+src_install() {
+       distutils-r1_src_install
+       emake PREFIX="${EPREFIX}/usr" DESTDIR="${D}" -C src install
+}