From b314729414716494b5663d91dc9d6f48224d9e5a Mon Sep 17 00:00:00 2001 From: Jakub Bogusz Date: Wed, 24 May 2017 21:37:54 +0200 Subject: [PATCH] - updated to 3.7.0 - updated automake_support,blas-nan patches - soname change: use upstream version --- blas-nan.patch | 207 ------------------------- lapack-automake_support.patch | 283 ++++++++++++++++++++-------------- lapack.spec | 69 +++++---- 3 files changed, 206 insertions(+), 353 deletions(-) diff --git a/blas-nan.patch b/blas-nan.patch index 2eb9c9d..8824c34 100644 --- a/blas-nan.patch +++ b/blas-nan.patch @@ -1,132 +1,5 @@ Disable optimizations based on (0*x = 0) assumption; they make the code non IEC-60559/IEEE-754 compliant wrt. NaN (0*x=0 _unless_ x=NaN) ---- lapack-3.2.2/BLAS/SRC/dgbmv.f.orig 2009-01-02 22:57:02.000000000 +0100 -+++ lapack-3.2.2/BLAS/SRC/dgbmv.f 2010-10-19 09:18:34.583741043 +0200 -@@ -239,18 +239,18 @@ - JX = KX - IF (INCY.EQ.1) THEN - DO 60 J = 1,N -- IF (X(JX).NE.ZERO) THEN -+c IF (X(JX).NE.ZERO) THEN - TEMP = ALPHA*X(JX) - K = KUP1 - J - DO 50 I = MAX(1,J-KU),MIN(M,J+KL) - Y(I) = Y(I) + TEMP*A(K+I,J) - 50 CONTINUE -- END IF -+c END IF - JX = JX + INCX - 60 CONTINUE - ELSE - DO 80 J = 1,N -- IF (X(JX).NE.ZERO) THEN -+c IF (X(JX).NE.ZERO) THEN - TEMP = ALPHA*X(JX) - IY = KY - K = KUP1 - J -@@ -258,7 +258,7 @@ - Y(IY) = Y(IY) + TEMP*A(K+I,J) - IY = IY + INCY - 70 CONTINUE -- END IF -+c END IF - JX = JX + INCX - IF (J.GT.KU) KY = KY + INCY - 80 CONTINUE ---- lapack-3.2.2/BLAS/SRC/dgemm.f.orig 2009-01-02 22:57:02.000000000 +0100 -+++ lapack-3.2.2/BLAS/SRC/dgemm.f 2010-10-19 09:21:00.999739367 +0200 -@@ -239,12 +239,12 @@ - 60 CONTINUE - END IF - DO 80 L = 1,K -- IF (B(L,J).NE.ZERO) THEN -+c IF (B(L,J).NE.ZERO) THEN - TEMP = ALPHA*B(L,J) - DO 70 I = 1,M - C(I,J) = C(I,J) + TEMP*A(I,L) - 70 CONTINUE -- END IF -+c END IF - 80 CONTINUE - 90 CONTINUE - ELSE -@@ -281,12 +281,12 @@ - 140 CONTINUE - END IF - DO 160 L = 1,K -- IF (B(J,L).NE.ZERO) THEN -+c IF (B(J,L).NE.ZERO) THEN - TEMP = ALPHA*B(J,L) - DO 150 I = 1,M - C(I,J) = C(I,J) + TEMP*A(I,L) - 150 CONTINUE -- END IF -+c END IF - 160 CONTINUE - 170 CONTINUE - ELSE ---- lapack-3.2.2/BLAS/SRC/dgemv.f.orig 2009-01-02 22:57:02.000000000 +0100 -+++ lapack-3.2.2/BLAS/SRC/dgemv.f 2010-10-19 09:21:52.767734339 +0200 -@@ -208,24 +208,24 @@ - JX = KX - IF (INCY.EQ.1) THEN - DO 60 J = 1,N -- IF (X(JX).NE.ZERO) THEN -+c IF (X(JX).NE.ZERO) THEN - TEMP = ALPHA*X(JX) - DO 50 I = 1,M - Y(I) = Y(I) + TEMP*A(I,J) - 50 CONTINUE -- END IF -+c END IF - JX = JX + INCX - 60 CONTINUE - ELSE - DO 80 J = 1,N -- IF (X(JX).NE.ZERO) THEN -+c IF (X(JX).NE.ZERO) THEN - TEMP = ALPHA*X(JX) - IY = KY - DO 70 I = 1,M - Y(IY) = Y(IY) + TEMP*A(I,J) - IY = IY + INCY - 70 CONTINUE -- END IF -+c END IF - JX = JX + INCX - 80 CONTINUE - END IF ---- lapack-3.2.2/BLAS/SRC/zgemv.f.orig 2009-01-02 22:57:02.000000000 +0100 -+++ lapack-3.2.2/BLAS/SRC/zgemv.f 2010-10-19 09:26:18.235739367 +0200 -@@ -215,24 +215,24 @@ - JX = KX - IF (INCY.EQ.1) THEN - DO 60 J = 1,N -- IF (X(JX).NE.ZERO) THEN -+c IF (X(JX).NE.ZERO) THEN - TEMP = ALPHA*X(JX) - DO 50 I = 1,M - Y(I) = Y(I) + TEMP*A(I,J) - 50 CONTINUE -- END IF -+c END IF - JX = JX + INCX - 60 CONTINUE - ELSE - DO 80 J = 1,N -- IF (X(JX).NE.ZERO) THEN -+c IF (X(JX).NE.ZERO) THEN - TEMP = ALPHA*X(JX) - IY = KY - DO 70 I = 1,M - Y(IY) = Y(IY) + TEMP*A(I,J) - IY = IY + INCY - 70 CONTINUE -- END IF -+c END IF - JX = JX + INCX - 80 CONTINUE - END IF --- lapack-3.2.2/BLAS/SRC/zgerc.f.orig 2009-01-02 22:57:02.000000000 +0100 +++ lapack-3.2.2/BLAS/SRC/zgerc.f 2010-10-19 09:27:26.711744396 +0200 @@ -128,12 +128,12 @@ @@ -586,39 +459,6 @@ they make the code non IEC-60559/IEEE-754 compliant wrt. NaN (0*x=0 _unless_ x=N JX = JX + INCX 80 CONTINUE END IF ---- lapack-3.2.2/BLAS/SRC/zgbmv.f.orig 2009-01-02 22:57:02.000000000 +0100 -+++ lapack-3.2.2/BLAS/SRC/zgbmv.f 2010-10-19 09:40:57.031743558 +0200 -@@ -247,18 +247,18 @@ - JX = KX - IF (INCY.EQ.1) THEN - DO 60 J = 1,N -- IF (X(JX).NE.ZERO) THEN -+c IF (X(JX).NE.ZERO) THEN - TEMP = ALPHA*X(JX) - K = KUP1 - J - DO 50 I = MAX(1,J-KU),MIN(M,J+KL) - Y(I) = Y(I) + TEMP*A(K+I,J) - 50 CONTINUE -- END IF -+c END IF - JX = JX + INCX - 60 CONTINUE - ELSE - DO 80 J = 1,N -- IF (X(JX).NE.ZERO) THEN -+c IF (X(JX).NE.ZERO) THEN - TEMP = ALPHA*X(JX) - IY = KY - K = KUP1 - J -@@ -266,7 +266,7 @@ - Y(IY) = Y(IY) + TEMP*A(K+I,J) - IY = IY + INCY - 70 CONTINUE -- END IF -+c END IF - JX = JX + INCX - IF (J.GT.KU) KY = KY + INCY - 80 CONTINUE --- lapack-3.2.2/BLAS/SRC/zgeru.f.orig 2009-01-02 22:57:02.000000000 +0100 +++ lapack-3.2.2/BLAS/SRC/zgeru.f 2010-10-19 09:41:25.835741043 +0200 @@ -128,12 +128,12 @@ @@ -1247,50 +1087,3 @@ they make the code non IEC-60559/IEEE-754 compliant wrt. NaN (0*x=0 _unless_ x=N JX = JX + INCX KK = KK + (N-J+1) 80 CONTINUE ---- lapack-3.2.2/BLAS/SRC/zgemm.f.orig 2009-01-02 22:57:02.000000000 +0100 -+++ lapack-3.2.2/BLAS/SRC/zgemm.f 2010-10-19 22:58:40.155741882 +0200 -@@ -245,12 +245,12 @@ - 60 CONTINUE - END IF - DO 80 L = 1,K -- IF (B(L,J).NE.ZERO) THEN -+c IF (B(L,J).NE.ZERO) THEN - TEMP = ALPHA*B(L,J) - DO 70 I = 1,M - C(I,J) = C(I,J) + TEMP*A(I,L) - 70 CONTINUE -- END IF -+c END IF - 80 CONTINUE - 90 CONTINUE - ELSE IF (CONJA) THEN -@@ -304,12 +304,12 @@ - 170 CONTINUE - END IF - DO 190 L = 1,K -- IF (B(J,L).NE.ZERO) THEN -+c IF (B(J,L).NE.ZERO) THEN - TEMP = ALPHA*DCONJG(B(J,L)) - DO 180 I = 1,M - C(I,J) = C(I,J) + TEMP*A(I,L) - 180 CONTINUE -- END IF -+c END IF - 190 CONTINUE - 200 CONTINUE - ELSE -@@ -327,12 +327,12 @@ - 220 CONTINUE - END IF - DO 240 L = 1,K -- IF (B(J,L).NE.ZERO) THEN -+c IF (B(J,L).NE.ZERO) THEN - TEMP = ALPHA*B(J,L) - DO 230 I = 1,M - C(I,J) = C(I,J) + TEMP*A(I,L) - 230 CONTINUE -- END IF -+c END IF - 240 CONTINUE - 250 CONTINUE - END IF diff --git a/lapack-automake_support.patch b/lapack-automake_support.patch index 8b5e297..d4ca4c6 100644 --- a/lapack-automake_support.patch +++ b/lapack-automake_support.patch @@ -38,9 +38,9 @@ + dgemm.f dsymm.f dsyrk.f dsyr2k.f dtrmm.f dtrsm.f \ + zgemm.f zsymm.f zsyrk.f zsyr2k.f ztrmm.f ztrsm.f \ + zhemm.f zherk.f zher2k.f ---- lapack-3.4.2.orig/configure.ac 1970-01-01 01:00:00.000000000 +0100 -+++ lapack-3.4.2/configure.ac 2007-08-06 22:04:22.000000000 +0100 -@@ -0,0 +1,19 @@ +--- lapack-3.6.1.orig/configure.ac 1970-01-01 01:00:00.000000000 +0100 ++++ lapack-3.6.1/configure.ac 2007-08-06 22:04:22.000000000 +0100 +@@ -0,0 +1,20 @@ +dnl Process this file with autoconf to produce a configure script. + +dnl very poor automake/autoconf support to @@ -48,9 +48,10 @@ +dnl klakier@pld.org.pl + +AC_INIT -+AM_INIT_AUTOMAKE(lapack, 3.5.0) -+LIBVERSION="8:0:6" ++AM_INIT_AUTOMAKE(lapack, 3.7.0) ++LIBVERSION="10:0:7" +AC_SUBST([LIBVERSION]) ++AC_SUBST([LAPACK_VERSION], [$VERSION]) +AM_CONFIG_HEADER(config.h) + +dnl Checks for programs. @@ -59,24 +60,24 @@ +AC_PROG_F77 +AC_PROG_LIBTOOL + -+AC_OUTPUT([Makefile SRC/Makefile BLAS/Makefile BLAS/SRC/Makefile lapacke/Makefile lapacke/src/Makefile BLAS/blas.pc lapack.pc lapacke/lapacke.pc]) ++AC_OUTPUT([Makefile SRC/Makefile BLAS/Makefile BLAS/SRC/Makefile LAPACKE/Makefile LAPACKE/src/Makefile BLAS/blas.pc lapack.pc LAPACKE/lapacke.pc]) diff -Nur lapack-3.1.1.orig/Makefile.am lapack-3.1.1/Makefile.am --- lapack-3.1.1.orig/Makefile.am 1970-01-01 01:00:00.000000000 +0100 +++ lapack-3.1.1/Makefile.am 2007-08-06 22:04:22.000000000 +0100 @@ -0,0 +1,3 @@ -+SUBDIRS=BLAS SRC lapacke ++SUBDIRS=BLAS SRC LAPACKE +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = lapack.pc ---- lapack-3.5.0.orig/SRC/Makefile.am 1970-01-01 01:00:00.000000000 +0100 -+++ lapack-3.5.0/SRC/Makefile.am 2007-08-06 22:06:57.000000000 +0100 -@@ -0,0 +1,338 @@ +--- lapack-3.7.0.orig/SRC/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ lapack-3.7.0/SRC/Makefile.am 2007-08-06 22:06:57.000000000 +0100 +@@ -0,0 +1,409 @@ +LIBTOOL = $(SHELL) $(top_builddir)/libtool --tag=F77 +lib_LTLIBRARIES = liblapack.la +liblapack_la_LDFLAGS = -version-info @LIBVERSION@ +liblapack_la_LIBADD = $(top_builddir)/BLAS/SRC/libblas.la +liblapack_la_DEPENDENCIES = $(top_builddir)/BLAS/SRC/libblas.la +liblapack_la_SOURCES = \ -+ ilaenv.f ieeeck.f lsamen.f iparmq.f \ ++ ilaenv.f ieeeck.f lsamen.f iparmq.f iparam2stage.F \ + ilaprec.f ilatrans.f ilauplo.f iladiag.f chla_transtype.f \ + ilaver.f \ + sbdsdc.f \ @@ -111,39 +112,41 @@ diff -Nur lapack-3.1.1.orig/Makefile.am lapack-3.1.1/Makefile.am + dsteqr.f dsterf.f dlaisnan.f disnan.f \ + dlartgp.f dlartgs.f \ + dlamch.f dsecnd_INT_ETIME.f \ -+ sgbbrd.f sgbcon.f sgbequ.f sgbrfs.f sgbsv.f \ ++ sbdsvdx.f sgbbrd.f sgbcon.f sgbequ.f sgbrfs.f sgbsv.f \ + sgbsvx.f sgbtf2.f sgbtrf.f sgbtrs.f sgebak.f sgebal.f sgebd2.f \ + sgebrd.f sgecon.f sgeequ.f sgees.f sgeesx.f sgeev.f sgeevx.f \ -+ sgegs.f sgegv.f sgehd2.f sgehrd.f sgelq2.f sgelqf.f \ -+ sgels.f sgelsd.f sgelss.f sgelsx.f sgelsy.f sgeql2.f sgeqlf.f \ -+ sgeqp3.f sgeqpf.f sgeqr2.f sgeqr2p.f sgeqrf.f sgeqrfp.f sgerfs.f sgerq2.f sgerqf.f \ -+ sgesc2.f sgesdd.f sgesv.f sgesvd.f sgesvx.f sgetc2.f sgetf2.f \ -+ sgetrf.f sgetri.f \ -+ sgetrs.f sggbak.f sggbal.f sgges.f sggesx.f sggev.f sggevx.f \ -+ sggglm.f sgghrd.f sgglse.f sggqrf.f \ -+ sggrqf.f sggsvd.f sggsvp.f sgtcon.f sgtrfs.f sgtsv.f \ ++ sgehd2.f sgehrd.f sgelq2.f sgelqf.f \ ++ sgels.f sgelsd.f sgelss.f sgelsy.f sgeql2.f sgeqlf.f \ ++ sgeqp3.f sgeqr2.f sgeqr2p.f sgeqrf.f sgeqrfp.f sgerfs.f sgerq2.f sgerqf.f \ ++ sgesc2.f sgesdd.f sgesv.f sgesvd.f sgesvdx.f sgesvx.f sgetc2.f sgetf2.f \ ++ sgetrf.f sgetrf2.f sgetri.f \ ++ sgetrs.f sggbak.f sggbal.f \ ++ sgges.f sgges3.f sggesx.f sggev.f sggev3.f sggevx.f \ ++ sggglm.f sgghrd.f sgghd3.f sgglse.f sggqrf.f \ ++ sggrqf.f sggsvd3.f sggsvp3.f sgtcon.f sgtrfs.f sgtsv.f \ + sgtsvx.f sgttrf.f sgttrs.f sgtts2.f shgeqz.f \ + shsein.f shseqr.f slabrd.f slacon.f slacn2.f \ + slaein.f slaexc.f slag2.f slags2.f slagtm.f slagv2.f slahqr.f \ -+ slahrd.f slahr2.f slaic1.f slaln2.f slals0.f slalsa.f slalsd.f \ ++ slahr2.f slaic1.f slaln2.f slals0.f slalsa.f slalsd.f \ + slangb.f slange.f slangt.f slanhs.f slansb.f slansp.f \ + slansy.f slantb.f slantp.f slantr.f slanv2.f \ + slapll.f slapmt.f \ + slaqgb.f slaqge.f slaqp2.f slaqps.f slaqsb.f slaqsp.f slaqsy.f \ + slaqr0.f slaqr1.f slaqr2.f slaqr3.f slaqr4.f slaqr5.f \ + slaqtr.f slar1v.f slar2v.f ilaslr.f ilaslc.f \ -+ slarf.f slarfb.f slarfg.f slarfgp.f slarft.f slarfx.f slargv.f \ ++ slarf.f slarfb.f slarfg.f slarfgp.f slarft.f slarfx.f slarfy.f slargv.f \ + slarrv.f slartv.f \ -+ slarz.f slarzb.f slarzt.f slaswp.f slasy2.f slasyf.f slasyf_rook.f \ -+ slatbs.f slatdf.f slatps.f slatrd.f slatrs.f slatrz.f slatzm.f \ ++ slarz.f slarzb.f slarzt.f slaswp.f slasy2.f \ ++ slasyf.f slasyf_rook.f slasyf_rk.f slasyf_aa.f \ ++ slatbs.f slatdf.f slatps.f slatrd.f slatrs.f slatrz.f \ + slauu2.f slauum.f sopgtr.f sopmtr.f sorg2l.f sorg2r.f \ + sorgbr.f sorghr.f sorgl2.f sorglq.f sorgql.f sorgqr.f sorgr2.f \ -+ sorgrq.f sorgtr.f sorm2l.f sorm2r.f \ ++ sorgrq.f sorgtr.f sorm2l.f sorm2r.f sorm22.f \ + sormbr.f sormhr.f sorml2.f sormlq.f sormql.f sormqr.f sormr2.f \ + sormr3.f sormrq.f sormrz.f sormtr.f spbcon.f spbequ.f spbrfs.f \ + spbstf.f spbsv.f spbsvx.f \ + spbtf2.f spbtrf.f spbtrs.f spocon.f spoequ.f sporfs.f sposv.f \ -+ sposvx.f spotf2.f spotrf.f spotri.f spotrs.f spstrf.f spstf2.f \ ++ sposvx.f spotf2.f spotrf.f spotrf2.f spotri.f spotrs.f spstrf.f spstf2.f \ + sppcon.f sppequ.f \ + spprfs.f sppsv.f sppsvx.f spptrf.f spptri.f spptrs.f sptcon.f \ + spteqr.f sptrfs.f sptsv.f sptsvx.f spttrs.f sptts2.f srscl.f \ @@ -154,34 +157,48 @@ diff -Nur lapack-3.1.1.orig/Makefile.am lapack-3.1.1/Makefile.am + sstevx.f ssycon.f ssyev.f ssyevd.f ssyevr.f ssyevx.f ssygs2.f \ + ssygst.f ssygv.f ssygvd.f ssygvx.f ssyrfs.f ssysv.f ssysvx.f \ + ssytd2.f ssytf2.f ssytrd.f ssytrf.f ssytri.f ssytri2.f ssytri2x.f \ -+ ssyswapr.f ssytrs.f ssytrs2.f ssyconv.f \ ++ ssyswapr.f ssytrs.f ssytrs2.f \ ++ ssyconv.f ssyconvf.f ssyconvf_rook.f \ ++ ssysv_aa.f ssytrf_aa.f ssytrs_aa.f \ + ssytf2_rook.f ssytrf_rook.f ssytrs_rook.f \ + ssytri_rook.f ssycon_rook.f ssysv_rook.f \ ++ ssytf2_rk.f ssytrf_rk.f ssytrs_3.f \ ++ ssytri_3.f ssytri_3x.f ssycon_3.f ssysv_rk.f \ + stbcon.f \ + stbrfs.f stbtrs.f stgevc.f stgex2.f stgexc.f stgsen.f \ + stgsja.f stgsna.f stgsy2.f stgsyl.f stpcon.f stprfs.f stptri.f \ + stptrs.f \ -+ strcon.f strevc.f strexc.f strrfs.f strsen.f strsna.f strsyl.f \ -+ strti2.f strtri.f strtrs.f stzrqf.f stzrzf.f sstemr.f \ ++ strcon.f strevc.f strevc3.f strexc.f strrfs.f strsen.f strsna.f strsyl.f \ ++ strti2.f strtri.f strtrs.f stzrzf.f sstemr.f \ + slansf.f spftrf.f spftri.f spftrs.f ssfrk.f stfsm.f stftri.f stfttp.f \ + stfttr.f stpttf.f stpttr.f strttf.f strttp.f \ -+ sgejsv.f sgesvj.f sgsvj0.f sgsvj1.f \ ++ sgejsv.f sgesvj.f sgsvj0.f sgsvj1.f \ + sgeequb.f ssyequb.f spoequb.f sgbequb.f \ + sbbcsd.f slapmr.f sorbdb.f sorbdb1.f sorbdb2.f sorbdb3.f sorbdb4.f \ + sorbdb5.f sorbdb6.f sorcsd.f sorcsd2by1.f \ + sgeqrt.f sgeqrt2.f sgeqrt3.f sgemqrt.f \ + stpqrt.f stpqrt2.f stpmqrt.f stprfb.f \ ++ sgelqt.f sgelqt3.f sgemlqt.f \ ++ sgetsls.f sgeqr.f slatsqr.f slamtsqr.f sgemqr.f \ ++ sgelq.f slaswlq.f slamswlq.f sgemlq.f \ ++ stplqt.f stplqt2.f stpmlqt.f \ ++ ssytrd_2stage.f ssytrd_sy2sb.f ssytrd_sb2st.F ssb2st_kernels.f \ ++ ssyevd_2stage.f ssyev_2stage.f ssyevx_2stage.f ssyevr_2stage.f \ ++ ssbev_2stage.f ssbevx_2stage.f ssbevd_2stage.f ssygv_2stage.f \ + cbdsqr.f cgbbrd.f cgbcon.f cgbequ.f cgbrfs.f cgbsv.f cgbsvx.f \ + cgbtf2.f cgbtrf.f cgbtrs.f cgebak.f cgebal.f cgebd2.f cgebrd.f \ + cgecon.f cgeequ.f cgees.f cgeesx.f cgeev.f cgeevx.f \ -+ cgegs.f cgegv.f cgehd2.f cgehrd.f cgelq2.f cgelqf.f \ -+ cgels.f cgelsd.f cgelss.f cgelsx.f cgelsy.f cgeql2.f cgeqlf.f cgeqp3.f \ -+ cgeqpf.f cgeqr2.f cgeqr2p.f cgeqrf.f cgeqrfp.f cgerfs.f cgerq2.f cgerqf.f \ -+ cgesc2.f cgesdd.f cgesv.f cgesvd.f cgesvx.f cgetc2.f cgetf2.f cgetrf.f \ ++ cgehd2.f cgehrd.f cgelq2.f cgelqf.f \ ++ cgels.f cgelsd.f cgelss.f cgelsy.f cgeql2.f cgeqlf.f cgeqp3.f \ ++ cgeqr2.f cgeqr2p.f cgeqrf.f cgeqrfp.f cgerfs.f cgerq2.f cgerqf.f \ ++ cgesc2.f cgesdd.f cgesv.f cgesvd.f cgesvdx.f \ ++ cgesvj.f cgejsv.f cgsvj0.f cgsvj1.f \ ++ cgesvx.f cgetc2.f cgetf2.f cgetrf.f cgetrf2.f \ + cgetri.f cgetrs.f \ -+ cggbak.f cggbal.f cgges.f cggesx.f cggev.f cggevx.f cggglm.f \ -+ cgghrd.f cgglse.f cggqrf.f cggrqf.f \ -+ cggsvd.f cggsvp.f \ ++ cggbak.f cggbal.f \ ++ cgges.f cgges3.f cggesx.f cggev.f cggev3.f cggevx.f \ ++ cggglm.f cgghrd.f cgghd3.f cgglse.f cggqrf.f cggrqf.f \ ++ cggsvd3.f cggsvp3.f \ + cgtcon.f cgtrfs.f cgtsv.f cgtsvx.f cgttrf.f cgttrs.f cgtts2.f chbev.f \ + chbevd.f chbevx.f chbgst.f chbgv.f chbgvd.f chbgvx.f chbtrd.f \ + checon.f cheev.f cheevd.f cheevr.f cheevx.f chegs2.f chegst.f \ @@ -189,7 +206,11 @@ diff -Nur lapack-3.1.1.orig/Makefile.am lapack-3.1.1/Makefile.am + chetf2.f chetrd.f \ + chetrf.f chetri.f chetri2.f chetri2x.f cheswapr.f \ + chetrs.f chetrs2.f \ -+ chetf2_rook.f chetrf_rook.f chetri_rook.f chetrs_rook.f checon_rook.f chesv_rook.f \ ++ chetf2_rook.f chetrf_rook.f chetri_rook.f \ ++ chetrs_rook.f checon_rook.f chesv_rook.f \ ++ chetf2_rk.f chetrf_rk.f chetri_3.f chetri_3x.f \ ++ chetrs_3.f checon_3.f chesv_rk.f \ ++ chesv_aa.f chetrf_aa.f chetrs_aa.f \ + chgeqz.f chpcon.f chpev.f chpevd.f \ + chpevx.f chpgst.f chpgv.f chpgvd.f chpgvx.f chprfs.f chpsv.f \ + chpsvx.f \ @@ -197,8 +218,8 @@ diff -Nur lapack-3.1.1.orig/Makefile.am lapack-3.1.1/Makefile.am + clacgv.f clacon.f clacn2.f clacp2.f clacpy.f clacrm.f clacrt.f cladiv.f \ + claed0.f claed7.f claed8.f \ + claein.f claesy.f claev2.f clags2.f clagtm.f \ -+ clahef.f clahef_rook.f clahqr.f \ -+ clahrd.f clahr2.f claic1.f clals0.f clalsa.f clalsd.f clangb.f clange.f clangt.f \ ++ clahef.f clahef_rook.f clahef_rk.f clahef_aa.f clahqr.f \ ++ clahr2.f claic1.f clals0.f clalsa.f clalsd.f clangb.f clange.f clangt.f \ + clanhb.f clanhe.f \ + clanhp.f clanhs.f clanht.f clansb.f clansp.f clansy.f clantb.f \ + clantp.f clantr.f clapll.f clapmt.f clarcm.f claqgb.f claqge.f \ @@ -206,28 +227,32 @@ diff -Nur lapack-3.1.1.orig/Makefile.am lapack-3.1.1/Makefile.am + claqr0.f claqr1.f claqr2.f claqr3.f claqr4.f claqr5.f \ + claqsp.f claqsy.f clar1v.f clar2v.f ilaclr.f ilaclc.f \ + clarf.f clarfb.f clarfg.f clarfgp.f clarft.f \ -+ clarfx.f clargv.f clarnv.f clarrv.f clartg.f clartv.f \ ++ clarfx.f clarfy.f clargv.f clarnv.f clarrv.f clartg.f clartv.f \ + clarz.f clarzb.f clarzt.f clascl.f claset.f clasr.f classq.f \ -+ claswp.f clasyf.f clasyf_rook.f clatbs.f clatdf.f clatps.f clatrd.f clatrs.f clatrz.f \ -+ clatzm.f clauu2.f clauum.f cpbcon.f cpbequ.f cpbrfs.f cpbstf.f cpbsv.f \ ++ claswp.f clasyf.f clasyf_rook.f clasyf_rk.f clasyf_aa.f \ ++ clatbs.f clatdf.f clatps.f clatrd.f clatrs.f clatrz.f \ ++ clauu2.f clauum.f cpbcon.f cpbequ.f cpbrfs.f cpbstf.f cpbsv.f \ + cpbsvx.f cpbtf2.f cpbtrf.f cpbtrs.f cpocon.f cpoequ.f cporfs.f \ -+ cposv.f cposvx.f cpotf2.f cpotrf.f cpotri.f cpotrs.f cpstrf.f cpstf2.f \ ++ cposv.f cposvx.f cpotf2.f cpotrf.f cpotrf2.f cpotri.f cpotrs.f cpstrf.f cpstf2.f \ + cppcon.f cppequ.f cpprfs.f cppsv.f cppsvx.f cpptrf.f cpptri.f cpptrs.f \ + cptcon.f cpteqr.f cptrfs.f cptsv.f cptsvx.f cpttrf.f cpttrs.f cptts2.f \ + crot.f cspcon.f cspmv.f cspr.f csprfs.f cspsv.f \ + cspsvx.f csptrf.f csptri.f csptrs.f csrscl.f cstedc.f \ + cstegr.f cstein.f csteqr.f csycon.f csymv.f \ + csyr.f csyrfs.f csysv.f csysvx.f csytf2.f csytrf.f csytri.f csytri2.f csytri2x.f \ -+ csyswapr.f csytrs.f csytrs2.f csyconv.f \ ++ csyswapr.f csytrs.f csytrs2.f \ ++ csyconv.f csyconvf.f csyconvf_rook.f \ + csytf2_rook.f csytrf_rook.f csytrs_rook.f \ + csytri_rook.f csycon_rook.f csysv_rook.f \ ++ csytf2_rk.f csytrf_rk.f csytrf_aa.f csytrs_3.f csytrs_aa.f \ ++ csytri_3.f csytri_3x.f csycon_3.f csysv_rk.f csysv_aa.f \ + ctbcon.f ctbrfs.f ctbtrs.f ctgevc.f ctgex2.f \ + ctgexc.f ctgsen.f ctgsja.f ctgsna.f ctgsy2.f ctgsyl.f ctpcon.f \ + ctprfs.f ctptri.f \ -+ ctptrs.f ctrcon.f ctrevc.f ctrexc.f ctrrfs.f ctrsen.f ctrsna.f \ -+ ctrsyl.f ctrti2.f ctrtri.f ctrtrs.f ctzrqf.f ctzrzf.f cung2l.f cung2r.f \ ++ ctptrs.f ctrcon.f ctrevc.f ctrevc3.f ctrexc.f ctrrfs.f ctrsen.f ctrsna.f \ ++ ctrsyl.f ctrti2.f ctrtri.f ctrtrs.f ctzrzf.f cung2l.f cung2r.f \ + cungbr.f cunghr.f cungl2.f cunglq.f cungql.f cungqr.f cungr2.f \ -+ cungrq.f cungtr.f cunm2l.f cunm2r.f cunmbr.f cunmhr.f cunml2.f \ ++ cungrq.f cungtr.f cunm2l.f cunm2r.f cunmbr.f cunmhr.f cunml2.f cunm22.f \ + cunmlq.f cunmql.f cunmqr.f cunmr2.f cunmr3.f cunmrq.f cunmrz.f \ + cunmtr.f cupgtr.f cupmtr.f icmax1.f scsum1.f cstemr.f \ + chfrk.f ctfttp.f clanhf.f cpftrf.f cpftri.f cpftrs.f ctfsm.f ctftri.f \ @@ -237,78 +262,102 @@ diff -Nur lapack-3.1.1.orig/Makefile.am lapack-3.1.1/Makefile.am + cunbdb5.f cunbdb6.f cuncsd.f cuncsd2by1.f \ + cgeqrt.f cgeqrt2.f cgeqrt3.f cgemqrt.f \ + ctpqrt.f ctpqrt2.f ctpmqrt.f ctprfb.f \ -+ dgbbrd.f dgbcon.f dgbequ.f dgbrfs.f dgbsv.f \ ++ cgelqt.f cgelqt3.f cgemlqt.f \ ++ cgetsls.f cgeqr.f clatsqr.f clamtsqr.f cgemqr.f \ ++ cgelq.f claswlq.f clamswlq.f cgemlq.f \ ++ ctplqt.f ctplqt2.f ctpmlqt.f \ ++ chetrd_2stage.f chetrd_he2hb.f chetrd_hb2st.F chb2st_kernels.f \ ++ cheevd_2stage.f cheev_2stage.f cheevx_2stage.f cheevr_2stage.f \ ++ chbev_2stage.f chbevx_2stage.f chbevd_2stage.f chegv_2stage.f \ ++ dbdsvdx.f dgbbrd.f dgbcon.f dgbequ.f dgbrfs.f dgbsv.f \ + dgbsvx.f dgbtf2.f dgbtrf.f dgbtrs.f dgebak.f dgebal.f dgebd2.f \ + dgebrd.f dgecon.f dgeequ.f dgees.f dgeesx.f dgeev.f dgeevx.f \ -+ dgegs.f dgegv.f dgehd2.f dgehrd.f dgelq2.f dgelqf.f \ -+ dgels.f dgelsd.f dgelss.f dgelsx.f dgelsy.f dgeql2.f dgeqlf.f \ -+ dgeqp3.f dgeqpf.f dgeqr2.f dgeqr2p.f dgeqrf.f dgeqrfp.f dgerfs.f dgerq2.f dgerqf.f \ -+ dgesc2.f dgesdd.f dgesv.f dgesvd.f dgesvx.f dgetc2.f dgetf2.f \ -+ dgetrf.f dgetri.f \ -+ dgetrs.f dggbak.f dggbal.f dgges.f dggesx.f dggev.f dggevx.f \ -+ dggglm.f dgghrd.f dgglse.f dggqrf.f \ -+ dggrqf.f dggsvd.f dggsvp.f dgtcon.f dgtrfs.f dgtsv.f \ ++ dgehd2.f dgehrd.f dgelq2.f dgelqf.f \ ++ dgels.f dgelsd.f dgelss.f dgelsy.f dgeql2.f dgeqlf.f \ ++ dgeqp3.f dgeqr2.f dgeqr2p.f dgeqrf.f dgeqrfp.f dgerfs.f dgerq2.f dgerqf.f \ ++ dgesc2.f dgesdd.f dgesv.f dgesvd.f dgesvdx.f dgesvx.f dgetc2.f dgetf2.f \ ++ dgetrf.f dgetrf2.f dgetri.f \ ++ dgetrs.f dggbak.f dggbal.f \ ++ dgges.f dgges3.f dggesx.f dggev.f dggev3.f dggevx.f \ ++ dggglm.f dgghrd.f dgghd3.f dgglse.f dggqrf.f \ ++ dggrqf.f dggsvd3.f dggsvp3.f dgtcon.f dgtrfs.f dgtsv.f \ + dgtsvx.f dgttrf.f dgttrs.f dgtts2.f dhgeqz.f \ + dhsein.f dhseqr.f dlabrd.f dlacon.f dlacn2.f \ + dlaein.f dlaexc.f dlag2.f dlags2.f dlagtm.f dlagv2.f dlahqr.f \ -+ dlahrd.f dlahr2.f dlaic1.f dlaln2.f dlals0.f dlalsa.f dlalsd.f \ ++ dlahr2.f dlaic1.f dlaln2.f dlals0.f dlalsa.f dlalsd.f \ + dlangb.f dlange.f dlangt.f dlanhs.f dlansb.f dlansp.f \ + dlansy.f dlantb.f dlantp.f dlantr.f dlanv2.f \ + dlapll.f dlapmt.f \ + dlaqgb.f dlaqge.f dlaqp2.f dlaqps.f dlaqsb.f dlaqsp.f dlaqsy.f \ + dlaqr0.f dlaqr1.f dlaqr2.f dlaqr3.f dlaqr4.f dlaqr5.f \ + dlaqtr.f dlar1v.f dlar2v.f iladlr.f iladlc.f \ -+ dlarf.f dlarfb.f dlarfg.f dlarfgp.f dlarft.f dlarfx.f dlargv.f \ -+ dlarrv.f dlartv.f \ -+ dlarz.f dlarzb.f dlarzt.f dlaswp.f dlasy2.f dlasyf.f dlasyf_rook.f \ -+ dlatbs.f dlatdf.f dlatps.f dlatrd.f dlatrs.f dlatrz.f dlatzm.f dlauu2.f \ ++ dlarf.f dlarfb.f dlarfg.f dlarfgp.f dlarft.f dlarfx.f dlarfy.f \ ++ dlargv.f dlarrv.f dlartv.f \ ++ dlarz.f dlarzb.f dlarzt.f dlaswp.f dlasy2.f \ ++ dlasyf.f dlasyf_rook.f dlasyf_rk.f dlasyf_aa.f \ ++ dlatbs.f dlatdf.f dlatps.f dlatrd.f dlatrs.f dlatrz.f dlauu2.f \ + dlauum.f dopgtr.f dopmtr.f dorg2l.f dorg2r.f \ + dorgbr.f dorghr.f dorgl2.f dorglq.f dorgql.f dorgqr.f dorgr2.f \ -+ dorgrq.f dorgtr.f dorm2l.f dorm2r.f \ ++ dorgrq.f dorgtr.f dorm2l.f dorm2r.f dorm22.f \ + dormbr.f dormhr.f dorml2.f dormlq.f dormql.f dormqr.f dormr2.f \ + dormr3.f dormrq.f dormrz.f dormtr.f dpbcon.f dpbequ.f dpbrfs.f \ + dpbstf.f dpbsv.f dpbsvx.f \ + dpbtf2.f dpbtrf.f dpbtrs.f dpocon.f dpoequ.f dporfs.f dposv.f \ -+ dposvx.f dpotf2.f dpotrf.f dpotri.f dpotrs.f dpstrf.f dpstf2.f \ ++ dposvx.f dpotf2.f dpotrf.f dpotrf2.f dpotri.f dpotrs.f dpstrf.f dpstf2.f \ + dppcon.f dppequ.f \ + dpprfs.f dppsv.f dppsvx.f dpptrf.f dpptri.f dpptrs.f dptcon.f \ + dpteqr.f dptrfs.f dptsv.f dptsvx.f dpttrs.f dptts2.f drscl.f \ + dsbev.f dsbevd.f dsbevx.f dsbgst.f dsbgv.f dsbgvd.f dsbgvx.f \ -+ dsbtrd.f dspcon.f dspev.f dspevd.f dspevx.f dspgst.f \ ++ dsbtrd.f dspcon.f dspev.f dspevd.f dspevx.f dspgst.f \ + dspgv.f dspgvd.f dspgvx.f dsprfs.f dspsv.f dspsvx.f dsptrd.f \ + dsptrf.f dsptri.f dsptrs.f dstegr.f dstein.f dstev.f dstevd.f dstevr.f \ + dstevx.f dsycon.f dsyev.f dsyevd.f dsyevr.f \ + dsyevx.f dsygs2.f dsygst.f dsygv.f dsygvd.f dsygvx.f dsyrfs.f \ + dsysv.f dsysvx.f \ + dsytd2.f dsytf2.f dsytrd.f dsytrf.f dsytri.f dsytrs.f dsytrs2.f \ -+ dsytri2.f dsytri2x.f dsyswapr.f dsyconv.f \ ++ dsytri2.f dsytri2x.f dsyswapr.f \ ++ dsyconv.f dsyconvf.f dsyconvf_rook.f \ + dsytf2_rook.f dsytrf_rook.f dsytrs_rook.f \ + dsytri_rook.f dsycon_rook.f dsysv_rook.f \ -+ dtbcon.f dtbrfs.f dtbtrs.f dtgevc.f dtgex2.f dtgexc.f dtgsen.f \ ++ dsytf2_rk.f dsytrf_rk.f dsytrs_3.f \ ++ dsytri_3.f dsytri_3x.f dsycon_3.f dsysv_rk.f \ ++ dsysv_aa.f dsytrf_aa.f dsytrs_aa.f \ ++ dtbcon.f \ ++ dtbrfs.f dtbtrs.f dtgevc.f dtgex2.f dtgexc.f dtgsen.f \ + dtgsja.f dtgsna.f dtgsy2.f dtgsyl.f dtpcon.f dtprfs.f dtptri.f \ + dtptrs.f \ -+ dtrcon.f dtrevc.f dtrexc.f dtrrfs.f dtrsen.f dtrsna.f dtrsyl.f \ -+ dtrti2.f dtrtri.f dtrtrs.f dtzrqf.f dtzrzf.f dstemr.f \ ++ dtrcon.f dtrevc.f dtrevc3.f dtrexc.f dtrrfs.f dtrsen.f dtrsna.f dtrsyl.f \ ++ dtrti2.f dtrtri.f dtrtrs.f dtzrzf.f dstemr.f \ + dsgesv.f dsposv.f dlag2s.f slag2d.f dlat2s.f \ + dlansf.f dpftrf.f dpftri.f dpftrs.f dsfrk.f dtfsm.f dtftri.f dtfttp.f \ + dtfttr.f dtpttf.f dtpttr.f dtrttf.f dtrttp.f \ -+ dgejsv.f dgesvj.f dgsvj0.f dgsvj1.f \ ++ dgejsv.f dgesvj.f dgsvj0.f dgsvj1.f \ + dgeequb.f dsyequb.f dpoequb.f dgbequb.f \ + dbbcsd.f dlapmr.f dorbdb.f dorbdb1.f dorbdb2.f dorbdb3.f dorbdb4.f \ + dorbdb5.f dorbdb6.f dorcsd.f dorcsd2by1.f \ + dgeqrt.f dgeqrt2.f dgeqrt3.f dgemqrt.f \ + dtpqrt.f dtpqrt2.f dtpmqrt.f dtprfb.f \ ++ dgelqt.f dgelqt3.f dgemlqt.f \ ++ dgetsls.f dgeqr.f dlatsqr.f dlamtsqr.f dgemqr.f \ ++ dgelq.f dlaswlq.f dlamswlq.f dgemlq.f \ ++ dtplqt.f dtplqt2.f dtpmlqt.f \ ++ dsytrd_2stage.f dsytrd_sy2sb.f dsytrd_sb2st.F dsb2st_kernels.f \ ++ dsyevd_2stage.f dsyev_2stage.f dsyevx_2stage.f dsyevr_2stage.f \ ++ dsbev_2stage.f dsbevx_2stage.f dsbevd_2stage.f dsygv_2stage.f \ + zbdsqr.f zgbbrd.f zgbcon.f zgbequ.f zgbrfs.f zgbsv.f zgbsvx.f \ + zgbtf2.f zgbtrf.f zgbtrs.f zgebak.f zgebal.f zgebd2.f zgebrd.f \ + zgecon.f zgeequ.f zgees.f zgeesx.f zgeev.f zgeevx.f \ -+ zgegs.f zgegv.f zgehd2.f zgehrd.f zgelq2.f zgelqf.f \ -+ zgels.f zgelsd.f zgelss.f zgelsx.f zgelsy.f zgeql2.f zgeqlf.f zgeqp3.f \ -+ zgeqpf.f zgeqr2.f zgeqr2p.f zgeqrf.f zgeqrfp.f zgerfs.f zgerq2.f zgerqf.f \ -+ zgesc2.f zgesdd.f zgesv.f zgesvd.f zgesvx.f zgetc2.f zgetf2.f zgetrf.f \ ++ zgehd2.f zgehrd.f zgelq2.f zgelqf.f \ ++ zgels.f zgelsd.f zgelss.f zgelsy.f zgeql2.f zgeqlf.f zgeqp3.f \ ++ zgeqr2.f zgeqr2p.f zgeqrf.f zgeqrfp.f zgerfs.f zgerq2.f zgerqf.f \ ++ zgesc2.f zgesdd.f zgesv.f zgesvd.f zgesvdx.f zgesvx.f \ ++ zgesvj.f zgejsv.f zgsvj0.f zgsvj1.f \ ++ zgetc2.f zgetf2.f zgetrf.f zgetrf2.f \ + zgetri.f zgetrs.f \ -+ zggbak.f zggbal.f zgges.f zggesx.f zggev.f zggevx.f zggglm.f \ -+ zgghrd.f zgglse.f zggqrf.f zggrqf.f \ -+ zggsvd.f zggsvp.f \ ++ zggbak.f zggbal.f \ ++ zgges.f zgges3.f zggesx.f zggev.f zggev3.f zggevx.f \ ++ zggglm.f zgghrd.f zgghd3.f zgglse.f zggqrf.f zggrqf.f \ ++ zggsvd3.f zggsvp3.f \ + zgtcon.f zgtrfs.f zgtsv.f zgtsvx.f zgttrf.f zgttrs.f zgtts2.f zhbev.f \ + zhbevd.f zhbevx.f zhbgst.f zhbgv.f zhbgvd.f zhbgvx.f zhbtrd.f \ + zhecon.f zheev.f zheevd.f zheevr.f zheevx.f zhegs2.f zhegst.f \ @@ -316,7 +365,11 @@ diff -Nur lapack-3.1.1.orig/Makefile.am lapack-3.1.1/Makefile.am + zhetf2.f zhetrd.f \ + zhetrf.f zhetri.f zhetri2.f zhetri2x.f zheswapr.f \ + zhetrs.f zhetrs2.f \ -+ zhetf2_rook.f zhetrf_rook.f zhetri_rook.f zhetrs_rook.f zhecon_rook.f zhesv_rook.f \ ++ zhetf2_rook.f zhetrf_rook.f zhetri_rook.f \ ++ zhetrs_rook.f zhecon_rook.f zhesv_rook.f \ ++ zhetf2_rk.f zhetrf_rk.f zhetri_3.f zhetri_3x.f \ ++ zhetrs_3.f zhecon_3.f zhesv_rk.f \ ++ zhesv_aa.f zhetrf_aa.f zhetrs_aa.f \ + zhgeqz.f zhpcon.f zhpev.f zhpevd.f \ + zhpevx.f zhpgst.f zhpgv.f zhpgvd.f zhpgvx.f zhprfs.f zhpsv.f \ + zhpsvx.f \ @@ -324,8 +377,8 @@ diff -Nur lapack-3.1.1.orig/Makefile.am lapack-3.1.1/Makefile.am + zlacgv.f zlacon.f zlacn2.f zlacp2.f zlacpy.f zlacrm.f zlacrt.f zladiv.f \ + zlaed0.f zlaed7.f zlaed8.f \ + zlaein.f zlaesy.f zlaev2.f zlags2.f zlagtm.f \ -+ zlahef.f zlahef_rook.f zlahqr.f \ -+ zlahrd.f zlahr2.f zlaic1.f zlals0.f zlalsa.f zlalsd.f zlangb.f zlange.f \ ++ zlahef.f zlahef_rook.f zlahef_rk.f zlahef_aa.f zlahqr.f \ ++ zlahr2.f zlaic1.f zlals0.f zlalsa.f zlalsd.f zlangb.f zlange.f \ + zlangt.f zlanhb.f \ + zlanhe.f \ + zlanhp.f zlanhs.f zlanht.f zlansb.f zlansp.f zlansy.f zlantb.f \ @@ -335,29 +388,33 @@ diff -Nur lapack-3.1.1.orig/Makefile.am lapack-3.1.1/Makefile.am + zlaqsp.f zlaqsy.f zlar1v.f zlar2v.f ilazlr.f ilazlc.f \ + zlarcm.f zlarf.f zlarfb.f \ + zlarfg.f zlarfgp.f zlarft.f \ -+ zlarfx.f zlargv.f zlarnv.f zlarrv.f zlartg.f zlartv.f \ ++ zlarfx.f zlarfy.f zlargv.f zlarnv.f zlarrv.f zlartg.f zlartv.f \ + zlarz.f zlarzb.f zlarzt.f zlascl.f zlaset.f zlasr.f \ -+ zlassq.f zlaswp.f zlasyf.f zlasyf_rook.f \ -+ zlatbs.f zlatdf.f zlatps.f zlatrd.f zlatrs.f zlatrz.f zlatzm.f zlauu2.f \ ++ zlassq.f zlaswp.f zlasyf.f zlasyf_rook.f zlasyf_rk.f zlasyf_aa.f \ ++ zlatbs.f zlatdf.f zlatps.f zlatrd.f zlatrs.f zlatrz.f zlauu2.f \ + zlauum.f zpbcon.f zpbequ.f zpbrfs.f zpbstf.f zpbsv.f \ + zpbsvx.f zpbtf2.f zpbtrf.f zpbtrs.f zpocon.f zpoequ.f zporfs.f \ -+ zposv.f zposvx.f zpotf2.f zpotrf.f zpotri.f zpotrs.f zpstrf.f zpstf2.f \ ++ zposv.f zposvx.f zpotf2.f zpotrf.f zpotrf2.f zpotri.f zpotrs.f zpstrf.f zpstf2.f \ + zppcon.f zppequ.f zpprfs.f zppsv.f zppsvx.f zpptrf.f zpptri.f zpptrs.f \ + zptcon.f zpteqr.f zptrfs.f zptsv.f zptsvx.f zpttrf.f zpttrs.f zptts2.f \ + zrot.f zspcon.f zspmv.f zspr.f zsprfs.f zspsv.f \ + zspsvx.f zsptrf.f zsptri.f zsptrs.f zdrscl.f zstedc.f \ + zstegr.f zstein.f zsteqr.f zsycon.f zsymv.f \ -+ zsyr.f zsyrfs.f zsysv.f zsysvx.f zsytf2.f zsytrf.f zsytri.f zsytri2.f zsytri2x.f \ -+ zsyswapr.f zsytrs.f zsytrs2.f zsyconv.f \ -+ zsytf2_rook.f zsytrf_rook.f zsytrs_rook.f \ ++ zsyr.f zsyrfs.f zsysv.f zsysvx.f zsytf2.f zsytrf.f zsytri.f \ ++ zsytri2.f zsytri2x.f zsyswapr.f \ ++ zsytrs.f zsytrs2.f \ ++ zsyconv.f zsyconvf.f zsyconvf_rook.f \ ++ zsytf2_rook.f zsytrf_rook.f zsytrs_rook.f zsytrs_aa.f \ + zsytri_rook.f zsycon_rook.f zsysv_rook.f \ ++ zsytf2_rk.f zsytrf_rk.f zsytrf_aa.f zsytrs_3.f \ ++ zsytri_3.f zsytri_3x.f zsycon_3.f zsysv_rk.f zsysv_aa.f \ + ztbcon.f ztbrfs.f ztbtrs.f ztgevc.f ztgex2.f \ + ztgexc.f ztgsen.f ztgsja.f ztgsna.f ztgsy2.f ztgsyl.f ztpcon.f \ + ztprfs.f ztptri.f \ -+ ztptrs.f ztrcon.f ztrevc.f ztrexc.f ztrrfs.f ztrsen.f ztrsna.f \ -+ ztrsyl.f ztrti2.f ztrtri.f ztrtrs.f ztzrqf.f ztzrzf.f zung2l.f \ ++ ztptrs.f ztrcon.f ztrevc.f ztrevc3.f ztrexc.f ztrrfs.f ztrsen.f ztrsna.f \ ++ ztrsyl.f ztrti2.f ztrtri.f ztrtrs.f ztzrzf.f zung2l.f \ + zung2r.f zungbr.f zunghr.f zungl2.f zunglq.f zungql.f zungqr.f zungr2.f \ -+ zungrq.f zungtr.f zunm2l.f zunm2r.f zunmbr.f zunmhr.f zunml2.f \ ++ zungrq.f zungtr.f zunm2l.f zunm2r.f zunmbr.f zunmhr.f zunml2.f zunm22.f \ + zunmlq.f zunmql.f zunmqr.f zunmr2.f zunmr3.f zunmrq.f zunmrz.f \ + zunmtr.f zupgtr.f \ + zupmtr.f izmax1.f dzsum1.f zstemr.f \ @@ -368,7 +425,22 @@ diff -Nur lapack-3.1.1.orig/Makefile.am lapack-3.1.1/Makefile.am + zbbcsd.f zlapmr.f zunbdb.f zunbdb1.f zunbdb2.f zunbdb3.f zunbdb4.f \ + zunbdb5.f zunbdb6.f zuncsd.f zuncsd2by1.f \ + zgeqrt.f zgeqrt2.f zgeqrt3.f zgemqrt.f \ -+ ztpqrt.f ztpqrt2.f ztpmqrt.f ztprfb.f ++ ztpqrt.f ztpqrt2.f ztpmqrt.f ztprfb.f \ ++ ztplqt.f ztplqt2.f ztpmlqt.f \ ++ zgelqt.f zgelqt3.f zgemlqt.f \ ++ zgetsls.f zgeqr.f zlatsqr.f zlamtsqr.f zgemqr.f \ ++ zgelq.f zlaswlq.f zlamswlq.f zgemlq.f \ ++ zhetrd_2stage.f zhetrd_he2hb.f zhetrd_hb2st.F zhb2st_kernels.f \ ++ zheevd_2stage.f zheev_2stage.f zheevx_2stage.f zheevr_2stage.f \ ++ zhbev_2stage.f zhbevx_2stage.f zhbevd_2stage.f zhegv_2stage.f \ ++ DEPRECATED/sgegs.f DEPRECATED/sgegv.f DEPRECATED/sgeqpf.f DEPRECATED/sgelsx.f DEPRECATED/sggsvd.f \ ++ DEPRECATED/sggsvp.f DEPRECATED/slahrd.f DEPRECATED/slatzm.f DEPRECATED/stzrqf.f \ ++ DEPRECATED/cgegs.f DEPRECATED/cgegv.f DEPRECATED/cgeqpf.f DEPRECATED/cgelsx.f DEPRECATED/cggsvd.f \ ++ DEPRECATED/cggsvp.f DEPRECATED/clahrd.f DEPRECATED/clatzm.f DEPRECATED/ctzrqf.f \ ++ DEPRECATED/dgegs.f DEPRECATED/dgegv.f DEPRECATED/dgeqpf.f DEPRECATED/dgelsx.f DEPRECATED/dggsvd.f \ ++ DEPRECATED/dggsvp.f DEPRECATED/dlahrd.f DEPRECATED/dlatzm.f DEPRECATED/dtzrqf.f \ ++ DEPRECATED/zgegs.f DEPRECATED/zgegv.f DEPRECATED/zgeqpf.f DEPRECATED/zgelsx.f DEPRECATED/zggsvd.f \ ++ DEPRECATED/zggsvp.f DEPRECATED/zlahrd.f DEPRECATED/zlatzm.f DEPRECATED/ztzrqf.f +# these require XBLAS +XBLASSRC = \ + sgesvxx.f sgerfsx.f sla_gerfsx_extended.f sla_geamv.f \ @@ -408,19 +480,19 @@ diff -Nur lapack-3.1.1.orig/Makefile.am lapack-3.1.1/Makefile.am + +# these sources use hacks to detect fp precision, optimization would break them +slamch.lo dlamch.lo:: FFLAGS += -O0 ---- lapack-3.4.0.orig/lapacke/Makefile.am 1970-01-01 01:00:00.000000000 +0100 -+++ lapack-3.4.0/lapacke/Makefile.am 2007-08-06 22:06:57.000000000 +0100 +--- lapack-3.4.0.orig/LAPACKE/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ lapack-3.4.0/LAPACKE/Makefile.am 2007-08-06 22:06:57.000000000 +0100 @@ -0,0 +1,4 @@ +SUBDIRS=src +include_HEADERS=include/lapacke.h include/lapacke_config.h include/lapacke_utils.h include/lapacke_mangling.h +pkgconfigdir=$(libdir)/pkgconfig +pkgconfig_DATA=lapacke.pc ---- lapack-3.4.0.orig/lapacke/src/Makefile.am 1970-01-01 01:00:00.000000000 +0100 -+++ lapack-3.4.0/lapacke/src/Makefile.am 2007-08-06 22:06:57.000000000 +0100 +--- lapack-3.4.0.orig/LAPACKE/src/Makefile.am 1970-01-01 01:00:00.000000000 +0100 ++++ lapack-3.4.0/LAPACKE/src/Makefile.am 2007-08-06 22:06:57.000000000 +0100 @@ -0,0 +1,2070 @@ +LIBTOOL = $(SHELL) $(top_builddir)/libtool +lib_LTLIBRARIES = liblapacke.la -+liblapacke_la_CPPFLAGS = -I$(top_srcdir)/lapacke/include ++liblapacke_la_CPPFLAGS = -I$(top_srcdir)/LAPACKE/include +liblapacke_la_LDFLAGS = -version-info @LIBVERSION@ +liblapacke_la_LIBADD = $(top_builddir)/SRC/liblapack.la $(top_builddir)/BLAS/SRC/libblas.la +liblapacke_la_SOURCES = $(LAPACKE_SRCS) $(LAPACKE_UTILS_SRCS) @@ -2488,22 +2560,3 @@ diff -Nur lapack-3.1.1.orig/Makefile.am lapack-3.1.1/Makefile.am + ../utils/lapacke_ctp_nancheck.c ../utils/lapacke_dtr_trans.c ../utils/lapacke_str_trans.c ../utils/lapacke_ztp_trans.c \ + ../utils/lapacke_ctp_trans.c ../utils/lapacke_lsame.c ../utils/lapacke_xerbla.c ../utils/lapacke_ztr_nancheck.c \ + ../utils/lapacke_ctr_nancheck.c ../utils/lapacke_make_complex_double.c ../utils/lapacke_z_nancheck.c ../utils/lapacke_ztr_trans.c ---- lapack-3.4.1/lapacke/include/lapacke_mangling.h.orig 1970-01-01 01:00:00.000000000 +0100 -+++ lapack-3.4.1/lapacke/include/lapacke_mangling.h 2012-06-25 17:47:32.129249310 +0200 -@@ -0,0 +1,16 @@ -+#ifndef LAPACK_HEADER_INCLUDED -+#define LAPACK_HEADER_INCLUDED -+ -+/* Mangling for Fortran global symbols without underscores. */ -+#define LAPACK_GLOBAL(name,NAME) name##_ -+ -+/* Mangling for Fortran global symbols with underscores. */ -+#define LAPACK_GLOBAL_(name,NAME) name##_ -+ -+/* Mangling for Fortran module symbols without underscores. */ -+#define LAPACK_MODULE(mod_name,name, mod_NAME,NAME) __##mod_name##_MOD_##name -+ -+/* Mangling for Fortran module symbols with underscores. */ -+#define LAPACK_MODULE_(mod_name,name, mod_NAME,NAME) __##mod_name##_MOD_##name -+ -+#endif diff --git a/lapack.spec b/lapack.spec index 72a1601..d7da2a1 100644 --- a/lapack.spec +++ b/lapack.spec @@ -5,15 +5,15 @@ Summary: The LAPACK libraries for numerical linear algebra Summary(pl.UTF-8): Biblioteki numeryczne LAPACK do algebry liniowej Name: lapack -Version: 3.5.0 -%define man_ver 3.5.0 -Release: 2 -License: freely distributable +Version: 3.7.0 +%define man_ver 3.7.0 +Release: 1 +License: BSD-like Group: Libraries Source0: http://www.netlib.org/lapack/%{name}-%{version}.tgz -# Source0-md5: b1d3e3e425b2e44a06760ff173104bdf +# Source0-md5: 697bb8d67c7d336a0f339cc9dd0fa72f Source1: http://www.netlib.org/lapack/manpages-%{man_ver}.tgz -# Source1-md5: 275687b7e06498798e88b1ca8481b3e2 +# Source1-md5: 5d538ef8b8240bf7e9895feae45428dc Patch0: %{name}-automake_support.patch Patch1: blas-nan.patch URL: http://www.netlib.org/lapack/ @@ -183,26 +183,23 @@ LAPACK. %patch0 -p1 %patch1 -p1 # directory INSTALL conflicts with file INSTALL needed by automake -mv -f INSTALL INSTALLSRC +%{__mv} INSTALL INSTALLSRC # copy selected routines; use INT_ETIME versions of second cp -f INSTALLSRC/{ilaver,slamch,dlamch,second_INT_ETIME,dsecnd_INT_ETIME}.f SRC # bogus -%{__rm} man/man3/_Users_julie_Documents_Boulot_lapack-dev_lapack_trunk_*.3 \ - man/man3/__*.3 +%{__rm} man/man3/{_Users_julie_Downloads_lapack-*,groups-usr.dox}.3 # duplicated... -%{__rm} man/man3/{INSTALL_ilaver,INSTALL_lsame,SRC_xerbla,SRC_xerbla_array}.f.3 +%{__rm} man/man3/{SRC_xerbla,SRC_xerbla_array}.f.3 # ...in BLAS and LAPACK sources; keep versions from BLAS -mv -f man/man3/BLAS_SRC_lsame.f.3 man/man3/lsame.f.3 -mv -f man/man3/BLAS_SRC_xerbla.f.3 man/man3/xerbla.f.3 -mv -f man/man3/BLAS_SRC_xerbla_array.f.3 man/man3/xerbla_array.f.3 -sed -i -e 's,man3/INSTALL_,man3/,' man/man3/lsame.3 -sed -i -e 's,man3/SRC_,man3/,' man/man3/{ilaver,xerbla,xerbla_array}.3 -# ...in SRC and INSTALL dirs -mv -f man/man3/SRC_ilaver.f.3 man/man3/ilaver.f.3 -# [sd]lamchf77.f is not used -%{__rm} man/man3/{dlamc1,dlamc2,dlamc4,dlamc5,dlamchf77.f}.3 -%{__rm} man/man3/{slamc1,slamc2,slamc4,slamc5,slamchf77.f}.3 +%{__mv} man/man3/BLAS_SRC_xerbla.f.3 man/man3/xerbla.f.3 +%{__mv} man/man3/BLAS_SRC_xerbla_array.f.3 man/man3/xerbla_array.f.3 +# not used variants of some procedures +%{__rm} man/man3/{VARIANTS_*,sceil.f}.3 +# directory only pages with no real information and non-man references to others +%{__rm} man/man3/{GB,GE,GT,HE,OTHERcomputational,OTHEReigen,OTHERsolve,PO,PT,SY,aux_{eig,lin,matgen},{auxiliary,computational}{GB,GE,GT,HE,PO,PT,SY},blas,blastesting,{complex,complex16}{POauxiliary,SYeigen,_blas_testing,_lin,_matgen},{double,real}{{GT,PO,PT}auxiliary,_matgen},{double,single}{_blas_testing,_lin},eig,eigen{GE,HE,SY},lapack,level{1,2,3},lin,matgen,singGE,solve{GB,GE,GT,HE,PO,PT,SY},testing}.3 +# documentation for examples +%{__rm} man/man3/{LDA,LDB,N,NRHS,example_*,lapacke_example_aux.*,main,print_*}.3 %build %{__libtoolize} @@ -224,21 +221,31 @@ rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT%{_mandir}/man3 echo "%defattr(644,root,root,755)" > blasmans.list echo "%defattr(644,root,root,755)" > mans.list +echo "%defattr(644,root,root,755)" > lapackemans.list +BLAS_ADDITIONAL='aux_blas|(complex|complex16|double|single)_blas_level[123]' +LAPACK_ADDITIONAL='OTHERauxiliary|(aux|complex|complex16|double|real|variants)(GB|GE|GT|HE|OTHER|PO|PT|SY)(auxiliary|computational|eigen|sing|solve)|(complex|complex16|double|single)_eig|variants(GE|OTHER|PO)computational' +MANS_ADDITIONAL="$BLAS_ADDITIONAL|$LAPACK_ADDITIONAL" for f in man/man3/*.3 ; do cp -p "$f" $RPM_BUILD_ROOT%{_mandir}/man3 bn=$(basename $f) - if echo "$bn" | grep '\.f\.3$' ; then + if echo "$bn" | grep '\.[cfh]\.3$' ; then ffn="${bn%.3}" - elif grep '\.f\.3$' "$f" ; then - ffn=$(sed -e '1s,^\.so man3/\(.*\.f\)\.3,\1,' $f) + elif echo "$bn" | grep -E "^($MANS_ADDITIONAL)\.3\$" ; then + ffn="${bn%.3}" + elif grep '^\.so man3/.*\.[cfh]\.3$' "$f" ; then + ffn=$(sed -e '1s,^\.so man3/\(.*\.[cfh]\)\.3,\1,' $f) + elif grep -E "^\.so man3/($MANS_ADDITIONAL)\.3" "$f"; then + ffn=$(sed -e '1s,^\.so man3/\([^.]*\)\.3,\1,' $f) else echo "Unknown manpage: $f" exit 1 fi - if [ -f "BLAS/SRC/$ffn" ]; then + if [ -f "BLAS/SRC/$ffn" ] || echo "$ffn" | grep -E "^($BLAS_ADDITIONAL)\$" ; then echo "%{_mandir}/man3/${bn}*" >> blasmans.list - elif [ -f "SRC/$ffn" -o -f "INSTALLSRC/$ffn" ]; then + elif [ -f "SRC/$ffn" -o -f "INSTALLSRC/$ffn" ] || echo "$ffn" | grep -E "^($LAPACK_ADDITIONAL)\$"; then echo "%{_mandir}/man3/${bn}*" >> mans.list + elif [ -f "LAPACKE/include/$ffn" -o -f "LAPACKE/src/$ffn" -o -f "LAPACKE/utils/$ffn" ]; then + echo "%{_mandir}/man3/${bn}*" >> lapackemans.list else echo "Unknown manpage: $f (source file: $ffn)" exit 1 @@ -259,9 +266,9 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(644,root,root,755) -%doc README +%doc LICENSE README %attr(755,root,root) %{_libdir}/liblapack.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/liblapack.so.2 +%attr(755,root,root) %ghost %{_libdir}/liblapack.so.3 %files devel -f mans.list %defattr(644,root,root,755) @@ -276,7 +283,7 @@ rm -rf $RPM_BUILD_ROOT %files -n blas %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libblas.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/libblas.so.2 +%attr(755,root,root) %ghost %{_libdir}/libblas.so.3 %files -n blas-devel -f blasmans.list %defattr(644,root,root,755) @@ -288,11 +295,11 @@ rm -rf $RPM_BUILD_ROOT %defattr(644,root,root,755) %{_libdir}/libblas.a -%files -n lapacke +%files -n lapacke -f lapackemans.list %defattr(644,root,root,755) -%doc lapacke/{LICENSE,README} +%doc LAPACKE/{LICENSE,README} %attr(755,root,root) %{_libdir}/liblapacke.so.*.*.* -%attr(755,root,root) %ghost %{_libdir}/liblapacke.so.2 +%attr(755,root,root) %ghost %{_libdir}/liblapacke.so.3 %files -n lapacke-devel %defattr(644,root,root,755) -- 2.44.0