rpms/atlas/F-12 atlas.spec,1.31,1.32

Deji Akingunola deji at fedoraproject.org
Wed Jul 28 02:45:54 UTC 2010


Author: deji

Update of /cvs/pkgs/rpms/atlas/F-12
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv18778

Modified Files:
	atlas.spec 
Log Message:
* Tue Jul 27 2010 Deji Akingunola <dakingun at gmail.com> - 3.8.3-14
- Create a subpackage for SSE2 on x86_64
- Remove static libraries.
- Fix typo in SSE3 subpackage's summary.



Index: atlas.spec
===================================================================
RCS file: /cvs/pkgs/rpms/atlas/F-12/atlas.spec,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -p -r1.31 -r1.32
--- atlas.spec	4 Feb 2010 00:57:56 -0000	1.31
+++ atlas.spec	28 Jul 2010 02:45:51 -0000	1.32
@@ -2,7 +2,7 @@
 
 Name:           atlas
 Version:        3.8.3
-Release:        13%{?dist}
+Release:        14%{?dist}
 Summary:        Automatically Tuned Linear Algebra Software
 
 Group:          System Environment/Libraries
@@ -18,7 +18,7 @@ Patch0:		atlas-fedora_shared.patch
 Patch1:         atlas-sparc-linux.patch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
-BuildRequires:  gcc-gfortran lapack-devel
+BuildRequires:  gcc-gfortran lapack-static
 
 %description
 The ATLAS (Automatically Tuned Linear Algebra Software) project is an
@@ -41,11 +41,11 @@ Summary:        Development libraries fo
 Group:          Development/Libraries
 Requires:       %{name} = %{version}-%{release}
 Obsoletes:	%name-header <= %version-%release
-Requires(posttans):	chkconfig
+Requires(posttrans):	chkconfig
 Requires(preun):	chkconfig
 
 %description devel
-This package contains the static libraries and headers for development
+This package contains the libraries and headers for development
 with ATLAS (Automatically Tuned Linear Algebra Software).
 
 %define types base
@@ -53,6 +53,34 @@ with ATLAS (Automatically Tuned Linear A
 %if "%{?enable_native_atlas}" == "0"
 ############## Subpackages for architecture extensions #################
 #
+%ifarch x86_64
+%define types base sse2
+
+%package sse2
+Summary:        ATLAS libraries for SSE2 extensions
+Group:          System Environment/Libraries
+
+%description sse2
+This package contains the ATLAS (Automatically Tuned Linear Algebra
+Software) libraries compiled with optimizations for the SSE2
+extensions to the x86_64 architecture. The base ATLAS builds in Fedora for the
+x86_64 architecture are made fro the SSE3 extensions.
+
+%package sse2-devel
+Summary:        Development libraries for ATLAS with SSE2 extensions
+Group:          Development/Libraries
+Requires:       %{name}-sse2 = %{version}-%{release}
+Obsoletes:	%name-header <= %version-%release
+Requires(posttans):	chkconfig
+Requires(preun):	chkconfig
+
+%description sse2-devel
+This package contains shared and static versions of the ATLAS
+(Automatically Tuned Linear Algebra Software) libraries compiled with
+optimizations for the SSE2 extensions to the x86_64 architecture.
+
+%endif
+
 %ifarch %{ix86}
 %define types base 3dnow sse sse2 sse3
 
@@ -71,11 +99,11 @@ Summary:        Development libraries fo
 Group:          Development/Libraries
 Requires:       %{name}-3dnow = %{version}-%{release}
 Obsoletes:	%name-header <= %version-%release
-Requires(posttans):	chkconfig
+Requires(posttrans):	chkconfig
 Requires(preun):	chkconfig
 
 %description 3dnow-devel
-This package contains headers and shared and static versions of the ATLAS
+This package contains headers and shared versions of the ATLAS
 (Automatically Tuned Linear Algebra Software) libraries compiled with
 optimizations for the 3DNow extensions to the ix86 architecture.
 
@@ -94,11 +122,11 @@ Summary:        Development libraries fo
 Group:          Development/Libraries
 Requires:       %{name}-sse = %{version}-%{release}
 Obsoletes:	%name-header <= %version-%release
-Requires(posttans):	chkconfig
+Requires(posttrans):	chkconfig
 Requires(preun):	chkconfig
 
 %description sse-devel
-This package contains headers and shared and static versions of the ATLAS
+This package contains headers and shared versions of the ATLAS
 (Automatically Tuned Linear Algebra Software) libraries compiled with
 optimizations for the SSE(1) extensions to the ix86 architecture.
 
@@ -107,8 +135,8 @@ Summary:        ATLAS libraries for SSE2
 Group:          System Environment/Libraries
 
 %description sse2
-This package contains the ATLAS (Automatically Tuned Linear Algebra
-Software) libraries compiled with optimizations for the SSE2
+This package contains ATLAS (Automatically Tuned Linear Algebra Software)
+shared libraries compiled with optimizations for the SSE2
 extensions to the ix86 architecture. Fedora also produces ATLAS build with
 SSE(1) and SSE3 extensions.
 
@@ -117,16 +145,16 @@ Summary:        Development libraries fo
 Group:          Development/Libraries
 Requires:       %{name}-sse2 = %{version}-%{release}
 Obsoletes:	%name-header <= %version-%release
-Requires(posttans):	chkconfig
+Requires(posttrans):	chkconfig
 Requires(preun):	chkconfig
 
 %description sse2-devel
-This package contains shared and static versions of the ATLAS
-(Automatically Tuned Linear Algebra Software) libraries compiled with
-optimizations for the SSE2 extensions to the ix86 architecture.
+This package contains ATLAS (Automatically Tuned Linear Algebra Software)
+shared libraries compiled with optimizations for the SSE2 extensions to the
+ix86 architecture.
 
 %package sse3
-Summary:        ATLAS libraries for 3DNow extensions
+Summary:        ATLAS libraries for SSE3 extensions
 Group:          System Environment/Libraries
 
 %description sse3
@@ -135,17 +163,16 @@ Software) libraries compiled with optimi
 Fedora also produces ATLAS build with SSE(1) and SSE2 extensions.
 
 %package sse3-devel
