+#
+# Conditional build:
+# _without_alsa - without ALSA support
+# _without_doc - don't build HTML documentation (from SGML source)
+# _without_esd - without esd support
+# _with_mmx - use MMX (makes sense on i[56]86 with MMX; won't run on non-MMX CPU)
+#
+# TODO:
+# - remove zip BR?
+#
+%ifarch athlon
+%define _with_mmx 1
+%endif
+
Summary: Open Audio Library
Summary(pl): Otwarta Biblioteka D¼wiêku
Name: OpenAL
Version: 0.0.6
-Release: 1
+%define snap 20040416
+Release: 1.%{snap}.1
License: LGPL
-Group: X11/Libraries
-Group(de): X11/Libraries
-Group(es): X11/Bibliotecas
-Group(fr): X11/Librairies
-Group(pl): X11/Biblioteki
-Group(pt_BR): X11/Bibliotecas
-Group(ru): X11/âÉÂÌÉÏÔÅËÉ
-Group(uk): X11/â¦Â̦ÏÔÅËÉ
-Vendor: Loki Entertainment Software - http://www.lokigames.com/
-# This is tarball taken directly form Mandrake Cooker .src.rpm
-Source0: %{name}-linuxonly-20010805.tar.bz2
-# Those patches came from Mandrake Cooker (only changed names)
+Group: Libraries
+# from CVS :pserver:guest@opensource.creative.com:/usr/local/cvs-repository /openal
+# (without all Win and Mac stuff and demos)
+Source0: %{name}-linuxonly-%{snap}.tar.bz2
+# Source0-md5: 4f42f20484858452bfc30caa8976415d
Patch0: %{name}-prefix.patch
-Patch1: %{name}-build.patch
-URL: http://www.openal.com/
-BuildRequires: alsa-lib-devel
+Patch1: %{name}-info.patch
+URL: http://www.openal.org/
BuildRequires: SDL-devel
+%{!?_without_alsa:BuildRequires: alsa-lib-devel}
+BuildRequires: autoconf
+BuildRequires: automake
+%{!?_without_doc:BuildRequires: docbook-utils}
+%{!?_without_esd:BuildRequires: esound-devel}
+%{!?_without_doc:BuildRequires: gnome-doc-tools}
BuildRequires: libvorbis-devel
+%{?_with_mmx:BuildRequires: nasm}
BuildRequires: smpeg-devel
+BuildRequires: texinfo
+BuildRequires: zip
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define _prefix /usr/X11R6
-
%description
OpenAL, the Open Audio Library, is a joint effort to create an open,
vendor-neutral, cross-platform API for interactive, primarily
%description -l pl
OpenAL, otwarta biblioteka d¼wiêku, to po³±czony wysi³ek w celu
-stworzenia otwartego, niezale¿nego od producentów, miedzyplatformowego
+stworzenia otwartego, niezale¿nego od producentów, miêdzyplatformowego
interfejsu projektowania aplikacji w czê¶ci obs³ugi d¼wiêku.
-Biblioteka adresowana jest do twórców aplikacji i urzytkowników,
+Biblioteka adresowana jest do twórców aplikacji i u¿ytkowników,
którzy wybieraj± przeno¶ne standardy, jak OpenGL, w grach i
aplikacjach multimedialnych. OpenAL posiada ju¿ wsparcie wielu
dostarczycieli sprzêtu i programistów.
%package devel
Summary: Headers for OpenAL
Summary(pl): Pliki nag³ówkowe do OpenAL
-Group: X11/Development/Libraries
-Group(de): X11/Entwicklung/Libraries
-Group(es): X11/Desarrollo/Bibliotecas
-Group(fr): X11/Development/Librairies
-Group(pl): X11/Programowanie/Biblioteki
-Group(pt_BR): X11/Desenvolvimento/Bibliotecas
-Group(ru): X11/òÁÚÒÁÂÏÔËÁ/âÉÂÌÉÏÔÅËÉ
-Group(uk): X11/òÏÚÒÏÂËÁ/â¦Â̦ÏÔÅËÉ
+Group: Development/Libraries
Requires: %{name} = %{version}
%description devel
%package static
Summary: OpenAL static library
Summary(pl): Statyczna biblioteka OpenAL
-Group: X11/Development/Libraries
-Group(de): X11/Entwicklung/Libraries
-Group(es): X11/Desarrollo/Bibliotecas
-Group(fr): X11/Development/Librairies
-Group(pl): X11/Programowanie/Biblioteki
-Group(pt_BR): X11/Desenvolvimento/Bibliotecas
-Group(ru): X11/òÁÚÒÁÂÏÔËÁ/âÉÂÌÉÏÔÅËÉ
-Group(uk): X11/òÏÚÒÏÂËÁ/â¦Â̦ÏÔÅËÉ
+Group: Development/Libraries
Requires: %{name}-devel = %{version}
%description static
OpenAL static library.
%description static -l pl
-Biblioteka OpenAL do statycznego linkowania.
+Biblioteka OpenAL do konsolidacji statycznej.
%prep
-%setup -q -n tmp/openal
-%patch0 -p0
-%patch1 -p0
+%setup -q -n openal
+%patch0 -p1
+%patch1 -p1
+
+echo 'AC_DEFUN([AC_HAS_MMX],[$%{?_with_mmx:1}%{!?_with_mmx:2}])' >> linux/acinclude.m4
%build
cd linux
-sh ./autogen.sh
-%configure --enable-prefix=%{_prefix} \
- --enable-optimization \
- --enable-alsa \
- --enable-sdl \
- --enable-vorbis \
- --enable-smpeg \
- --enable-capture \
- --with-gcc=%{__cc}
+cp /usr/share/automake/config.sub .
+%{__aclocal}
+%{__autoconf}
+%{__autoheader}
+%configure \
+ %{!?debug:--enable-optimization} \
+ %{?_with_mmx:--enable-arch-asm} \
+ %{!?_without_alsa:--enable-alsa} \
+ %{!?_without_esd:--enable-esd} \
+ --enable-sdl \
+ --enable-vorbis \
+ --enable-smpeg \
+ --enable-capture \
+ --with-gcc=%{__cc}
+
%{__make}
+cd ../docs
+%{!?_without_doc:%{__make} full-html}
+
%install
rm -rf $RPM_BUILD_ROOT
-cd linux
-%makeinstall
+install -d $RPM_BUILD_ROOT%{_infodir}
-mkdir -p $RPM_BUILD_ROOT%{_infodir}
-install -c doc/openal.info $RPM_BUILD_ROOT%{_infodir}
+cd linux
+%{__make} install \
+ DESTDIR=$RPM_BUILD_ROOT
-# This needs patch, but is it worth to waste time ?
-rm -f $RPM_BUILD_ROOT%{_libdir}/libopenal.{so,so.0}
+install doc/openal.info $RPM_BUILD_ROOT%{_infodir}
%clean
rm -rf $RPM_BUILD_ROOT
%postun devel
[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
-
%files
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/*.so*
+%doc linux/{CREDITS,ChangeLog,NOTES,TODO}
+%attr(755,root,root) %{_libdir}/lib*.so.*.*
%files devel
%defattr(644,root,root,755)
-%doc %{_infodir}/openal.info.*
-%{_includedir}/AL/*.h
+%doc linux/doc/LOKI* %{!?_without_doc:docs/oalspecs-full}
+%attr(755,root,root) %{_libdir}/lib*.so
+%{_includedir}/AL
+%{_infodir}/openal.info*
%files static
%defattr(644,root,root,755)
-%attr(755,root,root)%{_libdir}/*.a
+%{_libdir}/*.a