#
# Conditional build:
-# _without_alsa - without ALSA support
-# _without_esound - without esound support
-# _without_arts - without arts support
-# _with_svga - with svgalib support
-# _with_aalib - with aalib support
-# _with_ggi - with GGI support
+%bcond_with aalib # aalib graphics support
+%bcond_with caca # caca graphics support
+%bcond_with directfb # DirectFB graphics support
+%bcond_with ggi # GGI graphics support
+%bcond_with nas # NAS audio support
+%bcond_with svga # svgalib graphics support
+%bcond_without alsa # ALSA audio support
+%bcond_with arts # aRts audio support
+%bcond_with esd # EsounD audio support
+%bcond_with new_gamma_ramp # causes crashes on nvidia drivers
+%bcond_without static_libs # don't build static libraries
#
-%ifarch alpha
-%define _without_arts 1
-%endif
-
+# NOTE: the following libraries are dlopened by soname detected at build time:
+# libartsc.so.? [if with arts]
+# libasound.so.2 [if with alsa]
+# libaudio.so.2 [if with nas]
+# libesd.so.0 [if with esd]
+# libpulse-simple.so.0
+# libX11.so.6
+# libXext.so.6
+# libXrender.so.1
+# libXrandr.so.2
Summary: SDL (Simple DirectMedia Layer) - Game/Multimedia Library
-Summary(es): Simple DirectMedia Layer
-Summary(pl): SDL (Simple DirectMedia Layer) - Biblioteka do gier/multimediów
-Summary(pt_BR): Simple DirectMedia Layer
-Summary(ru): Simple DirectMedia Layer
-Summary(uk): Simple DirectMedia Layer
-Summary(zh_CN): SDL (Simple DirectMedia Layer) Generic APIs - ÓÎÏ·/¶àýÌå¿â
+Summary(pl.UTF-8): SDL (Simple DirectMedia Layer) - Biblioteka do gier/multimediów
+Summary(zh_CN.UTF-8): SDL (Simple DirectMedia Layer) Generic APIs - 游戏/多媒体库
Name: SDL
-Version: 1.2.4
-Release: 11
-License: LGPL
-Group: X11/Libraries
+Version: 1.2.15
+Release: 6
+License: LGPL v2.1+
+Group: Libraries
Source0: http://www.libsdl.org/release/%{name}-%{version}.tar.gz
-Patch0: %{name}-byteorder.patch
-Patch1: %{name}-fixlibs.patch
-Patch2: %{name}-amfix.patch
-Patch3: %{name}-lpthread.patch
-Patch4: %{name}-ac25x.patch
-Patch5: %{name}-alsa9.patch.bz2
-Patch6: %{name}-no_rpath_in_sdl-config.patch
+# Source0-md5: 9d96df8417572a2afb781a7c4c811a85
+Patch0: %{name}-acfix.patch
+Patch1: %{name}-new_gamma_ramp_support.patch
+Patch2: fix-mouse-click.patch
+Patch3: %{name}-config.patch
+Patch4: %{name}-const_XData32.patch
URL: http://www.libsdl.org/
-BuildRequires: OpenGL-devel
-BuildRequires: XFree86-devel >= 4.0.2
-%{?_with_aalib:BuildRequires: aalib-devel}
-%ifnarch sparc sparc64
-%{!?_without_alsa:BuildRequires: alsa-lib-devel}
-%endif
-%{!?_without_arts:BuildRequires: arts-devel}
-BuildRequires: autoconf
+%{?with_directfb:BuildRequires: DirectFB-devel >= 0.9.15}
+BuildRequires: OpenGL-GLU-devel
+%{?with_aalib:BuildRequires: aalib-devel}
+%{?with_alsa:BuildRequires: alsa-lib-devel >= 0.9.0}
+%{?with_arts:BuildRequires: artsc-devel >= 1.1}
+BuildRequires: autoconf >= 2.59-9
BuildRequires: automake
-%{!?_without_esound:BuildRequires: esound-devel}
-%{?_with_ggi:BuildRequires: libggi-devel}
-BuildRequires: libtool
+%{?with_esd:BuildRequires: esound-devel >= 0.2.8}
+BuildRequires: gcc >= 5:4.0
+%{?with_caca:BuildRequires: libcaca-devel}
+%{?with_ggi:BuildRequires: libggi-devel}
+BuildRequires: libtool >= 2:2.0
+%{?with_nas:BuildRequires: nas-devel}
%ifarch %{ix86}
BuildRequires: nasm
%endif
BuildRequires: perl-modules
-%{?_with_svgalib:BuildRequires: svgalib-devel}
+BuildRequires: pkgconfig >= 1:0.7
+BuildRequires: pulseaudio-devel >= 0.9
+%{?with_svga:BuildRequires: svgalib-devel >= 1.4.0}
+BuildRequires: tslib-devel
+BuildRequires: xorg-lib-libX11-devel
+BuildRequires: xorg-lib-libXext-devel
+BuildRequires: xorg-lib-libXrandr-devel
+BuildRequires: xorg-lib-libXrender-devel
+BuildRequires: xorg-proto-xextproto-devel
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define _prefix /usr/X11R6
-%define _mandir %{_prefix}/man
+%define specflags_ppc -maltivec
%description
SDL (Simple DirectMedia Layer) is a library that allows you portable,
it is designed to be portable - applications linked with SDL can also
be built on Win32 and BeOS.
-%description -l pl
-SDL (Simple DirectMedia Layer) jest bibliotek± udostêpniaj±c±
-przeno¶ny, niskopoziomowy dostep do bufora ramki video, wyj¶cia audio,
-myszy oraz klawiatury, Moze obs³ugiwaæ zarówno okienkowy tryb XFree86
-jak i DGA. Konstruuj±c j± miano na uwadze przeno¶no¶æ: aplikacje
-konsolidowane z SDL mo¿na równie¿ budowac w systemach Win32 i BeOS.
+%description -l pl.UTF-8
+SDL (Simple DirectMedia Layer) jest biblioteką udostępniającą
+przenośny, niskopoziomowy dostęp do bufora ramki video, wyjścia audio,
+myszy oraz klawiatury. Może obsługiwać zarówno okienkowy tryb XFree86
+jak i DGA. Konstruując ją miano na uwadze przenośność: aplikacje
+konsolidowane z SDL można również budować w systemach Win32 i BeOS.
+
+%description -l pt_BR.UTF-8
+Esse é o Simple DirectMedia Layer, uma API genérica que dá acesso de
+baixo nível a áudio, teclado, mouse e vídeo em várias plataformas.
-%description -l pt_BR
-Esse é o Simple DirectMedia Layer, uma API genérica que dá acesso de
-baixo nível a áudio, teclado, mouse e vídeo em várias plataformas.
+Essa biblioteca é usada por alguns jogos.
-Essa biblioteca é usada por alguns jogos.
+%description -l ru.UTF-8
+SDL (Simple DirectMedia Layer) это набор функций, предоставляющий
+низкоуровневый доступ к звуку, клавиатуре, манипулятору мышь и к
+буферу экрана на множестве различных платформ.
%package devel
Summary: SDL - Header files
-Summary(pl): SDL - Pliki nag³ówkowe
-Summary(pt_BR): Bibliotecas e arquivos de cabeçalho para aplicações SDL
-Summary(ru): æÁÊÌÙ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ÒÁÚÒÁÂÏÔËÉ ÐÒÏÇÒÁÍÍ, ÉÓÐÏÌØÚÕÀÝÉÈ SDL
-Summary(uk): æÁÊÌÉ, ÎÅÏÂȦÄΦ ÄÌÑ ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ, ÝÏ ×ÉËÏÒÉÓÔÏ×ÕÀÔØ SDL
-Summary(zh_CN): SDL (Simple DirectMedia Layer) ¿ª·¢¿â
-Group: X11/Development/Libraries
-Requires: %{name} = %{version}
-Requires: XFree86-devel >= 4.0.2
-%ifnarch sparc sparc64
-%{!?_without_alsa:Requires: alsa-lib-devel}
-%endif
-%{!?_without_arts:Requires: arts-devel}
-%{!?_without_esound:Requires: esound-devel}
+Summary(pl.UTF-8): SDL - Pliki nagłówkowe
+Summary(pt_BR.UTF-8): Bibliotecas e arquivos de cabeçalho para aplicações SDL
+Summary(ru.UTF-8): Файлы, необходимые для разработки программ, использующих SDL
+Summary(uk.UTF-8): Файли, необхідні для розробки програм, що використовують SDL
+Summary(zh_CN.UTF-8): SDL (Simple DirectMedia Layer) 开发库
+Group: Development/Libraries
+Requires: %{name} = %{version}-%{release}
+%{?with_directfb:Requires: DirectFB-devel >= 0.9.15}
+%{?with_aa:Requires: aalib-devel}
+%{?with_caca:Requires: libcaca-devel}
+%{?with_ggi:Requires: libggi-devel}
+%{?with_svga:Requires: svgalib-devel >= 1.4.0}
+Requires: tslib-devel
+Requires: xorg-lib-libX11-devel
+Suggests: OpenGL-GLU-devel
%description devel
SDL - Header files.
-%description devel -l pl
-SDL - Pliki nag³ówkowe.
+%description devel -l pl.UTF-8
+SDL - Pliki nagłówkowe.
-%description devel -l pt_BR
-Esse pacote contém bibliotecas, arquivos de cabeçalho e outros
+%description devel -l pt_BR.UTF-8
+Esse pacote contém bibliotecas, arquivos de cabeçalho e outros
recursos para o desenvolvimento de aplicativos com SDL.
-%description devel -l ru
-üÔÏÔ ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÆÁÊÌÙ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ÒÁÚÒÁÂÏÔËÉ ÐÒÏÇÒÁÍÍ,
-ÉÓÐÏÌØÚÕÀÝÉÈ SDL.
+%description devel -l ru.UTF-8
+Этот пакет содержит файлы, необходимые для разработки программ,
+использующих SDL.
-%description devel -l uk
-ãÅÊ ÐÁËÅÔ Í¦ÓÔÉÔØ ÆÁÊÌÉ, ÎÅÏÂȦÄΦ ÄÌÑ ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ, ÝÏ
-×ÉËÏÒÉÓÔÏ×ÕÀÔØ SDL.
+%description devel -l uk.UTF-8
+Цей пакет містить файли, необхідні для розробки програм, що
+використовують SDL.
%package static
Summary: SDL - static libraries
-Summary(pl): SDL - biblioteki statyczne
-Summary(pt_BR): Biblioteca estática para desenvolvimento de aplicações com a SDL
-Summary(ru): óÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ ÄÌÑ ÒÁÚÒÁÂÏÔËÉ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ SDL
-Summary(uk): óÔÁÔÉÞΦ ¦Â̦ÏÔÅËÉ ÄÌÑ ÒÏÚÒÏÂËÉ Ú ×ÉËÏÒÉÓÔÁÎÎÑÍ SDL
-Group: X11/Development/Libraries
-Requires: %{name}-devel = %{version}
+Summary(pl.UTF-8): SDL - biblioteki statyczne
+Summary(pt_BR.UTF-8): Biblioteca estática para desenvolvimento de aplicações com a SDL
+Summary(ru.UTF-8): Статические библиотеки для разработки с использованием SDL
+Summary(uk.UTF-8): Статичні бібліотеки для розробки з використанням SDL
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
%description static
SDL - static libraries.
-%description static -l pl
+%description static -l pl.UTF-8
SDL - biblioteki statyczne.
-%description static -l pt_BR
-Biblioteca estática para desenvolvimento de aplicações com a SDL.
+%description static -l pt_BR.UTF-8
+Biblioteca estática para desenvolvimento de aplicações com a SDL.
-%description static -l ru
-üÔÏÔ ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÓÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ ÄÌÑ ÒÁÚÒÁÂÏÔËÉ ÐÒÏÇÒÁÍÍ,
-ÉÓÐÏÌØÚÕÀÝÉÈ SDL.
+%description static -l ru.UTF-8
+Этот пакет содержит статические библиотеки для разработки программ,
+использующих SDL.
-%description static -l uk
-ãÅÊ ÐÁËÅÔ Í¦ÓÔÉÔØ ÓÔÁÔÉÞΦ ¦Â̦ÏÔÅËÉ ÄÌÑ ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ, ÝÏ
-×ÉËÏÒÉÓÔÏ×ÕÀÔØ SDL.
+%description static -l uk.UTF-8
+Цей пакет містить статичні бібліотеки для розробки програм, що
+використовують SDL.
%package examples
Summary: SDL - example programs
-Summary(pl): SDL - programy przyk³adowe
-Group: X11/Development/Libraries
-Requires: %{name}-devel = %{version}
+Summary(pl.UTF-8): SDL - programy przykładowe
+License: Public Domain
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
%description examples
SDL - example programs.
-%description examples -l pl
-SDL - przyk³adowe programy.
+%description examples -l pl.UTF-8
+SDL - przykładowe programy.
%prep
%setup -q
%patch0 -p1
-%patch1 -p1
+%{?with_new_gamma_ramp:%patch1 -p1}
%patch2 -p1
%patch3 -p1
%patch4 -p1
-%patch5 -p1
-%patch6 -p1
+
+: > acinclude.m4
+%{!?with_alsa:echo 'AC_DEFUN([AM_PATH_ALSA],[$3])' >> acinclude.m4}
+%{!?with_esd:echo 'AC_DEFUN([AM_PATH_ESD],[$3])' >> acinclude.m4}
%build
-rm -f missing
%{__libtoolize}
%{__aclocal}
%{__autoconf}
-%{__automake}
%configure \
%ifarch %{ix86}
--enable-nasm \
%else
--disable-nasm \
%endif
+ --disable-rpath \
+ %{!?with_alsa:--disable-alsa} \
+ %{!?with_arts:--disable-arts} \
+ --enable-dga \
+ %{!?with_esd:--disable-esd} \
+ %{!?with_nas:--disable-nas} \
--enable-pthreads \
--enable-pthread-sem \
- --with-x \
- --enable-dga \
+ %{?with_aalib:--enable-video-aalib} \
+ %{?with_caca:--enable-video-caca} \
+ %{!?with_directfb:--disable-video-directfb} \
--enable-video-dga \
+ --enable-video-fbcon \
+ %{?with_ggi:--enable-video-ggi} \
+ --enable-video-opengl \
+ %{!?with_svga:--disable-video-svga} \
--enable-video-x11-dgamouse \
--enable-video-x11-vm \
+ --enable-video-x11-xinerama \
+ --enable-video-x11-xme \
+ --enable-video-x11-xrandr \
--enable-video-x11-xv \
- --enable-video-opengl \
- --enable-video-fbcon \
- %{?_with_svga:--enable-video-svga} \
- %{?_with_aalib:--enable-video-aalib} \
- %{?_with_ggi:--enable-video-ggi} \
-%ifnarch sparc sparc64
- %{!?_without_alsa:--enable-alsa} \
-%endif
- %{!?_without_esound:--enable-esd} \
- %{!?_without_arts:--enable-arts}
+ --with-x \
+ %{!?with_static_libs:--disable-static}
+
+%{__make}
%install
rm -rf $RPM_BUILD_ROOT
DESTDIR=$RPM_BUILD_ROOT \
m4datadir=%{_aclocaldir}
+rm -rf test/autom4te.cache
install test/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
-rm -rf docs/man3 docs/Makefile* docs/html/Makefile*
+rm -rf docs/man3
%clean
rm -rf $RPM_BUILD_ROOT
-%post -p /sbin/ldconfig
+%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib*.so.*.*
+%doc BUGS CREDITS README README-SDL.txt TODO WhatsNew
+%attr(755,root,root) %{_libdir}/libSDL-1.2.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libSDL-1.2.so.0
%files devel
%defattr(644,root,root,755)
-%doc BUGS CREDITS README TODO WhatsNew docs.html docs
+%doc docs.html docs
%attr(755,root,root) %{_bindir}/sdl-config
-%attr(755,root,root) %{_libdir}/lib*.so
-%attr(755,root,root) %{_libdir}/lib*.la
+%attr(755,root,root) %{_libdir}/libSDL.so
+%{_libdir}/libSDL.la
%{_libdir}/libSDLmain.a
%{_includedir}/SDL
-%{_aclocaldir}/*
-%{_mandir}/man3/*
-
-%files examples
-%defattr(644,root,root,755)
-%{_examplesdir}/%{name}-%{version}
+%{_aclocaldir}/sdl.m4
+%{_pkgconfigdir}/sdl.pc
+%{_mandir}/man3/SDL*.3*
+%if %{with static_libs}
%files static
%defattr(644,root,root,755)
%{_libdir}/libSDL.a
+%endif
+
+%files examples
+%defattr(644,root,root,755)
+%{_examplesdir}/%{name}-%{version}