Compare commits
No commits in common. "c9" and "c8" have entirely different histories.
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,2 +1,2 @@
|
|||||||
|
SOURCES/lapack-3.8.0.tar.gz
|
||||||
SOURCES/manpages.tgz
|
SOURCES/manpages.tgz
|
||||||
SOURCES/v3.9.0.tar.gz
|
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
|
55ac9d6be510883c5442c8aca967722cdf58fb29 SOURCES/lapack-3.8.0.tar.gz
|
||||||
eb9ce19ce73e645bfb22af5480f16190baf09ae3 SOURCES/manpages.tgz
|
eb9ce19ce73e645bfb22af5480f16190baf09ae3 SOURCES/manpages.tgz
|
||||||
0451d180eed2b12b94aaae77e772d7573e87bec4 SOURCES/v3.9.0.tar.gz
|
|
||||||
|
@ -1,138 +0,0 @@
|
|||||||
From 87536aa3c8bb0af00f66088fb6ac05d87509e011 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?S=C3=A9bastien=20Villemot?= <sebastien@debian.org>
|
|
||||||
Date: Sat, 23 Nov 2019 12:22:20 +0100
|
|
||||||
Subject: [PATCH] Restore missing prototypes for deprecated LAPACK functions
|
|
||||||
|
|
||||||
Some LAPACK functions prototypes were inadvertedly dropped in 3.9.0. As a
|
|
||||||
consequence, LAPACKE has several unresolved symbols.
|
|
||||||
|
|
||||||
Closes #365
|
|
||||||
---
|
|
||||||
LAPACKE/include/lapack.h | 100 +++++++++++++++++++++++++++++++++++++++
|
|
||||||
1 file changed, 100 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/LAPACKE/include/lapack.h b/LAPACKE/include/lapack.h
|
|
||||||
index 3f425325f..5c131d844 100644
|
|
||||||
--- a/LAPACKE/include/lapack.h
|
|
||||||
+++ b/LAPACKE/include/lapack.h
|
|
||||||
@@ -1842,6 +1842,28 @@ void LAPACK_zgeqlf(
|
|
||||||
lapack_complex_double* work, lapack_int const* lwork,
|
|
||||||
lapack_int* info );
|
|
||||||
|
|
||||||
+#define LAPACK_sgeqpf LAPACK_GLOBAL(sgeqpf,SGEQPF)
|
|
||||||
+void LAPACK_sgeqpf( lapack_int* m, lapack_int* n, float* a, lapack_int* lda,
|
|
||||||
+ lapack_int* jpvt, float* tau, float* work,
|
|
||||||
+ lapack_int *info );
|
|
||||||
+
|
|
||||||
+#define LAPACK_dgeqpf LAPACK_GLOBAL(dgeqpf,DGEQPF)
|
|
||||||
+void LAPACK_dgeqpf( lapack_int* m, lapack_int* n, double* a, lapack_int* lda,
|
|
||||||
+ lapack_int* jpvt, double* tau, double* work,
|
|
||||||
+ lapack_int *info );
|
|
||||||
+
|
|
||||||
+#define LAPACK_cgeqpf LAPACK_GLOBAL(cgeqpf,CGEQPF)
|
|
||||||
+void LAPACK_cgeqpf( lapack_int* m, lapack_int* n, lapack_complex_float* a,
|
|
||||||
+ lapack_int* lda, lapack_int* jpvt,
|
|
||||||
+ lapack_complex_float* tau, lapack_complex_float* work,
|
|
||||||
+ float* rwork, lapack_int *info );
|
|
||||||
+
|
|
||||||
+#define LAPACK_zgeqpf LAPACK_GLOBAL(zgeqpf,ZGEQPF)
|
|
||||||
+void LAPACK_zgeqpf( lapack_int* m, lapack_int* n, lapack_complex_double* a,
|
|
||||||
+ lapack_int* lda, lapack_int* jpvt,
|
|
||||||
+ lapack_complex_double* tau, lapack_complex_double* work,
|
|
||||||
+ double* rwork, lapack_int *info );
|
|
||||||
+
|
|
||||||
#define LAPACK_cgeqp3 LAPACK_GLOBAL(cgeqp3,CGEQP3)
|
|
||||||
void LAPACK_cgeqp3(
|
|
||||||
lapack_int const* m, lapack_int const* n,
|
|
||||||
@@ -3617,6 +3639,47 @@ void LAPACK_zggrqf(
|
|
||||||
lapack_complex_double* work, lapack_int const* lwork,
|
|
||||||
lapack_int* info );
|
|
||||||
|
|
||||||
+#define LAPACK_sggsvd LAPACK_GLOBAL(sggsvd,SGGSVD)
|
|
||||||
+lapack_int LAPACKE_sggsvd( int matrix_layout, char jobu, char jobv, char jobq,
|
|
||||||
+ lapack_int m, lapack_int n, lapack_int p,
|
|
||||||
+ lapack_int* k, lapack_int* l, float* a,
|
|
||||||
+ lapack_int lda, float* b, lapack_int ldb,
|
|
||||||
+ float* alpha, float* beta, float* u, lapack_int ldu,
|
|
||||||
+ float* v, lapack_int ldv, float* q, lapack_int ldq,
|
|
||||||
+ lapack_int* iwork );
|
|
||||||
+
|
|
||||||
+#define LAPACK_dggsvd LAPACK_GLOBAL(dggsvd,DGGSVD)
|
|
||||||
+lapack_int LAPACKE_dggsvd( int matrix_layout, char jobu, char jobv, char jobq,
|
|
||||||
+ lapack_int m, lapack_int n, lapack_int p,
|
|
||||||
+ lapack_int* k, lapack_int* l, double* a,
|
|
||||||
+ lapack_int lda, double* b, lapack_int ldb,
|
|
||||||
+ double* alpha, double* beta, double* u,
|
|
||||||
+ lapack_int ldu, double* v, lapack_int ldv, double* q,
|
|
||||||
+ lapack_int ldq, lapack_int* iwork );
|
|
||||||
+
|
|
||||||
+#define LAPACK_cggsvd LAPACK_GLOBAL(cggsvd,CGGSVD)
|
|
||||||
+lapack_int LAPACKE_cggsvd( int matrix_layout, char jobu, char jobv, char jobq,
|
|
||||||
+ lapack_int m, lapack_int n, lapack_int p,
|
|
||||||
+ lapack_int* k, lapack_int* l,
|
|
||||||
+ lapack_complex_float* a, lapack_int lda,
|
|
||||||
+ lapack_complex_float* b, lapack_int ldb,
|
|
||||||
+ float* alpha, float* beta, lapack_complex_float* u,
|
|
||||||
+ lapack_int ldu, lapack_complex_float* v,
|
|
||||||
+ lapack_int ldv, lapack_complex_float* q,
|
|
||||||
+ lapack_int ldq, lapack_int* iwork );
|
|
||||||
+
|
|
||||||
+#define LAPACK_zggsvd LAPACK_GLOBAL(zggsvd,ZGGSVD)
|
|
||||||
+lapack_int LAPACKE_zggsvd( int matrix_layout, char jobu, char jobv, char jobq,
|
|
||||||
+ lapack_int m, lapack_int n, lapack_int p,
|
|
||||||
+ lapack_int* k, lapack_int* l,
|
|
||||||
+ lapack_complex_double* a, lapack_int lda,
|
|
||||||
+ lapack_complex_double* b, lapack_int ldb,
|
|
||||||
+ double* alpha, double* beta,
|
|
||||||
+ lapack_complex_double* u, lapack_int ldu,
|
|
||||||
+ lapack_complex_double* v, lapack_int ldv,
|
|
||||||
+ lapack_complex_double* q, lapack_int ldq,
|
|
||||||
+ lapack_int* iwork );
|
|
||||||
+
|
|
||||||
#define LAPACK_cggsvd3 LAPACK_GLOBAL(cggsvd3,CGGSVD3)
|
|
||||||
void LAPACK_cggsvd3(
|
|
||||||
char const* jobu, char const* jobv, char const* jobq,
|
|
||||||
@@ -3679,6 +3742,43 @@ void LAPACK_zggsvd3(
|
|
||||||
lapack_int* iwork,
|
|
||||||
lapack_int* info );
|
|
||||||
|
|
||||||
+#define LAPACK_sggsvp LAPACK_GLOBAL(sggsvp,SGGSVP)
|
|
||||||
+lapack_int LAPACKE_sggsvp( int matrix_layout, char jobu, char jobv, char jobq,
|
|
||||||
+ lapack_int m, lapack_int p, lapack_int n, float* a,
|
|
||||||
+ lapack_int lda, float* b, lapack_int ldb, float tola,
|
|
||||||
+ float tolb, lapack_int* k, lapack_int* l, float* u,
|
|
||||||
+ lapack_int ldu, float* v, lapack_int ldv, float* q,
|
|
||||||
+ lapack_int ldq );
|
|
||||||
+
|
|
||||||
+#define LAPACK_dggsvp LAPACK_GLOBAL(dggsvp,DGGSVP)
|
|
||||||
+lapack_int LAPACKE_dggsvp( int matrix_layout, char jobu, char jobv, char jobq,
|
|
||||||
+ lapack_int m, lapack_int p, lapack_int n, double* a,
|
|
||||||
+ lapack_int lda, double* b, lapack_int ldb,
|
|
||||||
+ double tola, double tolb, lapack_int* k,
|
|
||||||
+ lapack_int* l, double* u, lapack_int ldu, double* v,
|
|
||||||
+ lapack_int ldv, double* q, lapack_int ldq );
|
|
||||||
+
|
|
||||||
+#define LAPACK_cggsvp LAPACK_GLOBAL(cggsvp,CGGSVP)
|
|
||||||
+lapack_int LAPACKE_cggsvp( int matrix_layout, char jobu, char jobv, char jobq,
|
|
||||||
+ lapack_int m, lapack_int p, lapack_int n,
|
|
||||||
+ lapack_complex_float* a, lapack_int lda,
|
|
||||||
+ lapack_complex_float* b, lapack_int ldb, float tola,
|
|
||||||
+ float tolb, lapack_int* k, lapack_int* l,
|
|
||||||
+ lapack_complex_float* u, lapack_int ldu,
|
|
||||||
+ lapack_complex_float* v, lapack_int ldv,
|
|
||||||
+ lapack_complex_float* q, lapack_int ldq );
|
|
||||||
+
|
|
||||||
+#define LAPACK_zggsvp LAPACK_GLOBAL(zggsvp,ZGGSVP)
|
|
||||||
+lapack_int LAPACKE_zggsvp( int matrix_layout, char jobu, char jobv, char jobq,
|
|
||||||
+ lapack_int m, lapack_int p, lapack_int n,
|
|
||||||
+ lapack_complex_double* a, lapack_int lda,
|
|
||||||
+ lapack_complex_double* b, lapack_int ldb,
|
|
||||||
+ double tola, double tolb, lapack_int* k,
|
|
||||||
+ lapack_int* l, lapack_complex_double* u,
|
|
||||||
+ lapack_int ldu, lapack_complex_double* v,
|
|
||||||
+ lapack_int ldv, lapack_complex_double* q,
|
|
||||||
+ lapack_int ldq );
|
|
||||||
+
|
|
||||||
#define LAPACK_cggsvp3 LAPACK_GLOBAL(cggsvp3,CGGSVP3)
|
|
||||||
void LAPACK_cggsvp3(
|
|
||||||
char const* jobu, char const* jobv, char const* jobq,
|
|
@ -1,7 +1,7 @@
|
|||||||
OBJCOPY = objcopy
|
OBJCOPY = objcopy
|
||||||
|
|
||||||
ifndef SYMBOLSUFFIX
|
ifndef SYMBOLPREFIX
|
||||||
SYMBOLSUFFIX =
|
SYMBOLPREFIX =
|
||||||
endif
|
endif
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
@ -56,29 +56,29 @@ OBJS= $(SBLAS1) $(SBLAS2) $(SBLAS3) $(DBLAS1) $(DBLAS2) $(DBLAS3) \
|
|||||||
$(ALLBLAS)
|
$(ALLBLAS)
|
||||||
|
|
||||||
static: $(OBJS)
|
static: $(OBJS)
|
||||||
ifeq "$(SYMBOLSUFFIX)" ""
|
ifeq "$(SYMBOLPREFIX)" ""
|
||||||
ar ruv libblas.a $(OBJS)
|
ar ruv libblas.a $(OBJS)
|
||||||
ranlib libblas.a
|
ranlib libblas.a
|
||||||
else
|
else
|
||||||
ar ruv libblas$(SYMBOLSUFFIX).a $(OBJS)
|
ar ruv libblas$(SYMBOLPREFIX).a $(OBJS)
|
||||||
ranlib libblas$(SYMBOLSUFFIX).a
|
ranlib libblas$(SYMBOLPREFIX).a
|
||||||
for i in `nm libblas$(SYMBOLSUFFIX).a |grep " T " | awk '{print $$3}'`; do echo "$$i" "64_$$i"; done > blas-static-prefix.def.dirty
|
for i in `nm libblas$(SYMBOLPREFIX).a |grep " T " | awk '{print $$3}'`; do echo "$$i" "64_$$i"; done > blas-static-prefix.def.dirty
|
||||||
sort -n blas-static-prefix.def.dirty | uniq > blas-static-prefix.def
|
sort -n blas-static-prefix.def.dirty | uniq > blas-static-prefix.def
|
||||||
$(OBJCOPY) --redefine-syms blas-static-prefix.def libblas$(SYMBOLSUFFIX).a libblas$(SYMBOLSUFFIX).a.fixed
|
$(OBJCOPY) --redefine-syms blas-static-prefix.def libblas$(SYMBOLPREFIX).a libblas$(SYMBOLPREFIX).a.fixed
|
||||||
rm -rf libblas$(SYMBOLSUFFIX).a
|
rm -rf libblas$(SYMBOLPREFIX).a
|
||||||
mv libblas$(SYMBOLSUFFIX).a.fixed libblas$(SYMBOLSUFFIX).a
|
mv libblas$(SYMBOLPREFIX).a.fixed libblas$(SYMBOLPREFIX).a
|
||||||
endif
|
endif
|
||||||
|
|
||||||
shared: $(OBJS)
|
shared: $(OBJS)
|
||||||
ifeq "$(SYMBOLSUFFIX)" ""
|
ifeq "$(SYMBOLPREFIX)" ""
|
||||||
# No renaming needed
|
# No renaming needed
|
||||||
cc $(CFLAGS) -shared -Wl,-soname,libblas.so.@SHORTVER@ -o libblas.so.@LONGVER@ $(OBJS) $(LDFLAGS) -lm -lgfortran -lc
|
cc $(CFLAGS) -shared -Wl,-soname,libblas.so.@SHORTVER@ -o libblas.so.@LONGVER@ $(OBJS) $(LDFLAGS) -lm -lgfortran -lc
|
||||||
else
|
else
|
||||||
cc $(CFLAGS) -shared -Wl,-soname,libblas$(SYMBOLSUFFIX).so.@SHORTVER@ -o libblas$(SYMBOLSUFFIX).so.@LONGVER@ $(OBJS) $(LDFLAGS) -lm -lgfortran -lc
|
cc $(CFLAGS) -shared -Wl,-soname,libblas$(SYMBOLPREFIX).so.@SHORTVER@ -o libblas$(SYMBOLPREFIX).so.@LONGVER@ $(OBJS) $(LDFLAGS) -lm -lgfortran -lc
|
||||||
# generate a list of all symbols in shared library and rename with SYMBOLSUFFIX
|
# generate a list of all symbols in shared library and rename with SYMBOLPREFIX
|
||||||
for i in `readelf -Ws libblas$(SYMBOLSUFFIX).so.@LONGVER@ | awk '{print $$8}' | grep -v GLIBC |grep -v GFORTRAN |grep -v "Name" `; do echo "$$i" "64_$$i"; done > blas-prefix.def.dirty
|
for i in `readelf -Ws libblas$(SYMBOLPREFIX).so.@LONGVER@ | awk '{print $$8}' | grep -v GLIBC |grep -v GFORTRAN |grep -v "Name" `; do echo "$$i" "64_$$i"; done > blas-prefix.def.dirty
|
||||||
sort -n blas-prefix.def.dirty | uniq > blas-prefix.def
|
sort -n blas-prefix.def.dirty | uniq > blas-prefix.def
|
||||||
$(OBJCOPY) --redefine-syms blas-prefix.def libblas$(SYMBOLSUFFIX).so.@LONGVER@ libblas$(SYMBOLSUFFIX).so.@LONGVER@.fixed
|
$(OBJCOPY) --redefine-syms blas-prefix.def libblas$(SYMBOLPREFIX).so.@LONGVER@ libblas$(SYMBOLPREFIX).so.@LONGVER@.fixed
|
||||||
rm -rf libblas$(SYMBOLSUFFIX).so.@LONGVER@
|
rm -rf libblas$(SYMBOLPREFIX).so.@LONGVER@
|
||||||
mv libblas$(SYMBOLSUFFIX).so.@LONGVER@.fixed libblas$(SYMBOLSUFFIX).so.@LONGVER@
|
mv libblas$(SYMBOLPREFIX).so.@LONGVER@.fixed libblas$(SYMBOLPREFIX).so.@LONGVER@
|
||||||
endif
|
endif
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
OBJCOPY = objcopy
|
OBJCOPY = objcopy
|
||||||
|
|
||||||
ifndef SYMBOLSUFFIX
|
ifndef SYMBOLPREFIX
|
||||||
SYMBOLSUFFIX =
|
SYMBOLPREFIX =
|
||||||
endif
|
endif
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
@ -70,30 +70,30 @@ OBJS= $(SLEV1) $(DLEV1) $(CLEV1) $(ZLEV1) $(SCLEV1) $(SLEV2) $(DLEV2) $(CLEV2) \
|
|||||||
$(ZLEV2) $(SLEV3) $(DLEV3) $(CLEV3) $(ZLEV3) $(ERRHAND)
|
$(ZLEV2) $(SLEV3) $(DLEV3) $(CLEV3) $(ZLEV3) $(ERRHAND)
|
||||||
|
|
||||||
static: $(OBJS)
|
static: $(OBJS)
|
||||||
ifeq "$(SYMBOLSUFFIX)" ""
|
ifeq "$(SYMBOLPREFIX)" ""
|
||||||
ar ruv libcblas.a $(OBJS)
|
ar ruv libcblas.a $(OBJS)
|
||||||
ranlib libcblas.a
|
ranlib libcblas.a
|
||||||
else
|
else
|
||||||
ar ruv libcblas$(SYMBOLSUFFIX).a $(OBJS)
|
ar ruv libcblas$(SYMBOLPREFIX).a $(OBJS)
|
||||||
ranlib libcblas$(SYMBOLSUFFIX).a
|
ranlib libcblas$(SYMBOLPREFIX).a
|
||||||
for i in `nm libcblas$(SYMBOLSUFFIX).a |grep " T " | awk '{print $$3}'`; do echo "$$i" "64_$$i"; done > cblas-static-prefix.def.dirty
|
for i in `nm libcblas$(SYMBOLPREFIX).a |grep " T " | awk '{print $$3}'`; do echo "$$i" "64_$$i"; done > cblas-static-prefix.def.dirty
|
||||||
sort -n cblas-static-prefix.def.dirty | uniq > cblas-static-prefix.def
|
sort -n cblas-static-prefix.def.dirty | uniq > cblas-static-prefix.def
|
||||||
$(OBJCOPY) --redefine-syms cblas-static-prefix.def libcblas$(SYMBOLSUFFIX).a libcblas$(SYMBOLSUFFIX).a.fixed
|
$(OBJCOPY) --redefine-syms cblas-static-prefix.def libcblas$(SYMBOLPREFIX).a libcblas$(SYMBOLPREFIX).a.fixed
|
||||||
rm -rf libcblas$(SYMBOLSUFFIX).a
|
rm -rf libcblas$(SYMBOLPREFIX).a
|
||||||
mv libcblas$(SYMBOLSUFFIX).a.fixed libcblas$(SYMBOLSUFFIX).a
|
mv libcblas$(SYMBOLPREFIX).a.fixed libcblas$(SYMBOLPREFIX).a
|
||||||
endif
|
endif
|
||||||
|
|
||||||
shared: $(OBJS)
|
shared: $(OBJS)
|
||||||
ifeq "$(SYMBOLSUFFIX)" ""
|
ifeq "$(SYMBOLPREFIX)" ""
|
||||||
# No renaming needed
|
# No renaming needed
|
||||||
cc $(CFLAGS) -shared -Wl,-soname,libcblas.so.@SHORTVER@ -o libcblas.so.@LONGVER@ $(OBJS) $(LDFLAGS) -L../../ -lblas -lm -lgfortran -lc
|
cc $(CFLAGS) -shared -Wl,-soname,libcblas.so.@SHORTVER@ -o libcblas.so.@LONGVER@ $(OBJS) $(LDFLAGS) -L../../ -lblas -lm -lgfortran -lc
|
||||||
else
|
else
|
||||||
cc $(CFLAGS) -shared -Wl,-soname,libcblas$(SYMBOLSUFFIX).so.@SHORTVER@ -o libcblas$(SYMBOLSUFFIX).so.@LONGVER@ $(OBJS) $(LDFLAGS) -L../.. -lblas -lm -lgfortran -lc
|
cc $(CFLAGS) -shared -Wl,-soname,libcblas$(SYMBOLPREFIX).so.@SHORTVER@ -o libcblas$(SYMBOLPREFIX).so.@LONGVER@ $(OBJS) $(LDFLAGS) -L../.. -lblas -lm -lgfortran -lc
|
||||||
# generate a list of all symbols in shared library and rename with SYMBOLSUFFIX
|
# generate a list of all symbols in shared library and rename with SYMBOLPREFIX
|
||||||
for i in `readelf -Ws libcblas$(SYMBOLSUFFIX).so.@LONGVER@ | awk '{print $$8}' | grep -v GLIBC |grep -v GFORTRAN |grep -v "Name" `; do echo "$$i" "64_$$i"; done > cblas-prefix.def.dirty
|
for i in `readelf -Ws libcblas$(SYMBOLPREFIX).so.@LONGVER@ | awk '{print $$8}' | grep -v GLIBC |grep -v GFORTRAN |grep -v "Name" `; do echo "$$i" "64_$$i"; done > cblas-prefix.def.dirty
|
||||||
sort -n cblas-prefix.def.dirty | uniq > cblas-prefix.def
|
sort -n cblas-prefix.def.dirty | uniq > cblas-prefix.def
|
||||||
$(OBJCOPY) --redefine-syms cblas-prefix.def libcblas$(SYMBOLSUFFIX).so.@LONGVER@ libcblas$(SYMBOLSUFFIX).so.@LONGVER@.fixed
|
$(OBJCOPY) --redefine-syms cblas-prefix.def libcblas$(SYMBOLPREFIX).so.@LONGVER@ libcblas$(SYMBOLPREFIX).so.@LONGVER@.fixed
|
||||||
rm -rf libcblas$(SYMBOLSUFFIX).so.@LONGVER@
|
rm -rf libcblas$(SYMBOLPREFIX).so.@LONGVER@
|
||||||
mv libcblas$(SYMBOLSUFFIX).so.@LONGVER@.fixed libcblas$(SYMBOLSUFFIX).so.@LONGVER@
|
mv libcblas$(SYMBOLPREFIX).so.@LONGVER@.fixed libcblas$(SYMBOLPREFIX).so.@LONGVER@
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -2,8 +2,8 @@ include ../make.inc
|
|||||||
|
|
||||||
OBJCOPY = objcopy
|
OBJCOPY = objcopy
|
||||||
|
|
||||||
ifndef SYMBOLSUFFIX
|
ifndef SYMBOLPREFIX
|
||||||
SYMBOLSUFFIX =
|
SYMBOLPREFIX =
|
||||||
endif
|
endif
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
@ -38,7 +38,7 @@ SLASRC = sbdsvdx.o sgbbrd.o sgbcon.o sgbequ.o sgbrfs.o sgbsv.o \
|
|||||||
slatbs.o slatdf.o slatps.o slatrd.o slatrs.o slatrz.o \
|
slatbs.o slatdf.o slatps.o slatrd.o slatrs.o slatrz.o \
|
||||||
slauu2.o slauum.o sopgtr.o sopmtr.o sorg2l.o sorg2r.o \
|
slauu2.o slauum.o sopgtr.o sopmtr.o sorg2l.o sorg2r.o \
|
||||||
sorgbr.o sorghr.o sorgl2.o sorglq.o sorgql.o sorgqr.o sorgr2.o \
|
sorgbr.o sorghr.o sorgl2.o sorglq.o sorgql.o sorgqr.o sorgr2.o \
|
||||||
sorgrq.o sorgtr.o sorgtsqr.o sorm2l.o sorm2r.o sorm22.o \
|
sorgrq.o sorgtr.o sorm2l.o sorm2r.o sorm22.o \
|
||||||
sormbr.o sormhr.o sorml2.o sormlq.o sormql.o sormqr.o sormr2.o \
|
sormbr.o sormhr.o sorml2.o sormlq.o sormql.o sormqr.o sormr2.o \
|
||||||
sormr3.o sormrq.o sormrz.o sormtr.o spbcon.o spbequ.o spbrfs.o \
|
sormr3.o sormrq.o sormrz.o sormtr.o spbcon.o spbequ.o spbrfs.o \
|
||||||
spbstf.o spbsv.o spbsvx.o \
|
spbstf.o spbsv.o spbsvx.o \
|
||||||
@ -80,11 +80,9 @@ SLASRC = sbdsvdx.o sgbbrd.o sgbcon.o sgbequ.o sgbrfs.o sgbsv.o \
|
|||||||
sgetsls.o sgeqr.o slatsqr.o slamtsqr.o sgemqr.o \
|
sgetsls.o sgeqr.o slatsqr.o slamtsqr.o sgemqr.o \
|
||||||
sgelq.o slaswlq.o slamswlq.o sgemlq.o \
|
sgelq.o slaswlq.o slamswlq.o sgemlq.o \
|
||||||
stplqt.o stplqt2.o stpmlqt.o \
|
stplqt.o stplqt2.o stpmlqt.o \
|
||||||
sorhr_col.o slaorhr_col_getrfnp.o slaorhr_col_getrfnp2.o \
|
|
||||||
ssytrd_2stage.o ssytrd_sy2sb.o ssytrd_sb2st.o ssb2st_kernels.o \
|
ssytrd_2stage.o ssytrd_sy2sb.o ssytrd_sb2st.o ssb2st_kernels.o \
|
||||||
ssyevd_2stage.o ssyev_2stage.o ssyevx_2stage.o ssyevr_2stage.o \
|
ssyevd_2stage.o ssyev_2stage.o ssyevx_2stage.o ssyevr_2stage.o \
|
||||||
ssbev_2stage.o ssbevx_2stage.o ssbevd_2stage.o ssygv_2stage.o \
|
ssbev_2stage.o ssbevx_2stage.o ssbevd_2stage.o ssygv_2stage.o \
|
||||||
sgesvdq.o scombssq.o \
|
|
||||||
DEPRECATED/sgegs.o DEPRECATED/sgegv.o DEPRECATED/sgeqpf.o DEPRECATED/sgelsx.o \
|
DEPRECATED/sgegs.o DEPRECATED/sgegv.o DEPRECATED/sgeqpf.o DEPRECATED/sgelsx.o \
|
||||||
DEPRECATED/sggsvd.o DEPRECATED/sggsvp.o DEPRECATED/slahrd.o DEPRECATED/slatzm.o \
|
DEPRECATED/sggsvd.o DEPRECATED/sggsvp.o DEPRECATED/slahrd.o DEPRECATED/slatzm.o \
|
||||||
DEPRECATED/stzrqf.o
|
DEPRECATED/stzrqf.o
|
||||||
@ -161,7 +159,7 @@ CLASRC = cbdsqr.o cgbbrd.o cgbcon.o cgbequ.o cgbrfs.o cgbsv.o cgbsvx.o \
|
|||||||
ctptrs.o ctrcon.o ctrevc.o ctrevc3.o ctrexc.o ctrrfs.o ctrsen.o ctrsna.o \
|
ctptrs.o ctrcon.o ctrevc.o ctrevc3.o ctrexc.o ctrrfs.o ctrsen.o ctrsna.o \
|
||||||
ctrsyl.o ctrti2.o ctrtri.o ctrtrs.o ctzrzf.o cung2l.o cung2r.o \
|
ctrsyl.o ctrti2.o ctrtri.o ctrtrs.o ctzrzf.o cung2l.o cung2r.o \
|
||||||
cungbr.o cunghr.o cungl2.o cunglq.o cungql.o cungqr.o cungr2.o \
|
cungbr.o cunghr.o cungl2.o cunglq.o cungql.o cungqr.o cungr2.o \
|
||||||
cungrq.o cungtr.o cungtsqr.o cunm2l.o cunm2r.o cunmbr.o cunmhr.o cunml2.o cunm22.o \
|
cungrq.o cungtr.o cunm2l.o cunm2r.o cunmbr.o cunmhr.o cunml2.o cunm22.o \
|
||||||
cunmlq.o cunmql.o cunmqr.o cunmr2.o cunmr3.o cunmrq.o cunmrz.o \
|
cunmlq.o cunmql.o cunmqr.o cunmr2.o cunmr3.o cunmrq.o cunmrz.o \
|
||||||
cunmtr.o cupgtr.o cupmtr.o icmax1.o scsum1.o cstemr.o \
|
cunmtr.o cupgtr.o cupmtr.o icmax1.o scsum1.o cstemr.o \
|
||||||
chfrk.o ctfttp.o clanhf.o cpftrf.o cpftri.o cpftrs.o ctfsm.o ctftri.o \
|
chfrk.o ctfttp.o clanhf.o cpftrf.o cpftri.o cpftrs.o ctfsm.o ctftri.o \
|
||||||
@ -175,11 +173,9 @@ CLASRC = cbdsqr.o cgbbrd.o cgbcon.o cgbequ.o cgbrfs.o cgbsv.o cgbsvx.o \
|
|||||||
cgetsls.o cgeqr.o clatsqr.o clamtsqr.o cgemqr.o \
|
cgetsls.o cgeqr.o clatsqr.o clamtsqr.o cgemqr.o \
|
||||||
cgelq.o claswlq.o clamswlq.o cgemlq.o \
|
cgelq.o claswlq.o clamswlq.o cgemlq.o \
|
||||||
ctplqt.o ctplqt2.o ctpmlqt.o \
|
ctplqt.o ctplqt2.o ctpmlqt.o \
|
||||||
cunhr_col.o claunhr_col_getrfnp.o claunhr_col_getrfnp2.o \
|
|
||||||
chetrd_2stage.o chetrd_he2hb.o chetrd_hb2st.o chb2st_kernels.o \
|
chetrd_2stage.o chetrd_he2hb.o chetrd_hb2st.o chb2st_kernels.o \
|
||||||
cheevd_2stage.o cheev_2stage.o cheevx_2stage.o cheevr_2stage.o \
|
cheevd_2stage.o cheev_2stage.o cheevx_2stage.o cheevr_2stage.o \
|
||||||
chbev_2stage.o chbevx_2stage.o chbevd_2stage.o chegv_2stage.o \
|
chbev_2stage.o chbevx_2stage.o chbevd_2stage.o chegv_2stage.o \
|
||||||
cgesvdq.o \
|
|
||||||
DEPRECATED/cgegs.o DEPRECATED/cgegv.o \
|
DEPRECATED/cgegs.o DEPRECATED/cgegv.o \
|
||||||
DEPRECATED/cgeqpf.o DEPRECATED/cgelsx.o DEPRECATED/cggsvd.o \
|
DEPRECATED/cgeqpf.o DEPRECATED/cgelsx.o DEPRECATED/cggsvd.o \
|
||||||
DEPRECATED/cggsvp.o DEPRECATED/clahrd.o DEPRECATED/clatzm.o DEPRECATED/ctzrqf.o
|
DEPRECATED/cggsvp.o DEPRECATED/clahrd.o DEPRECATED/clatzm.o DEPRECATED/ctzrqf.o
|
||||||
@ -213,7 +209,7 @@ DLASRC = dbdsvdx.o dgbbrd.o dgbcon.o dgbequ.o dgbrfs.o dgbsv.o \
|
|||||||
dlatbs.o dlatdf.o dlatps.o dlatrd.o dlatrs.o dlatrz.o dlauu2.o \
|
dlatbs.o dlatdf.o dlatps.o dlatrd.o dlatrs.o dlatrz.o dlauu2.o \
|
||||||
dlauum.o dopgtr.o dopmtr.o dorg2l.o dorg2r.o \
|
dlauum.o dopgtr.o dopmtr.o dorg2l.o dorg2r.o \
|
||||||
dorgbr.o dorghr.o dorgl2.o dorglq.o dorgql.o dorgqr.o dorgr2.o \
|
dorgbr.o dorghr.o dorgl2.o dorglq.o dorgql.o dorgqr.o dorgr2.o \
|
||||||
dorgrq.o dorgtr.o dorgtsqr.o dorm2l.o dorm2r.o dorm22.o \
|
dorgrq.o dorgtr.o dorm2l.o dorm2r.o dorm22.o \
|
||||||
dormbr.o dormhr.o dorml2.o dormlq.o dormql.o dormqr.o dormr2.o \
|
dormbr.o dormhr.o dorml2.o dormlq.o dormql.o dormqr.o dormr2.o \
|
||||||
dormr3.o dormrq.o dormrz.o dormtr.o dpbcon.o dpbequ.o dpbrfs.o \
|
dormr3.o dormrq.o dormrz.o dormtr.o dpbcon.o dpbequ.o dpbrfs.o \
|
||||||
dpbstf.o dpbsv.o dpbsvx.o \
|
dpbstf.o dpbsv.o dpbsvx.o \
|
||||||
@ -257,11 +253,9 @@ DLASRC = dbdsvdx.o dgbbrd.o dgbcon.o dgbequ.o dgbrfs.o dgbsv.o \
|
|||||||
dgetsls.o dgeqr.o dlatsqr.o dlamtsqr.o dgemqr.o \
|
dgetsls.o dgeqr.o dlatsqr.o dlamtsqr.o dgemqr.o \
|
||||||
dgelq.o dlaswlq.o dlamswlq.o dgemlq.o \
|
dgelq.o dlaswlq.o dlamswlq.o dgemlq.o \
|
||||||
dtplqt.o dtplqt2.o dtpmlqt.o \
|
dtplqt.o dtplqt2.o dtpmlqt.o \
|
||||||
dorhr_col.o dlaorhr_col_getrfnp.o dlaorhr_col_getrfnp2.o \
|
|
||||||
dsytrd_2stage.o dsytrd_sy2sb.o dsytrd_sb2st.o dsb2st_kernels.o \
|
dsytrd_2stage.o dsytrd_sy2sb.o dsytrd_sb2st.o dsb2st_kernels.o \
|
||||||
dsyevd_2stage.o dsyev_2stage.o dsyevx_2stage.o dsyevr_2stage.o \
|
dsyevd_2stage.o dsyev_2stage.o dsyevx_2stage.o dsyevr_2stage.o \
|
||||||
dsbev_2stage.o dsbevx_2stage.o dsbevd_2stage.o dsygv_2stage.o \
|
dsbev_2stage.o dsbevx_2stage.o dsbevd_2stage.o dsygv_2stage.o \
|
||||||
dgesvdq.o dcombssq.o \
|
|
||||||
DEPRECATED/dgegs.o DEPRECATED/dgegv.o \
|
DEPRECATED/dgegs.o DEPRECATED/dgegv.o \
|
||||||
DEPRECATED/dgeqpf.o DEPRECATED/dgelsx.o DEPRECATED/dggsvd.o \
|
DEPRECATED/dgeqpf.o DEPRECATED/dgelsx.o DEPRECATED/dggsvd.o \
|
||||||
DEPRECATED/dggsvp.o DEPRECATED/dlahrd.o DEPRECATED/dlatzm.o DEPRECATED/dtzrqf.o
|
DEPRECATED/dggsvp.o DEPRECATED/dlahrd.o DEPRECATED/dlatzm.o DEPRECATED/dtzrqf.o
|
||||||
@ -338,7 +332,7 @@ ZLASRC = zbdsqr.o zgbbrd.o zgbcon.o zgbequ.o zgbrfs.o zgbsv.o zgbsvx.o \
|
|||||||
ztptrs.o ztrcon.o ztrevc.o ztrevc3.o ztrexc.o ztrrfs.o ztrsen.o ztrsna.o \
|
ztptrs.o ztrcon.o ztrevc.o ztrevc3.o ztrexc.o ztrrfs.o ztrsen.o ztrsna.o \
|
||||||
ztrsyl.o ztrti2.o ztrtri.o ztrtrs.o ztzrzf.o zung2l.o \
|
ztrsyl.o ztrti2.o ztrtri.o ztrtrs.o ztzrzf.o zung2l.o \
|
||||||
zung2r.o zungbr.o zunghr.o zungl2.o zunglq.o zungql.o zungqr.o zungr2.o \
|
zung2r.o zungbr.o zunghr.o zungl2.o zunglq.o zungql.o zungqr.o zungr2.o \
|
||||||
zungrq.o zungtr.o zungtsqr.o zunm2l.o zunm2r.o zunmbr.o zunmhr.o zunml2.o zunm22.o \
|
zungrq.o zungtr.o zunm2l.o zunm2r.o zunmbr.o zunmhr.o zunml2.o zunm22.o \
|
||||||
zunmlq.o zunmql.o zunmqr.o zunmr2.o zunmr3.o zunmrq.o zunmrz.o \
|
zunmlq.o zunmql.o zunmqr.o zunmr2.o zunmr3.o zunmrq.o zunmrz.o \
|
||||||
zunmtr.o zupgtr.o \
|
zunmtr.o zupgtr.o \
|
||||||
zupmtr.o izmax1.o dzsum1.o zstemr.o \
|
zupmtr.o izmax1.o dzsum1.o zstemr.o \
|
||||||
@ -354,11 +348,9 @@ ZLASRC = zbdsqr.o zgbbrd.o zgbcon.o zgbequ.o zgbrfs.o zgbsv.o zgbsvx.o \
|
|||||||
zgelqt.o zgelqt3.o zgemlqt.o \
|
zgelqt.o zgelqt3.o zgemlqt.o \
|
||||||
zgetsls.o zgeqr.o zlatsqr.o zlamtsqr.o zgemqr.o \
|
zgetsls.o zgeqr.o zlatsqr.o zlamtsqr.o zgemqr.o \
|
||||||
zgelq.o zlaswlq.o zlamswlq.o zgemlq.o \
|
zgelq.o zlaswlq.o zlamswlq.o zgemlq.o \
|
||||||
zunhr_col.o zlaunhr_col_getrfnp.o zlaunhr_col_getrfnp2.o \
|
|
||||||
zhetrd_2stage.o zhetrd_he2hb.o zhetrd_hb2st.o zhb2st_kernels.o \
|
zhetrd_2stage.o zhetrd_he2hb.o zhetrd_hb2st.o zhb2st_kernels.o \
|
||||||
zheevd_2stage.o zheev_2stage.o zheevx_2stage.o zheevr_2stage.o \
|
zheevd_2stage.o zheev_2stage.o zheevx_2stage.o zheevr_2stage.o \
|
||||||
zhbev_2stage.o zhbevx_2stage.o zhbevd_2stage.o zhegv_2stage.o \
|
zhbev_2stage.o zhbevx_2stage.o zhbevd_2stage.o zhegv_2stage.o \
|
||||||
zgesvdq.o \
|
|
||||||
|
|
||||||
SCLAUX = sbdsdc.o \
|
SCLAUX = sbdsdc.o \
|
||||||
sbdsqr.o sdisna.o slabad.o slacpy.o sladiv.o slae2.o slaebz.o \
|
sbdsqr.o sdisna.o slabad.o slacpy.o sladiv.o slae2.o slaebz.o \
|
||||||
@ -450,29 +442,29 @@ ALLXOBJ=$(SXLASRC) $(DXLASRC) $(CXLASRC) $(ZXLASRC) $(ALLXAUX)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
static: $(ALLOBJ) $(ALLXOBJ)
|
static: $(ALLOBJ) $(ALLXOBJ)
|
||||||
ifeq "$(SYMBOLSUFFIX)" ""
|
ifeq "$(SYMBOLPREFIX)" ""
|
||||||
ar ruv liblapack.a $(ALLOBJ) $(ALLXOBJ)
|
ar ruv liblapack.a $(ALLOBJ) $(ALLXOBJ)
|
||||||
ranlib liblapack.a
|
ranlib liblapack.a
|
||||||
else
|
else
|
||||||
ar ruv liblapack$(SYMBOLSUFFIX).a $(ALLOBJ) $(ALLXOBJ)
|
ar ruv liblapack$(SYMBOLPREFIX).a $(ALLOBJ) $(ALLXOBJ)
|
||||||
ranlib liblapack$(SYMBOLSUFFIX).a
|
ranlib liblapack$(SYMBOLPREFIX).a
|
||||||
for i in `nm liblapack$(SYMBOLSUFFIX).a |grep " T " | awk '{print $$3}'`; do echo "$$i" "64_$$i"; done > lapack-static-prefix.def.dirty
|
for i in `nm liblapack$(SYMBOLPREFIX).a |grep " T " | awk '{print $$3}'`; do echo "$$i" "64_$$i"; done > lapack-static-prefix.def.dirty
|
||||||
sort -n lapack-static-prefix.def.dirty | uniq > lapack-static-prefix.def
|
sort -n lapack-static-prefix.def.dirty | uniq > lapack-static-prefix.def
|
||||||
$(OBJCOPY) --redefine-syms lapack-static-prefix.def liblapack$(SYMBOLSUFFIX).a liblapack$(SYMBOLSUFFIX).a.fixed
|
$(OBJCOPY) --redefine-syms lapack-static-prefix.def liblapack$(SYMBOLPREFIX).a liblapack$(SYMBOLPREFIX).a.fixed
|
||||||
rm -rf liblapack$(SYMBOLSUFFIX).a
|
rm -rf liblapack$(SYMBOLPREFIX).a
|
||||||
mv liblapack$(SYMBOLSUFFIX).a.fixed liblapack$(SYMBOLSUFFIX).a
|
mv liblapack$(SYMBOLPREFIX).a.fixed liblapack$(SYMBOLPREFIX).a
|
||||||
endif
|
endif
|
||||||
|
|
||||||
shared: $(ALLOBJ) $(ALLXOBJ)
|
shared: $(ALLOBJ) $(ALLXOBJ)
|
||||||
ifeq "$(SYMBOLSUFFIX)" ""
|
ifeq "$(SYMBOLPREFIX)" ""
|
||||||
# No renaming needed
|
# No renaming needed
|
||||||
cc $(CFLAGS) -shared -Wl,-soname,liblapack.so.@SHORTVER@ -o liblapack.so.@LONGVER@ $(ALLOBJ) $(ALLXOBJ) $(LDFLAGS) -L.. -lblas -lm -lgfortran -lc
|
cc $(CFLAGS) -shared -Wl,-soname,liblapack.so.@SHORTVER@ -o liblapack.so.@LONGVER@ $(ALLOBJ) $(ALLXOBJ) $(LDFLAGS) -L.. -lblas -lm -lgfortran -lc
|
||||||
else
|
else
|
||||||
cc $(CFLAGS) -shared -Wl,-soname,liblapack$(SYMBOLSUFFIX).so.@SHORTVER@ -o liblapack$(SYMBOLSUFFIX).so.@LONGVER@ $(ALLOBJ) $(ALLXOBJ) $(LDFLAGS) -L.. -lblas -lm -lgfortran -lc
|
cc $(CFLAGS) -shared -Wl,-soname,liblapack$(SYMBOLPREFIX).so.@SHORTVER@ -o liblapack$(SYMBOLPREFIX).so.@LONGVER@ $(ALLOBJ) $(ALLXOBJ) $(LDFLAGS) -L.. -lblas -lm -lgfortran -lc
|
||||||
# generate a list of all symbols in shared library and rename with SYMBOLSUFFIX
|
# generate a list of all symbols in shared library and rename with SYMBOLPREFIX
|
||||||
for i in `readelf -Ws liblapack$(SYMBOLSUFFIX).so.@LONGVER@ | awk '{print $$8}' | grep -v GLIBC |grep -v GFORTRAN |grep -v "Name" `; do echo "$$i" "64_$$i"; done > lapack-prefix.def.dirty
|
for i in `readelf -Ws liblapack$(SYMBOLPREFIX).so.@LONGVER@ | awk '{print $$8}' | grep -v GLIBC |grep -v GFORTRAN |grep -v "Name" `; do echo "$$i" "64_$$i"; done > lapack-prefix.def.dirty
|
||||||
sort -n lapack-prefix.def.dirty | uniq > lapack-prefix.def
|
sort -n lapack-prefix.def.dirty | uniq > lapack-prefix.def
|
||||||
$(OBJCOPY) --redefine-syms lapack-prefix.def liblapack$(SYMBOLSUFFIX).so.@LONGVER@ liblapack$(SYMBOLSUFFIX).so.@LONGVER@.fixed
|
$(OBJCOPY) --redefine-syms lapack-prefix.def liblapack$(SYMBOLPREFIX).so.@LONGVER@ liblapack$(SYMBOLPREFIX).so.@LONGVER@.fixed
|
||||||
rm -rf liblapack$(SYMBOLSUFFIX).so.@LONGVER@
|
rm -rf liblapack$(SYMBOLPREFIX).so.@LONGVER@
|
||||||
mv liblapack$(SYMBOLSUFFIX).so.@LONGVER@.fixed liblapack$(SYMBOLSUFFIX).so.@LONGVER@
|
mv liblapack$(SYMBOLPREFIX).so.@LONGVER@.fixed liblapack$(SYMBOLPREFIX).so.@LONGVER@
|
||||||
endif
|
endif
|
||||||
|
21
SOURCES/lapack-3.7.1-lapacke-shared.patch
Normal file
21
SOURCES/lapack-3.7.1-lapacke-shared.patch
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
diff -up lapack-3.7.1/INSTALL/make.inc.gfortran.shared lapack-3.7.1/INSTALL/make.inc.gfortran
|
||||||
|
--- lapack-3.7.1/INSTALL/make.inc.gfortran.shared 2017-08-01 11:46:10.665067382 -0400
|
||||||
|
+++ lapack-3.7.1/INSTALL/make.inc.gfortran 2017-08-01 11:46:10.667067346 -0400
|
||||||
|
@@ -83,3 +83,4 @@ CBLASLIB = ../../libcblas.a
|
||||||
|
LAPACKLIB = liblapack.a
|
||||||
|
TMGLIB = libtmglib.a
|
||||||
|
LAPACKELIB = liblapacke.a
|
||||||
|
+SHLIB_LAPACKE = liblapacke.so
|
||||||
|
diff -up lapack-3.7.1/LAPACKE/Makefile.shared lapack-3.7.1/LAPACKE/Makefile
|
||||||
|
--- lapack-3.7.1/LAPACKE/Makefile.shared 2017-08-01 11:46:10.668067328 -0400
|
||||||
|
+++ lapack-3.7.1/LAPACKE/Makefile 2017-08-01 11:47:23.649755395 -0400
|
||||||
|
@@ -51,6 +51,9 @@ lapacke: include/lapacke_mangling.h
|
||||||
|
include/lapacke_mangling.h: include/lapacke_mangling_with_flags.h.in
|
||||||
|
cp $< $@
|
||||||
|
|
||||||
|
+shlib: lapacke
|
||||||
|
+ $(CC) $(CFLAGS) -shared -Wl,-soname,$(SHLIB_LAPACKE).@SHORTVER@ -o $(SHLIB_LAPACKE).@LONGVER@ src/*.o utils/*.o $(LDFLAGS) $(LIBS) -lgfortran -lc
|
||||||
|
+
|
||||||
|
lapacke_example: lapacke
|
||||||
|
$(MAKE) -C example
|
||||||
|
|
25
SOURCES/lapack-3.7.1-lapacke-tmglib.patch
Normal file
25
SOURCES/lapack-3.7.1-lapacke-tmglib.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
diff -up lapack-3.7.1/LAPACKE/Makefile.tmglib lapack-3.7.1/LAPACKE/Makefile
|
||||||
|
--- lapack-3.7.1/LAPACKE/Makefile.tmglib 2017-08-01 11:49:38.704327630 -0400
|
||||||
|
+++ lapack-3.7.1/LAPACKE/Makefile 2017-08-01 11:50:51.487019275 -0400
|
||||||
|
@@ -52,7 +52,7 @@ include/lapacke_mangling.h: include/lapa
|
||||||
|
cp $< $@
|
||||||
|
|
||||||
|
shlib: lapacke
|
||||||
|
- $(CC) $(CFLAGS) -shared -Wl,-soname,$(SHLIB_LAPACKE).@SHORTVER@ -o $(SHLIB_LAPACKE).@LONGVER@ src/*.o utils/*.o $(LDFLAGS) $(LIBS) -lgfortran -lc
|
||||||
|
+ $(CC) $(CFLAGS) -shared -Wl,-soname,$(SHLIB_LAPACKE).@SHORTVER@ -o $(SHLIB_LAPACKE).@LONGVER@ src/*.o utils/*.o $(LDFLAGS) $(LIBS) -lgfortran -lc ../TESTING/MATGEN/*.o
|
||||||
|
|
||||||
|
lapacke_example: lapacke
|
||||||
|
$(MAKE) -C example
|
||||||
|
diff -up lapack-3.7.1/LAPACKE/src/Makefile.tmglib lapack-3.7.1/LAPACKE/src/Makefile
|
||||||
|
diff -up lapack-3.7.1/Makefile.tmglib lapack-3.7.1/Makefile
|
||||||
|
--- lapack-3.7.1/Makefile.tmglib 2017-08-01 11:49:38.705327612 -0400
|
||||||
|
+++ lapack-3.7.1/Makefile 2017-08-01 11:52:11.149587246 -0400
|
||||||
|
@@ -20,7 +20,7 @@ cblaslib:
|
||||||
|
lapacklib:
|
||||||
|
$(MAKE) -C SRC
|
||||||
|
|
||||||
|
-lapackelib:
|
||||||
|
+lapackelib: tmglib
|
||||||
|
$(MAKE) -C LAPACKE
|
||||||
|
|
||||||
|
tmglib:
|
15
SOURCES/lapack-3.7.1-make.inc.patch
Normal file
15
SOURCES/lapack-3.7.1-make.inc.patch
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
diff -up lapack-3.7.1/INSTALL/make.inc.gfortran.fedora lapack-3.7.1/INSTALL/make.inc.gfortran
|
||||||
|
--- lapack-3.7.1/INSTALL/make.inc.gfortran.fedora 2017-08-01 11:44:51.631843862 -0400
|
||||||
|
+++ lapack-3.7.1/INSTALL/make.inc.gfortran 2017-08-01 11:45:32.001809404 -0400
|
||||||
|
@@ -20,9 +20,9 @@ CFLAGS = -O3
|
||||||
|
# should not compile LAPACK with flags such as -ffpe-trap=overflow.
|
||||||
|
#
|
||||||
|
FORTRAN = gfortran
|
||||||
|
-OPTS = -O2 -frecursive
|
||||||
|
+# OPTS = -O2 -frecursive
|
||||||
|
DRVOPTS = $(OPTS)
|
||||||
|
-NOOPT = -O0 -frecursive
|
||||||
|
+NOOPT =
|
||||||
|
|
||||||
|
# Define LOADER and LOADOPTS to refer to the loader and desired
|
||||||
|
# load options for your machine.
|
19
SOURCES/lapack-3.8.0-missing-aawork.patch
Normal file
19
SOURCES/lapack-3.8.0-missing-aawork.patch
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
diff -up lapack-3.8.0/LAPACKE/src/Makefile.missing-aawork lapack-3.8.0/LAPACKE/src/Makefile
|
||||||
|
--- lapack-3.8.0/LAPACKE/src/Makefile.missing-aawork 2018-02-26 15:44:06.754611865 -0500
|
||||||
|
+++ lapack-3.8.0/LAPACKE/src/Makefile 2018-02-26 15:44:39.925820302 -0500
|
||||||
|
@@ -1101,6 +1101,7 @@ lapacke_dsytrf_work.o \
|
||||||
|
lapacke_dsytrf_rook.o \
|
||||||
|
lapacke_dsytrf_rook_work.o \
|
||||||
|
lapacke_dsytrf_aa.o \
|
||||||
|
+lapacke_dsytrf_aa_work.o \
|
||||||
|
lapacke_dsytrf_aa_2stage.o \
|
||||||
|
lapacke_dsytrf_aa_2stage_work.o \
|
||||||
|
lapacke_dsytrf_rk.o \
|
||||||
|
@@ -1661,6 +1662,7 @@ lapacke_ssytrf_work.o \
|
||||||
|
lapacke_ssytrf_rook.o \
|
||||||
|
lapacke_ssytrf_rook_work.o \
|
||||||
|
lapacke_ssytrf_aa.o \
|
||||||
|
+lapacke_ssytrf_aa_work.o \
|
||||||
|
lapacke_ssytrf_aa_2stage.o \
|
||||||
|
lapacke_ssytrf_aa_2stage_work.o \
|
||||||
|
lapacke_ssytrf_rk.o \
|
@ -1,21 +0,0 @@
|
|||||||
diff -up lapack-3.9.0/INSTALL/make.inc.gfortran.shared lapack-3.9.0/INSTALL/make.inc.gfortran
|
|
||||||
--- lapack-3.9.0/INSTALL/make.inc.gfortran.shared 2019-11-26 09:19:38.689118934 -0500
|
|
||||||
+++ lapack-3.9.0/INSTALL/make.inc.gfortran 2019-11-26 09:20:52.442628214 -0500
|
|
||||||
@@ -81,3 +81,4 @@ CBLASLIB = $(TOPSRCDIR)/libcblas.a
|
|
||||||
LAPACKLIB = $(TOPSRCDIR)/liblapack.a
|
|
||||||
TMGLIB = $(TOPSRCDIR)/libtmglib.a
|
|
||||||
LAPACKELIB = $(TOPSRCDIR)/liblapacke.a
|
|
||||||
+SHLIB_LAPACKE = $(TOPSRCDIR)/liblapacke.so
|
|
||||||
diff -up lapack-3.9.0/LAPACKE/Makefile.shared lapack-3.9.0/LAPACKE/Makefile
|
|
||||||
--- lapack-3.9.0/LAPACKE/Makefile.shared 2019-11-26 09:19:38.689118934 -0500
|
|
||||||
+++ lapack-3.9.0/LAPACKE/Makefile 2019-11-26 09:21:59.977268139 -0500
|
|
||||||
@@ -54,6 +54,9 @@ lapacke: include/lapacke_mangling.h
|
|
||||||
include/lapacke_mangling.h: include/lapacke_mangling_with_flags.h.in
|
|
||||||
cp include/lapacke_mangling_with_flags.h.in $@
|
|
||||||
|
|
||||||
+shlib: lapacke
|
|
||||||
+ $(CC) $(CFLAGS) -shared -Wl,-soname,liblapacke.so.@SHORTVER@ -o $(SHLIB_LAPACKE).@LONGVER@ src/*.o utils/*.o $(LDFLAGS) $(LIBS) -lgfortran -lc -L.. -llapack
|
|
||||||
+
|
|
||||||
.PHONY: lapacke_example
|
|
||||||
lapacke_example: lapacke
|
|
||||||
$(MAKE) -C example
|
|
@ -1,24 +0,0 @@
|
|||||||
diff -up lapack-3.9.0/LAPACKE/Makefile.tmglib lapack-3.9.0/LAPACKE/Makefile
|
|
||||||
--- lapack-3.9.0/LAPACKE/Makefile.tmglib 2019-11-26 09:22:35.406554632 -0500
|
|
||||||
+++ lapack-3.9.0/LAPACKE/Makefile 2019-11-26 09:24:06.927711490 -0500
|
|
||||||
@@ -55,7 +55,7 @@ include/lapacke_mangling.h: include/lapa
|
|
||||||
cp include/lapacke_mangling_with_flags.h.in $@
|
|
||||||
|
|
||||||
shlib: lapacke
|
|
||||||
- $(CC) $(CFLAGS) -shared -Wl,-soname,liblapacke.so.@SHORTVER@ -o $(SHLIB_LAPACKE).@LONGVER@ src/*.o utils/*.o $(LDFLAGS) $(LIBS) -lgfortran -lc -L.. -llapack
|
|
||||||
+ $(CC) $(CFLAGS) -shared -Wl,-soname,liblapacke.so.@SHORTVER@ -o $(SHLIB_LAPACKE).@LONGVER@ src/*.o utils/*.o $(LDFLAGS) $(LIBS) -lgfortran -lc -L.. -llapack ../TESTING/MATGEN/*.o
|
|
||||||
|
|
||||||
.PHONY: lapacke_example
|
|
||||||
lapacke_example: lapacke
|
|
||||||
diff -up lapack-3.9.0/Makefile.tmglib lapack-3.9.0/Makefile
|
|
||||||
--- lapack-3.9.0/Makefile.tmglib 2019-11-26 09:22:35.408554591 -0500
|
|
||||||
+++ lapack-3.9.0/Makefile 2019-11-26 09:48:23.173944899 -0500
|
|
||||||
@@ -27,7 +27,7 @@ lapacklib:
|
|
||||||
$(MAKE) -C SRC
|
|
||||||
|
|
||||||
.PHONY: lapackelib
|
|
||||||
-lapackelib:
|
|
||||||
+lapackelib: tmglib
|
|
||||||
$(MAKE) -C LAPACKE
|
|
||||||
|
|
||||||
.PHONY: blaspplib
|
|
@ -1,15 +0,0 @@
|
|||||||
diff -up lapack-3.9.0/INSTALL/make.inc.gfortran.fedora lapack-3.9.0/INSTALL/make.inc.gfortran
|
|
||||||
--- lapack-3.9.0/INSTALL/make.inc.gfortran.fedora 2019-11-26 09:18:42.671256080 -0500
|
|
||||||
+++ lapack-3.9.0/INSTALL/make.inc.gfortran 2019-11-26 09:19:09.296715591 -0500
|
|
||||||
@@ -20,9 +20,9 @@ CFLAGS = -O3
|
|
||||||
# should not compile LAPACK with flags such as -ffpe-trap=overflow.
|
|
||||||
#
|
|
||||||
FC = gfortran
|
|
||||||
-FFLAGS = -O2 -frecursive
|
|
||||||
+FFLAGS =
|
|
||||||
FFLAGS_DRV = $(FFLAGS)
|
|
||||||
-FFLAGS_NOOPT = -O0 -frecursive
|
|
||||||
+FFLAGS_NOOPT =
|
|
||||||
|
|
||||||
# Define LDFLAGS to the desired linker options for your machine.
|
|
||||||
#
|
|
@ -1,5 +1,5 @@
|
|||||||
%global shortver 3
|
%global shortver 3
|
||||||
%global mediumver %{shortver}.9
|
%global mediumver %{shortver}.8
|
||||||
|
|
||||||
%if %{?__isa_bits:%{__isa_bits}}%{!?__isa_bits:32} == 64
|
%if %{?__isa_bits:%{__isa_bits}}%{!?__isa_bits:32} == 64
|
||||||
%global arch64 1
|
%global arch64 1
|
||||||
@ -10,28 +10,27 @@
|
|||||||
Summary: Numerical linear algebra package libraries
|
Summary: Numerical linear algebra package libraries
|
||||||
Name: lapack
|
Name: lapack
|
||||||
Version: %{mediumver}.0
|
Version: %{mediumver}.0
|
||||||
Release: 10%{?dist}
|
Release: 8%{?dist}
|
||||||
License: BSD
|
License: BSD
|
||||||
|
Group: System Environment/Libraries
|
||||||
URL: http://www.netlib.org/lapack/
|
URL: http://www.netlib.org/lapack/
|
||||||
Source0: https://github.com/Reference-LAPACK/lapack/archive/v%{version}.tar.gz
|
Source0: http://www.netlib.org/lapack/lapack-%{version}.tar.gz
|
||||||
Source1: http://www.netlib.org/lapack/manpages.tgz
|
Source1: http://www.netlib.org/lapack/manpages.tgz
|
||||||
Source2: Makefile.blas
|
Source2: Makefile.blas
|
||||||
Source3: Makefile.lapack
|
Source3: Makefile.lapack
|
||||||
Source4: http://www.netlib.org/lapack/lapackqref.ps
|
Source4: http://www.netlib.org/lapack/lapackqref.ps
|
||||||
Source5: http://www.netlib.org/blas/blasqr.ps
|
Source5: http://www.netlib.org/blas/blasqr.ps
|
||||||
Source6: Makefile.cblas
|
Source6: Makefile.cblas
|
||||||
Patch3: lapack-3.9.0-make.inc.patch
|
Patch3: lapack-3.7.1-make.inc.patch
|
||||||
Patch4: lapack-3.9.0-lapacke-shared.patch
|
Patch4: lapack-3.7.1-lapacke-shared.patch
|
||||||
Patch5: lapack-3.4.1-lapacke-disable-testing-functions.patch
|
Patch5: lapack-3.4.1-lapacke-disable-testing-functions.patch
|
||||||
Patch6: lapack-3.5.0-lapacke-matgenobj.patch
|
Patch6: lapack-3.5.0-lapacke-matgenobj.patch
|
||||||
Patch7: lapack-3.9.0-lapacke-tmglib.patch
|
Patch7: lapack-3.7.1-lapacke-tmglib.patch
|
||||||
# Bugzilla 1814756
|
Patch8: lapack-3.8.0-missing-aawork.patch
|
||||||
Patch8: https://github.com/Reference-LAPACK/lapack/commit/87536aa3c8bb0af00f66088fb6ac05d87509e011.patch
|
|
||||||
BuildRequires: gcc-gfortran, gawk
|
BuildRequires: gcc-gfortran, gawk
|
||||||
BuildRequires: make
|
|
||||||
Requires: blas%{?_isa} = %{version}-%{release}
|
Requires: blas%{?_isa} = %{version}-%{release}
|
||||||
|
|
||||||
%global _description_lapack %{expand:
|
%description
|
||||||
LAPACK (Linear Algebra PACKage) is a standard library for numerical
|
LAPACK (Linear Algebra PACKage) is a standard library for numerical
|
||||||
linear algebra. LAPACK provides routines for solving systems of
|
linear algebra. LAPACK provides routines for solving systems of
|
||||||
simultaneous linear equations, least-squares solutions of linear
|
simultaneous linear equations, least-squares solutions of linear
|
||||||
@ -43,18 +42,19 @@ are also included. LAPACK can handle dense and banded matrices, but
|
|||||||
not general sparse matrices. Similar functionality is provided for
|
not general sparse matrices. Similar functionality is provided for
|
||||||
real and complex matrices in both single and double precision. LAPACK
|
real and complex matrices in both single and double precision. LAPACK
|
||||||
is coded in Fortran90 and built with gcc.
|
is coded in Fortran90 and built with gcc.
|
||||||
}
|
|
||||||
|
|
||||||
%global _description_blas %{expand:
|
%package devel
|
||||||
BLAS (Basic Linear Algebra Subprograms) is a standard library which
|
Summary: LAPACK development libraries
|
||||||
provides a number of basic algorithms for numerical algebra.
|
Group: Development/Libraries
|
||||||
}
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||||
|
Requires: blas-devel%{?_isa} = %{version}-%{release}
|
||||||
%description %_description_lapack
|
|
||||||
|
|
||||||
|
%description devel
|
||||||
|
LAPACK development libraries (shared).
|
||||||
|
|
||||||
%package static
|
%package static
|
||||||
Summary: LAPACK static libraries
|
Summary: LAPACK static libraries
|
||||||
|
Group: Development/Libraries
|
||||||
Requires: lapack-devel%{?_isa} = %{version}-%{release}
|
Requires: lapack-devel%{?_isa} = %{version}-%{release}
|
||||||
|
|
||||||
%description static
|
%description static
|
||||||
@ -62,79 +62,93 @@ LAPACK static libraries.
|
|||||||
|
|
||||||
%package -n blas
|
%package -n blas
|
||||||
Summary: The Basic Linear Algebra Subprograms library
|
Summary: The Basic Linear Algebra Subprograms library
|
||||||
|
Group: System Environment/Libraries
|
||||||
|
|
||||||
%description -n blas %_description_blas
|
%description -n blas
|
||||||
|
BLAS (Basic Linear Algebra Subprograms) is a standard library which
|
||||||
|
provides a number of basic algorithms for numerical algebra.
|
||||||
|
|
||||||
|
%package -n blas-devel
|
||||||
|
Summary: BLAS development libraries
|
||||||
|
Group: Development/Libraries
|
||||||
|
Requires: blas%{?_isa} = %{version}-%{release}
|
||||||
|
Requires: gcc-gfortran
|
||||||
|
|
||||||
|
%description -n blas-devel
|
||||||
|
BLAS development libraries (shared).
|
||||||
|
|
||||||
%package -n blas-static
|
%package -n blas-static
|
||||||
Summary: BLAS static libraries
|
Summary: BLAS static libraries
|
||||||
|
Group: Development/Libraries
|
||||||
Requires: blas-devel%{?_isa} = %{version}-%{release}
|
Requires: blas-devel%{?_isa} = %{version}-%{release}
|
||||||
|
|
||||||
%description -n blas-static
|
%description -n blas-static
|
||||||
BLAS static libraries.
|
BLAS static libraries.
|
||||||
|
|
||||||
%if 0%{?arch64}
|
%if 0%{?arch64}
|
||||||
%package devel
|
|
||||||
Summary: LAPACK development libraries
|
|
||||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
||||||
Requires: %{name}64%{?_isa} = %{version}-%{release}
|
|
||||||
Requires: %{name}64_%{?_isa} = %{version}-%{release}
|
|
||||||
Requires: blas-devel%{?_isa} = %{version}-%{release}
|
|
||||||
|
|
||||||
%description devel
|
|
||||||
LAPACK development libraries (shared).
|
|
||||||
|
|
||||||
%package -n lapack64
|
%package -n lapack64
|
||||||
Summary: Numerical linear algebra package libraries
|
Summary: Numerical linear algebra package libraries
|
||||||
|
Group: System Environment/Libraries
|
||||||
Requires: blas64%{?_isa} = %{version}-%{release}
|
Requires: blas64%{?_isa} = %{version}-%{release}
|
||||||
|
|
||||||
%description -n lapack64 %_description_lapack
|
%description -n lapack64
|
||||||
|
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 Fortran90 and built with gcc.
|
||||||
This build has 64bit INTEGER support.
|
This build has 64bit INTEGER support.
|
||||||
|
|
||||||
|
%package -n lapack64-devel
|
||||||
|
Summary: LAPACK development libraries (64bit INTEGER)
|
||||||
|
Group: Development/Libraries
|
||||||
|
Requires: lapack64%{?_isa} = %{version}-%{release}
|
||||||
|
Requires: lapack-devel%{?_isa} = %{version}-%{release}
|
||||||
|
Requires: blas64-devel%{?_isa} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description -n lapack64-devel
|
||||||
|
LAPACK development libraries (shared, 64bit INTEGER).
|
||||||
|
|
||||||
|
%package -n lapack64-static
|
||||||
|
Summary: LAPACK static libraries (64bit INTEGER)
|
||||||
|
Group: Development/Libraries
|
||||||
|
Requires: lapack64-devel%{?_isa} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description -n lapack64-static
|
||||||
|
LAPACK static libraries (64bit INTEGER).
|
||||||
|
|
||||||
%package -n blas64
|
%package -n blas64
|
||||||
Summary: The Basic Linear Algebra Subprograms library (64bit INTEGER)
|
Summary: The Basic Linear Algebra Subprograms library (64bit INTEGER)
|
||||||
|
Group: System Environment/Libraries
|
||||||
|
|
||||||
%description -n blas64 %_description_blas
|
%description -n blas64
|
||||||
This build has 64bit INTEGER support.
|
BLAS (Basic Linear Algebra Subprograms) is a standard library which
|
||||||
|
provides a number of basic algorithms for numerical algebra. This build
|
||||||
|
has 64bit INTEGER support.
|
||||||
|
|
||||||
%package -n lapack64_
|
%package -n blas64-devel
|
||||||
Summary: Numerical linear algebra package libraries
|
|
||||||
Requires: blas64_%{?_isa} = %{version}-%{release}
|
|
||||||
|
|
||||||
%description -n lapack64_ %_description_lapack
|
|
||||||
This build has 64bit INTEGER support and a symbol name suffix.
|
|
||||||
|
|
||||||
%package -n blas64_
|
|
||||||
Summary: The Basic Linear Algebra Subprograms library (64bit INTEGER)
|
|
||||||
|
|
||||||
%description -n blas64_ %_description_blas
|
|
||||||
This build has 64bit INTEGER support and a symbol name suffix.
|
|
||||||
|
|
||||||
%package -n blas-devel
|
|
||||||
Summary: BLAS development libraries
|
Summary: BLAS development libraries
|
||||||
Requires: blas%{?_isa} = %{version}-%{release}
|
Group: Development/Libraries
|
||||||
Requires: blas64%{?_isa} = %{version}-%{release}
|
Requires: blas64%{?_isa} = %{version}-%{release}
|
||||||
Requires: blas64_%{?_isa} = %{version}-%{release}
|
|
||||||
Requires: gcc-gfortran
|
|
||||||
|
|
||||||
%description -n blas-devel
|
|
||||||
BLAS development libraries (shared).
|
|
||||||
%else
|
|
||||||
%package devel
|
|
||||||
Summary: LAPACK development libraries
|
|
||||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
||||||
Requires: blas-devel%{?_isa} = %{version}-%{release}
|
Requires: blas-devel%{?_isa} = %{version}-%{release}
|
||||||
|
|
||||||
%description devel
|
|
||||||
LAPACK development libraries (shared).
|
|
||||||
|
|
||||||
%package -n blas-devel
|
|
||||||
Summary: BLAS development libraries
|
|
||||||
Requires: blas%{?_isa} = %{version}-%{release}
|
|
||||||
Requires: gcc-gfortran
|
Requires: gcc-gfortran
|
||||||
|
|
||||||
%description -n blas-devel
|
%description -n blas64-devel
|
||||||
BLAS development libraries (shared).
|
BLAS development libraries (shared).
|
||||||
|
|
||||||
|
%package -n blas64-static
|
||||||
|
Summary: BLAS static libraries (64bit INTEGER)
|
||||||
|
Group: Development/Libraries
|
||||||
|
Requires: blas64-devel%{?_isa} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description -n blas64-static
|
||||||
|
BLAS static libraries (64bit INTEGER).
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
@ -145,7 +159,7 @@ BLAS development libraries (shared).
|
|||||||
# %patch5 -p1 -b .disable-functions
|
# %patch5 -p1 -b .disable-functions
|
||||||
# %patch6 -p1 -b .matgenobj
|
# %patch6 -p1 -b .matgenobj
|
||||||
%patch7 -p1 -b .tmglib
|
%patch7 -p1 -b .tmglib
|
||||||
%patch8 -p1 -b .bz1814756
|
%patch8 -p1 -b .missing-aawork
|
||||||
|
|
||||||
mkdir manpages
|
mkdir manpages
|
||||||
mv man/ manpages/
|
mv man/ manpages/
|
||||||
@ -165,7 +179,7 @@ sed -i "s|@LONGVER@|%{version}|g" LAPACKE/Makefile
|
|||||||
sed -i "s|@LONGVER@|%{version}|g" CBLAS/src/Makefile
|
sed -i "s|@LONGVER@|%{version}|g" CBLAS/src/Makefile
|
||||||
|
|
||||||
%build
|
%build
|
||||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -frecursive --no-optimize-sibling-calls"
|
RPM_OPT_FLAGS="$RPM_OPT_FLAGS -frecursive"
|
||||||
RPM_OPT_O_FLAGS=$(echo $RPM_OPT_FLAGS | sed 's|-O2|-O0|')
|
RPM_OPT_O_FLAGS=$(echo $RPM_OPT_FLAGS | sed 's|-O2|-O0|')
|
||||||
export FC=gfortran
|
export FC=gfortran
|
||||||
|
|
||||||
@ -181,26 +195,17 @@ cp libblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
|
|||||||
%if 0%{?arch64}
|
%if 0%{?arch64}
|
||||||
make clean
|
make clean
|
||||||
FFLAGS="$RPM_OPT_O_FLAGS -fdefault-integer-8" make dcabs1.o
|
FFLAGS="$RPM_OPT_O_FLAGS -fdefault-integer-8" make dcabs1.o
|
||||||
FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" make static
|
SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" make static
|
||||||
cp libblas.a ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64.a
|
|
||||||
make clean
|
|
||||||
FFLAGS="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" make dcabs1.o
|
|
||||||
FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" LDFLAGS="%{build_ldflags}" make shared
|
|
||||||
cp libblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64.so.%{version}
|
|
||||||
make clean
|
|
||||||
FFLAGS="$RPM_OPT_O_FLAGS -fdefault-integer-8" make dcabs1.o
|
|
||||||
SYMBOLSUFFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" make static
|
|
||||||
cp libblas64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64_.a
|
cp libblas64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64_.a
|
||||||
make clean
|
make clean
|
||||||
FFLAGS="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" make dcabs1.o
|
FFLAGS="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" make dcabs1.o
|
||||||
SYMBOLSUFFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" LDFLAGS="%{build_ldflags}" make shared
|
SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" LDFLAGS="%{build_ldflags}" make shared
|
||||||
cp libblas64_.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64_.so.%{version}
|
cp libblas64_.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64_.so.%{version}
|
||||||
%endif
|
%endif
|
||||||
popd
|
popd
|
||||||
|
|
||||||
ln -s libblas.so.%{version} libblas.so
|
ln -s libblas.so.%{version} libblas.so
|
||||||
%if 0%{?arch64}
|
%if 0%{?arch64}
|
||||||
ln -s libblas64.so.%{version} libblas64.so
|
|
||||||
ln -s libblas64_.so.%{version} libblas64_.so
|
ln -s libblas64_.so.%{version} libblas64_.so
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
@ -214,29 +219,22 @@ FFLAGS="$RPM_OPT_FLAGS -fPIC" CFLAGS="$RPM_OPT_FLAGS -fPIC -I../include" LDFLAGS
|
|||||||
cp libcblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
|
cp libcblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
|
||||||
%if 0%{?arch64}
|
%if 0%{?arch64}
|
||||||
make clean
|
make clean
|
||||||
FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -I../include" make static
|
SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -I../include" make static
|
||||||
cp libcblas.a ${RPM_BUILD_DIR}/%{name}-%{version}/libcblas64.a
|
|
||||||
make clean
|
|
||||||
FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC -I../include" LDFLAGS="%{build_ldflags}" make shared
|
|
||||||
cp libcblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/libcblas64.so.%{version}
|
|
||||||
make clean
|
|
||||||
SYMBOLSUFFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -I../include" make static
|
|
||||||
cp libcblas64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/libcblas64_.a
|
cp libcblas64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/libcblas64_.a
|
||||||
make clean
|
make clean
|
||||||
SYMBOLSUFFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC -I../include" LDFLAGS="%{build_ldflags}" make shared
|
SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC -I../include" LDFLAGS="%{build_ldflags}" make shared
|
||||||
cp libcblas64_.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/libcblas64_.so.%{version}
|
cp libcblas64_.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/libcblas64_.so.%{version}
|
||||||
%endif
|
%endif
|
||||||
popd
|
popd
|
||||||
|
|
||||||
ln -s libcblas.so.%{version} libcblas.so
|
ln -s libcblas.so.%{version} libcblas.so
|
||||||
%if 0%{?arch64}
|
%if 0%{?arch64}
|
||||||
ln -s libcblas64.so.%{version} libcblas64.so
|
|
||||||
ln -s libcblas64_.so.%{version} libcblas64_.so
|
ln -s libcblas64_.so.%{version} libcblas64_.so
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Build the static dlamch, dsecnd, lsame, second, slamch bits
|
# Build the static dlamch, dsecnd, lsame, second, slamch bits
|
||||||
pushd INSTALL
|
pushd INSTALL
|
||||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS" FFLAGS="$RPM_OPT_FLAGS"
|
make NOOPT="$RPM_OPT_O_FLAGS" OPTS="$RPM_OPT_FLAGS"
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# Build the static lapack library
|
# Build the static lapack library
|
||||||
@ -248,7 +246,7 @@ popd
|
|||||||
# Build the static with pic dlamch, dsecnd, lsame, second, slamch bits
|
# Build the static with pic dlamch, dsecnd, lsame, second, slamch bits
|
||||||
pushd INSTALL
|
pushd INSTALL
|
||||||
make clean
|
make clean
|
||||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fPIC" FFLAGS="$RPM_OPT_FLAGS -fPIC"
|
make NOOPT="$RPM_OPT_O_FLAGS -fPIC" OPTS="$RPM_OPT_FLAGS -fPIC"
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# Build the static with pic lapack library
|
# Build the static with pic lapack library
|
||||||
@ -261,61 +259,33 @@ popd
|
|||||||
%if 0%{?arch64}
|
%if 0%{?arch64}
|
||||||
# Build the static dlamch, dsecnd, lsame, second, slamch bits
|
# Build the static dlamch, dsecnd, lsame, second, slamch bits
|
||||||
pushd INSTALL
|
pushd INSTALL
|
||||||
make clean
|
make NOOPT="$RPM_OPT_O_FLAGS -fdefault-integer-8" OPTS="$RPM_OPT_FLAGS -fdefault-integer-8"
|
||||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fdefault-integer-8" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8"
|
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# Build the static lapack library
|
# Build the static lapack library
|
||||||
pushd SRC
|
pushd SRC
|
||||||
make clean
|
make SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" static
|
||||||
make FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" static
|
|
||||||
cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64.a
|
|
||||||
popd
|
|
||||||
|
|
||||||
# Build the static with pic dlamch, dsecnd, lsame, second, slamch bits (64bit INTEGER)
|
|
||||||
pushd INSTALL
|
|
||||||
make clean
|
|
||||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8"
|
|
||||||
popd
|
|
||||||
|
|
||||||
# Build the static with pic lapack library (64bit INTEGER)
|
|
||||||
pushd SRC
|
|
||||||
make clean
|
|
||||||
make FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" static
|
|
||||||
cp liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack_pic64.a
|
|
||||||
popd
|
|
||||||
|
|
||||||
# Build the static dlamch, dsecnd, lsame, second, slamch bits
|
|
||||||
pushd INSTALL
|
|
||||||
make clean
|
|
||||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fdefault-integer-8" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8"
|
|
||||||
popd
|
|
||||||
|
|
||||||
# Build the static lapack library
|
|
||||||
pushd SRC
|
|
||||||
make clean
|
|
||||||
make SYMBOLSUFFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" static
|
|
||||||
cp liblapack64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64_.a
|
cp liblapack64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64_.a
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# Build the static with pic dlamch, dsecnd, lsame, second, slamch bits (64bit INTEGER)
|
# Build the static with pic dlamch, dsecnd, lsame, second, slamch bits (64bit INTEGER)
|
||||||
pushd INSTALL
|
pushd INSTALL
|
||||||
make clean
|
make clean
|
||||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8"
|
make NOOPT="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" OPTS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8"
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# Build the static with pic lapack library (64bit INTEGER)
|
# Build the static with pic lapack library (64bit INTEGER)
|
||||||
pushd SRC
|
pushd SRC
|
||||||
make clean
|
make clean
|
||||||
make SYMBOLSUFFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" static
|
make SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" static
|
||||||
cp liblapack64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack_pic64_.a
|
cp liblapack64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64_pic.a
|
||||||
popd
|
popd
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Build the shared dlamch, dsecnd, lsame, second, slamch bits
|
# Build the shared dlamch, dsecnd, lsame, second, slamch bits
|
||||||
pushd INSTALL
|
pushd INSTALL
|
||||||
make clean
|
make clean
|
||||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fPIC" FFLAGS="$RPM_OPT_FLAGS -fPIC"
|
make NOOPT="$RPM_OPT_O_FLAGS -fPIC" OPTS="$RPM_OPT_FLAGS -fPIC"
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# Build the shared lapack library
|
# Build the shared lapack library
|
||||||
@ -329,64 +299,47 @@ popd
|
|||||||
# Build the shared dlamch, dsecnd, lsame, second, slamch bits
|
# Build the shared dlamch, dsecnd, lsame, second, slamch bits
|
||||||
pushd INSTALL
|
pushd INSTALL
|
||||||
make clean
|
make clean
|
||||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8"
|
make NOOPT="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" OPTS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8"
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# Build the shared lapack library
|
# Build the shared lapack library
|
||||||
pushd SRC
|
pushd SRC
|
||||||
make clean
|
make clean
|
||||||
make FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" LDFLAGS="%{build_ldflags}" shared
|
make SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" LDFLAGS="%{build_ldflags}" shared
|
||||||
cp liblapack.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64.so.%{version}
|
|
||||||
popd
|
|
||||||
|
|
||||||
# Build the shared dlamch, dsecnd, lsame, second, slamch bits
|
|
||||||
pushd INSTALL
|
|
||||||
make clean
|
|
||||||
make FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8"
|
|
||||||
popd
|
|
||||||
|
|
||||||
# Build the shared lapack library
|
|
||||||
pushd SRC
|
|
||||||
make clean
|
|
||||||
make SYMBOLSUFFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" LDFLAGS="%{build_ldflags}" shared
|
|
||||||
cp liblapack64_.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64_.so.%{version}
|
cp liblapack64_.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64_.so.%{version}
|
||||||
popd
|
popd
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
ln -s liblapack.so.%{version} liblapack.so
|
ln -s liblapack.so.%{version} liblapack.so
|
||||||
|
|
||||||
%if 0%{?arch64}
|
%if 0%{?arch64}
|
||||||
ln -s liblapack64.so.%{version} liblapack64.so
|
|
||||||
ln -s liblapack64_.so.%{version} liblapack64_.so
|
ln -s liblapack64_.so.%{version} liblapack64_.so
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Build the lapacke libraries
|
# Build the lapacke libraries
|
||||||
make FFLAGS="$RPM_OPT_FLAGS -fPIC" FFLAGS_NOOPT="$RPM_OPT_O_FLAGS -fPIC" tmglib
|
make OPTS="$RPM_OPT_FLAGS -fPIC" NOOPT="$RPM_OPT_O_FLAGS -fPIC" tmglib
|
||||||
pushd LAPACKE
|
pushd LAPACKE
|
||||||
make clean
|
make clean
|
||||||
make CFLAGS="$RPM_OPT_FLAGS" BUILD_DEPRECATED="true" lapacke
|
make CFLAGS="$RPM_OPT_FLAGS" BUILD_DEPRECATED="true" lapacke
|
||||||
make clean
|
make clean
|
||||||
make CFLAGS="$RPM_OPT_FLAGS -fPIC" BUILD_DEPRECATED="true" LDFLAGS="%{build_ldflags}" shlib
|
make CFLAGS="$RPM_OPT_FLAGS -fPIC" BUILD_DEPRECATED="true" LDFLAGS="%{build_ldflags}" shlib
|
||||||
# cp liblapacke.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
|
cp liblapacke.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
|
||||||
popd
|
popd
|
||||||
|
|
||||||
cp -p %{SOURCE4} lapackqref.ps
|
cp -p %{SOURCE4} lapackqref.ps
|
||||||
cp -p %{SOURCE5} blasqr.ps
|
cp -p %{SOURCE5} blasqr.ps
|
||||||
|
|
||||||
%install
|
%install
|
||||||
mkdir -p %{buildroot}%{_libdir}
|
mkdir -p ${RPM_BUILD_ROOT}%{_libdir}
|
||||||
mkdir -p %{buildroot}%{_mandir}/man3
|
mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man3
|
||||||
chmod 755 %{buildroot}%{_mandir}/man3
|
chmod 755 ${RPM_BUILD_ROOT}%{_mandir}/man3
|
||||||
|
|
||||||
for f in liblapack.so.%{version} libblas.so.%{version} libcblas.so.%{version} liblapacke.so.%{version} \
|
for f in liblapack.so.%{version} libblas.so.%{version} libcblas.so.%{version} liblapacke.so.%{version} libblas.a libcblas.a liblapack.a liblapack_pic.a liblapacke.a; do
|
||||||
libblas.a libcblas.a liblapack.a liblapack_pic.a liblapacke.a; do
|
|
||||||
cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f
|
cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f
|
||||||
done
|
done
|
||||||
|
|
||||||
%if 0%{?arch64}
|
%if 0%{?arch64}
|
||||||
for f in liblapack64.so.%{version} libblas64.so.%{version} libcblas64.so.%{version} \
|
for f in liblapack64_.so.%{version} libblas64_.so.%{version} libcblas64_.so.%{version} libblas64_.a libcblas64_.a liblapack64_.a liblapack64_pic.a; do
|
||||||
liblapack64_.so.%{version} libblas64_.so.%{version} libcblas64_.so.%{version} \
|
|
||||||
libblas64.a libcblas64.a liblapack64.a liblapack_pic64.a \
|
|
||||||
libblas64_.a libcblas64_.a liblapack64_.a liblapack_pic64_.a; do
|
|
||||||
cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f
|
cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f
|
||||||
done
|
done
|
||||||
%endif
|
%endif
|
||||||
@ -436,12 +389,6 @@ pushd manpages/man/man3
|
|||||||
rm -rf _Users_julie*
|
rm -rf _Users_julie*
|
||||||
popd
|
popd
|
||||||
|
|
||||||
#rhbz#2222868
|
|
||||||
pushd manpages/man/man3
|
|
||||||
mv MAX.3 lapack-MAX.3
|
|
||||||
mv MIN.3 lapack-MIN.3
|
|
||||||
popd
|
|
||||||
|
|
||||||
find manpages/man/man3 -type f -printf "%{_mandir}/man3/%f*\n" > lapackmans
|
find manpages/man/man3 -type f -printf "%{_mandir}/man3/%f*\n" > lapackmans
|
||||||
|
|
||||||
cp -f manpages/blas/man/man3/* ${RPM_BUILD_ROOT}%{_mandir}/man3
|
cp -f manpages/blas/man/man3/* ${RPM_BUILD_ROOT}%{_mandir}/man3
|
||||||
@ -455,7 +402,7 @@ cp -a CBLAS/include/*.h %{buildroot}%{_includedir}/cblas/
|
|||||||
mkdir -p %{buildroot}%{_includedir}/lapacke/
|
mkdir -p %{buildroot}%{_includedir}/lapacke/
|
||||||
cp -a LAPACKE/include/*.h %{buildroot}%{_includedir}/lapacke/
|
cp -a LAPACKE/include/*.h %{buildroot}%{_includedir}/lapacke/
|
||||||
|
|
||||||
pushd %{buildroot}%{_libdir}
|
pushd ${RPM_BUILD_ROOT}%{_libdir}
|
||||||
ln -sf liblapack.so.%{version} liblapack.so
|
ln -sf liblapack.so.%{version} liblapack.so
|
||||||
ln -sf liblapack.so.%{version} liblapack.so.%{shortver}
|
ln -sf liblapack.so.%{version} liblapack.so.%{shortver}
|
||||||
ln -sf liblapack.so.%{version} liblapack.so.%{mediumver}
|
ln -sf liblapack.so.%{version} liblapack.so.%{mediumver}
|
||||||
@ -469,15 +416,6 @@ ln -sf liblapacke.so.%{version} liblapacke.so
|
|||||||
ln -sf liblapacke.so.%{version} liblapacke.so.%{shortver}
|
ln -sf liblapacke.so.%{version} liblapacke.so.%{shortver}
|
||||||
ln -sf liblapacke.so.%{version} liblapacke.so.%{mediumver}
|
ln -sf liblapacke.so.%{version} liblapacke.so.%{mediumver}
|
||||||
%if 0%{?arch64}
|
%if 0%{?arch64}
|
||||||
ln -sf liblapack64.so.%{version} liblapack64.so
|
|
||||||
ln -sf liblapack64.so.%{version} liblapack64.so.%{shortver}
|
|
||||||
ln -sf liblapack64.so.%{version} liblapack64.so.%{mediumver}
|
|
||||||
ln -sf libblas64.so.%{version} libblas64.so
|
|
||||||
ln -sf libblas64.so.%{version} libblas64.so.%{shortver}
|
|
||||||
ln -sf libblas64.so.%{version} libblas64.so.%{mediumver}
|
|
||||||
ln -sf libcblas64.so.%{version} libcblas64.so
|
|
||||||
ln -sf libcblas64.so.%{version} libcblas64.so.%{shortver}
|
|
||||||
ln -sf libcblas64.so.%{version} libcblas64.so.%{mediumver}
|
|
||||||
ln -sf liblapack64_.so.%{version} liblapack64_.so
|
ln -sf liblapack64_.so.%{version} liblapack64_.so
|
||||||
ln -sf liblapack64_.so.%{version} liblapack64_.so.%{shortver}
|
ln -sf liblapack64_.so.%{version} liblapack64_.so.%{shortver}
|
||||||
ln -sf liblapack64_.so.%{version} liblapack64_.so.%{mediumver}
|
ln -sf liblapack64_.so.%{version} liblapack64_.so.%{mediumver}
|
||||||
@ -498,11 +436,8 @@ sed -i 's|@CMAKE_INSTALL_FULL_INCLUDEDIR@|%{_includedir}|g' %{buildroot}%{_libdi
|
|||||||
sed -i 's|@LAPACK_VERSION@|%{version}|g' %{buildroot}%{_libdir}/pkgconfig/lapack.pc
|
sed -i 's|@LAPACK_VERSION@|%{version}|g' %{buildroot}%{_libdir}/pkgconfig/lapack.pc
|
||||||
%if 0%{?arch64}
|
%if 0%{?arch64}
|
||||||
cp -a %{buildroot}%{_libdir}/pkgconfig/lapack.pc %{buildroot}%{_libdir}/pkgconfig/lapack64.pc
|
cp -a %{buildroot}%{_libdir}/pkgconfig/lapack.pc %{buildroot}%{_libdir}/pkgconfig/lapack64.pc
|
||||||
sed -i 's|-llapack|-llapack64|g' %{buildroot}%{_libdir}/pkgconfig/lapack64.pc
|
sed -i 's|-llapack|-llapack64_|g' %{buildroot}%{_libdir}/pkgconfig/lapack64.pc
|
||||||
sed -i 's|blas|blas64|g' %{buildroot}%{_libdir}/pkgconfig/lapack64.pc
|
sed -i 's|blas|blas64|g' %{buildroot}%{_libdir}/pkgconfig/lapack64.pc
|
||||||
cp -a %{buildroot}%{_libdir}/pkgconfig/lapack.pc %{buildroot}%{_libdir}/pkgconfig/lapack64_.pc
|
|
||||||
sed -i 's|-llapack|-llapack64_|g' %{buildroot}%{_libdir}/pkgconfig/lapack64_.pc
|
|
||||||
sed -i 's|blas|blas64_|g' %{buildroot}%{_libdir}/pkgconfig/lapack64_.pc
|
|
||||||
%endif
|
%endif
|
||||||
cp -a BLAS/blas.pc.in %{buildroot}%{_libdir}/pkgconfig/blas.pc
|
cp -a BLAS/blas.pc.in %{buildroot}%{_libdir}/pkgconfig/blas.pc
|
||||||
sed -i 's|@CMAKE_INSTALL_FULL_LIBDIR@|%{_libdir}|g' %{buildroot}%{_libdir}/pkgconfig/blas.pc
|
sed -i 's|@CMAKE_INSTALL_FULL_LIBDIR@|%{_libdir}|g' %{buildroot}%{_libdir}/pkgconfig/blas.pc
|
||||||
@ -510,9 +445,7 @@ sed -i 's|@CMAKE_INSTALL_FULL_INCLUDEDIR@|%{_includedir}|g' %{buildroot}%{_libdi
|
|||||||
sed -i 's|@LAPACK_VERSION@|%{version}|g' %{buildroot}%{_libdir}/pkgconfig/blas.pc
|
sed -i 's|@LAPACK_VERSION@|%{version}|g' %{buildroot}%{_libdir}/pkgconfig/blas.pc
|
||||||
%if 0%{?arch64}
|
%if 0%{?arch64}
|
||||||
cp -a %{buildroot}%{_libdir}/pkgconfig/blas.pc %{buildroot}%{_libdir}/pkgconfig/blas64.pc
|
cp -a %{buildroot}%{_libdir}/pkgconfig/blas.pc %{buildroot}%{_libdir}/pkgconfig/blas64.pc
|
||||||
sed -i 's|-lblas|-lblas64|g' %{buildroot}%{_libdir}/pkgconfig/blas64.pc
|
sed -i 's|-lblas|-lblas64_|g' %{buildroot}%{_libdir}/pkgconfig/blas64.pc
|
||||||
cp -a %{buildroot}%{_libdir}/pkgconfig/blas.pc %{buildroot}%{_libdir}/pkgconfig/blas64_.pc
|
|
||||||
sed -i 's|-lblas|-lblas64_|g' %{buildroot}%{_libdir}/pkgconfig/blas64_.pc
|
|
||||||
%endif
|
%endif
|
||||||
cp -a LAPACKE/lapacke.pc.in %{buildroot}%{_libdir}/pkgconfig/lapacke.pc
|
cp -a LAPACKE/lapacke.pc.in %{buildroot}%{_libdir}/pkgconfig/lapacke.pc
|
||||||
sed -i 's|@CMAKE_INSTALL_FULL_LIBDIR@|%{_libdir}|g' %{buildroot}%{_libdir}/pkgconfig/lapacke.pc
|
sed -i 's|@CMAKE_INSTALL_FULL_LIBDIR@|%{_libdir}|g' %{buildroot}%{_libdir}/pkgconfig/lapacke.pc
|
||||||
@ -524,23 +457,26 @@ sed -i 's|@CMAKE_INSTALL_FULL_INCLUDEDIR@|%{_includedir}/cblas|g' %{buildroot}%{
|
|||||||
sed -i 's|@LAPACK_VERSION@|%{version}|g' %{buildroot}%{_libdir}/pkgconfig/cblas.pc
|
sed -i 's|@LAPACK_VERSION@|%{version}|g' %{buildroot}%{_libdir}/pkgconfig/cblas.pc
|
||||||
%if 0%{?arch64}
|
%if 0%{?arch64}
|
||||||
cp -a %{buildroot}%{_libdir}/pkgconfig/cblas.pc %{buildroot}%{_libdir}/pkgconfig/cblas64.pc
|
cp -a %{buildroot}%{_libdir}/pkgconfig/cblas.pc %{buildroot}%{_libdir}/pkgconfig/cblas64.pc
|
||||||
sed -i 's|-lcblas|-lcblas64|g' %{buildroot}%{_libdir}/pkgconfig/cblas64.pc
|
sed -i 's|-lcblas|-lcblas64_|g' %{buildroot}%{_libdir}/pkgconfig/cblas64.pc
|
||||||
sed -i 's|Requires.private: blas|Requires.private: blas64|g' %{buildroot}%{_libdir}/pkgconfig/cblas64.pc
|
sed -i 's|Requires.private: blas|Requires.private: blas64|g' %{buildroot}%{_libdir}/pkgconfig/cblas64.pc
|
||||||
cp -a %{buildroot}%{_libdir}/pkgconfig/cblas.pc %{buildroot}%{_libdir}/pkgconfig/cblas64_.pc
|
|
||||||
sed -i 's|-lcblas|-lcblas64_|g' %{buildroot}%{_libdir}/pkgconfig/cblas64_.pc
|
|
||||||
sed -i 's|Requires.private: blas|Requires.private: blas64_|g' %{buildroot}%{_libdir}/pkgconfig/cblas64_.pc
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%ldconfig_scriptlets
|
%post -p /sbin/ldconfig
|
||||||
|
|
||||||
%ldconfig_scriptlets -n blas
|
%postun -p /sbin/ldconfig
|
||||||
|
|
||||||
|
%post -n blas -p /sbin/ldconfig
|
||||||
|
|
||||||
|
%postun -n blas -p /sbin/ldconfig
|
||||||
|
|
||||||
%if 0%{?arch64}
|
%if 0%{?arch64}
|
||||||
%ldconfig_scriptlets -n lapack64
|
%post -n lapack64 -p /sbin/ldconfig
|
||||||
%ldconfig_scriptlets -n lapack64_
|
|
||||||
|
|
||||||
%ldconfig_scriptlets -n blas64
|
%postun -n lapack64 -p /sbin/ldconfig
|
||||||
%ldconfig_scriptlets -n blas64_
|
|
||||||
|
%post -n blas64 -p /sbin/ldconfig
|
||||||
|
|
||||||
|
%postun -n blas64 -p /sbin/ldconfig
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%files -f lapackmans
|
%files -f lapackmans
|
||||||
@ -554,23 +490,11 @@ sed -i 's|Requires.private: blas|Requires.private: blas64_|g' %{buildroot}%{_lib
|
|||||||
%{_libdir}/liblapacke.so
|
%{_libdir}/liblapacke.so
|
||||||
%{_libdir}/pkgconfig/lapack.pc
|
%{_libdir}/pkgconfig/lapack.pc
|
||||||
%{_libdir}/pkgconfig/lapacke.pc
|
%{_libdir}/pkgconfig/lapacke.pc
|
||||||
%if 0%{?arch64}
|
|
||||||
%{_libdir}/liblapack64.so
|
|
||||||
%{_libdir}/pkgconfig/lapack64.pc
|
|
||||||
%{_libdir}/liblapack64_.so
|
|
||||||
%{_libdir}/pkgconfig/lapack64_.pc
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%files static
|
%files static
|
||||||
%{_libdir}/liblapack.a
|
%{_libdir}/liblapack.a
|
||||||
%{_libdir}/liblapack_pic.a
|
%{_libdir}/liblapack_pic.a
|
||||||
%{_libdir}/liblapacke.a
|
%{_libdir}/liblapacke.a
|
||||||
%if 0%{?arch64}
|
|
||||||
%{_libdir}/liblapack64.a
|
|
||||||
%{_libdir}/liblapack_pic64.a
|
|
||||||
%{_libdir}/liblapack64_.a
|
|
||||||
%{_libdir}/liblapack_pic64_.a
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%files -n blas -f blasmans
|
%files -n blas -f blasmans
|
||||||
%doc blasqr.ps LICENSE
|
%doc blasqr.ps LICENSE
|
||||||
@ -583,96 +507,41 @@ sed -i 's|Requires.private: blas|Requires.private: blas64_|g' %{buildroot}%{_lib
|
|||||||
%{_libdir}/libcblas.so
|
%{_libdir}/libcblas.so
|
||||||
%{_libdir}/pkgconfig/blas.pc
|
%{_libdir}/pkgconfig/blas.pc
|
||||||
%{_libdir}/pkgconfig/cblas.pc
|
%{_libdir}/pkgconfig/cblas.pc
|
||||||
%if 0%{?arch64}
|
|
||||||
%{_libdir}/libblas64.so
|
|
||||||
%{_libdir}/libcblas64.so
|
|
||||||
%{_libdir}/pkgconfig/blas64.pc
|
|
||||||
%{_libdir}/pkgconfig/cblas64.pc
|
|
||||||
%{_libdir}/libblas64_.so
|
|
||||||
%{_libdir}/libcblas64_.so
|
|
||||||
%{_libdir}/pkgconfig/blas64_.pc
|
|
||||||
%{_libdir}/pkgconfig/cblas64_.pc
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%files -n blas-static
|
%files -n blas-static
|
||||||
%{_libdir}/libblas.a
|
%{_libdir}/libblas.a
|
||||||
%{_libdir}/libcblas.a
|
%{_libdir}/libcblas.a
|
||||||
%if 0%{?arch64}
|
|
||||||
%{_libdir}/libblas64.a
|
|
||||||
%{_libdir}/libcblas64.a
|
|
||||||
%{_libdir}/libblas64_.a
|
|
||||||
%{_libdir}/libcblas64_.a
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{?arch64}
|
%if 0%{?arch64}
|
||||||
%files -n blas64
|
%files -n blas64
|
||||||
%doc LICENSE
|
%doc LICENSE
|
||||||
%{_libdir}/libblas64.so.*
|
|
||||||
%{_libdir}/libcblas64.so.*
|
|
||||||
|
|
||||||
%files -n lapack64
|
|
||||||
%doc README.md LICENSE
|
|
||||||
%{_libdir}/liblapack64.so.*
|
|
||||||
|
|
||||||
%files -n blas64_
|
|
||||||
%doc LICENSE
|
|
||||||
%{_libdir}/libblas64_.so.*
|
%{_libdir}/libblas64_.so.*
|
||||||
%{_libdir}/libcblas64_.so.*
|
%{_libdir}/libcblas64_.so.*
|
||||||
|
|
||||||
%files -n lapack64_
|
%files -n blas64-devel
|
||||||
|
%{_libdir}/libblas64_.so
|
||||||
|
%{_libdir}/libcblas64_.so
|
||||||
|
%{_libdir}/pkgconfig/blas64.pc
|
||||||
|
%{_libdir}/pkgconfig/cblas64.pc
|
||||||
|
|
||||||
|
%files -n blas64-static
|
||||||
|
%{_libdir}/libblas64_.a
|
||||||
|
%{_libdir}/libcblas64_.a
|
||||||
|
|
||||||
|
%files -n lapack64
|
||||||
%doc README.md LICENSE
|
%doc README.md LICENSE
|
||||||
%{_libdir}/liblapack64_.so.*
|
%{_libdir}/liblapack64_.so.*
|
||||||
|
|
||||||
|
%files -n lapack64-devel
|
||||||
|
%{_libdir}/liblapack64_.so
|
||||||
|
%{_libdir}/pkgconfig/lapack64.pc
|
||||||
|
|
||||||
|
%files -n lapack64-static
|
||||||
|
%{_libdir}/liblapack64_.a
|
||||||
|
%{_libdir}/liblapack64_pic.a
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Fri Aug 11 2023 Jakub Martisko <jamartis@redhat.com> - 3.9.0-10
|
|
||||||
- Add explicit requires to the devel subpackages
|
|
||||||
Related: rhbz#2229142
|
|
||||||
|
|
||||||
* Tue Jul 18 2023 Jakub Martisko <jamartis@redhat.com> - 3.9.0-9
|
|
||||||
- Rename manpages: some names conflict with the man-pages package
|
|
||||||
Resolves: rhbz#2222868
|
|
||||||
|
|
||||||
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 3.9.0-8
|
|
||||||
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
|
||||||
Related: rhbz#1991688
|
|
||||||
|
|
||||||
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 3.9.0-7
|
|
||||||
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
|
|
||||||
|
|
||||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.9.0-6
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.9.0-5
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sun Jun 21 2020 Iñaki Úcar <iucar@fedoraproject.org> - 3.9.0-4
|
|
||||||
- make separate packages for 64-bit versions with and without suffix (bz1295965)
|
|
||||||
|
|
||||||
* Thu Mar 19 2020 Tom Callaway <spot@fedoraproject.org> - 3.9.0-3
|
|
||||||
- apply upstream fix for accidental removal of deprecated symbols from header file
|
|
||||||
|
|
||||||
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.9.0-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue Nov 26 2019 Tom Callaway <spot@fedoraproject.org> - 3.9.0-1
|
|
||||||
- update to 3.9.0
|
|
||||||
|
|
||||||
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.8.0-13
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed May 29 2019 Tom Callaway <spot@fedoraproject.org> - 3.8.0-12
|
|
||||||
- use --no-optimize-sibling-calls to work around gfortran issues
|
|
||||||
|
|
||||||
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.8.0-11
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.8.0-10
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue Jun 19 2018 Tom Callaway <spot@fedoraproject.org> - 3.8.0-9
|
|
||||||
- explicitly link liblapacke.so with liblapack to remove undefined-non-weak-symbols
|
|
||||||
|
|
||||||
* Mon Mar 5 2018 Tom Callaway <spot@fedoraproject.org> - 3.8.0-8
|
* Mon Mar 5 2018 Tom Callaway <spot@fedoraproject.org> - 3.8.0-8
|
||||||
- use LDFLAGS for shared libs
|
- use LDFLAGS for shared libs
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user