packages: ClanLib/ClanLib.spec - separated SWRender libs - don't use sse2 i...

qboosh qboosh at pld-linux.org
Sat Mar 26 14:11:56 CET 2011


Author: qboosh                       Date: Sat Mar 26 13:11:56 2011 GMT
Module: packages                      Tag: HEAD
---- Log message:
- separated SWRender libs
- don't use sse2 instructions on CPUs not supporting it (pentium4 or x86_64)
- SWRender code is built only when using sse2 instructions

---- Files affected:
packages/ClanLib:
   ClanLib.spec (1.128 -> 1.129) 

---- Diffs:

================================================================
Index: packages/ClanLib/ClanLib.spec
diff -u packages/ClanLib/ClanLib.spec:1.128 packages/ClanLib/ClanLib.spec:1.129
--- packages/ClanLib/ClanLib.spec:1.128	Wed Mar 23 11:53:50 2011
+++ packages/ClanLib/ClanLib.spec	Sat Mar 26 14:11:51 2011
@@ -2,6 +2,13 @@
 #
 # TODO: plenty of undefined references
 #
+# Conditional build:
+%bcond_with	sse2	# use SSE2 instructions
+#
+%ifarch pentium4 %{x8664}
+%define	with_sse2	1
+%endif
+#
 %define	cvmajor	2.2
 Summary:	ClanLib, the platform independent game SDK
 Summary(pl.UTF-8):	ClanLib, niezależny od platformy SDK do gier
@@ -25,7 +32,7 @@
 BuildRequires:	freetype-devel
 BuildRequires:	libjpeg-devel
 BuildRequires:	libmikmod-devel
-BuildRequires:	libpng-devel >= 1.%{cvmajor}
+BuildRequires:	libpng-devel >= 1.2
 BuildRequires:	libstdc++-devel
 BuildRequires:	libtool >= 2:1.4d-3
 BuildRequires:	libvorbis-devel >= 1:1.0
@@ -36,6 +43,7 @@
 BuildRequires:	sqlite3-devel
 BuildRequires:	xorg-lib-libXi-devel
 BuildRequires:	xorg-lib-libXxf86vm-devel
+%{?with_sse2:Requires:	cpuinfo(sse2)}
 Obsoletes:	ClanLib-SDL
 Obsoletes:	ClanLib-TTF
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
@@ -98,17 +106,6 @@
 %description static -l pl.UTF-8
 Ten pakiet zawiera statyczne wersje bibliotek ClanLib.
 
-%package doc
-Summary:	ClanLib reference documentation for programmers
-Summary(pl.UTF-8):	Dokumentacja programisty do biblioteki ClanLib
-Group:		Documentation
-
-%description doc
-ClanLib reference documentation for programmers.
-
-%description doc -l pl.UTF-8
-Dokumentacja programisty do biblioteki ClanLib
-
 %package OpenGL
 Summary:	OpenGL ClanLib library
 Summary(pl.UTF-8):	Biblioteka OpenGL dla ClanLiba
@@ -227,6 +224,46 @@
 %description MikMod-static -l pl.UTF-8
 Statyczna biblioteka MikMod dla ClanLiba.
 
+%package SWRender
+Summary:	ClanLib SWRender (Software Rendering) library
+Summary(pl.UTF-8):	Biblioteka ClanLib SWRender (Software Rendering)
+Group:		Libraries
+Requires:	%{name} = %{version}-%{release}
+
+%description SWRender
+ClanLib SWRender software rendering library, utilizing SSE2
+instructions of x86 processors.
+
+%description SWRender -l pl.UTF-8
+Biblioteka programowego renderowania ClanLib SWRender, wykorzystująca
+instrukcje SSE2 procesorów x86.
+
+%package SWRender-devel
+Summary:	Header files for ClanLib SWRender library
+Summary(pl.UTF-8):	Pliki nagłówkowe biblioteki ClanLib SWRender
+Group:		Development/Libraries
+Requires:	%{name}-SWRender = %{version}-%{release}
+Requires:	%{name}-devel = %{version}-%{release}
+
+%description SWRender-devel
+Header files for ClanLib SWRender software rendering library.
+
+%description SWRender-devel -l pl.UTF_8
+Pliki nagłówkowe biblioteki programowego renderowania ClanLib
+SWRender.
+
+%package SWRender-static
+Summary:	Static ClanLib SWRender library
+Summary(pl.UTF-8):	Statyczna biblioteka ClanLib SWRender
+Group:		Development/Libraries
+Requires:	%{name}-SWRender-devel = %{version}-%{release}
+
+%description SWRender-static
+Static ClanLib SWRender library.
+
+%description SWRender-static -l pl.UTF-8
+Statyczna biblioteka ClanLib SWRender.
+
 %package Vorbis
 Summary:	Vorbis ClanLib library
 Summary(pl.UTF-8):	Biblioteka Vorbis dla ClanLiba
