]> git.pld-linux.org Git - packages/TiMidity++.git/blame - TiMidity++.spec
- added patch to alsaseq server interace that stops in loop polling(saves power/batte...
[packages/TiMidity++.git] / TiMidity++.spec
CommitLineData
0cb6b8cb
JB
1#
2# Conditional build:
9955a6d6 3%bcond_without x # without X based interfaces (implies libX11 deps)
9e6c0872 4%bcond_without alsa # without ALSA support
6e491108 5%bcond_with arts # enable ARTS support (implies also glib(2) deps)
605e559d 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
0cb6b8cb 10#
ebb334d4 11Summary: TiMidity++ - MIDI to WAV converter and player
a0221428
ER
12Summary(pl.UTF-8): TiMidity++ - konwerter do WAV oraz odtwarzacz plików MIDI
13Summary(pt_BR.UTF-8): Sintetizador MIDI por software
14Summary(ru.UTF-8): Проигрыватель MIDI файлов и конвертор их в WAV формат
15Summary(uk.UTF-8): Програвач MIDI-файлів та конвертор їх в WAV формат
ea523cb1 16Name: TiMidity++
d7cc6b0f 17Version: 2.13.2
7be54330 18Release: 6
fb288e42 19License: GPL
ea523cb1 20Group: Applications/Sound
3cd607b2 21Source0: http://dl.sourceforge.net/timidity/%{name}-%{version}.tar.bz2
d7cc6b0f 22# Source0-md5: a82ceeb2245e22f4de2b41da21eaee32
a3e166bc 23Source1: http://archive.cs.umbc.edu/pub/midia/instruments.tar.gz
fc23fe90 24# Source1-md5: 4959787a78ee39d44a36185bd303cf20
bc691fd9 25Source2: britepno.pat.bz2
fc23fe90 26# Source2-md5: 324e265362f812883024b58cf3470d1a
bc691fd9 27Source3: pistol.pat.bz2
fc23fe90 28# Source3-md5: f961325db679de6e0ea402ebe6a268f9
bc691fd9 29Source4: timidity.cfg
55b3cb7a
JK
30Source5: timidity.init
31Source6: timidity.sysconfig
32Patch0: %{name}-detach.patch
b79f6e48 33Patch1: %{name}-gcc4.patch
3ec60ad7 34Patch2: %{name}-configure.patch
7be54330 35Patch3: %{name}-stop_polling.patch
3cd607b2 36URL: http://timidity.sourceforge.net/
9e6c0872 37%{?with_alsa:BuildRequires: alsa-lib-devel}
605e559d 38%{?with_arts:BuildRequires: arts-devel}
fb10de13 39BuildRequires: autoconf
605e559d 40%{?with_esd:BuildRequires: esound-devel}
9955a6d6 41%{?with_x:BuildRequires: gtk+-devel}
35a8a4d2
ER
42%{?with_jack:BuildRequires: jack-audio-connection-kit-devel}
43%{?with_vorbis:BuildRequires: libvorbis-devel}
9955a6d6 44%{?with_x:BuildRequires: motif-devel}
605e559d 45%{?with_nas:BuildRequires: nas-devel}
dcf6098b 46BuildRequires: ncurses-devel
7736edf2 47BuildRequires: rpmbuild(macros) >= 1.268
2565250f 48BuildRequires: slang-devel >= 2.0.0
9955a6d6
JB
49%{?with_x:BuildRequires: tk-devel >= 8.3.2}
50%{?with_x:Provides: %{name}(X) = %{version}-%{release}}
00c45717 51Obsoletes: timidity
dac7fe10 52Obsoletes: timidity++
53Obsoletes: timidity++-X11
9e6c0872 54BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
ebb334d4 55
56%description
57TiMidity++ is a converter that converts some of MIDI files ( formats :
d01f548e 58Standard MIDI file (MID), Recomposer files (RCP, R36, G18, G36) and
59Module file (mod) ) into formatted audio file (ex. RIFF WAVE).
60TiMidity uses Gravis Ultrasound-compatible patch files or Soundfonts
61(sfx, sf2) to generate digital audio data from MIDI files. The digital
62audio data generated by TiMidity can be stored in a file for
63processing, or played in real time through an audio device. In real
ed993824 64time playing, TiMidity if able to show the lyric contained in KAR file
d01f548e 65or WRD file.
ea523cb1 66
43c38e43
JR
67%description -l pl.UTF-8
68TiMidity++ jest konwerterem z niektórych plików MIDI (formaty:
0049ea42 69Standard MIDI (MID), Recomposer (RCP, R36, G18, G36), Module (mod)) do
43c38e43
JR
70plików audio (np. RIFF WAVE). Do generowania danych z plików MIDI
71TiMidity używa patchy takich jak Gravis Ultrasound albo Soundfontów
72(sfx, sf2). Cyfrowe dane audio mogą być zapisane do pliku albo
73odtwarzane w czasie rzeczywistym. Przy odtwarzaniu TiMidity może
74pokazywać słowa zawarte w pliku KAR lub WRD.
75
76%description -l pt_BR.UTF-8
77O TiMidity++ é um sintetizador MIDI por software. Este pacote permite
8e7216ab 78ouvir arquivos do tipo MIDI com a mesma qualidade de som que as placas
79que utilizam o recurso de "wavetable" via hardware (como a AWE32),
43c38e43 80mesmo que esta não possua o recurso de "wavetable" (a SB16 por
8e7216ab 81exemplo).
82
43c38e43
JR
83%description -l ru.UTF-8
84Проигрыватель MIDI файлов, не требующий поддержки инструментов MIDI
85звуковой платой. Использует файлы инструментов в формате GUS/patch,
86может также использовать данные в формате SoundFont. Обеспечивает
87отличное качество звука MIDI за счет интенсивного использования
88процессора.
64b30223 89
43c38e43
JR
90%description -l uk.UTF-8
91Програвач MIDI файлів, якому не потрібна підтримка інструментів MIDI
92звуковою платою. Використовує файли інструментів у форматі GUS/patch,
93розуміє також формат SoundFont. Забезпечує відмінну якість звуку MIDI
94за рахунок інтенсивного використання процесора.
64b30223 95
0ee04ccd 96%package gspdir
97Summary: Directory for TiMidity++ instruments
a0221428 98Summary(pl.UTF-8): Katalog na instrumenty TiMidity++
0ee04ccd 99Group: Applications/Sound
100
101%description gspdir
102Directory where TiMidity++ instruments should be placed in.
103
43c38e43
JR
104%description gspdir -l pl.UTF-8
105Katalog, w którym powinny być instalowane instrumenty dla TiMidity++.
0ee04ccd 106
0ee04ccd 107%package instruments
d1ca9d2a 108Summary: Instruments for TiMidity++
a0221428
ER
109Summary(pl.UTF-8): Instrumenty dla TiMidity++
110Summary(pt_BR.UTF-8): Instrumentos básicos para o TiMidity++
0ee04ccd 111Group: Applications/Sound
059c4b27 112Requires: %{name}-gspdir = %{version}-%{release}
0ee04ccd 113Obsoletes: timidity-patches
114
115%description instruments
116Instruments for TiMidity++.
117
43c38e43 118%description instruments -l pl.UTF-8
0ee04ccd 119Instrumenty dla TiMidity++.
120
43c38e43
JR
121%description instruments -l pt_BR.UTF-8
122Este pacote inclui um conjunto básico de instrumentos (chamados de
0ee04ccd 123patches no meio musical) para o TiMidity++.
ed993824 124
3cd607b2
JB
125%package gtk
126Summary: GTK+ interface for TiMidity++
a0221428 127Summary(pl.UTF-8): Interfejs TiMidity++ oparty o bibliotekę GTK+
3cd607b2 128Group: Applications/Sound
a38d5344 129Requires: %{name}(X) = %{version}-%{release}
3cd607b2
JB
130
131%description gtk
132gtkmidi - GTK+ interface for TiMidity++.
133
43c38e43
JR
134%description gtk -l pl.UTF-8
135gtkmidi - interfejs do TiMidity++ oparty o bibliotekę GTK+.
3cd607b2 136
ea523cb1 137%package motif
d01f548e 138Summary: Motif interface for TiMidity++
a0221428 139Summary(pl.UTF-8): Interfejs TiMidity++ oparty o Motif
ea523cb1 140Group: Applications/Sound
a38d5344 141Requires: %{name}(X) = %{version}-%{release}
ea523cb1
JR
142
143%description motif
d1ca9d2a 144xmmidi - Motif interface for TiMidity++.
ea523cb1 145
43c38e43
JR
146%description motif -l pl.UTF-8
147xmmidi - interfejs do TiMidity++ oparty o bibliotekę Motif.
ed993824 148
0ee04ccd 149%package slang
150Summary: Slang interface for TiMidity++
a0221428 151Summary(pl.UTF-8): Interfejs TiMidity++ oparty o bibliotekę Slang
0ee04ccd 152Group: Applications/Sound
059c4b27 153Requires: %{name} = %{version}-%{release}
0ee04ccd 154
155%description slang
156Slang interface for TiMidity++.
157
43c38e43
JR
158%description slang -l pl.UTF-8
159Interfejs do TiMidity++ oparty o bibliotekę Slang.
0ee04ccd 160
ea523cb1 161%package tcltk
d01f548e 162Summary: Tcl/Tk interface for TiMidity++
a0221428 163Summary(pl.UTF-8): Interfejs TiMidity++ oparty o Tcl/Tk
ea523cb1 164Group: Applications/Sound
a38d5344 165Requires: %{name}(X) = %{version}-%{release}
ea523cb1
JR
166
167%description tcltk
d1ca9d2a 168tkmidi - Tcl/Tk interface for TiMidity++.
ea523cb1 169
43c38e43 170%description tcltk -l pl.UTF-8
ed993824
JB
171tkmidi - interfejs do TiMidity++ oparty o Tcl/Tk.
172
1341902d 173%package vt100
d01f548e 174Summary: VT100 interface for TiMidity++
a0221428 175Summary(pl.UTF-8): Interfejs TiMidity++ działający na terminalu VT100
1341902d 176Group: Applications/Sound
059c4b27 177Requires: %{name} = %{version}-%{release}
1341902d
AM
178
179%description vt100
180VT100 interface for TiMidity++.
181
43c38e43
JR
182%description vt100 -l pl.UTF-8
183Interfejs do TiMidity++ mogący działać na terminalu VT100.
ed993824 184
0ee04ccd 185%package xaw
186Summary: Athena interface for TiMidity++
a0221428 187Summary(pl.UTF-8): Interfejs TiMidity++ oparty o Athena Widgets
245ed937 188Group: Applications/Sound
a38d5344 189Requires: %{name}(X) = %{version}-%{release}
245ed937 190
0ee04ccd 191%description xaw
d1ca9d2a 192xawmidi - Athena interface for TiMidity++.
245ed937 193
43c38e43
JR
194%description xaw -l pl.UTF-8
195xawmidi - interfejs do TiMidity++ oparty o biblitekę widgetów Athena.
8e7216ab 196
6e491108 197%package xskin
a38d5344 198Summary: "X Skin" interface for TiMidity++
a0221428 199Summary(pl.UTF-8): Interfejs TiMidity++ "X Skin"
6e491108 200Group: Applications/Sound
a38d5344 201Requires: %{name}(X) = %{version}-%{release}
6e491108 202Obsoletes: TiMidity++ < 2.13.0-3
203
204%description xskin
a38d5344 205xskinmidi - "X Skin" interface for TiMidity++.
6e491108 206
43c38e43 207%description xskin -l pl.UTF-8
a38d5344 208xskinmidi - interfejs do TiMidity++ "X Skin".
6e491108 209
55b3cb7a
JK
210%package alsaseq
211Summary: TiMidity++ ALSA sequencer interface
a0221428 212Summary(pl.UTF-8): TiMidity++ jako interfejs sekwencera ALSA
55b3cb7a 213Group: Applications/Sound
25621aff 214Requires(post,preun): /sbin/chkconfig
55b3cb7a 215Requires: %{name} = %{version}-%{release}
25621aff 216Requires: rc-scripts
55b3cb7a
JK
217
218%description alsaseq
9c66bcef
JB
219The ALSA sequencer interface communicates between ALSA sequencer core
220and timidity. The interface receives events from sequencer and plays
221it in (quasi-)real-time. In this mode, TiMidity works purely as the
222software real-time MIDI render, that is as a software MIDI synth
223engine on ALSA.
224
43c38e43
JR
225%description alsaseq -l pl.UTF-8
226Interfejs sekwencera ALSA komunikuje się między rdzeniem sekwencera
9c66bcef 227ALSA a timidity. Interfejs odbiera zdarzenia od sekwencera od odtwarza
43c38e43
JR
228je w czasie (prawie) rzeczywistym. W tym trybie TiMidity działa
229wyłącznie jako programowy odtwarzacz MIDI czasu rzeczywistego, czyli
9c66bcef 230jako silnik syntezatora MIDI w architekturze ALSA.
55b3cb7a 231
ebb334d4 232%prep
3cd607b2 233%setup -q
55b3cb7a 234%patch0 -p1
a188932e 235%patch1 -p1
3ec60ad7 236%patch2 -p0
7be54330 237%patch3 -p1
ebb334d4 238
3cd607b2
JB
239for f in doc/ja_JP.eucJP/README*; do
240 mv -f $f ${f}.ja
241done
242
ebb334d4 243%build
c5b74de5 244cp -f /usr/share/automake/config.sub autoconf
d8f7c8d1 245%{__autoconf}
605e559d 246
247AUDIO=oss%{?with_alsa:,alsa}%{?with_arts:,arts}%{?with_esd:,esd}\
248%{?with_jack:,jack}%{?with_nas:,nas}%{?with_vorbis:,vorbis}
249
ea523cb1 250%configure \
55b3cb7a 251 %{?with_alsa:--enable-alsaseq} \
605e559d 252 --enable-audio=$AUDIO \
ea523cb1 253 --enable-dynamic \
9955a6d6 254 %{?with_x:--enable-gtk=dynamic} \
605e559d 255 --enable-emacs=dynamic \
9955a6d6 256 %{?with_x:--enable-motif=dynamic} \
ea523cb1 257 --enable-ncurses=dynamic \
605e559d 258 --enable-network \
259 --enable-server \
ea523cb1 260 --enable-slang=dynamic \
9955a6d6
JB
261 %{?with_x:--enable-spectrogram} \
262 %{?with_x:--enable-tcltk=dynamic} \
605e559d 263 --enable-vt100=dynamic \
9955a6d6
JB
264 %{?with_x:--enable-xaw=dynamic} \
265 %{?with_x:--enable-xskin=dynamic} \
605e559d 266 --with-default-path=%{_sysconfdir} \
6e491108 267 --with-elf \
9955a6d6 268 %{!?with_x:--without-x}
8e7216ab 269
06cdff29
JB
270%{__make} \
271 SHLIB_DIR=%{_libdir}/timidity
ebb334d4 272
273%install
274rm -rf $RPM_BUILD_ROOT
55b3cb7a 275install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_datadir}/GUSpatches,/etc/{rc.d/init.d,sysconfig}}
ebb334d4 276
fb10de13 277%{__make} install \
06cdff29
JB
278 DESTDIR=$RPM_BUILD_ROOT \
279 SHLIB_DIR=%{_libdir}/timidity
ebb334d4 280
f7879746 281## based on timidity/timidity.c
282##ln -s timidity $RPM_BUILD_ROOT%{_bindir}/kmidi # does it work?
ff579e85
JB
283ln -sf timidity $RPM_BUILD_ROOT%{_bindir}/gtkmidi
284ln -sf timidity $RPM_BUILD_ROOT%{_bindir}/tkmidi
285ln -sf timidity $RPM_BUILD_ROOT%{_bindir}/xmmidi
286ln -sf timidity $RPM_BUILD_ROOT%{_bindir}/xawmidi
287ln -sf timidity $RPM_BUILD_ROOT%{_bindir}/xskinmidi
f7879746 288
3cd607b2
JB
289install -d $RPM_BUILD_ROOT%{_mandir}/ja/man{1,5}
290install doc/ja_JP.eucJP/timidity.1 $RPM_BUILD_ROOT%{_mandir}/ja/man1
291install doc/ja_JP.eucJP/timidity.cfg.5 $RPM_BUILD_ROOT%{_mandir}/ja/man5
292
fb10de13 293install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}
245ed937 294
fb10de13 295cd $RPM_BUILD_ROOT%{_datadir}/GUSpatches
2506cddb
JB
296tar xzf %{SOURCE1}
297mv -f instruments/* .
298rmdir instruments
bc691fd9 299bzip2 -cd %{SOURCE2} > britepno.pat
300bzip2 -cd %{SOURCE3} > pistol.pat
245ed937 301
55b3cb7a
JK
302install %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/timidity
303install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/timidity
304
ebb334d4 305%clean
306rm -rf $RPM_BUILD_ROOT
307
55b3cb7a
JK
308%post alsaseq
309/sbin/chkconfig --add timidity
7736edf2 310%service timidity restart "TiMidity++ ALSA sequencer interface"
55b3cb7a
JK
311
312%preun alsaseq
313if [ "$1" = "0" ]; then
7736edf2 314 %service timidity stop
55b3cb7a
JK
315 /sbin/chkconfig --del timidity
316fi
55b3cb7a 317
ebb334d4 318%files
319%defattr(644,root,root,755)
3cd607b2
JB
320%doc AUTHORS ChangeLog* NEWS README TODO doc/C/{CHANGES*,FAQ,README.[!tx]*}
321%lang(ja) %doc README.ja doc/ja_JP.eucJP/README.[!tx]*.ja
ea523cb1 322%attr(755,root,root) %{_bindir}/timidity
35a8a4d2 323%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/timidity.cfg
ed993824 324%dir %{_libdir}/timidity
ea523cb1 325%attr(755,root,root) %{_libdir}/timidity/interface_e.so
3cd607b2
JB
326%attr(755,root,root) %{_libdir}/timidity/interface_n.so
327%{_libdir}/timidity/interface_e.txt
328%{_libdir}/timidity/interface_n.txt
06cdff29
JB
329%if "%{_lib}" != "lib"
330%dir %{_prefix}/lib/timidity
331%endif
9955a6d6 332%{?with_x:%{_prefix}/lib/timidity/bitmaps}
3cd607b2
JB
333%{_mandir}/man1/timidity.1*
334%{_mandir}/man5/timidity.cfg.5*
335%lang(ja) %{_mandir}/ja/man1/timidity.1*
336%lang(ja) %{_mandir}/ja/man5/timidity.cfg.5*
0ee04ccd 337
338%files gspdir
339%defattr(644,root,root,755)
b1b0b590 340%dir %{_datadir}/GUSpatches
ea523cb1 341
0ee04ccd 342%files instruments
343%defattr(644,root,root,755)
344%{_datadir}/GUSpatches/*
ea523cb1 345
9955a6d6 346%if %{with x}
3cd607b2
JB
347%files gtk
348%defattr(644,root,root,755)
349%attr(755,root,root) %{_bindir}/gtkmidi
350%attr(755,root,root) %{_libdir}/timidity/interface_g.so
351%{_libdir}/timidity/interface_g.txt
6e491108 352%endif
3cd607b2 353
9955a6d6 354%if %{with x}
ea523cb1
JR
355%files motif
356%defattr(644,root,root,755)
f7879746 357%attr(755,root,root) %{_bindir}/xmmidi
3cd607b2
JB
358%attr(755,root,root) %{_libdir}/timidity/interface_m.so
359%{_libdir}/timidity/interface_m.txt
6e491108 360%endif
ea523cb1 361
0ee04ccd 362%files slang
363%defattr(644,root,root,755)
364%attr(755,root,root) %{_libdir}/timidity/interface_s.so
3cd607b2 365%{_libdir}/timidity/interface_s.txt
0ee04ccd 366
9955a6d6 367%if %{with x}
ea523cb1
JR
368%files tcltk
369%defattr(644,root,root,755)
0ee04ccd 370%doc doc/C/README.tk
3cd607b2
JB
371%lang(ja) %doc doc/ja_JP.eucJP/README.tk.ja
372%attr(755,root,root) %{_bindir}/tkmidi
ea523cb1 373%attr(755,root,root) %{_libdir}/timidity/interface_k.so
3cd607b2 374%{_libdir}/timidity/interface_k.txt
06cdff29
JB
375%{_prefix}/lib/timidity/tclIndex
376%{_prefix}/lib/timidity/*.tcl
6e491108 377%endif
ea523cb1 378
1341902d
AM
379%files vt100
380%defattr(644,root,root,755)
98531004 381%attr(755,root,root) %{_libdir}/timidity/interface_T.so
3cd607b2 382%{_libdir}/timidity/interface_T.txt
245ed937 383
9955a6d6 384%if %{with x}
0ee04ccd 385%files xaw
245ed937 386%defattr(644,root,root,755)
0ee04ccd 387%doc doc/C/README.xaw
3cd607b2 388%lang(ja) %doc doc/ja_JP.eucJP/README.xaw.ja
0ee04ccd 389%attr(755,root,root) %{_bindir}/xawmidi
3cd607b2
JB
390%attr(755,root,root) %{_libdir}/timidity/interface_a.so
391%{_libdir}/timidity/interface_a.txt
6e491108 392
393%files xskin
394%defattr(644,root,root,755)
395%doc doc/C/README.xskin
396%lang(ja) %doc doc/ja_JP.eucJP/README.xskin.ja
397%attr(755,root,root) %{_bindir}/xskinmidi
398%attr(755,root,root) %{_libdir}/timidity/interface_i.so
399%{_libdir}/timidity/interface_i.txt
400%endif
55b3cb7a
JK
401
402%if %{with alsa}
403%files alsaseq
e6f9a97f 404%defattr(644,root,root,755)
55b3cb7a 405%attr(754,root,root) /etc/rc.d/init.d/timidity
35a8a4d2 406%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/timidity
55b3cb7a 407%endif
This page took 0.147332 seconds and 4 git commands to generate.