%ifnos darwin %define __rootgrp root %else %define __rootgrp wheel %endif Summary: The LAPACK libraries for numerical linear algebra. Name: lapack Version: 3.0 Release: 26b License: Freely distributable Group: Development/Libraries URL: http://www.netlib.org/lapack/ # If you want the source, look for the files with the .gz prefix Source0: http://www.netlib.org/lapack/lapack.tar.bz2 Source1: http://www.netlib.org/lapack/manpages.tar.bz2 Source2: Makefile.blas Source3: Makefile.lapack Source4: http://www.netlib.org/lapack/lapackqref.ps Source5: http://www.netlib.org/blas/blasqr.ps Patch0: lapack-20010525.patch Patch1: lapack-macosx-makefile.patch Obsoletes: lapack-man %ifnos darwin BuildRequires: gcc-g77, libf2c %else BuildRequires: gcc %endif BuildRoot: %{_tmppath}/lapack-%{version}-root %description LAPACK (Linear Algebra PACKage) is a standard library for numerical linear algebra. LAPACK provides routines for solving systems of simultaneous linear equations, least-squares solutions of linear systems of equations, eigenvalue problems, and singular value problems. Associated matrix factorizations (LU, Cholesky, QR, SVD, Schur, and generalized Schur) and related computations (i.e., reordering of Schur factorizations and estimating condition numbers) are also included. LAPACK can handle dense and banded matrices, but not general sparse matrices. Similar functionality is provided for real and complex matrices in both single and double precision. LAPACK is coded in Fortran77 and built with gcc. %package -n blas Summary: The BLAS (Basic Linear Algebra Subprograms) library. Group: Development/Libraries Obsoletes: lapack-blas blas-man %description -n blas BLAS (Basic Linear Algebra Subprograms) is a standard library which provides a number of basic algorithms for numerical algebra. Man pages for blas are available in the blas-man package. %prep %setup -q -n LAPACK %setup -q -D -T -a 1 -n LAPACK %patch0 -p1 cp -f $RPM_SOURCE_DIR/Makefile.blas BLAS/SRC/Makefile cp -f $RPM_SOURCE_DIR/Makefile.lapack SRC/Makefile %patch1 -p1 -b .makefile #Empty rm -f man/manl/zbcon.l %build pushd BLAS/SRC %ifnos darwin RPM_OPT_O_FLAGS=$(echo $RPM_OPT_FLAGS | sed 's|-O2|-O0|') FFLAGS="$RPM_OPT_O_FLAGS" make dcabs1.o %endif FFLAGS="$RPM_OPT_FLAGS" make static %ifnos darwin make clean FFLAGS="$RPM_OPT_O_FLAGS -fPIC" make dcabs1.o FFLAGS="$RPM_OPT_FLAGS -fPIC" make shared %else FFLAGS="$RPM_OPT_FLAGS" make shared %endif popd pushd SRC # Some files don't like -O2, but -Os is fine %ifnos darwin RPM_OPT_SIZE_FLAGS=$(echo $RPM_OPT_FLAGS | sed 's|-O2|-Os|') FFLAGS="$RPM_OPT_SIZE_FLAGS" make dlamch.o slamch.o dgeev.o %endif FFLAGS="$RPM_OPT_FLAGS" make static %ifnos darwin make clean FFLAGS="$RPM_OPT_SIZE_FLAGS -fPIC" make dlamch.o slamch.o dgeev.o FFLAGS="$RPM_OPT_FLAGS -fPIC" make shared %else FFLAGS="$RPM_OPT_FLAGS" make shared %endif popd cp %{SOURCE4} lapackqref.ps cp %{SOURCE5} blasqr.ps %install rm -fr %{buildroot} mkdir -p %{buildroot}%{_libdir} mkdir -p %{buildroot}%{_mandir}/manl pushd BLAS/SRC make DESTDIR=%{buildroot} install install.so cd ../../SRC make DESTDIR=%{buildroot} install install.so popd %ifnos darwin find blas/man/manl -type f -printf "%{_mandir}/manl/%f*\n" > blasmans %else find blas/man/manl -type f | sed -e 's;.*/\([^/]*\);\1*;' | sed -e "s;^;%{_mandir}/manl/;" > blasmans %endif # These are also in the BLAS package rm -f man/manl/lsame.l* rm -f man/manl/xerbla.l* %ifnos darwin find man/manl -type f -printf "%{_mandir}/manl/%f*\n" > lapackmans %else find man/manl -type f | sed -e 's;.*/\([^/]*\);\1*;' | sed -e "s;^;%{_mandir}/manl/;" > lapackmans %endif cp -f blas/man/manl/* %{buildroot}%{_mandir}/manl cp -f man/manl/* %{buildroot}%{_mandir}/manl %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %post -n blas -p /sbin/ldconfig %postun -n blas -p /sbin/ldconfig %clean rm -fr %{buildroot} %files -f lapackmans %defattr(-,root,%{__rootgrp}) %doc README lapackqref.ps %{_libdir}/liblapack.* %files -n blas -f blasmans %defattr(-,root,%{__rootgrp}) %doc blasqr.ps %{_libdir}/libblas.* %changelog * Fri Nov 26 2005 Keisuke Fujii 3.0-26b - 2nd build on MacOS X Release 10.4 with libgfortran.1.dylib * Thu May 26 2005 Keisuke Fujii 3.0-26a - 1st build on MacOS X Release 10.4 * Wed May 04 2005 Ivana Varekova 3.0-26.fc3 - fix bugs #138791, #143420 * Thu Nov 11 2004 Ivana Varekova 3.0-25.3 - fix build problem bug #138447 * Tue Jun 15 2004 Elliot Lee - rebuilt * Tue Mar 02 2004 Elliot Lee - rebuilt * Fri Feb 13 2004 Elliot Lee - rebuilt * Wed Dec 31 2003 Jeff Johnson 3.0-23 - link -lg2c explicitly into liblapack and libblas (#109079). * Wed Aug 20 2003 Jeremy Katz 3.0-22 - nuke -man subpackages (#97506) * Wed Jun 04 2003 Elliot Lee - rebuilt * Wed Jan 22 2003 Tim Powers - rebuilt * Sun Nov 10 2002 Jeff Johnson 3.0-19 - rebuild with x86_64. * Thu Jul 18 2002 Trond Eivind Glomsrød 3.0-18 - Remove an empty man page (#63569) * Fri Jun 21 2002 Tim Powers - automated rebuild * Thu May 23 2002 Tim Powers - automated rebuild * Wed May 1 2002 Trond Eivind Glomsrød 3.0-15 - Rebuild * Thu Feb 21 2002 Trond Eivind Glomsrød 3.0-14 - Rebuild * Wed Jan 09 2002 Tim Powers - automated rebuild * Mon Aug 13 2001 Trond Eivind Glomsrød 3.0-12 - The man-pages for xerbla and lsame were in blas-man and lapack-man (#51605) * Fri Jun 8 2001 Trond Eivind Glomsrød - Reenable optimization for IA64 * Fri May 25 2001 Trond Eivind Glomsrød - Add all patches from the LAPACK site as of 2001-05-25 - Use this workaround for IA64 instead - Remove SPARC workaround - Don't exclude IA64 * Thu Dec 07 2000 Trond Eivind Glomsrød - rebuild for main distribution * Mon Nov 20 2000 Trond Eivind Glomsrød - add the LAPACK Quick Reference Guide to the docs - add the BLAS Quick Reference Guide to the docs * Tue Aug 01 2000 Trond Eivind Glomsrød - fix lack of ldconfig in postuninstall script * Mon Jul 24 2000 Prospector - rebuilt * Mon Jul 10 2000 Trond Eivind Glomsrød - updated with the latest updates (new tarfile..) from netlib * Thu Jun 15 2000 Trond Eivind Glomsrød - use %%{_mandir} - added some flags to work around SPARC compiler bug * Wed Jan 19 2000 Tim Powers - bzipped sources to conserve space * Tue Jan 4 2000 Jeff Johnson - build for PowerTools 6.2. * Sat Dec 25 1999 Joachim Frieben - updated to version v3.0 + update as of Tue Nov 30 1999 * Sat Oct 23 1999 Joachim Frieben - updated Red Hat makefiles to v3.0 * Mon Aug 2 1999 Tim Powers - updated to v3.0 - built for 6.1 * Mon Apr 12 1999 Michael Maher - built package for 6.0 * Sat Oct 24 1998 Jeff Johnson - new description/summary text. * Fri Jul 17 1998 Jeff Johnson - repackage for powertools. * Sun Feb 15 1998 Trond Eivind Glomsrød [lapack-2.0-9] - No code updates, just built with a customized rpm - this should make dependencies right. * Sat Feb 07 1998 Trond Eivind Glomsrød [lapack-2.0-8] - Total rewrite of the spec file - Added my own makefiles - libs should build better, static libs should work (and be faster than they would be if they had worked earlier ;) - No patch necessary anymore. - Renamed lapack-blas and lapack-blas-man to blas and blas-man. "Obsoletes:" tag added. (oh - and as always: Dedicated to the girl I love, Eline Skirnisdottir) * Sat Dec 06 1997 Trond Eivind Glomsrød [lapack-2.0-7] - added a dependency to glibc, so people don't try with libc5 * Thu Nov 20 1997 Trond Eivind Glomsrød [lapack-2.0-6] - removed etime.c - compiled with egcs, and for glibc 2.0 * Sun Oct 12 1997 Trond Eivind Glomsrød [lapack-2.0-5] - added a changelog - cleaned up building of shared libs - now uses a BuildRoot - cleaned up the specfile