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 <fsate...@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;

Reply via email to