-Summary:        Development libraries for ATLAS with 3DNow extensions
+Summary:        Development libraries for ATLAS with SSE3 extensions
 Group:          Development/Libraries
 Requires:       %{name}-sse3 = %{version}-%{release}
 Obsoletes:	%name-header <= %version-%release
-Requires(posttans):	chkconfig
+Requires(posttrans):	chkconfig
 Requires(preun):	chkconfig
 
 %description sse3-devel
-This package contains shared and static versions of the ATLAS
-(Automatically Tuned Linear Algebra Software) libraries compiled with
-optimizations for the sse3 extensions to the ix86 architecture.
+This package contains ATLAS (Automatically Tuned Linear Algebra Software)
+shared libraries compiled with optimizations for the SSE3 extensions to the ix86 architecture.
 
 %endif
 %endif
@@ -153,7 +180,7 @@ optimizations for the sse3 extensions to
 %prep
 %setup -q -n ATLAS
 %patch0 -p0 -b .shared
-%patch1 -p1 -b .sparc
+#%patch1 -p1 -b .sparc
 cp %{SOURCE1} CONFIG/ARCHS/
 cp %{SOURCE2} CONFIG/ARCHS/
 cp %{SOURCE3} doc
@@ -174,7 +201,17 @@ for type in %{types}; do
 	--prefix=%{buildroot}%{_prefix}			\
 	--incdir=%{buildroot}%{_includedir}		\
 	--libdir=%{buildroot}%{_libdir}/${libname}	\
-	--with-netlib-lapack=%{_libdir}/liblapack_pic.a
+	--with-netlib-lapack=%{_libdir}/liblapack_pic.a	\
+	-Si cputhrchk 0
+
+%ifarch x86_64
+	if [ "$type" = "sse2" ]; then
+		sed -i 's#ARCH =.*#ARCH = HAMMER64SSE2#' Make.inc
+		sed -i 's#-DATL_SSE3##' Make.inc 
+		sed -i 's#-msse3#-msse2#' Make.inc 
+		%define pr_sse2 %(echo $((%{__isa_bits}-1)))
+	fi
+%endif
 
 %ifarch %{ix86}
 	if [ "$type" = "base" ]; then
