-%define snap 20020101
+%define epache_version 0.1.4
Summary: Utils controlling emu10k1 processor
Summary(pl): Narzêdzia kontroluj±ce procesor emu10k1
Name: emu10k1-utils
-Version: 0.9.3
-Release: 0.%{snap}.1
+Version: 0.9.4
+Release: 6
License: GPL
Group: Applications/Sound
-Group(de): Applikationen/Laut
-Group(es): Aplicaciones/Sonido
-Group(pl): Aplikacje/D¼wiêk
-Group(pt_BR): Aplicações/Som
-Source0: %{name}-%{snap}.tar.bz2
+Source0: http://dl.sourceforge.net/emu10k1/emu-tools-%{version}.tar.gz
+# Source0-md5: 906fc53ad142bb4d3531c941d7878264
+Source1: http://www.geocities.com/hsokolow2001/linux/epache-%{epache_version}.tgz
+# Source1-md5: f85a9f71485a4f8667084010e7c18e6f
+Source2: m2049.pdf
+Source3: hog63.ps
Patch0: %{name}-path.patch
Patch1: %{name}-aumix.patch
Patch2: %{name}-fv10k1.patch
-URL: http://opensource.creative.com/
-# czy w j±drach 2.2 jest obs³uga emu10k1? jak nie, to dodaæ requires: kernel >=2.4
+Patch3: %{name}-gcc33.patch
+Patch4: %{name}-nokernel.patch
+URL: http://sourceforge.net/projects/emu10k1/
+BuildRequires: gtk+-devel
+BuildRequires: libstdc++-devel
BuildRequires: m4
+BuildRequires: perl-base
+Conflicts: alsa-driver
+Conflicts: kernel < 2.4.11
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define _prefix /usr
-
%description
The emu10k1 is really a dsp processor. It does not do any effects on
it's own, nor does it route sound from input to output. We had to
emu10k1 jest w rzeczywisto¶ci procesorem sygna³ów cyfrowych (dsp). Nie
robi ¿adnych efektów sam z siebie, ani nie kieruje d¼wiêku z wej¶cia
na wyj¶cie. Odpowiedzialny za to kod dsp musi byæ napisany i
-za³adowany. emu10k1-utils pozwala ustawiæ routing, (za/wy)³adowywaæ
+za³adowany. emu10k1-utils pozwala ustawiæ routing, (za/wy)³adowaæ
³atki (efekty), kontrolowaæ ich parametry (np. przez odzwierciedlenie
w mikserze).
emu-dspmgr.
%package devel
-Summary: emu10k1 programming utils.
+Summary: emu10k1 programming utils
Summary(pl): Narzêdzia do programowania emu10k1
Group: Applications/Sound
-Group(de): Applikationen/Laut
-Group(es): Aplicaciones/Sonido
-Group(pl): Aplikacje/D¼wiêk
-Group(pt_BR): Aplicações/Som
-Requires: %{name} = %{version}
%description devel
Package contains:
- as10k1 - Assembler for the emu10k1 DSP Processor
- patches sources
-%description -l pl devel
+%description devel -l pl
Pakiet zawiera:
- as10k1 - asembler dla procesora emu10k1
- ¼ród³a ³atek z g³ównego pakietu
%package autoconfig
-Summary: emu10k1 autoconfiguration on module load.
-Summary(pl): Skrypt konfiguruj±cy emu10k1 przy ³adowaniu modu³u.
+Summary: emu10k1 autoconfiguration on module load
+Summary(pl): Skrypt konfiguruj±cy emu10k1 przy ³adowaniu modu³u
Group: Applications/Sound
-Group(de): Applikationen/Laut
-Group(es): Aplicaciones/Sonido
-Group(pl): Aplikacje/D¼wiêk
-Group(pt_BR): Aplicações/Som
-Requires: %{name} = %{version}
+Requires: %{name} = %{version}-%{release}
Requires: aumix
%description autoconfig
Script loading patches. Currently it cannot do too much.
-%description -l pl autoconfig
+%description autoconfig -l pl
Skrypt ³aduj±cy ³atki. W chwili obecnej nie potrafi zbyt du¿o.
+%package epache
+Summary: Program for configuring patches for emu10k1 based sound cards
+Summary(pl): Program konfiguruj±cy ³atki dla kart opartych na emu10k1
+Group: X11/Applications/Sound
+Requires: %{name} = %{version}-%{release}
+
+%description epache
+- with the help of emu-dspmgr you can easily load a patch to the card
+ on the specified line (the patch must be generated with the as10k1
+ assembler) and clean the card from it.
+- you can control 'CONTROL GPRS' of loaded patches (such as speed in
+ flanger)
+- you can save sessions and load them later, session is a list of
+ patches currenlty loaded with values of controls.
+
+%description epache -l pl
+- z pomoc± emu-dspmgra mo¿esz ³atwo ³adowaæ ³aty do karty na dan±
+ liniê (³ata musi byæ wygenerowana przez asembler as10k1) oraz
+ wyczy¶ciæ z niej kartê,
+- mo¿esz kontrolowaæ rejestry kontrolne za³adowanych ³at,
+- mo¿esz zachowywaæ sesje i ³adowaæ je; sesja jest list± aktualnie
+ za³adowanych ³at z warto¶ciami kontrolnymi.
+
%prep
-%setup -n emu10k1-utils -q
+%setup -n emu-tools-%{version} -q -a1
%patch0 -p1
%patch1 -p1
%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+
+cp %{SOURCE2} %{SOURCE3} .
%build
+%{__make} \
+ CC="%{__cc}" \
+ CFLAGS="%{rpmcflags} -W -Wall"
+
+cd dbgemu
+%{__cc} %{rpmldflags} %{rpmcflags} -Wall -o dbgemu dbgemu.c
+
+cd ../fv10k1
+%{__cxx} %{rpmldflags} %{rpmcflags} -Wall -o calcroom calcroom.C
%{__make}
-#%{__make} -C compiler
-#%{__make} -C dbgemu
-%{__make} -C fv10k1
+cd ..
+
+%{__make} -C epache-%{epache_version} \
+ CC="%{__cc}" \
+ CFLAGS="%{rpmcflags} -Wall \$(GTK_CFLAGS)"
%install
rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT%{_datadir}/emu10k1/asm
-%{__make} DESTDIR=$RPM_BUILD_ROOT install
-cp fv10k1/load.sh fv10k1/unload.sh fv10k1/fv10k1control.pl $RPM_BUILD_ROOT%{_bindir}
-mv fv10k1/README docs/README.fv10k1
-cp fv10k1/bin/* $RPM_BUILD_ROOT%{_datadir}/emu10k1/
-mkdir $RPM_BUILD_ROOT%{_datadir}/emu10k1/asm/
-cp fv10k1/*.asm $RPM_BUILD_ROOT%{_datadir}/emu10k1/asm/
-cp fv10k1/*.inc $RPM_BUILD_ROOT%{_datadir}/emu10k1/asm/
-cp as10k1/effects/*.asm $RPM_BUILD_ROOT%{_datadir}/emu10k1/asm/
-cp -f as10k1/effects/*.inc $RPM_BUILD_ROOT%{_datadir}/emu10k1/asm/
-gzip -9nf $RPM_BUILD_ROOT%{_datadir}/emu10k1/asm/*
+%{__make} install \
+ DESTDIR=$RPM_BUILD_ROOT
+install epache-%{epache_version}/epache $RPM_BUILD_ROOT%{_bindir}
+install dbgemu/dbgemu $RPM_BUILD_ROOT%{_bindir}
+mv dbgemu/README dbgemu/README.dbgemu
+install as10k1/effects/*.asm $RPM_BUILD_ROOT%{_datadir}/emu10k1/asm
+install as10k1/effects/*.inc $RPM_BUILD_ROOT%{_datadir}/emu10k1/asm
+
+gzip -9nf $RPM_BUILD_ROOT%{_datadir}/emu10k1/asm/*
gzip -9nf $RPM_BUILD_ROOT%{_datadir}/emu10k1/README
-gzip -9nf docs/*
%clean
rm -rf $RPM_BUILD_ROOT
%post autoconfig
-grep "post-install emu10k1 /usr/bin/emu-script" /etc/modules.conf > /dev/null
-if [ "$?" -eq "1" ]
-then
- echo "post-install emu10k1 /usr/bin/emu-script" >> /etc/modules.conf
+umask 027
+grep "install emu10k1 /sbin/modprobe --ignore-install emu10k1 && { /usr/bin/emu-script; }" /etc/modprobe.conf > /dev/null
+if [ "$?" -eq "1" ]; then
+ echo "install emu10k1 /sbin/modprobe --ignore-install emu10k1 && { /usr/bin/emu-script; }" >> /etc/modprobe.conf
fi
%postun autoconfig
-grep -v "post-install emu10k1 /usr/bin/emu-script" /etc/modules.conf > /etc/modules.conf.new
-mv -f /etc/modules.conf /etc/modules.conf.old
-mv /etc/modules.conf.new /etc/modules.conf
+umask 027
+grep -v "install emu10k1 /sbin/modprobe --ignore-install emu10k1 && { /usr/bin/emu-script; }" /etc/modprobe.conf > /etc/modprobe.conf.new
+mv -f /etc/modprobe.conf.new /etc/modprobe.conf
%files
%defattr(644,root,root,755)
-%attr(750,root,root) %{_bindir}/emu-config
-%attr(750,root,root) %{_bindir}/emu-dspmgr
-%attr(750,root,root) %{_bindir}/fv10k1control.pl
-%attr(750,root,root) %{_bindir}/load.sh
-%attr(750,root,root) %{_bindir}/unload.sh
-%doc docs/README-TOOLS.gz docs/README.fv10k1.gz
-%{_mandir}/man1/emu-*
+%doc docs/CHANGES docs/README docs/README.FAQ dbgemu/README.dbgemu
+%attr(754,root,root) %{_bindir}/emu-config
+%attr(754,root,root) %{_bindir}/emu-dspmgr
+%attr(754,root,root) %{_bindir}/dbgemu
%dir %{_datadir}/emu10k1
%{_datadir}/emu10k1/*.bin
%{_datadir}/emu10k1/README.gz
+%{_mandir}/man1/emu-*
%files devel
%defattr(644,root,root,755)
-%attr(750,root,root) %{_bindir}/as10k1
-%doc docs/dsp.txt.gz docs/manuals.txt.gz docs/registers.txt.gz docs/tram.txt.gz
+%doc docs/dsp.txt docs/manuals.txt docs/multichannel.txt docs/TODO hog63.ps m2049.pdf
+%attr(755,root,root) %{_bindir}/as10k1
+%{_datadir}/emu10k1/asm
%{_mandir}/man1/as10k1*
-%dir %{_datadir}/emu10k1/asm
-%{_datadir}/emu10k1/asm/*
%files autoconfig
%defattr(644,root,root,755)
-%attr(750,root,root) %{_bindir}/emu-script
-%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/emu10k1.conf
+%attr(754,root,root) %{_bindir}/emu-script
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/emu10k1.conf
+
+%files epache
+%defattr(644,root,root,755)
+%doc epache-%{epache_version}/README
+%attr(755,root,root) %{_bindir}/epache