commit: 18c01435cb944c9686562aa62908e361039ae807
Author: David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 16 08:15:46 2016 +0000
Commit: David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Fri Sep 16 08:16:09 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=18c01435
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
.../caps-plugins/caps-plugins-0.9.15-r1.ebuild | 52 ++++++++++++++++++++++
.../files/caps-plugins-0.9.15-fix-c++14.patch | 23 ++++++++++
2 files changed, 75 insertions(+)
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 00000000..f3cecc36
--- /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 00000000..32de7c4
--- /dev/null
+++ b/media-plugins/caps-plugins/files/caps-plugins-0.9.15-fix-c++14.patch
@@ -0,0 +1,23 @@
+From: Felipe Sateler <[email protected]>
+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;