#
# Conditional build:
-%{?_without_alsa:%global _without_jack 1}
%bcond_without alsa # without ALSA support (implies without JACK)
%bcond_without jack # without JACK support
+%bcond_without ruby # without ruby support
%bcond_with arts # with aRts support
#
-%include /usr/lib/rpm/macros.python
Summary: Software package for multitrack audio processing
-Summary(pl): Oprogramowanie do wielo¶cie¿kowego przetwarzania d¼wiêku
+Summary(pl.UTF-8): Oprogramowanie do wielościeżkowego przetwarzania dźwięku
Name: ecasound
-Version: 2.3.0
+Version: 2.6.0
Release: 1
-License: GPL
+License: GPL v2+
Group: Applications/Sound
Source0: http://ecasound.seul.org/download/%{name}-%{version}.tar.gz
-# Source0-md5: fb440a68466c8bd6f7bc8a14adf46ef7
+# Source0-md5: 41f9445b9a9c0cde141831cb53d1ef8f
Patch0: %{name}-link.patch
-%{?with_alsa:BuildRequires: alsa-lib-devel}
+Patch1: %{name}-acam.patch
+URL: http://ecasound.seul.org/
+%{?with_alsa:BuildRequires: alsa-lib-devel >= 0.9.0}
%{?with_arts:BuildRequires: arts-devel}
-BuildRequires: autoconf
-BuildRequires: automake
+BuildRequires: autoconf >= 2.50
+BuildRequires: automake >= 1.6.1
%{?with_jack:BuildRequires: jack-audio-connection-kit-devel}
BuildRequires: ladspa-devel
BuildRequires: libsamplerate-devel
+BuildRequires: libsndfile-devel >= 1.0.12
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
+BuildRequires: readline-devel >= 5.0
+%if %{with ruby}
+BuildRequires: rpmbuild(macros) >= 1.277
+BuildRequires: ruby-devel
+%endif
Obsoletes: libecasound
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
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
+open-source audio packages, like for instance ALSA, OSS, mpg123, lame
+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, ecawave - a Qt-based
+X-interface and various command-line utils suitable for batch
processing.
-%description -l pl
-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.
+%description -l pl.UTF-8
+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
+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.
+projektów, takich jak ALSA, OSS, mpg123, lame 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, oparty na Qt interfejs
+użytkownika - ecawave.
%package devel
Summary: Header files for ecasound libraries
-Summary(pl): Pliki nag³ówkowe bibliotek ecasound
+Summary(pl.UTF-8): Pliki nagłówkowe bibliotek ecasound
Group: Development/Libraries
-Requires: %{name} = %{version}
+Requires: %{name} = %{version}-%{release}
+%{?with_alsa:Requires: alsa-lib-devel}
+%{?with_arts:Requires: arts-devel}
+%{?with_jack:Requires: jack-audio-connection-kit-devel}
Requires: libsamplerate-devel
+Requires: libsndfile-devel
Requires: libstdc++-devel
Obsoletes: libecasound-devel
%description devel
Header files for ecasound libraries.
-%description devel -l pl
-Pliki nag³ówkowe bibliotek ecasound.
+%description devel -l pl.UTF-8
+Pliki nagłówkowe bibliotek ecasound.
%package static
Summary: Static ecasound libraries
-Summary(pl): Statyczne biblioteki ecasound
+Summary(pl.UTF-8): Statyczne biblioteki ecasound
Group: Development/Libraries
-Requires: %{name}-devel = %{version}
+Requires: %{name}-devel = %{version}-%{release}
Obsoletes: libecasound-static
%description static
Static ecasound libraries.
-%description static -l pl
+%description static -l pl.UTF-8
Statyczne biblioteki ecasound.
%package -n python-%{name}
Summary: Python module for Ecasound
-Summary(pl): Modu³ jêzyka Python dla programu ecasound
+Summary(pl.UTF-8): Moduł języka Python dla programu ecasound
Group: Libraries/Python
+Requires: %{name} = %{version}-%{release}
%pyrequires_eq python-modules
%description -n python-%{name}
Python module for Ecasound.
-%description -n python-%{name} -l pl
-Modu³ jêzyka Python dla programu ecasound.
+%description -n python-%{name} -l pl.UTF-8
+Moduł języka Python dla programu ecasound.
+
+%package -n ruby-%{name}
+Summary: Ruby module for Ecasound
+Summary(pl.UTF-8): Moduł języka Ruby dla programu ecasound
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+%{?ruby_mod_ver_requires_eq}
+
+%description -n ruby-%{name}
+Ruby module for Ecasound.
+
+%description -n ruby-%{name} -l pl.UTF-8
+Moduł języka Ruby dla programu ecasound.
%prep
%setup -q
%patch0 -p1
+%patch1 -p1
%build
%{__libtoolize}
%{!?with_jack:--disable-jack} \
%{?with_alsa:--disable-oss} \
--enable-samplerate \
+ --enable-shared \
--enable-sys-readline \
--enable-pyecasound \
--with-largefile \
DESTDIR=$RPM_BUILD_ROOT \
mandir=%{_mandir}
-install pyecasound/*.py $RPM_BUILD_ROOT%{py_sitedir}
%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
%py_comp $RPM_BUILD_ROOT%{py_sitedir}
+%py_postclean
+%{__rm} $RPM_BUILD_ROOT%{py_sitedir}/*.{la,a}
%clean
rm -rf $RPM_BUILD_ROOT
%defattr(644,root,root,755)
%doc BUGS NEWS README TODO
%attr(755,root,root) %{_bindir}/eca*
-%attr(755,root,root) %{_libdir}/lib*.so.*.*
+%attr(755,root,root) %{_libdir}/libecasound.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libecasound.so.20
+%attr(755,root,root) %{_libdir}/libecasoundc.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libecasoundc.so.1
+%attr(755,root,root) %{_libdir}/libkvutils.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libkvutils.so.4
%{_datadir}/ecasound
-%{_mandir}/man1/eca*
-%{_mandir}/man5/eca*
+%{_mandir}/man1/eca*.1*
+%{_mandir}/man5/ecasoundrc.5*
%files devel
%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/*-config
-%attr(755,root,root) %{_libdir}/lib*.so
-%{_libdir}/lib*.la
+%attr(755,root,root) %{_bindir}/libecasound-config
+%attr(755,root,root) %{_bindir}/libecasoundc-config
+%attr(755,root,root) %{_libdir}/libecasound.so
+%attr(755,root,root) %{_libdir}/libecasoundc.so
+%attr(755,root,root) %{_libdir}/libkvutils.so
+%{_libdir}/libecasound.la
+%{_libdir}/libecasoundc.la
+%{_libdir}/libkvutils.la
%{_includedir}/kvutils
%{_includedir}/libecasound
%{_includedir}/libecasoundc
%files static
%defattr(644,root,root,755)
-%{_libdir}/lib*.a
+%{_libdir}/libecasound.a
+%{_libdir}/libecasoundc.a
+%{_libdir}/libkvutils.a
%files -n python-%{name}
%defattr(644,root,root,755)
-%attr(755,root,root) %{py_sitedir}/*.so
-%{py_sitedir}/*.py[co]
+%attr(755,root,root) %{py_sitedir}/pyecasound.so
+%{py_sitedir}/ecacontrol.py[co]
+%{py_sitedir}/eci.py[co]
+%{py_sitedir}/pyeca.py[co]
+
+%if %{with ruby}
+%files -n ruby-%{name}
+%defattr(644,root,root,755)
+%{ruby_sitelibdir}/ecasound.rb
+%endif