3 %bcond_without X # without X based interfaces (implies libX11 deps)
4 %bcond_without alsa # without ALSA support
5 %bcond_with arts # enable ARTS support (implies also glib(2) deps)
6 %bcond_with esd # enable ESD support
7 %bcond_with jack # enable JACK support
8 %bcond_with nas # enable NAS support
9 %bcond_with vorbis # enable Ogg Vorbis support
11 Summary: TiMidity++ - MIDI to WAV converter and player
12 Summary(pl): TiMidity++ - konwerter do WAV oraz odtwarzacz plików MIDI
13 Summary(pt_BR): Sintetizador MIDI por software
14 Summary(ru): ðÒÏÉÇÒÙ×ÁÔÅÌØ MIDI ÆÁÊÌÏ× É ËÏÎ×ÅÒÔÏÒ ÉÈ × WAV ÆÏÒÍÁÔ
15 Summary(uk): ðÒÏÇÒÁ×ÁÞ MIDI-ÆÁÊÌ¦× ÔÁ ËÏÎ×ÅÒÔÏÒ §È × WAV ÆÏÒÍÁÔ
20 Vendor: Masanao Izumo <mo@goice.co.jp>
21 Group: Applications/Sound
22 Source0: http://dl.sourceforge.net/timidity/%{name}-%{version}.tar.bz2
23 # Source0-md5: a82ceeb2245e22f4de2b41da21eaee32
24 Source1: http://archive.cs.umbc.edu/pub/midia/instruments.tar.gz
25 # Source1-md5: 4959787a78ee39d44a36185bd303cf20
26 Source2: britepno.pat.bz2
27 # Source2-md5: 324e265362f812883024b58cf3470d1a
28 Source3: pistol.pat.bz2
29 # Source3-md5: f961325db679de6e0ea402ebe6a268f9
31 Source5: timidity.init
32 Source6: timidity.sysconfig
33 Patch0: %{name}-detach.patch
34 Patch1: %{name}-gcc4.patch
35 URL: http://timidity.sourceforge.net/
36 %{?with_alsa:BuildRequires: alsa-lib-devel}
37 %{?with_arts:BuildRequires: arts-devel}
38 BuildRequires: autoconf
39 %{?with_esd:BuildRequires: esound-devel}
40 %{?with_jack:BuildRequires: jack-audio-connection-kit-devel}
41 %{?with_X:BuildRequires: gtk+-devel}
42 %{?with_X:BuildRequires: motif-devel}
43 %{?with_nas:BuildRequires: nas-devel}
44 BuildRequires: ncurses-devel
45 BuildRequires: slang-devel
46 %{?with_X:BuildRequires: tk-devel >= 8.3.2}
47 %{?with_vorbis:BuildRequires: libvorbis-devel}
48 %{?with_X:Provides: %{name}(X) = %{version}-%{release}}
51 Obsoletes: timidity++-X11
52 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
55 TiMidity++ is a converter that converts some of MIDI files ( formats :
56 Standard MIDI file (MID), Recomposer files (RCP, R36, G18, G36) and
57 Module file (mod) ) into formatted audio file (ex. RIFF WAVE).
58 TiMidity uses Gravis Ultrasound-compatible patch files or Soundfonts
59 (sfx, sf2) to generate digital audio data from MIDI files. The digital
60 audio data generated by TiMidity can be stored in a file for
61 processing, or played in real time through an audio device. In real
62 time playing, TiMidity if able to show the lyric contained in KAR file
66 TiMidity++ jest konwerterem z niektórych plików MIDI (formaty:
67 Standard MIDI (MID), Recomposer (RCP, R36, G18, G36), Module (mod)) do
68 plików audio (np. RIFF WAVE). Do generowania danych z plików MIDI
69 TiMidity u¿ywa patchy takich jak Gravis Ultrasound albo Soundfontów
70 (sfx, sf2). Cyfrowe dane audio mog± byæ zapisane do pliku albo
71 odtwarzane w czasie rzeczywistym. Przy odtwarzaniu TiMidity mo¿e
72 pokazywaæ s³owa zawarte w pliku KAR lub WRD.
75 O TiMidity++ é um sintetizador MIDI por software. Este pacote permite
76 ouvir arquivos do tipo MIDI com a mesma qualidade de som que as placas
77 que utilizam o recurso de "wavetable" via hardware (como a AWE32),
78 mesmo que esta não possua o recurso de "wavetable" (a SB16 por
82 ðÒÏÉÇÒÙ×ÁÔÅÌØ MIDI ÆÁÊÌÏ×, ÎÅ ÔÒÅÂÕÀÝÉÊ ÐÏÄÄÅÒÖËÉ ÉÎÓÔÒÕÍÅÎÔÏ× MIDI
83 Ú×ÕËÏ×ÏÊ ÐÌÁÔÏÊ. éÓÐÏÌØÚÕÅÔ ÆÁÊÌÙ ÉÎÓÔÒÕÍÅÎÔÏ× × ÆÏÒÍÁÔÅ GUS/patch,
84 ÍÏÖÅÔ ÔÁËÖÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÄÁÎÎÙÅ × ÆÏÒÍÁÔÅ SoundFont.
85 ïÂÅÓÐÅÞÉ×ÁÅÔ ÏÔÌÉÞÎÏÅ ËÁÞÅÓÔ×Ï Ú×ÕËÁ MIDI ÚÁ ÓÞÅÔ ÉÎÔÅÎÓÉ×ÎÏÇÏ
86 ÉÓÐÏÌØÚÏ×ÁÎÉÑ ÐÒÏÃÅÓÓÏÒÁ.
89 ðÒÏÇÒÁ×ÁÞ MIDI ÆÁÊ̦×, ÑËÏÍÕ ÎÅ ÐÏÔÒ¦ÂÎÁ ЦÄÔÒÉÍËÁ ¦ÎÓÔÒÕÍÅÎÔ¦× MIDI
90 Ú×ÕËÏ×ÏÀ ÐÌÁÔÏÀ. ÷ÉËÏÒÉÓÔÏ×Õ¤ ÆÁÊÌÉ ¦ÎÓÔÒÕÍÅÎÔ¦× Õ ÆÏÒÍÁÔ¦ GUS/patch,
91 ÒÏÚÕͦ¤ ÔÁËÏÖ ÆÏÒÍÁÔ SoundFont.
92 úÁÂÅÚÐÅÞÕ¤ צÄͦÎÎÕ Ñ˦ÓÔØ Ú×ÕËÕ MIDI ÚÁ ÒÁÈÕÎÏË ¦ÎÔÅÎÓÉ×ÎÏÇÏ
93 ×ÉËÏÒÉÓÔÁÎÎÑ ÐÒÏÃÅÓÏÒÁ.
96 Summary: Directory for TiMidity++ instruments
97 Summary(pl): Katalog na instrumenty TiMidity++
98 Group: Applications/Sound
101 Directory where TiMidity++ instruments should be placed in.
103 %description gspdir -l pl
104 Katalog, w którym powinny byæ instalowane instrumenty dla TiMidity++.
107 Summary: Instruments for TiMidity++
108 Summary(pl): Instrumenty dla TiMidity++
109 Summary(pt_BR): Instrumentos básicos para o TiMidity++
110 Group: Applications/Sound
111 Requires: %{name}-gspdir = %{version}-%{release}
112 Obsoletes: timidity-patches
114 %description instruments
115 Instruments for TiMidity++.
117 %description instruments -l pl
118 Instrumenty dla TiMidity++.
120 %description instruments -l pt_BR
121 Este pacote inclui um conjunto básico de instrumentos (chamados de
122 patches no meio musical) para o TiMidity++.
125 Summary: GTK+ interface for TiMidity++
126 Summary(pl): Interfejs TiMidity++ oparty o bibliotekê GTK+
127 Group: Applications/Sound
128 Requires: %{name}(X) = %{version}-%{release}
131 gtkmidi - GTK+ interface for TiMidity++.
133 %description gtk -l pl
134 gtkmidi - interfejs do TiMidity++ oparty o bibliotekê GTK+.
137 Summary: Motif interface for TiMidity++
138 Summary(pl): Interfejs TiMidity++ oparty o Motif
139 Group: Applications/Sound
140 Requires: %{name}(X) = %{version}-%{release}
143 xmmidi - Motif interface for TiMidity++.
145 %description motif -l pl
146 xmmidi - interfejs do TiMidity++ oparty o bibliotekê Motif.
149 Summary: Slang interface for TiMidity++
150 Summary(pl): Interfejs TiMidity++ oparty o bibliotekê Slang
151 Group: Applications/Sound
152 Requires: %{name} = %{version}-%{release}
155 Slang interface for TiMidity++.
157 %description slang -l pl
158 Interfejs do TiMidity++ oparty o bibliotekê Slang.
161 Summary: Tcl/Tk interface for TiMidity++
162 Summary(pl): Interfejs TiMidity++ oparty o Tcl/Tk
163 Group: Applications/Sound
164 Requires: %{name}(X) = %{version}-%{release}
167 tkmidi - Tcl/Tk interface for TiMidity++.
169 %description tcltk -l pl
170 tkmidi - interfejs do TiMidity++ oparty o Tcl/Tk.
173 Summary: VT100 interface for TiMidity++
174 Summary(pl): Interfejs TiMidity++ dzia³aj±cy na terminalu VT100
175 Group: Applications/Sound
176 Requires: %{name} = %{version}-%{release}
179 VT100 interface for TiMidity++.
181 %description vt100 -l pl
182 Interfejs do TiMidity++ mog±cy dzia³aæ na terminalu VT100.
185 Summary: Athena interface for TiMidity++
186 Summary(pl): Interfejs TiMidity++ oparty o Athena Widgets
187 Group: Applications/Sound
188 Requires: %{name}(X) = %{version}-%{release}
191 xawmidi - Athena interface for TiMidity++.
193 %description xaw -l pl
194 xawmidi - interfejs do TiMidity++ oparty o biblitekê widgetów Athena.
197 Summary: "X Skin" interface for TiMidity++
198 Summary(pl): Interfejs TiMidity++ "X Skin"
199 Group: Applications/Sound
200 Requires: %{name}(X) = %{version}-%{release}
201 Obsoletes: TiMidity++ < 2.13.0-3
204 xskinmidi - "X Skin" interface for TiMidity++.
206 %description xskin -l pl
207 xskinmidi - interfejs do TiMidity++ "X Skin".
210 Summary: TiMidity++ ALSA sequencer interface
211 Summary(pl): TiMidity++ jako interfejs sekwencera ALSA
212 Group: Applications/Sound
213 Requires: %{name} = %{version}-%{release}
216 The ALSA sequencer interface communicates between ALSA sequencer core
217 and timidity. The interface receives events from sequencer and plays
218 it in (quasi-)real-time. In this mode, TiMidity works purely as the
219 software real-time MIDI render, that is as a software MIDI synth
222 %description alsaseq -l pl
223 Interfejs sekwencera ALSA komunikuje siê miêdzy rdzeniem sekwencera
224 ALSA a timidity. Interfejs odbiera zdarzenia od sekwencera od odtwarza
225 je w czasie (prawie) rzeczywistym. W tym trybie TiMidity dzia³a
226 wy³±cznie jako programowy odtwarzacz MIDI czasu rzeczywistego, czyli
227 jako silnik syntezatora MIDI w architekturze ALSA.
234 for f in doc/ja_JP.eucJP/README*; do
239 cp -f /usr/share/automake/config.sub autoconf
242 AUDIO=oss%{?with_alsa:,alsa}%{?with_arts:,arts}%{?with_esd:,esd}\
243 %{?with_jack:,jack}%{?with_nas:,nas}%{?with_vorbis:,vorbis}
246 %{?with_alsa:--enable-alsaseq} \
247 --enable-audio=$AUDIO \
249 %{?with_X:--enable-gtk=dynamic} \
250 --enable-emacs=dynamic \
251 %{?with_X:--enable-motif=dynamic} \
252 --enable-ncurses=dynamic \
255 --enable-slang=dynamic \
256 %{?with_X:--enable-spectrogram} \
257 %{?with_X:--enable-tcltk=dynamic} \
258 --enable-vt100=dynamic \
259 %{?with_X:--enable-xaw=dynamic} \
260 %{?with_X:--enable-xskin=dynamic} \
261 --with-default-path=%{_sysconfdir} \
263 %{!?with_X:--without-x}
266 SHLIB_DIR=%{_libdir}/timidity
269 rm -rf $RPM_BUILD_ROOT
270 install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_datadir}/GUSpatches,/etc/{rc.d/init.d,sysconfig}}
273 DESTDIR=$RPM_BUILD_ROOT \
274 SHLIB_DIR=%{_libdir}/timidity
276 ## based on timidity/timidity.c
277 ##ln -s timidity $RPM_BUILD_ROOT%{_bindir}/kmidi # does it work?
278 ln -sf timidity $RPM_BUILD_ROOT%{_bindir}/gtkmidi
279 ln -sf timidity $RPM_BUILD_ROOT%{_bindir}/tkmidi
280 ln -sf timidity $RPM_BUILD_ROOT%{_bindir}/xmmidi
281 ln -sf timidity $RPM_BUILD_ROOT%{_bindir}/xawmidi
282 ln -sf timidity $RPM_BUILD_ROOT%{_bindir}/xskinmidi
284 install -d $RPM_BUILD_ROOT%{_mandir}/ja/man{1,5}
285 install doc/ja_JP.eucJP/timidity.1 $RPM_BUILD_ROOT%{_mandir}/ja/man1
286 install doc/ja_JP.eucJP/timidity.cfg.5 $RPM_BUILD_ROOT%{_mandir}/ja/man5
288 install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}
290 cd $RPM_BUILD_ROOT%{_datadir}/GUSpatches
292 mv -f instruments/* .
294 bzip2 -cd %{SOURCE2} > britepno.pat
295 bzip2 -cd %{SOURCE3} > pistol.pat
297 install %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/timidity
298 install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/timidity
301 rm -rf $RPM_BUILD_ROOT
305 /sbin/chkconfig --add timidity
306 if [ -r /var/lock/subsys/timidity ]; then
307 /etc/rc.d/init.d/timidity restart >&2
309 echo "Run \"/etc/rc.d/init.d/timidity start\" to start TiMidity++ ALSA sequencer interface."
313 if [ "$1" = "0" ]; then
314 if [ -r /var/lock/subsys/timidity ]; then
315 /etc/rc.d/init.d/timidity stop >&2
317 /sbin/chkconfig --del timidity
322 %defattr(644,root,root,755)
323 %doc AUTHORS ChangeLog* NEWS README TODO doc/C/{CHANGES*,FAQ,README.[!tx]*}
324 %lang(ja) %doc README.ja doc/ja_JP.eucJP/README.[!tx]*.ja
325 %attr(755,root,root) %{_bindir}/timidity
326 %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/timidity.cfg
327 %dir %{_libdir}/timidity
328 %attr(755,root,root) %{_libdir}/timidity/interface_e.so
329 %attr(755,root,root) %{_libdir}/timidity/interface_n.so
330 %{_libdir}/timidity/interface_e.txt
331 %{_libdir}/timidity/interface_n.txt
332 %if "%{_lib}" != "lib"
333 %dir %{_prefix}/lib/timidity
335 %{?with_X:%{_prefix}/lib/timidity/bitmaps}
336 %{_mandir}/man1/timidity.1*
337 %{_mandir}/man5/timidity.cfg.5*
338 %lang(ja) %{_mandir}/ja/man1/timidity.1*
339 %lang(ja) %{_mandir}/ja/man5/timidity.cfg.5*
342 %defattr(644,root,root,755)
343 %dir %{_datadir}/GUSpatches
346 %defattr(644,root,root,755)
347 %{_datadir}/GUSpatches/*
351 %defattr(644,root,root,755)
352 %attr(755,root,root) %{_bindir}/gtkmidi
353 %attr(755,root,root) %{_libdir}/timidity/interface_g.so
354 %{_libdir}/timidity/interface_g.txt
359 %defattr(644,root,root,755)
360 %attr(755,root,root) %{_bindir}/xmmidi
361 %attr(755,root,root) %{_libdir}/timidity/interface_m.so
362 %{_libdir}/timidity/interface_m.txt
366 %defattr(644,root,root,755)
367 %attr(755,root,root) %{_libdir}/timidity/interface_s.so
368 %{_libdir}/timidity/interface_s.txt
372 %defattr(644,root,root,755)
374 %lang(ja) %doc doc/ja_JP.eucJP/README.tk.ja
375 %attr(755,root,root) %{_bindir}/tkmidi
376 %attr(755,root,root) %{_libdir}/timidity/interface_k.so
377 %{_libdir}/timidity/interface_k.txt
378 %{_prefix}/lib/timidity/tclIndex
379 %{_prefix}/lib/timidity/*.tcl
383 %defattr(644,root,root,755)
384 %attr(755,root,root) %{_libdir}/timidity/interface_T.so
385 %{_libdir}/timidity/interface_T.txt
389 %defattr(644,root,root,755)
390 %doc doc/C/README.xaw
391 %lang(ja) %doc doc/ja_JP.eucJP/README.xaw.ja
392 %attr(755,root,root) %{_bindir}/xawmidi
393 %attr(755,root,root) %{_libdir}/timidity/interface_a.so
394 %{_libdir}/timidity/interface_a.txt
397 %defattr(644,root,root,755)
398 %doc doc/C/README.xskin
399 %lang(ja) %doc doc/ja_JP.eucJP/README.xskin.ja
400 %attr(755,root,root) %{_bindir}/xskinmidi
401 %attr(755,root,root) %{_libdir}/timidity/interface_i.so
402 %{_libdir}/timidity/interface_i.txt
407 %defattr(644,root,root,755)
408 %attr(754,root,root) /etc/rc.d/init.d/timidity
409 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/timidity