media-sound/qsynth: EAPI 6, fix configure w/ Qt 5.7.0
authorAndreas Sturmlechner <andreas.sturmlechner@gmail.com>
Thu, 20 Oct 2016 15:21:35 +0000 (17:21 +0200)
committerDavid Seifert <soap@gentoo.org>
Fri, 21 Oct 2016 22:19:15 +0000 (00:19 +0200)
metadata.xml: Qt3 is long gone.

Gentoo-bug: 595490

Package-Manager: portage-2.3.0
Closes: https://github.com/gentoo/gentoo/pull/2606

Signed-off-by: David Seifert <soap@gentoo.org>
media-sound/qsynth/metadata.xml
media-sound/qsynth/qsynth-0.4.2-r1.ebuild [new file with mode: 0644]

index 4f714c036511ca832945b3a5eaff043e0a979c91..22d9da6dd56bf12d9fd99130263a43e31ac74347 100644 (file)
@@ -7,7 +7,7 @@
        </maintainer>
        <longdescription>
 QSynth is a fluidsynth GUI front-end application written in C++ around the
-Qt3 toolkit using Qt Designer. Eventually it may evolve into a softsynth
+Qt toolkit using Qt Designer. Eventually it may evolve into a softsynth
 management application allowing the user to control and manage a variety of
 command line softsynth but for the moment it wraps the excellent FluidSynth.
 FluidSynth is a command line software synthesiser based on the Soundfont
diff --git a/media-sound/qsynth/qsynth-0.4.2-r1.ebuild b/media-sound/qsynth/qsynth-0.4.2-r1.ebuild
new file mode 100644 (file)
index 0000000..3d69625
--- /dev/null
@@ -0,0 +1,77 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit eutils flag-o-matic qmake-utils
+
+DESCRIPTION="A Qt application to control FluidSynth"
+HOMEPAGE="http://qsynth.sourceforge.net/"
+SRC_URI="mirror://sourceforge/qsynth/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="debug jack alsa pulseaudio +qt5"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+RDEPEND="
+       qt5? (
+               dev-qt/qtwidgets:5
+               dev-qt/qtx11extras:5
+               dev-qt/qtcore:5
+       )
+       !qt5? (
+               dev-qt/qtcore:4
+               dev-qt/qtgui:4
+       )
+       media-sound/fluidsynth[jack?,alsa?,pulseaudio?]
+       x11-libs/libX11"
+DEPEND="${RDEPEND}
+       qt5? ( dev-qt/linguist-tools:5 )
+"
+
+REQUIRED_USE="|| ( alsa jack pulseaudio )"
+
+src_prepare() {
+       default
+       use qt5 && eapply "${FILESDIR}/${PN}-0.4.0-qt5-tagging.patch"
+}
+
+src_configure() {
+       use qt5 && append-cxxflags -std=c++11
+       econf \
+               $(use_enable debug) \
+               $(use_enable !qt5 qt4) \
+               --with-qt"$(usex qt5 "5=$(qt5_get_bindir)/.." "4=$(qt4_get_bindir)/..")"
+
+       # Emulate what the Makefile does, so that we can get the correct
+       # compiler used.
+       if use qt5 ; then
+               eqmake5 ${PN}.pro -o ${PN}.mak
+       else
+               eqmake4 ${PN}.pro -o ${PN}.mak
+       fi
+}
+
+src_install () {
+       emake DESTDIR="${D}" INSTALL_ROOT="${D}" install
+       einstalldocs
+
+       # The desktop file is invalid, and we also change the command
+       # depending on useflags
+       rm "${ED}usr/share/applications/qsynth.desktop" || die
+
+       local cmd
+       if use jack; then
+               cmd="qsynth"
+       elif use pulseaudio; then
+               cmd="qsynth -a pulseaudio"
+       elif use alsa; then
+               cmd="qsynth -a alsa"
+       else
+               cmd="qsynth -a oss"
+       fi
+
+       make_desktop_entry "${cmd}" Qsynth qsynth
+}