1 |
commit: e9aa0cde103128dad32502db4f43e1c058ce800e |
2 |
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org> |
3 |
AuthorDate: Tue Mar 12 08:24:57 2019 +0000 |
4 |
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org> |
5 |
CommitDate: Tue Mar 12 08:24:57 2019 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e9aa0cde |
7 |
|
8 |
media-sound/timidity++: Bump to version 2.15.0 |
9 |
|
10 |
Thanks-to: Robert Gill <locke <AT> sdf.lonestar.org> |
11 |
Closes: https://bugs.gentoo.org/676610 |
12 |
Package-Manager: Portage-2.3.62, Repoman-2.3.12 |
13 |
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org> |
14 |
|
15 |
media-sound/timidity++/Manifest | 1 + |
16 |
.../files/timidity++-2.15.0-pkg-config.patch | 118 ++++++++++++ |
17 |
media-sound/timidity++/timidity++-2.15.0.ebuild | 210 +++++++++++++++++++++ |
18 |
3 files changed, 329 insertions(+) |
19 |
|
20 |
diff --git a/media-sound/timidity++/Manifest b/media-sound/timidity++/Manifest |
21 |
index 0ff73fe8285..6417e3383c2 100644 |
22 |
--- a/media-sound/timidity++/Manifest |
23 |
+++ b/media-sound/timidity++/Manifest |
24 |
@@ -1 +1,2 @@ |
25 |
DIST TiMidity++-2.14.0.tar.xz 1356476 BLAKE2B 8d4a360d1c16b250f3bef7c010e1e263fdda13446437ff2454dc2c2a717246c4d27836a3b40586b12b33e175bc54ee211a3a1798005733461cf5833eda11811a SHA512 d8fc06fa36e4dd42de80c61943da4cd9aec5f8aaf31057a9ededa633d2d48e64c4e53391378d82a7a46ffe4f96c756b010ea9727270f80b134ae1f8bad535bd3 |
26 |
+DIST TiMidity++-2.15.0.tar.xz 1363040 BLAKE2B 63612dc96ddef9b24ca35a8fa24c22fee8b0573efb09543e6017070b2d0a68494bc34afe8ffc50b5f7fe2d95397a971d5dc7afd4c9adbb524b119012e716b7f7 SHA512 36c3c79d941903109d5d6d529963d12e8192a857e80402ad5ab0d1e223451a7cf5dc8fdd046b22ae7da96f413d68db8587a8fce348635838eba2f30f7019192f |
27 |
|
28 |
diff --git a/media-sound/timidity++/files/timidity++-2.15.0-pkg-config.patch b/media-sound/timidity++/files/timidity++-2.15.0-pkg-config.patch |
29 |
new file mode 100644 |
30 |
index 00000000000..3c2e269be02 |
31 |
--- /dev/null |
32 |
+++ b/media-sound/timidity++/files/timidity++-2.15.0-pkg-config.patch |
33 |
@@ -0,0 +1,118 @@ |
34 |
+use $PKG_CONFIG rather than `pkg-config` |
35 |
+ |
36 |
+https://bugs.gentoo.org/497362 |
37 |
+get ncurses info via pkg-config while we're at it |
38 |
+ |
39 |
+patch by Mike Frysinger <vapier@g.o> |
40 |
+ |
41 |
+--- a/configure.in |
42 |
++++ b/configure.in |
43 |
+@@ -163,6 +163,7 @@ AC_SUBST(xawresdir) |
44 |
+ |
45 |
+ # Checks for programs. |
46 |
+ AM_PATH_LISPDIR |
47 |
++PKG_PROG_PKG_CONFIG |
48 |
+ AC_PROG_CC |
49 |
+ AC_PROG_GCC_TRADITIONAL |
50 |
+ AC_PROG_INSTALL |
51 |
+@@ -1348,8 +1349,8 @@ AC_MSG_CHECKING(enable_audio=jack) |
52 |
+ if test "x$au_enable_jack" = xyes; then |
53 |
+ AC_MSG_RESULT(yes) |
54 |
+ SYSEXTRAS="$SYSEXTRAS jack_a.c" |
55 |
+- EXTRALIBS="$EXTRALIBS $(pkg-config --libs jack)" |
56 |
+- EXTRADEFS="$EXTRADEFS -DAU_JACK $(pkg-config --cflags jack)" |
57 |
++ EXTRALIBS="$EXTRALIBS $(${PKG_CONFIG} --libs jack)" |
58 |
++ EXTRADEFS="$EXTRADEFS -DAU_JACK $(${PKG_CONFIG} --cflags jack)" |
59 |
+ else |
60 |
+ AC_MSG_RESULT(no) |
61 |
+ fi |
62 |
+@@ -1665,69 +1666,8 @@ dnl ncurses |
63 |
+ AM_CONDITIONAL(ENABLE_NCURSES, false) |
64 |
+ CONFIG_INTERFACE(ncurses,NCURSES,n, |
65 |
+ AS_HELP_STRING([--enable-ncurses], [Enable ncurses interface (default is no)]), |
66 |
+- [ AC_CHECK_HEADERS(ncurses.h ncurses/curses.h curses.h) |
67 |
+- |
68 |
+-dnl #include <ncurses/curses.h> is failure on Plamo Linux 1.3/ncurses 1.9.9e |
69 |
+-dnl because <ncurses/curses.h> includes <unctrl.h>: |
70 |
+-dnl /usr/include/ncurses/curses.h:34: unctrl.h: No such file or directory |
71 |
+-dnl But surely there is unctl.h at /usr/include/ncurses/unctrl.h. |
72 |
+-dnl configure must check ncurses header with -I/usr/include/ncurses option. |
73 |
+- |
74 |
+- case "$ac_cv_header_curses_h$ac_cv_header_ncurses_curses_h$ac_cv_header_ncurses_h" in |
75 |
+- *yes*);; |
76 |
+- *) for i in /usr/include /usr/local/include; do |
77 |
+- if test -f "$i/ncurses/curses.h" -a -f "$i/ncurses/unctrl.h"; then |
78 |
+- AC_MSG_WARN(ncurses test is failure. Please check config.h and common.makefile later) |
79 |
+- CPPFLAGS="$CPPFLAGS -I$i/ncurses" |
80 |
+- break |
81 |
+- fi |
82 |
+- done |
83 |
+- ;; |
84 |
+- esac |
85 |
+- |
86 |
+- AC_CHECK_LIB(ncurses,initscr,lib_curses_opt=-lncurses, |
87 |
+- [ dnl checking pdcurses |
88 |
+- AC_CHECK_LIB(curses,PDC_set_ctrl_break, |
89 |
+- [ lib_curses_opt=-lcurses |
90 |
+- AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses) |
91 |
+- lib_user32_opt="$lib_user32_test" |
92 |
+- AC_CHECK_LIB(curses, vwprintw, |
93 |
+- AC_DEFINE(HAVE_VWPRINTW, 1, |
94 |
+- [Define to 1 if you have the `vwprintw' function.])) |
95 |
+- ], |
96 |
+- [ dnl checking libpdcurses |
97 |
+- AC_CHECK_LIB(pdcurses,PDC_set_ctrl_break, |
98 |
+- [ lib_curses_opt=-lpdcurses |
99 |
+- AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses) |
100 |
+- lib_user32_opt="$lib_user32_test" |
101 |
+- AC_CHECK_LIB(pdcurses, vwprintw, |
102 |
+- AC_DEFINE(HAVE_VWPRINTW, 1, |
103 |
+- [Define to 1 if you have the `vwprintw' function.])) |
104 |
+- ], |
105 |
+- [ dnl OpenBSD use -lcurses instead of -lncurses. |
106 |
+- case "$target" in |
107 |
+- *openbsd*) |
108 |
+- AC_CHECK_LIB(curses,initscr,lib_curses_opt=-lcurses, |
109 |
+- [ AC_MSG_WARN(ncurses interface is not enabled) |
110 |
+- enable_ncurses=no ]) |
111 |
+- ;; |
112 |
+- *) |
113 |
+- if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes || test "x$DMC" = xyes || test "x$POCC" = xyes; then |
114 |
+- lib_curses_opt=libpdcurses.lib |
115 |
+- AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses) |
116 |
+- AC_CHECK_LIB(pdcurses, vwprintw, |
117 |
+- AC_DEFINE(HAVE_VWPRINTW, 1, |
118 |
+- [Define to 1 if you have the `vwprintw' function.])) |
119 |
+- else |
120 |
+- AC_MSG_WARN(ncurses interface is not enabled) |
121 |
+- enable_ncurses=no |
122 |
+- fi |
123 |
+- ;; |
124 |
+- esac |
125 |
+- ]) |
126 |
+- ], |
127 |
+- $lib_user32_test) |
128 |
+- ]) |
129 |
++ [ CPPFLAGS="$CPPFLAGS $(${PKG_CONFIG} --cflags ncurses)" |
130 |
++ lib_curses_opt=$(${PKG_CONFIG} --libs ncurses) |
131 |
+ ], |
132 |
+ [ LIBS="$LIBS $lib_curses_opt" |
133 |
+ case "$target" in |
134 |
+@@ -1894,7 +1834,7 @@ CONFIG_INTERFACE(xaw,XAW,a, |
135 |
+ lib_xmu_opt=-lXmu |
136 |
+ lib_xt_opt=-lXt |
137 |
+ if test "x$enable_xft" = "xyes" && test "x$have_xaw" != "xno"; then |
138 |
+- XFT_CFLAGS="$(pkg-config --cflags xft)"; |
139 |
++ XFT_CFLAGS="$(${PKG_CONFIG} --cflags xft)"; |
140 |
+ EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$XFT_CFLAGS) |
141 |
+ lib_xft_opt="-lXft"; |
142 |
+ fi |
143 |
+@@ -1948,7 +1888,7 @@ CONFIG_INTERFACE(xaw,XAW,a, |
144 |
+ ;; |
145 |
+ esac |
146 |
+ if test "x$enable_xft" = "xyes" && test "x$have_xaw" != "xno"; then |
147 |
+- XFT_CFLAGS="$(pkg-config --cflags xft)"; |
148 |
++ XFT_CFLAGS="$(${PKG_CONFIG} --cflags xft)"; |
149 |
+ EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$XFT_CFLAGS) |
150 |
+ a_so_libs="$a_so_libs -lXft"; |
151 |
+ fi |
152 |
|
153 |
diff --git a/media-sound/timidity++/timidity++-2.15.0.ebuild b/media-sound/timidity++/timidity++-2.15.0.ebuild |
154 |
new file mode 100644 |
155 |
index 00000000000..286e33775ee |
156 |
--- /dev/null |
157 |
+++ b/media-sound/timidity++/timidity++-2.15.0.ebuild |
158 |
@@ -0,0 +1,210 @@ |
159 |
+# Copyright 1999-2019 Gentoo Authors |
160 |
+# Distributed under the terms of the GNU General Public License v2 |
161 |
+ |
162 |
+EAPI=7 |
163 |
+ |
164 |
+inherit autotools desktop elisp-common systemd toolchain-funcs user xdg |
165 |
+ |
166 |
+MY_PV=${PV/_/-} |
167 |
+MY_P=TiMidity++-${MY_PV} |
168 |
+S=${WORKDIR}/${MY_P} |
169 |
+ |
170 |
+DESCRIPTION="A handy MIDI to WAV converter with OSS and ALSA output support" |
171 |
+HOMEPAGE="http://timidity.sourceforge.net/" |
172 |
+SRC_URI="mirror://sourceforge/timidity/${MY_P}.tar.xz" |
173 |
+ |
174 |
+LICENSE="GPL-2" |
175 |
+SLOT="0" |
176 |
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" |
177 |
+IUSE="alsa ao emacs flac gtk jack motif nas ncurses oss selinux slang speex tk vorbis X" |
178 |
+ |
179 |
+REQUIRED_USE="tk? ( X )" |
180 |
+ |
181 |
+DEPEND=" |
182 |
+ alsa? ( media-libs/alsa-lib ) |
183 |
+ ao? ( >=media-libs/libao-0.8.5 ) |
184 |
+ emacs? ( virtual/emacs ) |
185 |
+ flac? ( media-libs/flac ) |
186 |
+ gtk? ( x11-libs/gtk+:2 ) |
187 |
+ jack? ( virtual/jack ) |
188 |
+ motif? ( >=x11-libs/motif-2.3:0 ) |
189 |
+ nas? ( >=media-libs/nas-1.4 ) |
190 |
+ ncurses? ( sys-libs/ncurses:0= ) |
191 |
+ slang? ( sys-libs/slang ) |
192 |
+ speex? ( media-libs/speex ) |
193 |
+ tk? ( dev-lang/tk:0= ) |
194 |
+ vorbis? ( media-libs/libvorbis ) |
195 |
+ X? ( |
196 |
+ media-libs/libpng:0= |
197 |
+ x11-libs/libXaw |
198 |
+ x11-libs/libXext |
199 |
+ ) |
200 |
+" |
201 |
+RDEPEND="${DEPEND} |
202 |
+ app-eselect/eselect-timidity |
203 |
+ alsa? ( media-sound/alsa-utils ) |
204 |
+ selinux? ( sec-policy/selinux-timidity ) |
205 |
+" |
206 |
+ |
207 |
+PDEPEND="|| ( media-sound/timidity-eawpatches media-sound/timidity-freepats )" |
208 |
+ |
209 |
+SITEFILE=50${PN}-gentoo.el |
210 |
+ |
211 |
+pkg_setup() { |
212 |
+ enewgroup audio 18 # Just make sure it exists |
213 |
+ enewuser timidity -1 -1 /var/lib/timidity audio |
214 |
+} |
215 |
+ |
216 |
+DOCS=( AUTHORS ChangeLog NEWS README "${FILESDIR}"/timidity.cfg-r1 ) |
217 |
+ |
218 |
+PATCHES=( |
219 |
+ "${FILESDIR}"/${PN}-2.14.0-params.patch |
220 |
+ "${FILESDIR}"/${PN}-2.14.0-ar.patch |
221 |
+ "${FILESDIR}"/${PN}-2.14.0-configure-flags.patch |
222 |
+ "${FILESDIR}"/${PN}-2.15.0-pkg-config.patch |
223 |
+ "${FILESDIR}"/${PN}-2.14.0-CVE-2017-1154{6,7}.patch |
224 |
+) |
225 |
+ |
226 |
+src_prepare() { |
227 |
+ default |
228 |
+ eautoreconf |
229 |
+} |
230 |
+ |
231 |
+src_configure() { |
232 |
+ export EXTRACFLAGS="${CFLAGS}" #385817 |
233 |
+ |
234 |
+ local audios |
235 |
+ local myeconfargs=( |
236 |
+ --localstatedir=/var/state/${PN} |
237 |
+ --with-module-dir="${EPREFIX}/usr/share/timidity" |
238 |
+ --with-lispdir="${SITELISP}/${PN}" |
239 |
+ --with-elf |
240 |
+ --enable-server |
241 |
+ --enable-network |
242 |
+ --enable-dynamic |
243 |
+ --enable-vt100 |
244 |
+ --enable-spline=cubic |
245 |
+ $(use_enable emacs) |
246 |
+ $(use_enable slang) |
247 |
+ $(use_enable ncurses) |
248 |
+ $(use_with X x) |
249 |
+ $(use_enable X spectrogram) |
250 |
+ $(use_enable X wrd) |
251 |
+ $(use_enable X xskin) |
252 |
+ $(use_enable X xaw) |
253 |
+ $(use_enable gtk) |
254 |
+ $(use_enable tk tcltk) |
255 |
+ $(use_enable motif) |
256 |
+ ) |
257 |
+ |
258 |
+ use flac && audios+=",flac" |
259 |
+ use speex && audios+=",speex" |
260 |
+ use vorbis && audios+=",vorbis" |
261 |
+ use oss && audios+=",oss" |
262 |
+ use jack && audios+=",jack" |
263 |
+ use ao && audios+=",ao" |
264 |
+ |
265 |
+ if use nas; then |
266 |
+ audios+=",nas" |
267 |
+ myeconfargs+=( |
268 |
+ --with-nas-library="/usr/$(get_libdir)/libaudio.so" |
269 |
+ --with-x |
270 |
+ ) |
271 |
+ use X || ewarn "Basic X11 support will be enabled because required by nas." |
272 |
+ fi |
273 |
+ |
274 |
+ if use alsa; then |
275 |
+ audios+=",alsa" |
276 |
+ myeconfargs+=( |
277 |
+ --with-default-output=alsa |
278 |
+ --enable-alsaseq |
279 |
+ ) |
280 |
+ fi |
281 |
+ |
282 |
+ if use motif; then |
283 |
+ myeconfargs+=( |
284 |
+ --with-x |
285 |
+ ) |
286 |
+ use X || ewarn "Basic X11 support will be enabled because required by motif." |
287 |
+ fi |
288 |
+ |
289 |
+ # needs to come after all audios have been collected |
290 |
+ myeconfargs+=( |
291 |
+ --enable-audio=${audios} |
292 |
+ ) |
293 |
+ |
294 |
+ econf "${myeconfargs[@]}" |
295 |
+} |
296 |
+ |
297 |
+src_install() { |
298 |
+ emake DESTDIR="${D}" install |
299 |
+ einstalldocs |
300 |
+ |
301 |
+ # these are only for the ALSA sequencer mode |
302 |
+ if use alsa; then |
303 |
+ newconfd "${FILESDIR}"/conf.d.timidity.2 timidity |
304 |
+ newinitd "${FILESDIR}"/init.d.timidity.4 timidity |
305 |
+ |
306 |
+ systemd_dounit "${FILESDIR}"/timidity.service |
307 |
+ fi |
308 |
+ |
309 |
+ insinto /etc |
310 |
+ newins "${FILESDIR}"/timidity.cfg-r1 timidity.cfg |
311 |
+ |
312 |
+ dodir /usr/share/timidity |
313 |
+ dosym ../../../etc/timidity.cfg /usr/share/timidity/timidity.cfg |
314 |
+ |
315 |
+ if use emacs; then |
316 |
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}" |
317 |
+ fi |
318 |
+ |
319 |
+ diropts -o timidity -g nobody -m 0700 |
320 |
+ keepdir /var/lib/timidity |
321 |
+ |
322 |
+ doicon "${FILESDIR}"/timidity.xpm |
323 |
+ newmenu "${FILESDIR}"/timidity.desktop.2 timidity.desktop |
324 |
+ |
325 |
+ # Order of preference: gtk, X (Xaw), ncurses, slang |
326 |
+ # Do not create menu item for terminal ones |
327 |
+ local interface="-id" |
328 |
+ local terminal="true" |
329 |
+ local nodisplay="true" |
330 |
+ if use gtk || use X; then |
331 |
+ interface="-ia" |
332 |
+ terminal="false" |
333 |
+ nodisplay="false" |
334 |
+ use gtk && interface="-ig" |
335 |
+ elif use ncurses || use slang; then |
336 |
+ local interface="-is" |
337 |
+ use ncurses && interface="-in" |
338 |
+ fi |
339 |
+ sed -e "s/Exec=timidity/Exec=timidity ${interface}/" \ |
340 |
+ -e "s/Terminal=.*/Terminal=${terminal}/" \ |
341 |
+ -e "s/NoDisplay=.*/NoDisplay=${nodisplay}/" \ |
342 |
+ -i "${ED}"/usr/share/applications/timidity.desktop || die |
343 |
+} |
344 |
+ |
345 |
+pkg_postinst() { |
346 |
+ use emacs && elisp-site-regen |
347 |
+ |
348 |
+ elog "A timidity config file has been installed in /etc/timidity.cfg." |
349 |
+ elog "Do not edit this file as it will interfere with the eselect timidity tool." |
350 |
+ elog "The tool 'eselect timidity' can be used to switch between installed patchsets." |
351 |
+ |
352 |
+ if use alsa; then |
353 |
+ elog "An init script for the alsa timidity sequencer has been installed." |
354 |
+ elog "If you wish to use the timidity virtual sequencer, edit /etc/conf.d/timidity" |
355 |
+ elog "and run 'rc-update add timidity <runlevel> && /etc/init.d/timidity start'" |
356 |
+ fi |
357 |
+ |
358 |
+ if use sparc; then |
359 |
+ elog "Only saving to wave file and ALSA soundback has been tested working." |
360 |
+ fi |
361 |
+ |
362 |
+ xdg_desktop_database_update |
363 |
+} |
364 |
+ |
365 |
+pkg_postrm() { |
366 |
+ use emacs && elisp-site-regen |
367 |
+ xdg_desktop_database_update |
368 |
+} |