X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=TiMidity%2B%2B.spec;h=7b59aaf81fceec4a3ac41693e533f5441b4dd524;hb=b79f6e48929dfe1bf82545a5eb779ef1185ef065;hp=41109da9b64c1c5c2c4edabcf416a1556079172a;hpb=8e7216abef8bc47327683f538cfc4697dbda9ca1;p=packages%2FTiMidity%2B%2B.git diff --git a/TiMidity++.spec b/TiMidity++.spec index 41109da..7b59aaf 100644 --- a/TiMidity++.spec +++ b/TiMidity++.spec @@ -1,36 +1,55 @@ # # Conditional build: -# _without_alsa - without ALSA support +%bcond_without X # without X based interfaces (implies libX11 deps) +%bcond_without alsa # without ALSA support +%bcond_with arts # enable ARTS support (implies also glib(2) deps) +%bcond_with esd # enable ESD support +%bcond_with jack # enable JACK support +%bcond_with nas # enable NAS support +%bcond_with vorbis # enable Ogg Vorbis support # Summary: TiMidity++ - MIDI to WAV converter and player Summary(pl): TiMidity++ - konwerter do WAV oraz odtwarzacz plików MIDI -Summary(pt_BR): Sintetizador MIDI por software. +Summary(pt_BR): Sintetizador MIDI por software +Summary(ru): ðÒÏÉÇÒÙ×ÁÔÅÌØ MIDI ÆÁÊÌÏ× É ËÏÎ×ÅÒÔÏÒ ÉÈ × WAV ÆÏÒÍÁÔ +Summary(uk): ðÒÏÇÒÁ×ÁÞ MIDI-ÆÁÊÌ¦× ÔÁ ËÏÎ×ÅÒÔÏÒ §È × WAV ÆÏÒÍÁÔ Name: TiMidity++ -Version: 2.11.3 -Release: 1 +Version: 2.13.0 +Release: 7.1 License: GPL Vendor: Masanao Izumo Group: Applications/Sound -Source0: http://www.goice.co.jp/member/mo/timidity/dist/%{name}-%{version}.tar.bz2 +Source0: http://dl.sourceforge.net/timidity/%{name}-%{version}.tar.bz2 +# Source0-md5: 63284981e1ac81fce2b53cc4b1f4c468 Source1: http://archive.cs.umbc.edu/pub/midia/instruments.tar.gz +# Source1-md5: 4959787a78ee39d44a36185bd303cf20 Source2: britepno.pat.bz2 +# Source2-md5: 324e265362f812883024b58cf3470d1a Source3: pistol.pat.bz2 +# Source3-md5: f961325db679de6e0ea402ebe6a268f9 Source4: timidity.cfg -Patch0: %{name}-config.patch -URL: http://www.goice.co.jp/member/mo/timidity/ -%ifnarch sparc sparc64 -%{!?_without_alsa:BuildRequires: alsa-lib-devel} -%endif -BuildRequires: gtk+-devel -BuildRequires: motif-devel +Source5: timidity.init +Source6: timidity.sysconfig +Patch0: %{name}-detach.patch +Patch1: %{name}-gcc4.patch +URL: http://timidity.sourceforge.net/ +%{?with_alsa:BuildRequires: alsa-lib-devel} +%{?with_arts:BuildRequires: arts-devel} +BuildRequires: autoconf +%{?with_esd:BuildRequires: esound-devel} +%{?with_jack:BuildRequires: jack-audio-connection-kit-devel} +%{?with_X:BuildRequires: gtk+-devel} +%{?with_X:BuildRequires: motif-devel} +%{?with_nas:BuildRequires: nas-devel} BuildRequires: ncurses-devel BuildRequires: slang-devel -BuildRequires: tk-devel >= 8.3.2 -BuildRequires: autoconf -BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +%{?with_X:BuildRequires: tk-devel >= 8.3.2} +%{?with_vorbis:BuildRequires: libvorbis-devel} +%{?with_X:Provides: %{name}(X) = %{version}-%{release}} Obsoletes: timidity Obsoletes: timidity++ Obsoletes: timidity++-X11 +BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description TiMidity++ is a converter that converts some of MIDI files ( formats : @@ -59,71 +78,102 @@ que utilizam o recurso de "wavetable" via hardware (como a AWE32), mesmo que esta não possua o recurso de "wavetable" (a SB16 por exemplo). -%package slang -Summary: Slang interface for TiMidity++ -Summary(pl): Interfejs TiMidity++ oparty o bibliotekê Slang +%description -l ru +ðÒÏÉÇÒÙ×ÁÔÅÌØ MIDI ÆÁÊÌÏ×, ÎÅ ÔÒÅÂÕÀÝÉÊ ÐÏÄÄÅÒÖËÉ ÉÎÓÔÒÕÍÅÎÔÏ× MIDI +Ú×ÕËÏ×ÏÊ ÐÌÁÔÏÊ. éÓÐÏÌØÚÕÅÔ ÆÁÊÌÙ ÉÎÓÔÒÕÍÅÎÔÏ× × ÆÏÒÍÁÔÅ GUS/patch, +ÍÏÖÅÔ ÔÁËÖÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÄÁÎÎÙÅ × ÆÏÒÍÁÔÅ SoundFont. +ïÂÅÓÐÅÞÉ×ÁÅÔ ÏÔÌÉÞÎÏÅ ËÁÞÅÓÔ×Ï Ú×ÕËÁ MIDI ÚÁ ÓÞÅÔ ÉÎÔÅÎÓÉ×ÎÏÇÏ +ÉÓÐÏÌØÚÏ×ÁÎÉÑ ÐÒÏÃÅÓÓÏÒÁ. + +%description -l uk +ðÒÏÇÒÁ×ÁÞ MIDI ÆÁÊ̦×, ÑËÏÍÕ ÎÅ ÐÏÔÒ¦ÂÎÁ ЦÄÔÒÉÍËÁ ¦ÎÓÔÒÕÍÅÎÔ¦× MIDI +Ú×ÕËÏ×ÏÀ ÐÌÁÔÏÀ. ÷ÉËÏÒÉÓÔÏ×Õ¤ ÆÁÊÌÉ ¦ÎÓÔÒÕÍÅÎÔ¦× Õ ÆÏÒÍÁÔ¦ GUS/patch, +ÒÏÚÕͦ¤ ÔÁËÏÖ ÆÏÒÍÁÔ SoundFont. +úÁÂÅÚÐÅÞÕ¤ צÄͦÎÎÕ Ñ˦ÓÔØ Ú×ÕËÕ MIDI ÚÁ ÒÁÈÕÎÏË ¦ÎÔÅÎÓÉ×ÎÏÇÏ +×ÉËÏÒÉÓÔÁÎÎÑ ÐÒÏÃÅÓÏÒÁ. + +%package gspdir +Summary: Directory for TiMidity++ instruments +Summary(pl): Katalog na instrumenty TiMidity++ Group: Applications/Sound -Requires: %{name} = %{version} -%description slang -Slang interface for TiMidity++. +%description gspdir +Directory where TiMidity++ instruments should be placed in. -%description slang -l pl -Interfejs do TiMidity++ oparty o bibliotekê Slang. +%description gspdir -l pl +Katalog, w którym powinny byæ instalowane instrumenty dla TiMidity++. + +%package instruments +Summary: Instruments for TiMidity++ +Summary(pl): Instrumenty dla TiMidity++ +Summary(pt_BR): Instrumentos básicos para o TiMidity++ +Group: Applications/Sound +Requires: %{name}-gspdir = %{version}-%{release} +Obsoletes: timidity-patches + +%description instruments +Instruments for TiMidity++. + +%description instruments -l pl +Instrumenty dla TiMidity++. + +%description instruments -l pt_BR +Este pacote inclui um conjunto básico de instrumentos (chamados de +patches no meio musical) para o TiMidity++. + +%package gtk +Summary: GTK+ interface for TiMidity++ +Summary(pl): Interfejs TiMidity++ oparty o bibliotekê GTK+ +Group: Applications/Sound +Requires: %{name}(X) = %{version}-%{release} + +%description gtk +gtkmidi - GTK+ interface for TiMidity++. + +%description gtk -l pl +gtkmidi - interfejs do TiMidity++ oparty o bibliotekê GTK+. %package motif Summary: Motif interface for TiMidity++ Summary(pl): Interfejs TiMidity++ oparty o Motif Group: Applications/Sound -Requires: %{name} = %{version} +Requires: %{name}(X) = %{version}-%{release} %description motif -xmmidi -- Motif interface for TiMidity++. +xmmidi - Motif interface for TiMidity++. %description motif -l pl xmmidi - interfejs do TiMidity++ oparty o bibliotekê Motif. +%package slang +Summary: Slang interface for TiMidity++ +Summary(pl): Interfejs TiMidity++ oparty o bibliotekê Slang +Group: Applications/Sound +Requires: %{name} = %{version}-%{release} + +%description slang +Slang interface for TiMidity++. + +%description slang -l pl +Interfejs do TiMidity++ oparty o bibliotekê Slang. + %package tcltk Summary: Tcl/Tk interface for TiMidity++ Summary(pl): Interfejs TiMidity++ oparty o Tcl/Tk Group: Applications/Sound -Requires: %{name} = %{version} +Requires: %{name}(X) = %{version}-%{release} %description tcltk -tkmidi -- Tcl/Tk interface for TiMidity++. +tkmidi - Tcl/Tk interface for TiMidity++. %description tcltk -l pl tkmidi - interfejs do TiMidity++ oparty o Tcl/Tk. -%package xaw -Summary: Athena interface for TiMidity++ -Summary(pl): Interfejs TiMidity++ oparty o Athena Widgets -Group: Applications/Sound -Requires: %{name} = %{version} - -%description xaw -xawmidi -- Athena interface for TiMidity++. - -%description xaw -l pl -xawmidi - interfejs do TiMidity++ oparty o biblitekê widgetów Athena. - -%package gtk -Summary: GTK+ interface for TiMidity++ -Summary(pl): Interfejs TiMidity++ oparty o bibliotekê gtk+ -Group: Applications/Sound -Requires: %{name} = %{version} - -%description gtk -gtkmidi -- GTK+ interface for TiMidity++. - -%description gtk -l pl -gtkmidi - interfejs do TiMidity++ oparty o bibliotekê gtk+. - %package vt100 Summary: VT100 interface for TiMidity++ Summary(pl): Interfejs TiMidity++ dzia³aj±cy na terminalu VT100 Group: Applications/Sound -Requires: %{name} = %{version} +Requires: %{name} = %{version}-%{release} %description vt100 VT100 interface for TiMidity++. @@ -131,60 +181,96 @@ VT100 interface for TiMidity++. %description vt100 -l pl Interfejs do TiMidity++ mog±cy dzia³aæ na terminalu VT100. -%package instruments -Summary: instruments for TiMidity++ -Summary(pl): instrumenty dla TiMidity++ -Summary(pt_BR): Instrumentos básicos para o TiMidity++ +%package xaw +Summary: Athena interface for TiMidity++ +Summary(pl): Interfejs TiMidity++ oparty o Athena Widgets Group: Applications/Sound -Requires: %{name} -Obsoletes: timidity-patches +Requires: %{name}(X) = %{version}-%{release} -%description instruments -Instruments for TiMidity++. +%description xaw +xawmidi - Athena interface for TiMidity++. -%description instruments -l pl -Instrumenty dla TiMidity++. +%description xaw -l pl +xawmidi - interfejs do TiMidity++ oparty o biblitekê widgetów Athena. -%description instruments -l pt_BR -Este pacote inclui um conjunto básico de instrumentos (chamados de -patches no meio musical) para o TiMidity++. +%package xskin +Summary: "X Skin" interface for TiMidity++ +Summary(pl): Interfejs TiMidity++ "X Skin" +Group: Applications/Sound +Requires: %{name}(X) = %{version}-%{release} +Obsoletes: TiMidity++ < 2.13.0-3 + +%description xskin +xskinmidi - "X Skin" interface for TiMidity++. + +%description xskin -l pl +xskinmidi - interfejs do TiMidity++ "X Skin". + +%package alsaseq +Summary: TiMidity++ ALSA sequencer interface +Summary(pl): TiMidity++ jako interfejs sekwencera ALSA +Group: Applications/Sound +Requires: %{name} = %{version}-%{release} + +%description alsaseq +The ALSA sequencer interface communicates between ALSA sequencer core +and timidity. The interface receives events from sequencer and plays +it in (quasi-)real-time. In this mode, TiMidity works purely as the +software real-time MIDI render, that is as a software MIDI synth +engine on ALSA. + +%description alsaseq -l pl +Interfejs sekwencera ALSA komunikuje siê miêdzy rdzeniem sekwencera +ALSA a timidity. Interfejs odbiera zdarzenia od sekwencera od odtwarza +je w czasie (prawie) rzeczywistym. W tym trybie TiMidity dzia³a +wy³±cznie jako programowy odtwarzacz MIDI czasu rzeczywistego, czyli +jako silnik syntezatora MIDI w architekturze ALSA. %prep %setup -q %patch0 -p1 +for f in doc/ja_JP.eucJP/README*; do + mv -f $f ${f}.ja +done + %build -autoconf +cp -f /usr/share/automake/config.sub autoconf +%{__autoconf} + +AUDIO=oss%{?with_alsa:,alsa}%{?with_arts:,arts}%{?with_esd:,esd}\ +%{?with_jack:,jack}%{?with_nas:,nas}%{?with_vorbis:,vorbis} + %configure \ - --with-elf \ + %{?with_alsa:--enable-alsaseq} \ + --enable-audio=$AUDIO \ --enable-dynamic \ - --enable-ncurses=dynamic \ - --enable-slang=dynamic \ - --enable-motif=dynamic \ - --enable-tcltk=dynamic \ + %{?with_X:--enable-gtk=dynamic} \ --enable-emacs=dynamic \ - --enable-xaw=dynamic \ - --enable-xskin=dynamic \ - --enable-gtk=dynamic \ - --enable-vt100=dynamic \ + %{?with_X:--enable-motif=dynamic} \ + --enable-ncurses=dynamic \ --enable-network \ --enable-server \ - --enable-spectrogram \ -%ifnarch sparc sparc64 - --enable-audio=default,oss,%{!?_without_alsa:alsa,}esd \ - %{!?_without_alsa:--enable-alsaseq} \ -%else - --enable-audio=default,oss,esd \ -%endif - --enable-default-output=default + --enable-slang=dynamic \ + %{?with_X:--enable-spectrogram} \ + %{?with_X:--enable-tcltk=dynamic} \ + --enable-vt100=dynamic \ + %{?with_X:--enable-xaw=dynamic} \ + %{?with_X:--enable-xskin=dynamic} \ + --with-default-path=%{_sysconfdir} \ + --with-elf \ + %{!?with_X:--without-x} -%{__make} +%{__make} \ + SHLIB_DIR=%{_libdir}/timidity %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_datadir}/GUSpatches} +install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_datadir}/GUSpatches,/etc/{rc.d/init.d,sysconfig}} -%{__make} install DESTDIR=$RPM_BUILD_ROOT +%{__make} install \ + DESTDIR=$RPM_BUILD_ROOT \ + SHLIB_DIR=%{_libdir}/timidity ## based on timidity/timidity.c ##ln -s timidity $RPM_BUILD_ROOT%{_bindir}/kmidi # does it work? @@ -194,65 +280,130 @@ ln -sf timidity $RPM_BUILD_ROOT%{_bindir}/xmmidi ln -sf timidity $RPM_BUILD_ROOT%{_bindir}/xawmidi ln -sf timidity $RPM_BUILD_ROOT%{_bindir}/xskinmidi -install %{SOURCE4} $RPM_BUILD_ROOT/%{_sysconfdir} +install -d $RPM_BUILD_ROOT%{_mandir}/ja/man{1,5} +install doc/ja_JP.eucJP/timidity.1 $RPM_BUILD_ROOT%{_mandir}/ja/man1 +install doc/ja_JP.eucJP/timidity.cfg.5 $RPM_BUILD_ROOT%{_mandir}/ja/man5 -(cd $RPM_BUILD_ROOT%{_datadir}/GUSpatches +install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir} + +cd $RPM_BUILD_ROOT%{_datadir}/GUSpatches tar xzf %{SOURCE1} mv -f instruments/* . rmdir instruments bzip2 -cd %{SOURCE2} > britepno.pat bzip2 -cd %{SOURCE3} > pistol.pat -) -gzip -9nf AUTHORS README* ChangeLog* NEWS doc/C/{CHANGES*,FAQ,README*} +install %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/timidity +install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/timidity %clean rm -rf $RPM_BUILD_ROOT +%if %{with alsa} +%post alsaseq +/sbin/chkconfig --add timidity +if [ -r /var/lock/subsys/timidity ]; then + /etc/rc.d/init.d/timidity restart >&2 +else + echo "Run \"/etc/rc.d/init.d/timidity start\" to start TiMidity++ ALSA sequencer interface." +fi + +%preun alsaseq +if [ "$1" = "0" ]; then + if [ -r /var/lock/subsys/timidity ]; then + /etc/rc.d/init.d/timidity stop >&2 + fi + /sbin/chkconfig --del timidity +fi +%endif + %files %defattr(644,root,root,755) -%doc *.gz doc/C/*.gz +%doc AUTHORS ChangeLog* NEWS README TODO doc/C/{CHANGES*,FAQ,README.[!tx]*} +%lang(ja) %doc README.ja doc/ja_JP.eucJP/README.[!tx]*.ja %attr(755,root,root) %{_bindir}/timidity +%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/timidity.cfg %dir %{_libdir}/timidity -%attr(755,root,root) %{_libdir}/timidity/interface_n.so %attr(755,root,root) %{_libdir}/timidity/interface_e.so -%attr(755,root,root) %{_libdir}/timidity/interface_i.so -%{_libdir}/timidity/bitmaps -%{_mandir}/man*/* -%config(noreplace) %{_sysconfdir}/timidity.cfg -%ghost %dir %{_datadir}/GUSpatches +%attr(755,root,root) %{_libdir}/timidity/interface_n.so +%{_libdir}/timidity/interface_e.txt +%{_libdir}/timidity/interface_n.txt +%if "%{_lib}" != "lib" +%dir %{_prefix}/lib/timidity +%endif +%{?with_X:%{_prefix}/lib/timidity/bitmaps} +%{_mandir}/man1/timidity.1* +%{_mandir}/man5/timidity.cfg.5* +%lang(ja) %{_mandir}/ja/man1/timidity.1* +%lang(ja) %{_mandir}/ja/man5/timidity.cfg.5* -%files slang +%files gspdir %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/timidity/interface_s.so +%dir %{_datadir}/GUSpatches + +%files instruments +%defattr(644,root,root,755) +%{_datadir}/GUSpatches/* +%if %{with X} +%files gtk +%defattr(644,root,root,755) +%attr(755,root,root) %{_bindir}/gtkmidi +%attr(755,root,root) %{_libdir}/timidity/interface_g.so +%{_libdir}/timidity/interface_g.txt +%endif + +%if %{with X} %files motif %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/timidity/interface_m.so %attr(755,root,root) %{_bindir}/xmmidi +%attr(755,root,root) %{_libdir}/timidity/interface_m.so +%{_libdir}/timidity/interface_m.txt +%endif +%files slang +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/timidity/interface_s.so +%{_libdir}/timidity/interface_s.txt + +%if %{with X} %files tcltk %defattr(644,root,root,755) -%doc doc/C/README.tk.gz -%attr(755,root,root) %{_libdir}/timidity/interface_k.so -%{_libdir}/timidity/*.tcl +%doc doc/C/README.tk +%lang(ja) %doc doc/ja_JP.eucJP/README.tk.ja %attr(755,root,root) %{_bindir}/tkmidi +%attr(755,root,root) %{_libdir}/timidity/interface_k.so +%{_libdir}/timidity/interface_k.txt +%{_prefix}/lib/timidity/tclIndex +%{_prefix}/lib/timidity/*.tcl +%endif -%files xaw +%files vt100 %defattr(644,root,root,755) -%doc doc/C/README.xaw.gz -%attr(755,root,root) %{_libdir}/timidity/interface_a.so -%attr(755,root,root) %{_bindir}/xawmidi +%attr(755,root,root) %{_libdir}/timidity/interface_T.so +%{_libdir}/timidity/interface_T.txt -%files gtk +%if %{with X} +%files xaw %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/timidity/interface_g.so -%attr(755,root,root) %{_bindir}/gtkmidi +%doc doc/C/README.xaw +%lang(ja) %doc doc/ja_JP.eucJP/README.xaw.ja +%attr(755,root,root) %{_bindir}/xawmidi +%attr(755,root,root) %{_libdir}/timidity/interface_a.so +%{_libdir}/timidity/interface_a.txt -%files vt100 +%files xskin %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/timidity/interface_T.so +%doc doc/C/README.xskin +%lang(ja) %doc doc/ja_JP.eucJP/README.xskin.ja +%attr(755,root,root) %{_bindir}/xskinmidi +%attr(755,root,root) %{_libdir}/timidity/interface_i.so +%{_libdir}/timidity/interface_i.txt +%endif -%files instruments +%if %{with alsa} +%files alsaseq %defattr(644,root,root,755) -%{_datadir}/GUSpatches/* +%attr(754,root,root) /etc/rc.d/init.d/timidity +%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/timidity +%endif