@@ -265,25 +302,32 @@
 %description Vorbis-static -l pl.UTF-8
 Statyczna biblioteka Vorbis dla ClanLiba.
 
+%package doc
+Summary:	ClanLib reference documentation for programmers
+Summary(pl.UTF-8):	Dokumentacja programisty do biblioteki ClanLib
+Group:		Documentation
+
+%description doc
+ClanLib reference documentation for programmers.
+
+%description doc -l pl.UTF-8
+Dokumentacja programisty do biblioteki ClanLib
+
 %prep
 %setup -q
 %patch0 -p1
 
-rm -rf autom4te.cache
-echo "dnl" >> acinclude.m4
+%{__rm} -r autom4te.cache
 
 %build
-# note: rtti is needed --- ClanLib uses exceptions!
 %{__libtoolize}
 %{__aclocal}
 %{__automake}
 %{__autoconf}
 %configure \
-	--enable-static \
-	--enable-shared \
+	%{!?with_sse2:--disable-sse2} \
 	--enable-docs \
 	--%{?debug:en}%{!?debug:dis}able-debug
-# directfb disabled now
 
 export PKG_CONFIG_PATH=$(pwd)/Setup/pkgconfig
 %{__make}
@@ -317,6 +361,9 @@
 %post	MikMod -p /sbin/ldconfig
 %postun	MikMod -p /sbin/ldconfig
 
+%post	SWRender -p /sbin/ldconfig
+%postun	SWRender -p /sbin/ldconfig
+
 %post	Vorbis -p /sbin/ldconfig
 %postun	Vorbis -p /sbin/ldconfig
 
@@ -339,8 +386,6 @@
 %attr(755,root,root) %ghost %{_libdir}/libclan22Network-%{cvmajor}.so.1
 %attr(755,root,root) %{_libdir}/libclan22RegExp-%{cvmajor}.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libclan22RegExp-%{cvmajor}.so.1
-%attr(755,root,root) %{_libdir}/libclan22SWRender-%{cvmajor}.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libclan22SWRender-%{cvmajor}.so.1
 %attr(755,root,root) %{_libdir}/libclan22Sound-%{cvmajor}.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libclan22Sound-%{cvmajor}.so.1
 %attr(755,root,root) %{_libdir}/libclan22Sqlite-%{cvmajor}.so.*.*.*
@@ -356,7 +401,6 @@
 %attr(755,root,root) %{_libdir}/libclan22GUI.so
 %attr(755,root,root) %{_libdir}/libclan22Network.so
 %attr(755,root,root) %{_libdir}/libclan22RegExp.so
-%attr(755,root,root) %{_libdir}/libclan22SWRender.so
 %attr(755,root,root) %{_libdir}/libclan22Sound.so
 %attr(755,root,root) %{_libdir}/libclan22Sqlite.so
 %{_libdir}/libclan22App.la
@@ -367,7 +411,6 @@
 %{_libdir}/libclan22GUI.la
 %{_libdir}/libclan22Network.la
 %{_libdir}/libclan22RegExp.la
-%{_libdir}/libclan22SWRender.la
 %{_libdir}/libclan22Sound.la
 %{_libdir}/libclan22Sqlite.la
 %dir %{_includedir}/ClanLib-%{cvmajor}
