1 |
commit: c011df2ba115c9b79d4e8e4e8e5a214631bfc369 |
2 |
Author: Alexander Tsoy <alexander <AT> tsoy <DOT> me> |
3 |
AuthorDate: Fri Jan 31 18:21:54 2020 +0000 |
4 |
Commit: Miroslav Šulc <fordfrog <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Feb 8 10:26:15 2020 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c011df2b |
7 |
|
8 |
media-sound/audacity: Version bump to 2.3.3 |
9 |
|
10 |
Also switch to wxGTK "3.0-gtk3" slot. |
11 |
|
12 |
Closes: https://bugs.gentoo.org/700942 |
13 |
Signed-off-by: Alexander Tsoy <alexander <AT> tsoy.me> |
14 |
Closes: https://github.com/gentoo/gentoo/pull/14517 |
15 |
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org> |
16 |
|
17 |
media-sound/audacity/Manifest | 2 + |
18 |
media-sound/audacity/audacity-2.3.3.ebuild | 139 +++++++++++++++++++++ |
19 |
...3.3-Fix-building-against-system-portaudio.patch | 56 +++++++++ |
20 |
3 files changed, 197 insertions(+) |
21 |
|
22 |
diff --git a/media-sound/audacity/Manifest b/media-sound/audacity/Manifest |
23 |
index 252b82de0a3..910df0fff27 100644 |
24 |
--- a/media-sound/audacity/Manifest |
25 |
+++ b/media-sound/audacity/Manifest |
26 |
@@ -1,4 +1,6 @@ |
27 |
DIST Audacity-2.3.2.tar.gz 61972597 BLAKE2B 968c3d877392af92e2a23d8357fe65c3eb608122185d037e741ed6165d1acb3af70fc15dce63140eff14cd032fb3e3dc1b8b4f7bca9016f8e0e56aaef8a27802 SHA512 a59d6e9e974d5f78f5ca561e3bea31fc1b3e88f9ea60b2df7ce8bcec264d886f3fdc8f20030e11a86daff8ffeb735850b5e5f73c45fbef0bfcc58692423e7cd0 |
28 |
+DIST Audacity-2.3.3.tar.gz 62073352 BLAKE2B a87f9ada8dd2ffeda86fecd194333dc53b5f1fe086c179dd904cebc912f5bff5a7d4be0c2584a6633a7dc4dadabc3ad438b45ab5fbbee573cc39ee91dfd62846 SHA512 0789d5bc27933c688b8c99e0d9d9ca65f3b0c59cf74a235feee094a1815bdb59a32a4f50d2938b8fb9d72b0c5ba88451d02f90c5163931774a2088463562c5ef |
29 |
DIST audacity-manual-2.2.2.zip 13501474 BLAKE2B f0289f22dc4134b31f38d4acee3bda9f915829842030f8454cce1801377d177c32a7f35077673ce7db0a0f059a644d8146457e6a6377c5f6abc01c11da6a4f53 SHA512 a34ded796157d763fa024e0a235ecce7c67a68bcce86b487f8c022d45d8337fe550e40f56df4155a16293b974511d0bcf130cb086b3594bc0c42d9d0f84f1e86 |
30 |
DIST audacity-manual-2.3.2.zip 21163508 BLAKE2B 6a0ec89567db63164e897aad21af6fb31557e2519640788c781b21e885c0f704174529d9abf3e8645ccb3bca0f7b987fa708b1ce64597b282357b823e8addd44 SHA512 5e541065236badfdc2331681e43dee2564f933c33a3a588806f189acc8d8285a2c60bf9bc0c7052c6cb23fa1ee29a9f5e0428540cd556901dcf896def1c7c0ac |
31 |
+DIST audacity-manual-2.3.3.zip 15135177 BLAKE2B f281fea3344513152f0841e11e5dcdfea591d7dced046028fd67954e6a34a0f7bad41cb37215d4b784d92c6ee64038918e521e1117dc0ccbc0101404d1388c84 SHA512 2612396ef61aa6e07e0ff1cc5f473dcdc34d8a166f95a9e4986bf491e8b0502c08641d9ef4c64adc19c1b22fe21514afcc5c3bed585b49e7e7c3c851fe532cd4 |
32 |
DIST audacity-minsrc-2.2.2.tar.xz 8210700 BLAKE2B b887cff6994f2d5315b5d22b47d460a6b7c7b7af4f212585740a7534dc1345a8b3cda701a8541fabeef1aedf30cd336466798b2da4ef62ed010152540ee02d26 SHA512 8e52b4456a3a328a9933961746722ab5c545d17f7c05f3ae4aa83ba5d4f8323590ffa070de9462163362032b372aa48bc61fc96459e5565eec29a146b7a0351c |
33 |
|
34 |
diff --git a/media-sound/audacity/audacity-2.3.3.ebuild b/media-sound/audacity/audacity-2.3.3.ebuild |
35 |
new file mode 100644 |
36 |
index 00000000000..ceb9bb0503a |
37 |
--- /dev/null |
38 |
+++ b/media-sound/audacity/audacity-2.3.3.ebuild |
39 |
@@ -0,0 +1,139 @@ |
40 |
+# Copyright 1999-2019 Gentoo Authors |
41 |
+# Distributed under the terms of the GNU General Public License v2 |
42 |
+ |
43 |
+EAPI=7 |
44 |
+WX_GTK_VER="3.0-gtk3" |
45 |
+ |
46 |
+inherit flag-o-matic wxwidgets xdg |
47 |
+ |
48 |
+MY_P="Audacity-${PV}" |
49 |
+DOC_PV="${PV}" |
50 |
+DESCRIPTION="Free crossplatform audio editor" |
51 |
+HOMEPAGE="https://web.audacityteam.org/" |
52 |
+# wget doesn't seem to work on FossHub links, so we mirror |
53 |
+SRC_URI="https://github.com/audacity/audacity/archive/${MY_P}.tar.gz |
54 |
+ doc? ( https://dev.gentoo.org/~polynomial-c/dist/${PN}-manual-${DOC_PV}.zip )" |
55 |
+S="${WORKDIR}/${PN}-${MY_P}" |
56 |
+ |
57 |
+LICENSE="GPL-2" |
58 |
+SLOT="0" |
59 |
+KEYWORDS="~amd64 ~mips ~x86" |
60 |
+IUSE="alsa cpu_flags_x86_sse doc ffmpeg +flac id3tag jack +ladspa +lame libav |
61 |
+ +lv2 mad midi nls +portmixer sbsms +soundtouch twolame vamp +vorbis +vst" |
62 |
+ |
63 |
+RESTRICT="test" |
64 |
+ |
65 |
+RDEPEND="dev-libs/expat |
66 |
+ >=media-libs/libsndfile-1.0.0 |
67 |
+ >=media-libs/portaudio-19.06.00-r2[alsa?] |
68 |
+ <media-libs/portaudio-20 |
69 |
+ media-libs/soxr |
70 |
+ x11-libs/wxGTK:${WX_GTK_VER}[X] |
71 |
+ alsa? ( media-libs/alsa-lib ) |
72 |
+ ffmpeg? ( |
73 |
+ libav? ( media-video/libav:= ) |
74 |
+ !libav? ( >=media-video/ffmpeg-1.2:= ) |
75 |
+ ) |
76 |
+ flac? ( >=media-libs/flac-1.3.1[cxx] ) |
77 |
+ id3tag? ( media-libs/libid3tag ) |
78 |
+ jack? ( virtual/jack ) |
79 |
+ lame? ( >=media-sound/lame-3.70 ) |
80 |
+ lv2? ( |
81 |
+ media-libs/lilv |
82 |
+ media-libs/lv2 |
83 |
+ media-libs/suil |
84 |
+ ) |
85 |
+ mad? ( >=media-libs/libmad-0.14.2b ) |
86 |
+ sbsms? ( media-libs/libsbsms ) |
87 |
+ soundtouch? ( >=media-libs/libsoundtouch-1.3.1 ) |
88 |
+ twolame? ( media-sound/twolame ) |
89 |
+ vamp? ( >=media-libs/vamp-plugin-sdk-2.0 ) |
90 |
+ vorbis? ( >=media-libs/libvorbis-1.0 ) |
91 |
+" |
92 |
+DEPEND="${RDEPEND}" |
93 |
+BDEPEND="app-arch/unzip |
94 |
+ virtual/pkgconfig |
95 |
+ nls? ( sys-devel/gettext ) |
96 |
+" |
97 |
+ |
98 |
+PATCHES=( |
99 |
+ "${FILESDIR}"/${PN}-2.3.3-Fix-building-against-system-portaudio.patch |
100 |
+) |
101 |
+ |
102 |
+src_prepare() { |
103 |
+ default |
104 |
+ |
105 |
+ use midi || sed -i \ |
106 |
+ -e 's:^\(#define EXPERIMENTAL_MIDI_OUT\):// \1:' \ |
107 |
+ src/Experimental.h || die |
108 |
+} |
109 |
+ |
110 |
+src_configure() { |
111 |
+ setup-wxwidgets |
112 |
+ append-cxxflags -std=gnu++14 |
113 |
+ |
114 |
+ # * always use system libraries if possible |
115 |
+ # * options listed in the order that configure --help lists them |
116 |
+ local myeconfargs=( |
117 |
+ --disable-dynamic-loading |
118 |
+ --enable-nyquist=local |
119 |
+ --enable-unicode |
120 |
+ --with-expat |
121 |
+ --with-lib-preference=system |
122 |
+ --with-libsndfile |
123 |
+ --with-libsoxr |
124 |
+ --with-mod-script-pipe |
125 |
+ --with-mod-nyq-bench |
126 |
+ --with-portaudio |
127 |
+ --with-widgetextra=local |
128 |
+ --with-wx-version=${WX_GTK_VER} |
129 |
+ $(use_enable cpu_flags_x86_sse sse) |
130 |
+ $(use_enable ladspa) |
131 |
+ $(use_enable nls) |
132 |
+ $(use_enable vst) |
133 |
+ $(use_with ffmpeg) |
134 |
+ $(use_with flac libflac) |
135 |
+ $(use_with id3tag libid3tag) |
136 |
+ $(use_with lame) |
137 |
+ $(use_with lv2) |
138 |
+ $(use_with mad libmad) |
139 |
+ $(use_with midi portmidi local) |
140 |
+ $(use_with midi "" local) |
141 |
+ $(use_with portmixer) |
142 |
+ $(use_with sbsms) |
143 |
+ $(use_with soundtouch) |
144 |
+ $(use_with twolame libtwolame) |
145 |
+ $(use_with vamp libvamp) |
146 |
+ $(use_with vorbis libvorbis) |
147 |
+ ) |
148 |
+ econf "${myeconfargs[@]}" |
149 |
+} |
150 |
+ |
151 |
+src_install() { |
152 |
+ emake DESTDIR="${D}" install |
153 |
+ |
154 |
+ # Remove bad doc install |
155 |
+ rm -r "${ED}"/usr/share/doc || die |
156 |
+ |
157 |
+ # Install our docs |
158 |
+ einstalldocs |
159 |
+ |
160 |
+ if use doc ; then |
161 |
+ docinto html |
162 |
+ dodoc -r "${WORKDIR}"/help/manual/{m,man,manual} |
163 |
+ dodoc "${WORKDIR}"/help/manual/{favicon.ico,index.html,quick_help.html} |
164 |
+ dosym ../../doc/${PF}/html /usr/share/${PN}/help/manual |
165 |
+ fi |
166 |
+} |
167 |
+ |
168 |
+pkg_preinst() { |
169 |
+ xdg_pkg_preinst |
170 |
+} |
171 |
+ |
172 |
+pkg_postinst() { |
173 |
+ xdg_pkg_postinst |
174 |
+} |
175 |
+ |
176 |
+pkg_postrm() { |
177 |
+ xdg_pkg_postrm |
178 |
+} |
179 |
|
180 |
diff --git a/media-sound/audacity/files/audacity-2.3.3-Fix-building-against-system-portaudio.patch b/media-sound/audacity/files/audacity-2.3.3-Fix-building-against-system-portaudio.patch |
181 |
new file mode 100644 |
182 |
index 00000000000..b44517fca80 |
183 |
--- /dev/null |
184 |
+++ b/media-sound/audacity/files/audacity-2.3.3-Fix-building-against-system-portaudio.patch |
185 |
@@ -0,0 +1,56 @@ |
186 |
+From 5f9482a191359f2c477763a36d2c865c5f186602 Mon Sep 17 00:00:00 2001 |
187 |
+From: Antonio Ospite <ao2@×××.it> |
188 |
+Date: Tue, 7 Nov 2017 13:06:33 +0100 |
189 |
+Subject: [PATCH] Fix building against the system portaudio library |
190 |
+ |
191 |
+Building against the system portaudio results in this error: |
192 |
+ |
193 |
+./src/AudioIO.cpp:983: undefined reference to `PaUtil_GetTime' |
194 |
+audacity-AudioIO.o: In function `audacityAudioCallback(void const*, void*, |
195 |
+unsigned long, PaStreamCallbackTimeInfo const*, unsigned long, void*)': |
196 |
+./src/AudioIO.cpp:4630: undefined reference to `PaUtil_GetTime' |
197 |
+collect2: error: ld returned 1 exit status |
198 |
+Makefile:2349: recipe for target 'audacity' failed |
199 |
+make[3]: *** [audacity] Error 1 |
200 |
+ |
201 |
+This is because PaUtil_GetTime is declared as a C symbol in pa_util.h |
202 |
+but is resolved as a C++ symbol at link time. |
203 |
+ |
204 |
+Audacity fixes this in the local tree with this change: |
205 |
+https://github.com/audacity/audacity/commit/38fd97b8e26060332ab3e9e000a8882326a70ba7 |
206 |
+ |
207 |
+However this is not general enough for the portaudio debian package. |
208 |
+ |
209 |
+Since PaUtil_GetTime() is the only function causing problems, just copy |
210 |
+over the code where it's used. |
211 |
+--- |
212 |
+ src/AudioIO.cpp | 17 ++++++++++++++++- |
213 |
+ 1 file changed, 16 insertions(+), 1 deletion(-) |
214 |
+ |
215 |
+--- a/src/AudioIO.cpp |
216 |
++++ b/src/AudioIO.cpp |
217 |
+@@ -480,8 +480,23 @@ |
218 |
+ #define ROUND(x) (int) ((x)+0.5) |
219 |
+ //#include <string.h> |
220 |
+ // #include "../lib-src/portmidi/pm_common/portmidi.h" |
221 |
+- #include "../lib-src/portaudio-v19/src/common/pa_util.h" |
222 |
+ #include "NoteTrack.h" |
223 |
++ |
224 |
++PaTime PaUtil_GetTime( void ) |
225 |
++{ |
226 |
++#ifdef HAVE_MACH_ABSOLUTE_TIME |
227 |
++ return mach_absolute_time() * machSecondsConversionScaler_; |
228 |
++#elif defined(HAVE_CLOCK_GETTIME) |
229 |
++ struct timespec tp; |
230 |
++ clock_gettime(CLOCK_REALTIME, &tp); |
231 |
++ return (PaTime)(tp.tv_sec + tp.tv_nsec * 1e-9); |
232 |
++#else |
233 |
++ struct timeval tv; |
234 |
++ gettimeofday( &tv, NULL ); |
235 |
++ return (PaTime) tv.tv_usec * 1e-6 + tv.tv_sec; |
236 |
++#endif |
237 |
++} |
238 |
++ |
239 |
+ #endif |
240 |
+ |
241 |
+ #ifdef EXPERIMENTAL_AUTOMATED_INPUT_LEVEL_ADJUSTMENT |