summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--media-sound/whipper/Manifest1
-rw-r--r--media-sound/whipper/files/whipper-0.7.0-cdparanoia-name-fix.patch51
-rw-r--r--media-sound/whipper/files/whipper-0.7.0-src-Makefile-respect-CFLAGS.patch69
-rw-r--r--media-sound/whipper/metadata.xml17
-rw-r--r--media-sound/whipper/whipper-0.7.0.ebuild64
5 files changed, 202 insertions, 0 deletions
diff --git a/media-sound/whipper/Manifest b/media-sound/whipper/Manifest
new file mode 100644
index 000000000000..f17bc7ecf080
--- /dev/null
+++ b/media-sound/whipper/Manifest
@@ -0,0 +1 @@
+DIST whipper-0.7.0.tar.gz 160649 BLAKE2B 8e14b6dda00b3c8be7ba0fabb25d1cbca536edc785373986f857bafbc2e54d358f18b27140ffda74384c4e815e68ee466c8fc5e4e5d17aa80c8237fda389ba2b SHA512 b4bf4ca64521d8600288addecec6cbd8e43d1ff9a6b9a60872eff1bd5a2b6966af036d6467ba09273ac78aa01d8cac3be29a0e2c4e6600829b9988a74ef8cd88
diff --git a/media-sound/whipper/files/whipper-0.7.0-cdparanoia-name-fix.patch b/media-sound/whipper/files/whipper-0.7.0-cdparanoia-name-fix.patch
new file mode 100644
index 000000000000..fdd7b9eed463
--- /dev/null
+++ b/media-sound/whipper/files/whipper-0.7.0-cdparanoia-name-fix.patch
@@ -0,0 +1,51 @@
+diff -ur a/whipper/program/cdparanoia.py b/whipper/program/cdparanoia.py
+--- a/whipper/program/cdparanoia.py 2018-04-09 10:05:00.000000000 +0200
++++ b/whipper/program/cdparanoia.py 2018-08-03 11:59:22.582106444 +0200
+@@ -280,10 +280,10 @@
+
+ bufsize = 1024
+ if self._overread:
+- argv = ["cd-paranoia", "--stderr-progress",
++ argv = ["libcdio-paranoia", "--stderr-progress",
+ "--sample-offset=%d" % self._offset, "--force-overread", ]
+ else:
+- argv = ["cd-paranoia", "--stderr-progress",
++ argv = ["libcdio-paranoia", "--stderr-progress",
+ "--sample-offset=%d" % self._offset, ]
+ if self._device:
+ argv.extend(["--force-cdrom-device", self._device, ])
+@@ -302,7 +302,7 @@
+ except OSError, e:
+ import errno
+ if e.errno == errno.ENOENT:
+- raise common.MissingDependencyException('cd-paranoia')
++ raise common.MissingDependencyException('libcdio-paranoia')
+
+ raise
+
+@@ -559,8 +559,8 @@
+
+
+ def getCdParanoiaVersion():
+- getter = common.VersionGetter('cd-paranoia',
+- ["cd-paranoia", "-V"],
++ getter = common.VersionGetter('libcdio-paranoia',
++ ["libcdio-paranoia", "-V"],
+ _VERSION_RE,
+ "%(version)s %(release)s")
+
+@@ -585,12 +585,12 @@
+ def __init__(self, device=None):
+ # cdparanoia -A *always* writes cdparanoia.log
+ self.cwd = tempfile.mkdtemp(suffix='.whipper.cache')
+- self.command = ['cd-paranoia', '-A']
++ self.command = ['libcdio-paranoia', '-A']
+ if device:
+ self.command += ['-d', device]
+
+ def commandMissing(self):
+- raise common.MissingDependencyException('cd-paranoia')
++ raise common.MissingDependencyException('libcdio-paranoia')
+
+ def readbyteserr(self, bytes):
+ self._output.append(bytes)
diff --git a/media-sound/whipper/files/whipper-0.7.0-src-Makefile-respect-CFLAGS.patch b/media-sound/whipper/files/whipper-0.7.0-src-Makefile-respect-CFLAGS.patch
new file mode 100644
index 000000000000..71ba1f5c7857
--- /dev/null
+++ b/media-sound/whipper/files/whipper-0.7.0-src-Makefile-respect-CFLAGS.patch
@@ -0,0 +1,69 @@
+From a3f090d8ed55e5e2c0c595b9bf0e244a81ce1464 Mon Sep 17 00:00:00 2001
+From: Merlijn Wajer <merlijn@wizzup.org>
+Date: Wed, 22 Aug 2018 11:41:16 +0200
+Subject: [PATCH] src/Makefile: respect CFLAGS
+
+---
+ src/Makefile | 19 +++++--------------
+ src/config.mk | 6 +++---
+ 2 files changed, 8 insertions(+), 17 deletions(-)
+
+diff --git a/src/Makefile b/src/Makefile
+index f1c6d4a..ee8845d 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -5,25 +5,16 @@ include config.mk
+ SRC = accuraterip-checksum.c
+ OBJ = ${SRC:.c=.o}
+
+-all: options accuraterip-checksum
+-
+-options:
+- @echo accuraterip-checksum build options:
+- @echo "CFLAGS = ${CFLAGS}"
+- @echo "LDFLAGS = ${LDFLAGS}"
+- @echo "CC = ${CC}"
++all: accuraterip-checksum
+
+ .c.o:
+- @echo CC $<
+- @${CC} -c ${CFLAGS} $<
++ ${CC} -c ${OURCFLAGS} $<
+
+ accuraterip-checksum: ${OBJ}
+- @echo CC -o $@
+- @${CC} -o $@ ${OBJ} ${LDFLAGS}
++ ${CC} -std=c99 -lsndfile -o $@ ${OBJ} ${OURCFLAGS} ${OURLDFLAGS}
+
+ clean:
+- @echo cleaning
+- @rm -f accuraterip-checksum ${OBJ} accuraterip-checksum-${VERSION}.tar.gz
++ rm -f accuraterip-checksum ${OBJ} accuraterip-checksum-${VERSION}.tar.gz
+
+ dist: clean
+ @echo creating dist tarball
+@@ -44,4 +35,4 @@ uninstall:
+ @echo removing executable file from ${DESTDIR}${PREFIX}/bin
+ @rm -f ${DESTDIR}${PREFIX}/bin/accuraterip-checksum
+
+-.PHONY: all options clean dist install uninstall
++.PHONY: all clean dist install uninstall
+diff --git a/src/config.mk b/src/config.mk
+index 283d745..87fe219 100644
+--- a/src/config.mk
++++ b/src/config.mk
+@@ -4,8 +4,8 @@ VERSION = 1.4
+ PREFIX = /usr/local
+
+ # flags
+-CFLAGS = -std=c99
+-LDFLAGS = -lsndfile
++OURCFLAGS = ${CFLAGS} -std=c99
++OURLDFLAGS = ${LDFLAGS} -lsndfile
+
+ # compiler and linker
+-CC = cc
++CC ?= cc
+--
+2.16.4
+
diff --git a/media-sound/whipper/metadata.xml b/media-sound/whipper/metadata.xml
new file mode 100644
index 000000000000..46be9b4141ca
--- /dev/null
+++ b/media-sound/whipper/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@retornaz.com</email>
+ <name>Quentin Retornaz</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>gentoo@wizzup.org</email>
+ <name>Merlijn Wajer</name>
+ <description>Whipper project developer</description>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/media-sound/whipper/whipper-0.7.0.ebuild b/media-sound/whipper/whipper-0.7.0.ebuild
new file mode 100644
index 000000000000..cf58c45c2d39
--- /dev/null
+++ b/media-sound/whipper/whipper-0.7.0.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1
+
+DESCRIPTION="A Python CD-DA ripper preferring accuracy over speed (forked from morituri)"
+HOMEPAGE="https://github.com/JoeLametta/whipper"
+SRC_URI="https://github.com/JoeLametta/${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/gobject-introspection[${PYTHON_USEDEP}]
+ >=dev-libs/libcdio-paranoia-0.94_p2
+ dev-python/cddb-py[${PYTHON_USEDEP}]
+ dev-python/pycdio[${PYTHON_USEDEP}]
+ dev-python/pygobject:2=[${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}/${P}-cdparanoia-name-fix.patch"
+ "${FILESDIR}/${P}-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
+}