Sophie

Sophie

distrib > Mandriva > 10.2 > i586 > by-pkgid > 98cbdf1b6e734fffc50c124e6ee48945 > files > 4

ecasound-2.4.0-1mdk.src.rpm

%define name	 ecasound
%define version	 2.4.0

%define major 14
%define libname %mklibname %{name} %{major}

%define	Summary	Sound processing, multitrack recording, and mixing tools

Summary:	%{Summary}
Name:		%{name}
Version: 	%{version}
Release: 	%mkrel 1
License: 	GPL
Group: 		Sound
URL: 		http://www.eca.cx/ecasound/
Source0: 	http://ecasound.seul.org/download/%{name}-%{version}.tar.bz2
Source1:        %{name}16.png
Source2:        %{name}32.png
Source3:        %{name}48.png
Patch0:		ecasound-2.4.0-missing_audioio_arts.cpp.diff.bz2
Patch1:		ecasound-2.4.0-shared.diff.bz2
BuildRequires:  autoconf2.5
BuildRequires:  automake1.7
BuildRequires:	arts-devel
BuildRequires:	jackit-devel
BuildRequires:	libalsa-devel
BuildRequires:	libaudiofile-devel
BuildRequires:	ncurses-devel
BuildRequires:	python-devel
BuildRequires:	ruby-devel
%if %mdkversion >= 1020
BuildRequires:	multiarch-utils >= 1.0.3
%endif
BuildRoot: 	%{_tmppath}/%{name}-%{version}-buildroot

%define python_sitepkgsdir %(echo `python -c "import sys; print (sys.prefix + '/%{_lib}/python' + sys.version[:3] + '/site-packages/')"`)
%define python_compile_opt python -O -c "import compileall; compileall.compile_dir('.')"
%define python_compile     python -c "import compileall; compileall.compile_dir('.')"

%description
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. Effects and audio objects can be combined
in various ways, and their parameters can be
controlled by operator objects like oscillators and
MIDI-CCs. A versatile console mode user-interface is
included in the package.

%package -n	%{libname}
Summary: 	Shared libraries for Ecasound
Group: 		System/Libraries

%description -n	%{libname}
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. Effects and audio objects can be combined
in various ways, and their parameters can be
controlled by operator objects like oscillators and
MIDI-CCs. A versatile console mode user-interface is
included in the package.

This package contains the shared Ecasound libraries.

%package -n	python-ecasound
Summary: 	Python bindings to ecasound control interface
Group: 		Sound
Requires: 	ecasound

%description -n	python-ecasound
Python bindings to Ecasound Control Interface (ECI).

%package -n	ruby-ecasound
Summary:        Ruby bindings to ecasound control interface
Group:          Sound
Requires:       ecasound

%description -n	ruby-ecasound
Ruby bindings to Ecasound Control Interface (ECI).

%package -n	%{libname}-devel
Summary: 	Ecasound - development files
Group: 		Development/Other
Provides:	lib%{name}-devel %{name}-devel
Requires:	%{libname} = %{version}

%description -n	%{libname}-devel
The ecasound-devel package contains the header files and static
libraries necessary for building apps like ecawave and
ecamegapedal that directly link against ecasound libraries.

%prep

%setup -q
%patch0 -p1
%patch1 -p1

# lib64 fix
perl -pi -e "s|/lib/|/%{_lib}/|g" configure*

%build
export WANT_AUTOCONF_2_5=1
libtoolize --copy --force && aclocal-1.7 && autoconf && automake-1.7 --foreign

export CFLAGS="%{optflags} -fPIC -DPIC"
export CXXFLAGS="%{optflags} -fPIC -DPIC"

%configure2_5x \
    --enable-shared \
    --with-largefile

%make

# (oe) the tests dies at "ECA_TEST_REPOSITORY" on cooker as 
# of Fri Apr 01 2005 but works on 10.1 x86_64
#make check

%install
rm -fr %{buildroot}

install -d %{buildroot}%{python_sitepkgsdir}

%makeinstall_std

pushd pyecasound
%python_compile_opt
%python_compile
install *.pyc *.pyo %{buildroot}%{python_sitepkgsdir}
popd

# Icons
install -m644 %{SOURCE1} -D %{buildroot}%{_miconsdir}/%{name}.png
install -m644 %{SOURCE2} -D %{buildroot}%{_iconsdir}/%{name}.png
install -m644 %{SOURCE3} -D %{buildroot}%{_liconsdir}/%{name}.png

# Menu
install -d %{buildroot}%{_menudir}
cat << EOF > %{buildroot}%{_menudir}/%{name}
?package(%{name}): needs="text" \\
		   section="Multimedia/Sound" \\
		   title="Ecasound" \\
		   longtitle="%{Summary}" \\
		   command="%{name} -c" \\
		   icon="%{name}.png"
?package(%{name}): needs="text" \\
		   section="Multimedia/Sound" \\
		   title="Eca Monitor" \\
		   longtitle="%{Summary}" \\
		   command="ecamonitor" \\
		   icon="%{name}.png"
