summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Seifert <soap@gentoo.org>2016-09-16 10:15:46 +0200
committerDavid Seifert <soap@gentoo.org>2016-09-16 10:16:09 +0200
commit18c01435cb944c9686562aa62908e361039ae807 (patch)
tree3c744651a70e09e385363ddab05769e5bb270599 /media-plugins/caps-plugins
parentsys-libs/readline: Re-enabled KEYWORDS. (diff)
downloadgentoo-18c01435cb944c9686562aa62908e361039ae807.tar.gz
gentoo-18c01435cb944c9686562aa62908e361039ae807.tar.bz2
gentoo-18c01435cb944c9686562aa62908e361039ae807.zip
media-plugins/caps-plugins: Allow for compiling with GCC 6
Gentoo-bug: 585554 * EAPI=6 * Patch borrowed from Debian Package-Manager: portage-2.3.0
Diffstat (limited to 'media-plugins/caps-plugins')
-rw-r--r--media-plugins/caps-plugins/caps-plugins-0.9.15-r1.ebuild52
-rw-r--r--media-plugins/caps-plugins/files/caps-plugins-0.9.15-fix-c++14.patch23
2 files changed, 75 insertions, 0 deletions
diff --git a/media-plugins/caps-plugins/caps-plugins-0.9.15-r1.ebuild b/media-plugins/caps-plugins/caps-plugins-0.9.15-r1.ebuild
new file mode 100644
index 000000000000..f3cecc368823
--- /dev/null
+++ b/media-plugins/caps-plugins/caps-plugins-0.9.15-r1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit toolchain-funcs multilib-minimal
+
+MY_P=caps-${PV}
+
+DESCRIPTION="The CAPS Audio Plugin Suite - LADSPA plugin suite"
+HOMEPAGE="http://quitte.de/dsp/caps.html"
+SRC_URI="http://quitte.de/dsp/caps_${PV}.tar.bz2
+ doc? ( http://quitte.de/dsp/caps-doc_${PV}.tar.bz2 )"
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+DEPEND="media-libs/ladspa-sdk"
+RDEPEND=""
+
+S="${WORKDIR}/${MY_P}"
+PATCHES=( "${FILESDIR}/${PN}-0.9.15-fix-c++14.patch" )
+
+src_prepare() {
+ default
+ multilib_copy_sources
+}
+
+multilib_src_compile() {
+ emake \
+ ARCH="" \
+ CC="$(tc-getCXX)" \
+ CFLAGS="${CXXFLAGS} -fPIC -DPIC" \
+ _LDFLAGS="-shared ${LDFLAGS}"
+}
+
+multilib_src_install() {
+ insinto /usr/$(get_libdir)/ladspa
+ insopts -m0755
+ doins *.so
+}
+
+multilib_src_install_all() {
+ use doc && HTML_DOCS=( "${WORKDIR}/caps-doc-${PV}/." )
+ einstalldocs
+
+ insinto /usr/share/ladspa/rdf
+ insopts -m0644
+ doins *.rdf
+}
diff --git a/media-plugins/caps-plugins/files/caps-plugins-0.9.15-fix-c++14.patch b/media-plugins/caps-plugins/files/caps-plugins-0.9.15-fix-c++14.patch
new file mode 100644
index 000000000000..32de7c4dee4e
--- /dev/null
+++ b/media-plugins/caps-plugins/files/caps-plugins-0.9.15-fix-c++14.patch
@@ -0,0 +1,23 @@
+From: Felipe Sateler <fsateler@debian.org>
+Date: Fri, 1 Jul 2016 19:06:31 -0400
+Subject: Avoid ambiguity in div invocation
+
+Be specific and use int version.
+Fixes build failure with gcc >= 6
+---
+ AutoFilter.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/AutoFilter.cc b/AutoFilter.cc
+index fc087d0..bd6b12f 100644
+--- a/AutoFilter.cc
++++ b/AutoFilter.cc
+@@ -69,7 +69,7 @@ AutoFilter::activate()
+ void
+ AutoFilter::cycle (uint frames)
+ {
+- div_t qr = div (frames, blocksize);
++ div_t qr = div ((int)frames, (int)blocksize);
+ int blocks = qr.quot;
+ if (qr.rem) ++blocks;
+ double over_blocks = 1./blocks;