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