?package(%{name}): needs="text" \\
		   section="Multimedia/Sound" \\
		   title="Eca Signalview" \\
		   longtitle="%{Summary}" \\
		   command="ecasignalview" \\
		   icon="%{name}.png"
EOF

%if %mdkversion >= 1020
%multiarch_binaries %{buildroot}%{_bindir}/libecasound-config
%multiarch_binaries %{buildroot}%{_bindir}/libecasoundc-config
%endif

%post
%update_menus

%postun
%clean_menus

%post -n %{libname} -p /sbin/ldconfig

%postun -n %{libname} -p /sbin/ldconfig

%clean
rm -rf %{buildroot}


%files -n %{libname}
%defattr(-, root, root)
%{_libdir}/*.so.*

%files
%defattr(-,root,root)
%doc NEWS COPYING COPYING.GPL COPYING.LGPL README BUGS TODO examples
%doc Documentation/*.html Documentation/*.txt
%{_bindir}/eca*
#%config(noreplace) %{_sysconfdir}/ecasound/*
%{_datadir}/%{name}
%{_mandir}/man1/*
%{_mandir}/man5/*
%{_iconsdir}/%{name}.png
%{_miconsdir}/%{name}.png
%{_liconsdir}/%{name}.png
%{_menudir}/%{name}

%files -n python-ecasound
%defattr(-,root,root)
%{python_sitepkgsdir}/*.so
%{python_sitepkgsdir}/*.py
%{python_sitepkgsdir}/*.pyc
%{python_sitepkgsdir}/*.pyo

%files -n ruby-ecasound
%defattr(-,root,root)
%{_libdir}/ruby/site_ruby/*/*

%files -n %{libname}-devel
%defattr(-, root, root)
%if %mdkversion >= 1020
%multiarch %{multiarch_bindir}/libecasound-config
%multiarch %{multiarch_bindir}/libecasoundc-config
%endif
%{_bindir}/libecasound-config
%{_bindir}/libecasoundc-config
%{_includedir}/kvutils/*.h
%{_includedir}/libecasound/*.h
%{_includedir}/libecasoundc/*.h
%{_libdir}/*.so
%{_libdir}/*.la
%{_libdir}/*.a

%changelog
* Fri Apr 01 2005 Oden Eriksson <oeriksson@mandrakesoft.com> 2.4.0-1mdk
- 2.4.0
- added missing code (P0)
- make it compile on amd64
- make shared libraries
- use the %%mkrel macro
- fix python-naming-policy-not-applied rpmlint error
- fix possible future ruby-naming-policy-not-applied rpmlint error

* Mon Jan 31 2005 Oden Eriksson <oeriksson@mandrakesoft.com> 2.3.5-2mdk
- fix deps and conditional %%multiarch

* Thu Nov 11 2004 Austin Acton <austin@mandrake.org> 2.3.5-1mdk
- 2.3.5

* Fri Oct 29 2004 Austin Acton <austin@mandrake.org> 2.3.4-1mdk
- 2.3.4
- source URL

* Tue Jun 8 2004 Austin Acton <austin@mandrake.org> 2.3.3-2mdk
- buildrequires ruby

* Tue May 4 2004 Austin Acton <austin@mandrake.org> 2.3.3-1mdk
- 2.3.3
- delib buildrequires
- configure 2.5

* Wed Dec 10 2003 Lenny Cartier <lenny@mandrakesoft.com> 2.3.2-1mdk
- 2.3.2
- add ruby subpackage

* Tue Nov 18 2003 Austin Acton <austin@linux.ca> 2.3.1-1mdk
- 2.3.1

* Sat Aug 30 2003 Austin Acton <aacton@yorku.ca> 2.3.0-1mdk
- 2.3.0

* Thu Aug 7 2003 Austin Acton <aacton@yorku.ca> 2.2.3-4mdk
- python 2.3

* Fri Jul 25 2003 Per Øyvind Karlsen <peroyvind@sintrax.net> 2.2.3-3mdk
- rebuild
- change summary macro to avoid possible conflicts if we were to build debug package
- use %%makeinstall_std macro

* Mon May 26 2003 Austin Acton <aacton@yorku.ca> 2.2.3-2mdk
- pyecasound does not provide ecasound

* Mon Apr 28 2003 Austin Acton <aacton@yorku.ca> 2.2.3-1mdk
- 2.2.3
- use mklibname

* Sun Mar 23 2003 Austin Acton <aacton@yorku.ca> 2.2.2-2mdk
- use default rc file location (/usr/share not /etc)

* Wed Mar 19 2003 Austin Acton <aacton@yorku.ca> 2.2.2-1mdk
- 2.2.2

* Sun Feb 16 2003 Austin Acton <aacton@yorku.ca> 2.2.1-1mdk
- 2.2.1

* Sat Feb 8 2003 Austin Acton <aacton@yorku.ca> 2.2.0-2mdk
- add wonderful improvements from Maxim Heijndijk <cchq@wanadoo.nl> (thanks!)
	- icons, menu entries, config file in /etc, auto python version detection
	  large file support, compiled pyecasound
- convert patches to scripts for easier updating (hopefully)

* Fri Jan 10 2003 Austin Acton <aacton@yorku.ca> 2.2.0-1mdk
- initial package