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