@@ -388,13 +431,11 @@
 %{_includedir}/ClanLib-%{cvmajor}/ClanLib/network.h
 %{_includedir}/ClanLib-%{cvmajor}/ClanLib/RegExp
 %{_includedir}/ClanLib-%{cvmajor}/ClanLib/regexp.h
-%{_includedir}/ClanLib-%{cvmajor}/ClanLib/SWRender
-%{_includedir}/ClanLib-%{cvmajor}/ClanLib/swrender.h
 %{_includedir}/ClanLib-%{cvmajor}/ClanLib/Sound
 %{_includedir}/ClanLib-%{cvmajor}/ClanLib/sound.h
 %{_includedir}/ClanLib-%{cvmajor}/ClanLib/Sqlite
 %{_includedir}/ClanLib-%{cvmajor}/ClanLib/sqlite.h
-%{_aclocaldir}/*.m4
+%{_aclocaldir}/clanlib.m4
 %{_pkgconfigdir}/clanApp-%{cvmajor}.pc
 %{_pkgconfigdir}/clanCSSLayout-%{cvmajor}.pc
 %{_pkgconfigdir}/clanCore-%{cvmajor}.pc
@@ -403,14 +444,9 @@
 %{_pkgconfigdir}/clanGUI*-%{cvmajor}.pc
 %{_pkgconfigdir}/clanNetwork-%{cvmajor}.pc
 %{_pkgconfigdir}/clanRegExp-%{cvmajor}.pc
-%{_pkgconfigdir}/clanSWRender-%{cvmajor}.pc
 %{_pkgconfigdir}/clanSound-%{cvmajor}.pc
 %{_pkgconfigdir}/clanSqlite-%{cvmajor}.pc
 
-%files doc
-%defattr(644,root,root,755)
-%{_docdir}/clanlib-*
-
 %files static
 %defattr(644,root,root,755)
 %{_libdir}/libclan22App.a
@@ -421,7 +457,6 @@
 %{_libdir}/libclan22GUI.a
 %{_libdir}/libclan22Network.a
 %{_libdir}/libclan22RegExp.a
-%{_libdir}/libclan22SWRender.a
 %{_libdir}/libclan22Sound.a
 %{_libdir}/libclan22Sqlite.a
 
@@ -476,6 +511,25 @@
 %defattr(644,root,root,755)
 %{_libdir}/libclan22MikMod.a
 
+%if %{with sse2}
+%files SWRender
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libclan22SWRender-%{cvmajor}.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libclan22SWRender-%{cvmajor}.so.1
+
+%files SWRender-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libclan22SWRender.so
+%{_libdir}/libclan22SWRender.la
+%{_includedir}/ClanLib-%{cvmajor}/ClanLib/SWRender
+%{_includedir}/ClanLib-%{cvmajor}/ClanLib/swrender.h
+%{_pkgconfigdir}/clanSWRender-%{cvmajor}.pc
+
+%files SWRender-static
+%defattr(644,root,root,755)
+%{_libdir}/libclan22SWRender.a
+%endif
+
 %files Vorbis
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libclan22Vorbis-%{cvmajor}.so.*.*.*
@@ -493,12 +547,21 @@
 %defattr(644,root,root,755)
 %{_libdir}/libclan22Vorbis.a
 
+%files doc
+%defattr(644,root,root,755)
+%{_docdir}/clanlib-%{cvmajor}
+
 %define date	%(echo `LC_ALL="C" date +"%a %b %d %Y"`)
 %changelog
 * %{date} PLD Team <feedback at pld-linux.org>
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.129  2011/03/26 13:11:51  qboosh
+- separated SWRender libs
+- don't use sse2 instructions on CPUs not supporting it (pentium4 or x86_64)
+- SWRender code is built only when using sse2 instructions
+
 Revision 1.128  2011/03/23 10:53:50  lisu
 - up to 2.2.7
 
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/ClanLib/ClanLib.spec?r1=1.128&r2=1.129&f=u



More information about the pld-cvs-commit mailing list