Gentoo Archives: gentoo-commits

From: Joonas Niilola <juippis@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-sound/qtractor/
Date: Thu, 18 Aug 2022 07:06:32
Message-Id: 1660806377.eff4c9b4ef74d3ae03f5d8a03451812944e0b653.juippis@gentoo
1 commit: eff4c9b4ef74d3ae03f5d8a03451812944e0b653
2 Author: Nikos Chantziaras <realnc <AT> gmail <DOT> com>
3 AuthorDate: Wed Aug 3 06:44:28 2022 +0000
4 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
5 CommitDate: Thu Aug 18 07:06:17 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=eff4c9b4
7
8 media-sound/qtractor: enable VST2 support
9
10 A lot of MIDI instruments now come in the form of Linux VST plugins, so
11 not having VST support enabled seriously limits Qtractor's use cases
12 (since the primary use of Qtractor is as a MIDI sequencer) and forces
13 users to manually build from source.
14
15 VST2 support does not actually require any external deps. When the VST2
16 SDK is not found, it just uses the VST API declared in vestige.h which
17 comes with qtractor. So just unconditionally enable it, which is what
18 upstream does when cmake can't find the SDK.
19
20 VST3 support does require the VST3 SDK, which is not in portage, so keep
21 that disabled. Fortunately, VST3 is not that popular, at least for Linux
22 VST plugins.
23
24 Signed-off-by: Nikos Chantziaras <realnc <AT> gmail.com>
25 Closes: https://github.com/gentoo/gentoo/pull/26717
26 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
27
28 media-sound/qtractor/qtractor-0.9.27-r1.ebuild | 103 +++++++++++++++++++++++++
29 1 file changed, 103 insertions(+)
30
31 diff --git a/media-sound/qtractor/qtractor-0.9.27-r1.ebuild b/media-sound/qtractor/qtractor-0.9.27-r1.ebuild
32 new file mode 100644
33 index 000000000000..81b259e6c8fa
34 --- /dev/null
35 +++ b/media-sound/qtractor/qtractor-0.9.27-r1.ebuild
36 @@ -0,0 +1,103 @@
37 +# Copyright 1999-2022 Gentoo Authors
38 +# Distributed under the terms of the GNU General Public License v2
39 +
40 +EAPI=8
41 +
42 +inherit cmake xdg
43 +
44 +DESCRIPTION="Audio/MIDI multi-track sequencer written in C++ with the Qt framework"
45 +HOMEPAGE="https://qtractor.sourceforge.io"
46 +SRC_URI="mirror://sourceforge/qtractor/${P}.tar.gz"
47 +
48 +LICENSE="GPL-2"
49 +SLOT="0"
50 +KEYWORDS="~amd64 ~x86"
51 +
52 +IUSE="aubio cpu_flags_x86_sse debug dssi ladspa libsamplerate mad osc rubberband vorbis zlib"
53 +REQUIRED_USE="dssi? ( ladspa )"
54 +
55 +BDEPEND="
56 + dev-qt/linguist-tools:5
57 + virtual/pkgconfig
58 +"
59 +DEPEND="
60 + dev-qt/qtcore:5
61 + dev-qt/qtgui:5
62 + dev-qt/qtwidgets:5
63 + dev-qt/qtxml:5
64 + dev-qt/qtx11extras:5
65 + media-libs/alsa-lib
66 + media-libs/libsndfile
67 + media-libs/lilv
68 + media-libs/lv2
69 + media-libs/suil
70 + virtual/jack
71 + aubio? ( media-libs/aubio )
72 + dssi? ( media-libs/dssi )
73 + ladspa? ( media-libs/ladspa-sdk )
74 + libsamplerate? ( media-libs/libsamplerate )
75 + mad? ( media-libs/libmad )
76 + osc? ( media-libs/liblo )
77 + rubberband? ( media-libs/rubberband )
78 + vorbis? ( media-libs/libvorbis )
79 + zlib? ( sys-libs/zlib )
80 +"
81 +RDEPEND="${DEPEND}"
82 +
83 +src_prepare() {
84 + cmake_src_prepare
85 +}
86 +
87 +src_configure() {
88 + local mycmakeargs=(
89 + -DCONFIG_DSSI=$(usex dssi 1 0)
90 + -DCONFIG_GRADIENT=1
91 + -DCONFIG_JACK_LATENCY=1
92 + -DCONFIG_JACK_METADATA=1
93 + -DCONFIG_JACK_SESSION=1
94 + -DCONFIG_LADSPA=$(usex ladspa 1 0)
95 + -DCONFIG_LIBAUBIO=$(usex aubio 1 0)
96 + -DCONFIG_LIBLILV=1
97 + -DCONFIG_LIBLO=$(usex osc 1 0)
98 + -DCONFIG_LIBMAD=$(usex mad 1 0)
99 + -DCONFIG_LIBRUBBERBAND=$(usex rubberband 1 0)
100 + -DCONFIG_LIBSAMPLERATE=$(usex libsamplerate 1 0)
101 + -DCONFIG_LIBVORBIS=$(usex vorbis 1 0)
102 + -DCONFIG_LIBZ=$(usex zlib 1 0)
103 + -DCONFIG_LV2=1
104 + -DCONFIG_LV2_UI_GTK2=0
105 + -DCONFIG_NSM=0
106 + -DCONFIG_SSE=$(usex cpu_flags_x86_sse 1 0)
107 + -DCONFIG_STACKTRACE=$(usex debug 1 0)
108 + -DCONFIG_VESTIGE=1
109 + -DCONFIG_VST=1
110 + -DCONFIG_VST3=0
111 + -DCONFIG_XUNIQUE=0
112 + )
113 + # Following options are left to the default
114 + # CONFIG_LV2_ATOM
115 + # CONFIG_LV2_BUF_SIZE
116 + # CONFIG_LV2_CVPORT
117 + # CONFIG_LV2_EVENT
118 + # CONFIG_LV2_EXTERNAL_UI
119 + # CONFIG_LV2_MIDNAM
120 + # CONFIG_LV2_OPTIONS
121 + # CONFIG_LV2_PARAMETERS
122 + # CONFIG_LV2_PATCH
123 + # CONFIG_LV2_PORT_EVENT
124 + # CONFIG_LV2_PRESETS
125 + # CONFIG_LV2_PROGRAMS
126 + # CONFIG_LV2_STATE
127 + # CONFIG_LV2_STATE_FILES
128 + # CONFIG_LV2_STATE_MAKE_PATH
129 + # CONFIG_LV2_TIME
130 + # CONFIG_LV2_TIME_POSITION
131 + # CONFIG_LV2_UI
132 + # CONFIG_LV2_UI_IDLE
133 + # CONFIG_LV2_UI_REQ_VALUE
134 + # CONFIG_LV2_UI_SHOW
135 + # CONFIG_LV2_UI_TOUCH
136 + # CONFIG_LV2_WORKER
137 + # CONFIG_LV2_UI_X11
138 + cmake_src_configure
139 +}