@@ -216,8 +253,10 @@ for type in %{types}; do
         mv %{buildroot}%{_includedir}/atlas %{buildroot}%{_includedir}/atlas-%{_arch}-${type}
 	if [ "$type" = "base" ]; then
 		cp -pr lib/*.so* %{buildroot}%{_libdir}/atlas/
+		rm -f %{buildroot}%{_libdir}/atlas/*.a
 	else
 		cp -pr lib/*.so* %{buildroot}%{_libdir}/atlas-${type}/
+		rm -f %{buildroot}%{_libdir}/atlas-${type}/*.a
 	fi
 	popd
 
@@ -227,7 +266,7 @@ for type in %{types}; do
 		> %{buildroot}/etc/ld.so.conf.d/atlas-%{_arch}.conf
 	else
 		echo "%{_libdir}/atlas-${type}"	\
-		> %{buildroot}/etc/ld.so.conf.d/atlas-${type}.conf
+		> %{buildroot}/etc/ld.so.conf.d/atlas-%{_arch}-${type}.conf
 	fi
 done
 mkdir -p %{buildroot}%{_includedir}/atlas
@@ -251,8 +290,27 @@ if [ $1 -ge 0 ] ; then
 /usr/sbin/alternatives --remove atlas-inc %{_includedir}/atlas-%{_arch}-base
 fi
 
-%ifarch %{ix86} && %if "%{?enable_native_atlas}" == "0"
+%if "%{?enable_native_atlas}" == "0"
+%ifarch x86_64
 
+%post -n atlas-sse2 -p /sbin/ldconfig
+
+%postun -n atlas-sse2 -p /sbin/ldconfig
+
+%posttrans sse2-devel
+if [ $1 -eq 0 ] ; then
+/usr/sbin/alternatives	--install %{_includedir}/atlas atlas-inc 	\
+		%{_includedir}/atlas-%{_arch}-sse2  %{pr_sse2}
+fi
+
+%preun sse2-devel
+if [ $1 -ge 0 ] ; then
+/usr/sbin/alternatives --remove atlas-inc %{_includedir}/atlas-%{_arch}-sse2
+fi
+
+%endif
+
+%ifarch %{ix86}
 %post -n atlas-3dnow -p /sbin/ldconfig
 
 %postun -n atlas-3dnow -p /sbin/ldconfig
@@ -314,6 +372,7 @@ if [ $1 -ge 0 ] ; then
 fi
 
 %endif
+%endif
 
 %files
 %defattr(-,root,root,-)
@@ -326,25 +385,44 @@ fi
 %defattr(-,root,root,-)
 %doc doc
 %{_libdir}/atlas/*.so
-%{_libdir}/atlas/*.a
 %{_includedir}/atlas-%{_arch}-base/
 %{_includedir}/*.h
 %ghost %{_includedir}/atlas
 
-%ifarch %{ix86} && %if "%{?enable_native_atlas}" == "0"
+%if "%{?enable_native_atlas}" == "0"
+
+%ifarch x86_64
+
+%files sse2
+%defattr(-,root,root,-)
+%doc doc/README.Fedora
+%dir %{_libdir}/atlas-sse2
+%{_libdir}/atlas-sse2/*.so.*
+%config(noreplace) /etc/ld.so.conf.d/atlas-%{_arch}-sse2.conf
+
+%files sse2-devel
+%defattr(-,root,root,-)
+%doc doc
+%{_libdir}/atlas-sse2/*.so
+%{_includedir}/atlas-%{_arch}-sse2/
+%{_includedir}/*.h
+%ghost %{_includedir}/atlas
+
+%endif
+
+%ifarch %{ix86}
 
 %files 3dnow
 %defattr(-,root,root,-)
 %doc doc/README.Fedora
 %dir %{_libdir}/atlas-3dnow
 %{_libdir}/atlas-3dnow/*.so.*
-%config(noreplace) /etc/ld.so.conf.d/atlas-3dnow.conf
+%config(noreplace) /etc/ld.so.conf.d/atlas-%{_arch}-3dnow.conf
 
 %files 3dnow-devel
 %defattr(-,root,root,-)
 %doc doc
 %{_libdir}/atlas-3dnow/*.so
-%{_libdir}/atlas-3dnow/*.a
 %{_includedir}/atlas-%{_arch}-3dnow/
 %{_includedir}/*.h
 %ghost %{_includedir}/atlas
@@ -354,13 +432,12 @@ fi
 %doc doc/README.Fedora
 %dir %{_libdir}/atlas-sse
 %{_libdir}/atlas-sse/*.so.*
-%config(noreplace) /etc/ld.so.conf.d/atlas-sse.conf
+%config(noreplace) /etc/ld.so.conf.d/atlas-%{_arch}-sse.conf
 
 %files sse-devel
 %defattr(-,root,root,-)
 %doc doc
 %{_libdir}/atlas-sse/*.so
-%{_libdir}/atlas-sse/*.a
 %{_includedir}/atlas-%{_arch}-sse/
 %{_includedir}/*.h
 %ghost %{_includedir}/atlas
@@ -370,13 +447,12 @@ fi
 %doc doc/README.Fedora
 %dir %{_libdir}/atlas-sse2
 %{_libdir}/atlas-sse2/*.so.*
-%config(noreplace) /etc/ld.so.conf.d/atlas-sse2.conf
+%config(noreplace) /etc/ld.so.conf.d/atlas-%{_arch}-sse2.conf
 
 %files sse2-devel
 %defattr(-,root,root,-)
 %doc doc
 %{_libdir}/atlas-sse2/*.so
-%{_libdir}/atlas-sse2/*.a
 %{_includedir}/atlas-%{_arch}-sse2/
 %{_includedir}/*.h
 %ghost %{_includedir}/atlas
@@ -386,20 +462,25 @@ fi
 %doc doc/README.Fedora
 %dir %{_libdir}/atlas-sse3
 %{_libdir}/atlas-sse3/*.so.*
-%config(noreplace) /etc/ld.so.conf.d/atlas-sse3.conf
+%config(noreplace) /etc/ld.so.conf.d/atlas-%{_arch}-sse3.conf
 
 %files sse3-devel
 %defattr(-,root,root,-)
 %doc doc
 %{_libdir}/atlas-sse3/*.so
-%{_libdir}/atlas-sse3/*.a
 %{_includedir}/atlas-%{_arch}-sse3/
 %{_includedir}/*.h
 %ghost %{_includedir}/atlas
 
 %endif
+%endif
 
 %changelog
+* Tue Jul 27 2010 Deji Akingunola <dakingun at gmail.com> - 3.8.3-14
+- Create a subpackage for SSE2 on x86_64
+- Remove static libraries.
+- Fix typo in SSE3 subpackage's summary.
+
 * Tue Feb 02 2010 Dennis Gilmore <dennis at ausil.us> - 3.8.3-13
 - fix sparc to build 
 



More information about the scm-commits mailing list