Sophie

Sophie

distrib > Mandriva > current > i586 > by-pkgid > 3c2d8d1352e95110cf6ef01b352f28ba > files > 3

sfml-1.5-2mdv2010.1.src.rpm

Name:			sfml
Version:		1.5
Release:		%mkrel 2

%define	major		1
%define	minor		5
%define	libname_a	%mklibname sfml-audio %major.%minor
%define develname_a	%mklibname sfml-audio -d
%define	libname_g	%mklibname sfml-graphics %major.%minor
%define develname_g	%mklibname sfml-graphics -d
%define	libname_n	%mklibname sfml-network %major.%minor
%define develname_n	%mklibname sfml-network -d
%define	libname_s	%mklibname sfml-system %major.%minor
%define develname_s	%mklibname sfml-system -d
%define	libname_w	%mklibname sfml-window %major.%minor
%define develname_w	%mklibname sfml-window -d

Summary:	Simple and Fast Multimedia Library
License:	zlib/libpng License
Group:		System/Libraries
URL:		http://sourceforge.net/projects/sfml
Source0:	http://sourceforge.net/projects/sfml/files/sfml/1.5/SFML-1.5-sdk-linux-32.tar.gz
Source1:	http://sourceforge.net/projects/sfml/files/sfml/1.5/SFML-1.5-sdk-linux-64.tar.gz

BuildRequires:	mesagl-devel
BuildRequires:	mesaglu-devel
BuildRequires:	freetype2-devel
BuildRequires:	libx11-devel
BuildRequires:	libxrandr-devel
BuildRequires:	openal-devel
BuildRequires:	sndfile-devel
BuildRequires:	recode
#for samples
BuildRequires:	qt4-devel
BuildRequires:	wxGTK2.8-devel

BuildRoot:	%{_tmppath}/%{name}-%{version}

%description
SFML is a portable and easy to use multimedia API written in C++.

Its features are :
 - portability,
 - object-oriented design,
 - flexibility (a lot of small packages),
 - easy to use,
 - easy to integrate with GUI toolkits.

The library is divided in 5 small packages :
 - audio
 - graphics
 - network
 - system
 - window

This package contains documentation and samples.

%package -n %{develname_a}
Summary:	Header files from %{name}-audio
Group:		Development/C++
Requires:	sfml-system-devel = %{version}
Requires:	%{libname_a} = %{version}
Provides:	%{name}-audio-devel = %{version}-%{release}

%description -n %{develname_a}
Includes files for developing programs based on %{name}-audio.

%package -n %{develname_g}
Summary:	Header files from %{name}-graphics
Group:		Development/C++
Requires:	sfml-window-devel = %{version}
Requires:	%{libname_g} = %{version}
Provides:	%{name}-graphics-devel = %{version}-%{release}

%description -n %{develname_g}
Includes files for developing programs based on %{name}-graphics.

%package -n %{develname_n}
Summary:	Header files from %{name}-network
Group:		Development/C++
Requires:	sfml-system-devel = %{version}
Requires:	%{libname_n} = %{version}
Provides:	%{name}-network-devel = %{version}-%{release}

%description -n %{develname_n}
Includes files for developing programs based on %{name}-network.

%package -n %{develname_s}
Summary:	Header files from %{name}-system
Group:		Development/C++
Requires:	%{libname_s} = %{version}
Provides:	%{name}-system-devel = %{version}-%{release}

%description -n %{develname_s}
Includes files for developing programs based on %{name}-system.

%package -n %{develname_w}
Summary:	Header files from %{name}-window
Group:		Development/C++
Requires:	sfml-system-devel = %{version}
Requires:	%{libname_w} = %{version}
Provides:	%{name}-window-devel = %{version}-%{release}

%description -n %{develname_w}
Includes files for developing programs based on %{name}-window.

%package -n %{libname_a}
Summary:	Dynamic libraries from %{name}-audio
Group:		System/Libraries
Provides:	%{name}-audio = %{version}-%{release}

%description -n %{libname_a}
Dynamic libraries from %{name}-audio.

%package -n %{libname_g}
Summary:	Dynamic libraries from %{name}-graphics
Group:		System/Libraries
Provides:	%{name}-graphics = %{version}-%{release}

%description -n %{libname_g}
Dynamic libraries from %{name}-graphics.

%package -n %{libname_n}
Summary:	Dynamic libraries from %{name}-network
Group:		System/Libraries
Provides:	%{name}-network = %{version}-%{release}

%description -n %{libname_n}
Dynamic libraries from %{name}-network.

%package -n %{libname_s}
Summary:	Dynamic libraries from %{name}-system
Group:		System/Libraries
Provides:	%{name}-system = %{version}-%{release}

%description -n %{libname_s}
Dynamic libraries from %{name}-system.

