summaryrefslogtreecommitdiff
blob: 327a19853a99f9021be26ef00c8afd8eb00d8a43 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

inherit desktop flag-o-matic qmake-utils xdg-utils git-r3 autotools

DESCRIPTION="A Qt application to control FluidSynth"
HOMEPAGE="https://qsynth.sourceforge.io/"
EGIT_REPO_URI="https://git.code.sf.net/p/qsynth/code"

LICENSE="GPL-2"
SLOT="0"
IUSE="+alsa debug jack pulseaudio"
KEYWORDS=""

BDEPEND="
	dev-qt/linguist-tools:5
"
DEPEND="
	dev-qt/qtcore:5
	dev-qt/qtgui:5
	dev-qt/qtnetwork:5
	dev-qt/qtwidgets:5
	media-sound/fluidsynth:=[jack?,alsa?,pulseaudio?]
"
RDEPEND="${DEPEND}"

REQUIRED_USE="|| ( alsa jack pulseaudio )"

PATCHES=( "${FILESDIR}/${PN}-0.4.0-qt5-tagging.patch" )

src_prepare() {
	eautoreconf

	default
}

src_configure() {
	append-cxxflags -std=c++11
	sed -e "/@gzip.*mandir)\/man1/d" -i Makefile.in || die
	econf \
		$(use_enable debug)

	eqmake5 ${PN}.pro -o ${PN}.mak
}

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
}

pkg_postinst() {
	xdg_icon_cache_update
}

pkg_postrm() {
	xdg_icon_cache_update
}