X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=ecasound.spec;h=cd025f9977860b416d83deff6b4636d9ae489c29;hb=f16f7ba74cc2e15b281bed33e0a0751c5ca8e7bc;hp=fc77a8e2a96bb90639a1a1b616f3d5fbd44bddbd;hpb=8d9b8c33a320dd7cbf94be444e9f7d90e0c7ada2;p=packages%2Fecasound.git diff --git a/ecasound.spec b/ecasound.spec index fc77a8e..cd025f9 100644 --- a/ecasound.spec +++ b/ecasound.spec @@ -1,200 +1,184 @@ +# +# Conditional build: +%bcond_without alsa # without ALSA support (implies without JACK) +%bcond_without jack # without JACK support +%bcond_with arts # with aRts support +# +%if %{without alsa} +%undefine with_jack +%endif +%include /usr/lib/rpm/macros.python Summary: Software package for multitrack audio processing Summary(pl): Oprogramowanie do wielo¶cie¿kowego przetwarzania d¼wiêku Name: ecasound -Version: 1.7.8r12 +Version: 2.3.1 Release: 1 License: GPL Group: Applications/Sound -Group(pl): Aplikacje/D¼wiêk Source0: http://ecasound.seul.org/download/%{name}-%{version}.tar.gz -Patch0: ecasound-ncurses_and_sys_readline.patch.bz2 -Patch1: ecasound-DESTDIR.patch.bz2 -BuildRequires: qt-devel >= 2.0 -BuildRequires: audiofile-devel >= 0.1.7 -BuildRequires: readline-devel -BuildRequires: ncurses-devel >= 5.0 +# Source0-md5: 03729504e65bb1110a6dc7ff19ffa01c +Patch0: %{name}-link.patch +%{?with_alsa:BuildRequires: alsa-lib-devel} +%{?with_arts:BuildRequires: arts-devel} BuildRequires: autoconf BuildRequires: automake -Requires: lame -Requires: mpg123 +%{?with_jack:BuildRequires: jack-audio-connection-kit-devel} +BuildRequires: ladspa-devel +BuildRequires: libsamplerate-devel +BuildRequires: libstdc++-devel +BuildRequires: libtool >= 2:1.4d +BuildRequires: python-devel >= 2.2 +BuildRequires: python-modules >= 2.2 +BuildRequires: readline-devel >= 4.2 +BuildRequires: rpm-pythonprov +Obsoletes: libecasound BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description -Ecasound is the software package for multitrack audio processing. - -1. Supported audio inputs/outputs: -- ALSA - Advanced Linux Sound Architecture (PCM input, output and - loopback support) -- OSS (/dev/dsp*) - Open Sound System -- RIFF WAVE (.wav) - 8/16bit non-compressed -- Ecasound Wave Files (.ewf) - simple wrapper format for recording - purposes -- Raw/headerless sample data (.raw) -- CDDA (.cdr) - format used on audio-CDs -- MPEG 1.0/2.0 (layers 1, 2 and 3) (.mp3) - using mpg123 for input and - lame for output -- Module formats supported by MikMod - XM, IT, S3M, MOD, MTM, 669, - STM, ULT, FAR, MED, AMF, DSM, IMF, GDM, STX -- AIFF (.aiff) and Sun/NeXT audio (.au/.snd) formats using - libaudiofile: -- standard input/output streams (stdin, stdout) and named pipes 2. - Effects: -- Various amplifiers, panning, DC-fix, volume normalization -- Channel mixing and routing -- Noise gate, two compressors -- Filters: lowpass, highpass, bandpass, bandreject, resonant lowpass, - resonant bandpass, resonator, inverse comb -- Time-based: multitap delay, reverb, fake-stereo 3. Controllers (for - effect parameters): -- sine oscillator -- generic oscillator (either using an envelope table with static - points or with linear interpolation) -- linear envelopes -- MIDI continuous controllers (CC) - -This package contains ecasound with interactive textmode user program -and utilites which support batch processing: -- ecatools_fixdc: fix DC-offset -- ecatools_normalize: normalize volume level -- ecatools_play: play files using the default output +Ecasound is a software package designed for multitrack audio +processing. It can be used for simple tasks like audio playback, +recording and format conversions, as well as for multitrack effect +processing, mixing, recording and signal recycling. Ecasound supports +a wide range of audio inputs, outputs and effect algorithms. Several +open-source audio packages, like for instance ALSA, OSS, mpg123, lame, +libaudiofile and MikMod, are directly supported. One of the advantages +of ecasound's chain-based design is that effects can easily be +combined both in series and in parallel. Oscillators and MIDI-CCs can +be used for controlling effect parameters. Included user-interfaces +are ecasound - a versatile console mode interface, qtecasound - a +Qt-based X-interface and various command-line utils suitable for batch +processing. %description -l pl -N/A - -%package -n libecasound -Summary: Ecasound libraries -Summary(pl): Biblioteki programu ecasound -Group: Development/Libraries -Group(fr): Development/Librairies -Group(pl): Programowanie/Biblioteki - -%description -n libecasound -Ecasound libraries. - -%description -l pl -n libecasound -Biblioteki programu ecasound. - -%package -n libecasound-devel -Summary: Ecasound headers -Summary(pl): Pliki nag³ówkowe bibliotek programu ecasound +Ecasound jest programem do wielo¶cie¿kowej edycji d¼wiêku, który mo¿e +byæ u¿ywany tak do prostych zadañ typu odtwarzanie i nagrywanie muzyki +czy te¿ konwersji pomiêdzy formatami plików muzycznych jak i do +wielo¶cie¿kowego nak³adania efektów, miksowania (przenikania, +wyciszania), nagrywania i odzyskiwania (w domy¶le odszumiania lub +wyrzucania zniekszta³ceñ) sygna³u. + +Ecasound wspiera szerok± gamê ¼róde³ i wyj¶æ d¼wiêku oraz algorytmów +do jego przetwarzania. Ecasound wspiera wiele wolnych (open source) +projektów, takich jak ALSA, OSS, mpg123, lame, libaudiofile czy te¿ +MikMod. Jedn± z zalet programu ecasound jest mo¿liwo¶æ ³añcuchowego +(szeregowego) lub równoleg³ego ³±czenia efektów, które mog± byæ +kontrolowane poprzez oscylatory lub MIDI-CC. Pakiet ten zawiera +tekstowy interfejs u¿ytkownika oraz kilka innych narzêdzi nadaj±cych +siê do przetwarzania wsadowego. Dostêpny jest tak¿e graficzny +interfejs u¿ytkownika - qtecasound. + +%package devel +Summary: Header files for ecasound libraries +Summary(pl): Pliki nag³ówkowe bibliotek ecasound Group: Development/Libraries -Group(fr): Development/Librairies -Group(pl): Programowanie/Biblioteki -Requires: libecasound = %{version} +Requires: %{name} = %{version} +Requires: libsamplerate-devel +Requires: libstdc++-devel +Obsoletes: libecasound-devel -%description -n libecasound-devel -Ecasound headers. +%description devel +Header files for ecasound libraries. -%description -l pl -n libecasound-devel -Pliki nag³ówkowe bibliotek programu ecasound. +%description devel -l pl +Pliki nag³ówkowe bibliotek ecasound. -%package -n qtecasound -Summary: Ecasound QT frontend -Summary(pl): Interfejs graficzny dla programu ecasound -Group: Applications/Sound -Group(pl): Aplikacje/D¼wiêk - -%description -n qtecasound -This is qtecasound, Qt-based X-interface for ecasound. It is usable -but isn't yet as powerful as the console mode version. This program -features: -- control panel (start, stop, rewind, forward, ...) -- session setup (load, save and view chainsetups) -- chainsetup view (add, remove, attach and view inputs, outputs and - chains; enable/disable chains) -- waveform view (supports caching) -- chain view (chain and effect status) - -%description -n qtecasound -l pl -N/A - -%package -n libqtecasound -Summary: Ecasound QT frontend library -Summary(pl): Biblioteki interfejsu graficznego programu ecasound +%package static +Summary: Static ecasound libraries +Summary(pl): Statyczne biblioteki ecasound Group: Development/Libraries -Group(fr): Development/Librairies -Group(pl): Programowanie/Biblioteki +Requires: %{name}-devel = %{version} +Obsoletes: libecasound-static -%description -n libqtecasound -Ecasound QT frontend library. +%description static +Static ecasound libraries. -%description -l pl -n libqtecasound -Biblioteki interfejsu graficznego programu ecasound. - -%package -n libqtecasound-devel -Summary: Ecasound QT frontend library headers -Summary(pl): Pliki nag³ówkowe bibliotek interfejsu graficznego programu ecasound -Group: Development/Libraries -Group(fr): Development/Librairies -Group(pl): Programowanie/Biblioteki +%description static -l pl +Statyczne biblioteki ecasound. -%description -n libqtecasound-devel -Ecasound QT frontend library headers. +%package -n python-%{name} +Summary: Python module for Ecasound +Summary(pl): Modu³ jêzyka Python dla programu ecasound +Group: Libraries/Python +%pyrequires_eq python-modules -%description -l pl -n libqtecasound-devel -Pliki nag³ówkowe bibliotek interfejsu graficznego programu ecasound. +%description -n python-%{name} +Python module for Ecasound. +%description -n python-%{name} -l pl +Modu³ jêzyka Python dla programu ecasound. %prep %setup -q %patch0 -p1 -%patch1 -p1 %build -automake -autoconf -LDFLAGS="-s" -CXXFLAGS="$RPM_OPT_FLAGS -fno-rtti" -export LDFLAGS CXXFLAGS +%{__libtoolize} +%{__aclocal} +%{__autoconf} +%{__automake} +CXXFLAGS="%{rpmcflags} -D_REENTRANT %{!?debug:-DNDEBUG} -I/usr/include/ncurses" +# disable audiofile - ecasound has native support for wav and raw formats +# disable oss - ecasound works nicely with alsa oss emulation; +# in case of alsa building conditional, the oss should +# be enabled +# disable arts - 'not really useful' as said by ecasound author %configure \ - --with-qt-includes=%{_prefix}/X11R6/include - --with-qt-libraries=%{_prefix}/X11R6/lib \ - --enable-sys-readline + %{!?with_alsa:--disable-alsa} \ + %{!?with_arts:--disable-arts} \ + --disable-audiofile \ + %{!?with_jack:--disable-jack} \ + %{?with_alsa:--disable-oss} \ + --enable-samplerate \ + --enable-shared \ + --enable-sys-readline \ + --enable-pyecasound \ + --with-largefile \ + --with-python-includes=%{py_incdir} \ + --with-python-modules=%{py_libdir} + %{__make} %install rm -rf $RPM_BUILD_ROOT -%{__make} DESTDIR=$RPM_BUILD_ROOT mandir=%{_mandir} install +install -d $RPM_BUILD_ROOT%{py_sitedir} + +%{__make} install \ + DESTDIR=$RPM_BUILD_ROOT \ + mandir=%{_mandir} -gzip -9nf $RPM_BUILD_ROOT%{_mandir}/*/* +install pyecasound/*.py $RPM_BUILD_ROOT%{py_sitedir} +%py_ocomp $RPM_BUILD_ROOT%{py_sitedir} +%py_comp $RPM_BUILD_ROOT%{py_sitedir} %clean rm -rf $RPM_BUILD_ROOT +%post -p /sbin/ldconfig +%postun -p /sbin/ldconfig + %files %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/ecafixdc -%attr(755,root,root) %{_bindir}/ecanormalize -%attr(755,root,root) %{_bindir}/ecaplay -%attr(755,root,root) %{_bindir}/ecasound +%doc BUGS NEWS README TODO +%attr(755,root,root) %{_bindir}/eca* +%attr(755,root,root) %{_libdir}/lib*.so.*.* +%{_datadir}/ecasound %{_mandir}/man1/eca* %{_mandir}/man5/eca* -%files -n libecasound -%defattr(644,root,root,755) -%dir %{_datadir}/ecasound -%{_datadir}/ecasound/* -%attr(755,root,root) %{_libdir}/libkvutils*.so* -%attr(755,root,root) %{_libdir}/libecasound*.so* - -%files -n libecasound-devel -%defattr(644,root,root,755) -%{_includedir}/ecasound/[^qe]* -%{_includedir}/kvutils/* -%attr(755,root,root) %{_libdir}/libkvutils.a -%attr(755,root,root) %{_libdir}/libkvutils.la - -%files -n qtecasound +%files devel %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/qtecasound -%{_mandir}/man1/qt* - -%files -n libqtecasound +%attr(755,root,root) %{_bindir}/*-config +%attr(755,root,root) %{_libdir}/lib*.so +%{_libdir}/lib*.la +%{_includedir}/kvutils +%{_includedir}/libecasound +%{_includedir}/libecasoundc + +%files static %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libqtecasound*.so* +%{_libdir}/lib*.a -%files -n libqtecasound-devel +%files -n python-%{name} %defattr(644,root,root,755) -%{_includedir}/ecasound/qe* -%attr(755,root,root) %{_libdir}/libqtecasound*.a -%attr(755,root,root) %{_libdir}/libqtecasound*.la +%attr(755,root,root) %{py_sitedir}/*.so +%{py_sitedir}/*.py[co]