%package -n %{libname_w}
Summary:	Dynamic libraries from %{name}-window
Group:		System/Libraries
Provides:	%{name}-window = %{version}-%{release}

%description -n %{libname_w}
Dynamic libraries from %{name}-window.

%prep
%setup -q -a1 -n SFML-%{version}
perl -pi -e "s|DESTDIR\)/lib|DESTDIR\)/lib64|" SFML-%{version}/src/SFML/Makefile
perl -pi -e "s|\r\n|\n|g" *.txt
recode l1..u8 *.txt

# fix samples build
perl -pi -e "s|export LDFLAGS  =|export LDFLAGS  = -L%{_libdir} -L../../lib|" \
 samples/Makefile SFML-%{version}/samples/Makefile
perl -pi -e "s|-I/usr/include/qt4|-I/usr/lib/qt4/include|" \
 samples/qt/Makefile SFML-%{version}/samples/qt/Makefile

# fix samples data location
find samples -name "*.cpp" -exec perl -pi -e \
 "s|datas|%{_datadir}/%{name}/samples/bin/datas|g" {} +
find SFML-%{version}/samples -name "*.cpp" -exec perl -pi -e \
 "s|datas|%{_datadir}/%{name}/samples/bin/datas|g" {} +

%build
%ifarch x86_64
cd SFML-%{version}
%endif
%make
#samples
pushd lib
for i in *.so* ; do ln -s $i ${i%.1.5} ; done
popd
pushd samples
%make 
popd
rm -f lib/*.so

%install
rm -rf %{buildroot}
%ifarch x86_64
cd SFML-%{version}
%endif
%makeinstall_std DESTDIR=%{buildroot}%{_prefix}

# install sample source and data
rm -f %{buildroot}%{_datadir}/%{name}/samples/*/*.o
install -d -m 755 %{buildroot}%{_datadir}/%{name}/samples
cp -R ./samples/* %{buildroot}%{_datadir}/%{name}/samples/

# install sample binaries to sfml-sample*
install -d -m 755 %{buildroot}%{_bindir}
for i in %{buildroot}%{_datadir}/%{name}/samples/bin/[!d]* ; do \
 mv $i %{buildroot}%{_bindir}/sfml-sample-`basename $i` ; done

# fix links
pushd %{buildroot}%{_libdir}
for i in *.so ; do rm -f $i ; ln -s $i.* $i ; done
popd

%clean
rm -rf %{buildroot}

%files
%defattr(0644,root,root,0755)
%doc *.txt doc/*
%attr(0755,root,root) %{_bindir}/sfml-sample-*
%{_datadir}/%{name}/samples

%files -n %{develname_a}
%defattr(0644,root,root,0755)
%{_includedir}/SFML/Audio.hpp
%{_includedir}/SFML/Audio
%{_libdir}/libsfml-audio.so

%files -n %{develname_g}
%defattr(0644,root,root,0755)
%{_includedir}/SFML/Graphics.hpp
%{_includedir}/SFML/Graphics
%{_libdir}/libsfml-graphics.so

%files -n %{develname_n}
%defattr(0644,root,root,0755)
%{_includedir}/SFML/Network.hpp
%{_includedir}/SFML/Network
%{_libdir}/libsfml-network.so

%files -n %{develname_s}
%defattr(0644,root,root,0755)
%dir %{_includedir}/SFML
%{_includedir}/SFML/Config.hpp
%{_includedir}/SFML/System.hpp
%{_includedir}/SFML/System
%{_libdir}/libsfml-system.so

%files -n %{develname_w}
%defattr(0644,root,root,0755)
%{_includedir}/SFML/Window.hpp
%{_includedir}/SFML/Window
%{_libdir}/libsfml-window.so

%files -n %{libname_a}
%defattr(0644,root,root,0755)
%{_libdir}/libsfml-audio.so.1.5

%files -n %{libname_g}
%defattr(0644,root,root,0755)
%{_libdir}/libsfml-graphics.so.1.5

%files -n %{libname_n}
%defattr(0644,root,root,0755)
%{_libdir}/libsfml-network.so.1.5

%files -n %{libname_s}
%defattr(0644,root,root,0755)
%{_libdir}/libsfml-system.so.1.5

%files -n %{libname_w}
%defattr(0644,root,root,0755)
%{_libdir}/libsfml-window.so.1.5



%changelog
* Fri Mar 05 2010 Shlomi Fish <shlomif@mandriva.org> 1.5-2mdv2010.1
+ Revision: 514783
- Fixed the requires - libsfml-network is needed (thanks to Zombie)

* Tue Sep 15 2009 Guillaume Bedot <littletux@mandriva.org> 1.5-1mdv2010.0
+ Revision: 443012
- First package of SFML for Mandriva
- create sfml