Compare commits
35 Commits
master
...
f37-riscv6
Author | SHA1 | Date | |
---|---|---|---|
40f2c02f51 | |||
|
219f52b0f1 | ||
|
3967337978 | ||
|
0b19ade739 | ||
|
b3e0dd98f5 | ||
|
6399f178dd | ||
|
3ef1d5e9d5 | ||
|
95a8f0fa3e | ||
|
4720c14646 | ||
|
edcce2ff97 | ||
|
cedd2e10d7 | ||
|
ad35a6455c | ||
|
9e7216f7d0 | ||
|
dfacab6ca1 | ||
|
cbeaa9d626 | ||
|
6573a842f1 | ||
|
4961e05b60 | ||
|
516beadbb3 | ||
|
ebe26476b5 | ||
|
860d1cd580 | ||
|
7d66ff068d | ||
|
6b5c3faa04 | ||
|
b114a34fb3 | ||
|
209524874e | ||
|
6ba14f0bda | ||
|
dc5c41fc4e | ||
|
6b70620c6f | ||
|
af61eb4146 | ||
|
5641975e5c | ||
|
a07fac9b19 | ||
|
766d57e663 | ||
|
4ab33d8758 | ||
|
a23aac5aed | ||
|
a1a0f15fec | ||
|
c0e5ad7d26 |
23
.gitignore
vendored
23
.gitignore
vendored
@ -1,21 +1,2 @@
|
||||
/v0.2.5.tar.gz
|
||||
/v0.2.7.tar.gz
|
||||
/v0.2.8.tar.gz
|
||||
/v0.2.9.tar.gz
|
||||
/v0.2.10.tar.gz
|
||||
/v0.2.11.tar.gz
|
||||
/v0.2.12.tar.gz
|
||||
/v0.2.13.tar.gz
|
||||
/v0.2.14.tar.gz
|
||||
/v0.2.15.tar.gz
|
||||
/v0.2.16.tar.gz
|
||||
/openblas-0.2.17.tar.gz
|
||||
/v0.2.18.tar.gz
|
||||
/v0.2.19.tar.gz
|
||||
/v0.3.0.tar.gz
|
||||
/v0.3.1.tar.gz
|
||||
/openblas-0.3.2.tar.gz
|
||||
/openblas-0.3.6.tar.gz
|
||||
/openblas-0.3.7.tar.gz
|
||||
/openblas-0.3.8.tar.gz
|
||||
/openblas-0.3.9.tar.gz
|
||||
/v*.tar.gz
|
||||
/openblas-*.tar.gz
|
||||
|
@ -1,73 +0,0 @@
|
||||
From ee2e758278b5d82b7242f505ea694f082ef65879 Mon Sep 17 00:00:00 2001
|
||||
From: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
|
||||
Date: Fri, 13 Mar 2020 20:34:13 +0100
|
||||
Subject: [PATCH] Move declarations of lapack_complex_custom types outside the
|
||||
extern C
|
||||
|
||||
fixes #2510
|
||||
---
|
||||
lapack-netlib/LAPACKE/include/lapack.h | 44 ++++++++++++++------------
|
||||
1 file changed, 23 insertions(+), 21 deletions(-)
|
||||
|
||||
diff --git a/lapack-netlib/LAPACKE/include/lapack.h b/lapack-netlib/LAPACKE/include/lapack.h
|
||||
index 0a6226fe4..36e53ec24 100644
|
||||
--- a/lapack-netlib/LAPACKE/include/lapack.h
|
||||
+++ b/lapack-netlib/LAPACKE/include/lapack.h
|
||||
@@ -12,27 +12,6 @@
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
-#ifdef __cplusplus
|
||||
-extern "C" {
|
||||
-#endif
|
||||
-
|
||||
-/*----------------------------------------------------------------------------*/
|
||||
-#ifndef lapack_int
|
||||
-#define lapack_int int
|
||||
-#endif
|
||||
-
|
||||
-#ifndef lapack_logical
|
||||
-#define lapack_logical lapack_int
|
||||
-#endif
|
||||
-
|
||||
-/* f2c, hence clapack and MacOS Accelerate, returns double instead of float
|
||||
- * for sdot, slange, clange, etc. */
|
||||
-#if defined(LAPACK_F2C)
|
||||
- typedef double lapack_float_return;
|
||||
-#else
|
||||
- typedef float lapack_float_return;
|
||||
-#endif
|
||||
-
|
||||
/* Complex types are structures equivalent to the
|
||||
* Fortran complex types COMPLEX(4) and COMPLEX(8).
|
||||
*
|
||||
@@ -88,6 +67,29 @@ extern "C" {
|
||||
|
||||
#endif /* LAPACK_COMPLEX_CUSTOM */
|
||||
|
||||
+
|
||||
+#ifdef __cplusplus
|
||||
+extern "C" {
|
||||
+#endif
|
||||
+
|
||||
+/*----------------------------------------------------------------------------*/
|
||||
+#ifndef lapack_int
|
||||
+#define lapack_int int
|
||||
+#endif
|
||||
+
|
||||
+#ifndef lapack_logical
|
||||
+#define lapack_logical lapack_int
|
||||
+#endif
|
||||
+
|
||||
+/* f2c, hence clapack and MacOS Accelerate, returns double instead of float
|
||||
+ * for sdot, slange, clange, etc. */
|
||||
+#if defined(LAPACK_F2C)
|
||||
+ typedef double lapack_float_return;
|
||||
+#else
|
||||
+ typedef float lapack_float_return;
|
||||
+#endif
|
||||
+
|
||||
+
|
||||
/* Callback logical functions of one, two, or three arguments are used
|
||||
* to select eigenvalues to sort to the top left of the Schur form.
|
||||
* The value is selected if function returns TRUE (non-zero). */
|
@ -1,140 +0,0 @@
|
||||
diff -up OpenBLAS-0.2.10/exports/gensymbol.lapacke OpenBLAS-0.2.10/exports/gensymbol
|
||||
--- OpenBLAS-0.2.10/exports/gensymbol.lapacke 2014-07-16 12:04:30.000000000 +0200
|
||||
+++ OpenBLAS-0.2.10/exports/gensymbol 2014-07-16 19:35:48.856855925 +0200
|
||||
@@ -175,7 +175,7 @@
|
||||
sggglm, sgghrd, sgglse, sggqrf,
|
||||
sggrqf, sggsvd, sggsvp, sgtcon, sgtrfs, sgtsv,
|
||||
sgtsvx, sgttrf, sgttrs, sgtts2, shgeqz,
|
||||
- shsein, shseqr, slabrd, slacon, slacn2,
|
||||
+ shsein, shseqr, slabrd, slacon,
|
||||
slaein, slaexc, slag2, slags2, slagtm, slagv2, slahqr,
|
||||
slahrd, slahr2, slaic1, slaln2, slals0, slalsa, slalsd,
|
||||
slangb, slange, slangt, slanhs, slansb, slansp,
|
||||
@@ -256,7 +256,7 @@
|
||||
chpevx, chpgst, chpgv, chpgvd, chpgvx, chprfs, chpsv,
|
||||
chpsvx,
|
||||
chptrd, chptrf, chptri, chptrs, chsein, chseqr, clabrd,
|
||||
- clacgv, clacon, clacn2, clacp2, clacpy, clacrm, clacrt, cladiv,
|
||||
+ clacgv, clacon, clacpy, clacrm, clacrt, cladiv,
|
||||
claed0, claed7, claed8,
|
||||
claein, claesy, claev2, clags2, clagtm,
|
||||
clahef, clahqr,
|
||||
@@ -323,7 +323,7 @@
|
||||
dggglm, dgghrd, dgglse, dggqrf,
|
||||
dggrqf, dggsvd, dggsvp, dgtcon, dgtrfs, dgtsv,
|
||||
dgtsvx, dgttrf, dgttrs, dgtts2, dhgeqz,
|
||||
- dhsein, dhseqr, dlabrd, dlacon, dlacn2,
|
||||
+ dhsein, dhseqr, dlabrd, dlacon,
|
||||
dlaein, dlaexc, dlag2, dlags2, dlagtm, dlagv2, dlahqr,
|
||||
dlahrd, dlahr2, dlaic1, dlaln2, dlals0, dlalsa, dlalsd,
|
||||
dlangb, dlange, dlangt, dlanhs, dlansb, dlansp,
|
||||
@@ -398,7 +398,7 @@
|
||||
zhpevx, zhpgst, zhpgv, zhpgvd, zhpgvx, zhprfs, zhpsv,
|
||||
zhpsvx,
|
||||
zhptrd, zhptrf, zhptri, zhptrs, zhsein, zhseqr, zlabrd,
|
||||
- zlacgv, zlacon, zlacn2, zlacp2, zlacpy, zlacrm, zlacrt, zladiv,
|
||||
+ zlacgv, zlacon, zlacpy, zlacrm, zlacrt, zladiv,
|
||||
zlaed0, zlaed7, zlaed8,
|
||||
zlaein, zlaesy, zlaev2, zlags2, zlagtm,
|
||||
zlahef, zlahqr,
|
||||
@@ -845,10 +845,6 @@
|
||||
LAPACKE_chseqr_work,
|
||||
LAPACKE_clacgv,
|
||||
LAPACKE_clacgv_work,
|
||||
- LAPACKE_clacn2,
|
||||
- LAPACKE_clacn2_work,
|
||||
- LAPACKE_clacp2,
|
||||
- LAPACKE_clacp2_work,
|
||||
LAPACKE_clacpy,
|
||||
LAPACKE_clacpy_work,
|
||||
LAPACKE_clag2z,
|
||||
@@ -984,8 +980,6 @@
|
||||
LAPACKE_csyrfs,
|
||||
LAPACKE_csyrfs_work,
|
||||
LAPACKE_csysv,
|
||||
- LAPACKE_csysv_rook,
|
||||
- LAPACKE_csysv_rook_work,
|
||||
LAPACKE_csysv_work,
|
||||
LAPACKE_csysvx,
|
||||
LAPACKE_csysvx_work,
|
||||
@@ -1259,8 +1253,6 @@
|
||||
LAPACKE_dhsein_work,
|
||||
LAPACKE_dhseqr,
|
||||
LAPACKE_dhseqr_work,
|
||||
- LAPACKE_dlacn2,
|
||||
- LAPACKE_dlacn2_work,
|
||||
LAPACKE_dlacpy,
|
||||
LAPACKE_dlacpy_work,
|
||||
LAPACKE_dlag2s,
|
||||
@@ -1510,8 +1502,6 @@
|
||||
LAPACKE_dsyrfs,
|
||||
LAPACKE_dsyrfs_work,
|
||||
LAPACKE_dsysv,
|
||||
- LAPACKE_dsysv_rook,
|
||||
- LAPACKE_dsysv_rook_work,
|
||||
LAPACKE_dsysv_work,
|
||||
LAPACKE_dsysvx,
|
||||
LAPACKE_dsysvx_work,
|
||||
@@ -1749,8 +1739,6 @@
|
||||
LAPACKE_shsein_work,
|
||||
LAPACKE_shseqr,
|
||||
LAPACKE_shseqr_work,
|
||||
- LAPACKE_slacn2,
|
||||
- LAPACKE_slacn2_work,
|
||||
LAPACKE_slacpy,
|
||||
LAPACKE_slacpy_work,
|
||||
LAPACKE_slag2d,
|
||||
@@ -1996,8 +1984,6 @@
|
||||
LAPACKE_ssyrfs,
|
||||
LAPACKE_ssyrfs_work,
|
||||
LAPACKE_ssysv,
|
||||
- LAPACKE_ssysv_rook,
|
||||
- LAPACKE_ssysv_rook_work,
|
||||
LAPACKE_ssysv_work,
|
||||
LAPACKE_ssysvx,
|
||||
LAPACKE_ssysvx_work,
|
||||
@@ -2321,10 +2307,6 @@
|
||||
LAPACKE_zhseqr_work,
|
||||
LAPACKE_zlacgv,
|
||||
LAPACKE_zlacgv_work,
|
||||
- LAPACKE_zlacn2,
|
||||
- LAPACKE_zlacn2_work,
|
||||
- LAPACKE_zlacp2,
|
||||
- LAPACKE_zlacp2_work,
|
||||
LAPACKE_zlacpy,
|
||||
LAPACKE_zlacpy_work,
|
||||
LAPACKE_zlag2c,
|
||||
@@ -2460,8 +2442,6 @@
|
||||
LAPACKE_zsyrfs,
|
||||
LAPACKE_zsyrfs_work,
|
||||
LAPACKE_zsysv,
|
||||
- LAPACKE_zsysv_rook,
|
||||
- LAPACKE_zsysv_rook_work,
|
||||
LAPACKE_zsysv_work,
|
||||
LAPACKE_zsysvx,
|
||||
LAPACKE_zsysvx_work,
|
||||
@@ -2705,20 +2685,20 @@
|
||||
#These function may need 2 underscores.
|
||||
@lapack_embeded_underscore_objs=(xerbla_array, chla_transtype, slasyf_rook,
|
||||
ssytf2_rook, ssytrf_rook, ssytrs_rook,
|
||||
- ssytri_rook, ssycon_rook, ssysv_rook,
|
||||
+ ssytri_rook, ssycon_rook,
|
||||
chetf2_rook, chetrf_rook, chetri_rook,
|
||||
chetrs_rook, checon_rook, chesv_rook,
|
||||
clahef_rook, clasyf_rook,
|
||||
csytf2_rook, csytrf_rook, csytrs_rook,
|
||||
- csytri_rook, csycon_rook, csysv_rook,
|
||||
+ csytri_rook, csycon_rook,
|
||||
dlasyf_rook,
|
||||
dsytf2_rook, dsytrf_rook, dsytrs_rook,
|
||||
- dsytri_rook, dsycon_rook, dsysv_rook,
|
||||
+ dsytri_rook, dsycon_rook,
|
||||
zhetf2_rook, zhetrf_rook, zhetri_rook,
|
||||
zhetrs_rook, zhecon_rook, zhesv_rook,
|
||||
zlahef_rook, zlasyf_rook,
|
||||
zsytf2_rook, zsytrf_rook, zsytrs_rook,
|
||||
- zsytri_rook, zsycon_rook, zsysv_rook,
|
||||
+ zsytri_rook, zsycon_rook,
|
||||
|
||||
|
||||
|
@ -1,18 +0,0 @@
|
||||
diff -up OpenBLAS-0.2.19/Makefile.tests OpenBLAS-0.2.19/Makefile
|
||||
--- OpenBLAS-0.2.19/Makefile.tests 2016-09-01 05:58:42.000000000 +0200
|
||||
+++ OpenBLAS-0.2.19/Makefile 2016-09-01 22:52:27.092706000 +0200
|
||||
@@ -110,11 +110,11 @@ tests :
|
||||
ifndef NOFORTRAN
|
||||
touch $(LIBNAME)
|
||||
ifndef NO_FBLAS
|
||||
- $(MAKE) -C test all
|
||||
- $(MAKE) -C utest all
|
||||
+ $(MAKE) -C test FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
|
||||
+ $(MAKE) -C utest FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
|
||||
endif
|
||||
ifndef NO_CBLAS
|
||||
- $(MAKE) -C ctest all
|
||||
+ $(MAKE) -C ctest FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
|
||||
endif
|
||||
endif
|
||||
|
26
openblas-0.3.11-tests.patch
Normal file
26
openblas-0.3.11-tests.patch
Normal file
@ -0,0 +1,26 @@
|
||||
diff -up OpenBLAS-0.3.21/Makefile.fixtests OpenBLAS-0.3.21/Makefile
|
||||
--- OpenBLAS-0.3.21/Makefile.fixtests 2022-08-26 07:37:06.257272957 +0200
|
||||
+++ OpenBLAS-0.3.21/Makefile 2022-08-26 07:37:53.168414307 +0200
|
||||
@@ -147,18 +147,18 @@ tests :
|
||||
ifeq ($(NOFORTRAN), $(filter 0,$(NOFORTRAN)))
|
||||
touch $(LIBNAME)
|
||||
ifndef NO_FBLAS
|
||||
- $(MAKE) -C test all
|
||||
+ $(MAKE) -C test FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
|
||||
endif
|
||||
endif
|
||||
ifneq ($(ONLY_CBLAS), 1)
|
||||
- $(MAKE) -C utest all
|
||||
+ $(MAKE) -C utest FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
|
||||
endif
|
||||
ifneq ($(NO_CBLAS), 1)
|
||||
ifneq ($(ONLY_CBLAS), 1)
|
||||
- $(MAKE) -C ctest all
|
||||
+ $(MAKE) -C ctest FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
|
||||
endif
|
||||
ifeq ($(CPP_THREAD_SAFETY_TEST), 1)
|
||||
- $(MAKE) -C cpp_thread_test all
|
||||
+ $(MAKE) -C cpp_thread_test FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
|
||||
endif
|
||||
endif
|
||||
|
55
openblas-0.3.21-sbgemm-test.patch
Normal file
55
openblas-0.3.21-sbgemm-test.patch
Normal file
@ -0,0 +1,55 @@
|
||||
Fixing FTBFS on power:
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=2120974
|
||||
|
||||
Upstream issue: https://github.com/xianyi/OpenBLAS/issues/3738
|
||||
Upstream fix: https://github.com/xianyi/OpenBLAS/pull/3718
|
||||
|
||||
commit d9dc015cfc78fc32f555995a89d6957ef0184ea2
|
||||
Author: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
|
||||
Date: Mon Aug 8 14:52:10 2022 +0200
|
||||
|
||||
Use blasint for INTERFACE64 compatibility
|
||||
|
||||
diff --git a/test/compare_sgemm_sbgemm.c b/test/compare_sgemm_sbgemm.c
|
||||
index a2c358cf..d4b59145 100644
|
||||
--- a/test/compare_sgemm_sbgemm.c
|
||||
+++ b/test/compare_sgemm_sbgemm.c
|
||||
@@ -76,9 +76,9 @@ float16to32 (bfloat16_bits f16)
|
||||
int
|
||||
main (int argc, char *argv[])
|
||||
{
|
||||
- int m, n, k;
|
||||
+ blasint m, n, k;
|
||||
int i, j, l;
|
||||
- int x;
|
||||
+ blasint x;
|
||||
int ret = 0;
|
||||
int loop = 100;
|
||||
char transA = 'N', transB = 'N';
|
||||
|
||||
commit 3d338b57de1837f1e2264a1262a9ee9203f31c6c
|
||||
Author: Martin Kroeker <martin@ruby.chemie.uni-freiburg.de>
|
||||
Date: Mon Aug 8 17:09:45 2022 +0200
|
||||
|
||||
remove spurious loops
|
||||
|
||||
diff --git a/test/compare_sgemm_sbgemm.c b/test/compare_sgemm_sbgemm.c
|
||||
index d4b59145..276fecae 100644
|
||||
--- a/test/compare_sgemm_sbgemm.c
|
||||
+++ b/test/compare_sgemm_sbgemm.c
|
||||
@@ -112,7 +112,6 @@ main (int argc, char *argv[])
|
||||
&m, BB, &k, &beta, CC, &m);
|
||||
for (i = 0; i < n; i++)
|
||||
for (j = 0; j < m; j++)
|
||||
- for (l = 0; l < k; l++)
|
||||
if (fabs (CC[i * m + j] - C[i * m + j]) > 1.0)
|
||||
ret++;
|
||||
if (transA == 'N' && transB == 'N')
|
||||
@@ -126,7 +125,6 @@ main (int argc, char *argv[])
|
||||
}
|
||||
for (i = 0; i < n; i++)
|
||||
for (j = 0; j < m; j++)
|
||||
- for (l = 0; l < k; l++)
|
||||
if (CC[i * m + j] != DD[i * m + j])
|
||||
ret++;
|
||||
}
|
@ -1,42 +0,0 @@
|
||||
diff -up OpenBLAS-0.3.7/Makefile.tests OpenBLAS-0.3.7/Makefile
|
||||
--- OpenBLAS-0.3.7/Makefile.tests 2019-08-11 23:23:27.000000000 +0200
|
||||
+++ OpenBLAS-0.3.7/Makefile 2019-08-12 11:32:09.937281485 +0200
|
||||
@@ -123,13 +123,13 @@ tests :
|
||||
ifeq ($(NOFORTRAN), $(filter 0,$(NOFORTRAN)))
|
||||
touch $(LIBNAME)
|
||||
ifndef NO_FBLAS
|
||||
- $(MAKE) -C test all
|
||||
+ $(MAKE) -C test FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
|
||||
endif
|
||||
- $(MAKE) -C utest all
|
||||
+ $(MAKE) -C utest FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
|
||||
ifndef NO_CBLAS
|
||||
- $(MAKE) -C ctest all
|
||||
+ $(MAKE) -C ctest FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
|
||||
ifeq ($(CPP_THREAD_SAFETY_TEST), 1)
|
||||
- $(MAKE) -C cpp_thread_test all
|
||||
+ $(MAKE) -C cpp_thread_test FC="$(FC)" CC="$(CC)" COMMON_OPT="$(COMMON_OPT)" FCOMMON_OPT="$(FCOMMON_OPT)" all
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
diff -up OpenBLAS-0.3.7/cpp_thread_test/Makefile.tests OpenBLAS-0.3.7/cpp_thread_test/Makefile
|
||||
--- OpenBLAS-0.3.7/cpp_thread_test/Makefile.tests 2019-08-11 19:23:00.000000000 +0000
|
||||
+++ OpenBLAS-0.3.7/cpp_thread_test/Makefile 2019-12-12 11:05:51.426334062 +0000
|
||||
@@ -1,13 +1,14 @@
|
||||
-include ../Makefile.rule
|
||||
+TOPDIR = ..
|
||||
+include $(TOPDIR)/Makefile.system
|
||||
|
||||
all :: dgemv_tester dgemm_tester
|
||||
|
||||
dgemv_tester :
|
||||
- $(CXX) $(COMMON_OPT) -Wall -Wextra -Wshadow -fopenmp -std=c++11 dgemv_thread_safety.cpp ../libopenblas.a -lpthread -o dgemv_tester
|
||||
+ $(CXX) $(COMMON_OPT) -Wall -Wextra -Wshadow -fopenmp -std=c++11 dgemv_thread_safety.cpp ../$(LIBNAME) -lpthread -o dgemv_tester
|
||||
./dgemv_tester
|
||||
|
||||
dgemm_tester : dgemv_tester
|
||||
- $(CXX) $(COMMON_OPT) -Wall -Wextra -Wshadow -fopenmp -std=c++11 dgemm_thread_safety.cpp ../libopenblas.a -lpthread -o dgemm_tester
|
||||
+ $(CXX) $(COMMON_OPT) -Wall -Wextra -Wshadow -fopenmp -std=c++11 dgemm_thread_safety.cpp ../$(LIBNAME) -lpthread -o dgemm_tester
|
||||
./dgemm_tester
|
||||
|
||||
clean ::
|
146
openblas.spec
146
openblas.spec
@ -1,6 +1,6 @@
|
||||
%bcond_with system_lapack
|
||||
# Version of bundled lapack
|
||||
%global lapackver 3.9.0
|
||||
%global lapackver 3.9.1
|
||||
|
||||
# DO NOT "CLEAN UP" OR MODIFY THIS SPEC FILE WITHOUT ASKING THE
|
||||
# MAINTAINER FIRST!
|
||||
@ -14,8 +14,8 @@
|
||||
# "obsoleted" features are still kept in the spec.
|
||||
|
||||
Name: openblas
|
||||
Version: 0.3.9
|
||||
Release: 2%{?dist}
|
||||
Version: 0.3.21
|
||||
Release: 3.0.riscv64%{?dist}
|
||||
Summary: An optimized BLAS library based on GotoBLAS2
|
||||
License: BSD
|
||||
URL: https://github.com/xianyi/OpenBLAS/
|
||||
@ -26,18 +26,23 @@ Patch0: openblas-0.2.15-system_lapack.patch
|
||||
Patch1: openblas-0.2.5-libname.patch
|
||||
# Don't use constructor priorities on too old architectures
|
||||
Patch2: openblas-0.2.15-constructor.patch
|
||||
# Fix SBGEMM test to work with INTERFACE64
|
||||
Patch3: openblas-0.3.21-sbgemm-test.patch
|
||||
# Supply the proper flags to the test makefile
|
||||
Patch3: openblas-0.3.7-tests.patch
|
||||
|
||||
# Fix C++ compatibility (BZ #1820131)
|
||||
Patch4: https://github.com/xianyi/OpenBLAS/commit/ee2e758278b5d82b7242f505ea694f082ef65879.patch
|
||||
Patch4: openblas-0.3.11-tests.patch
|
||||
|
||||
BuildRequires: make
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: gcc-gfortran
|
||||
BuildRequires: perl-devel
|
||||
BuildRequires: multilib-rpm-config
|
||||
|
||||
# Rblas library is no longer necessary
|
||||
%if 0%{?fedora} >= 31 || 0%{?rhel} >= 8
|
||||
Obsoletes: %{name}-Rblas < %{version}-%{release}
|
||||
%endif
|
||||
|
||||
# Do we have execstack?
|
||||
%if 0%{?rhel} == 7
|
||||
%ifarch ppc64le aarch64
|
||||
@ -46,7 +51,11 @@ BuildRequires: multilib-rpm-config
|
||||
%global execstack 1
|
||||
%endif
|
||||
%else
|
||||
%ifnarch riscv64
|
||||
%global execstack 1
|
||||
%else
|
||||
%global execstack 0
|
||||
%endif
|
||||
%endif
|
||||
%if %{execstack}
|
||||
BuildRequires: /usr/bin/execstack
|
||||
@ -100,12 +109,6 @@ Computational Science, ISCAS. http://www.rdcps.ac.cn
|
||||
%description
|
||||
%{base_description}
|
||||
|
||||
%package Rblas
|
||||
Summary: A version of OpenBLAS for R to use as libRblas
|
||||
|
||||
%description Rblas
|
||||
%{base_description}
|
||||
|
||||
%package serial
|
||||
Summary: An optimized BLAS library based on GotoBLAS2, serial version
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
@ -243,8 +246,8 @@ cd OpenBLAS-%{version}
|
||||
%if 0%{?rhel} == 5
|
||||
%patch2 -p1 -b .constructor
|
||||
%endif
|
||||
%patch3 -p1 -b .tests
|
||||
%patch4 -p1 -b .cplusplus
|
||||
%patch3 -p1 -b .sbgemm
|
||||
%patch4 -p1 -b .tests
|
||||
|
||||
# Fix source permissions
|
||||
find -name \*.f -exec chmod 644 {} \;
|
||||
@ -255,7 +258,6 @@ rm -rf lapack-netlib
|
||||
%endif
|
||||
|
||||
# Make serial, threaded and OpenMP versions; as well as 64-bit versions
|
||||
# Also make an libRblas.so
|
||||
cd ..
|
||||
cp -ar OpenBLAS-%{version} openmp
|
||||
cp -ar OpenBLAS-%{version} threaded
|
||||
@ -264,14 +266,8 @@ for d in {serial,threaded,openmp}64{,_}; do
|
||||
cp -ar OpenBLAS-%{version} $d
|
||||
done
|
||||
%endif
|
||||
cp -ar OpenBLAS-%{version} Rblas
|
||||
mv OpenBLAS-%{version} serial
|
||||
|
||||
# Hackup Rblas Makefiles
|
||||
sed -i 's|.so.$(MAJOR_VERSION)|.so|g' Rblas/Makefile
|
||||
sed -i 's|.so.$(MAJOR_VERSION)|.so|g' Rblas/exports/Makefile
|
||||
sed -i 's|@ln -fs $(LIBSONAME) $(LIBPREFIX).so|#@ln -fs $(LIBSONAME) $(LIBPREFIX).so|g' Rblas/Makefile
|
||||
|
||||
%if %{with system_lapack}
|
||||
# Setup 32-bit interface LAPACK
|
||||
mkdir netliblapack
|
||||
@ -348,6 +344,9 @@ rm -rf netliblapack64
|
||||
%endif
|
||||
|
||||
%build
|
||||
# openblas fails to build with LTO due to undefined symbols. These could
|
||||
# well be the result of the assembly code used in this package
|
||||
%define _lto_cflags %{nil}
|
||||
%if !%{lapacke}
|
||||
LAPACKE="NO_LAPACKE=1"
|
||||
%endif
|
||||
@ -386,6 +385,9 @@ TARGET="TARGET=ARMV8 DYNAMIC_ARCH=1 DYNAMIC_OLDER=1"
|
||||
%ifarch s390x
|
||||
TARGET="TARGET=ZARCH_GENERIC DYNAMIC_ARCH=1 DYNAMIC_OLDER=1"
|
||||
%endif
|
||||
%ifarch riscv64
|
||||
TARGET="TARGET=RISCV64_GENERIC DYNAMIC_ARCH=0"
|
||||
%endif
|
||||
|
||||
%if 0%{?rhel} == 5
|
||||
# Gfortran too old to recognize -frecursive
|
||||
@ -398,12 +400,10 @@ FCOMMON="%{optflags} -fPIC -frecursive"
|
||||
# Use Fedora linker flags
|
||||
export LDFLAGS="%{__global_ldflags}"
|
||||
|
||||
make -C Rblas $TARGET USE_THREAD=0 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libRblas" LIBSONAME="libRblas.so" $AVX $LAPACKE INTERFACE64=0
|
||||
|
||||
# Declare some necessary build flags
|
||||
COMMON="%{optflags} -fPIC"
|
||||
FCOMMON="$COMMON -frecursive"
|
||||
make -C serial $TARGET USE_THREAD=0 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas" $AVX $LAPACKE INTERFACE64=0
|
||||
make -C serial $TARGET USE_THREAD=0 USE_LOCKING=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas" $AVX $LAPACKE INTERFACE64=0
|
||||
make -C threaded $TARGET USE_THREAD=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblasp" $AVX $LAPACKE INTERFACE64=0
|
||||
|
||||
# USE_THREAD determines use of SMP, not of pthreads
|
||||
@ -414,7 +414,7 @@ make -C openmp $TARGET USE_THREAD=1 USE_OPENMP=1 FC=gfortran CC=gcc COMMON_O
|
||||
%if %build64
|
||||
COMMON="%{optflags} -fPIC"
|
||||
FCOMMON="$COMMON -frecursive -fdefault-integer-8"
|
||||
make -C serial64 $TARGET USE_THREAD=0 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas64" $AVX $LAPACKE INTERFACE64=1
|
||||
make -C serial64 $TARGET USE_THREAD=0 USE_LOCKING=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas64" $AVX $LAPACKE INTERFACE64=1
|
||||
make -C threaded64 $TARGET USE_THREAD=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblasp64" $AVX $LAPACKE INTERFACE64=1
|
||||
|
||||
COMMON="%{optflags} -fPIC -fopenmp -pthread"
|
||||
@ -423,7 +423,7 @@ make -C openmp64 $TARGET USE_THREAD=1 USE_OPENMP=1 FC=gfortran CC=gcc COMMON_O
|
||||
|
||||
COMMON="%{optflags} -fPIC"
|
||||
FCOMMON="$COMMON -frecursive -fdefault-integer-8"
|
||||
make -C serial64_ $TARGET USE_THREAD=0 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas64_" $AVX $LAPACKE INTERFACE64=1 SYMBOLSUFFIX=64_
|
||||
make -C serial64_ $TARGET USE_THREAD=0 USE_LOCKING=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblas64_" $AVX $LAPACKE INTERFACE64=1 SYMBOLSUFFIX=64_
|
||||
make -C threaded64_ $TARGET USE_THREAD=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblasp64_" $AVX $LAPACKE INTERFACE64=1 SYMBOLSUFFIX=64_
|
||||
|
||||
COMMON="%{optflags} -fPIC -fopenmp -pthread"
|
||||
@ -450,6 +450,9 @@ suffix=""
|
||||
%ifarch armv7hl
|
||||
suffix="_armv7"
|
||||
%endif
|
||||
%ifarch riscv64
|
||||
suffix="_riscv64_generic"
|
||||
%endif
|
||||
slibname=`basename %{buildroot}%{_libdir}/libopenblas${suffix}-*.so .so`
|
||||
mv %{buildroot}%{_libdir}/${slibname}.a %{buildroot}%{_libdir}/lib%{name}.a
|
||||
if [[ "$suffix" != "" ]]; then
|
||||
@ -459,10 +462,6 @@ else
|
||||
sname=${slibname}
|
||||
fi
|
||||
|
||||
# Install the Rblas library
|
||||
mkdir -p %{buildroot}%{_libdir}/R/lib/
|
||||
install -p -m 755 Rblas/libRblas.so %{buildroot}%{_libdir}/R/lib/
|
||||
|
||||
# Install the OpenMP library
|
||||
olibname=`echo ${slibname} | sed "s|lib%{name}|lib%{name}o|g"`
|
||||
install -D -p -m 644 openmp/${olibname}.a %{buildroot}%{_libdir}/lib%{name}o.a
|
||||
@ -566,9 +565,6 @@ ln -sf ${pname64_}.so lib%{name}p64_.so.0
|
||||
for lib in %{buildroot}%{_libdir}/libopenblas*.so; do
|
||||
execstack -c $lib
|
||||
done
|
||||
for lib in %{buildroot}%{_libdir}/R/lib/libRblas*.so; do
|
||||
execstack -c $lib
|
||||
done
|
||||
%endif
|
||||
|
||||
# Get rid of generated CMake config
|
||||
@ -580,8 +576,6 @@ rm -rf %{buildroot}%{_libdir}/pkgconfig
|
||||
|
||||
%ldconfig_scriptlets openmp
|
||||
|
||||
%ldconfig_scriptlets Rblas
|
||||
|
||||
%ldconfig_scriptlets threads
|
||||
|
||||
%if %build64
|
||||
@ -651,9 +645,6 @@ rm -rf %{buildroot}%{_libdir}/pkgconfig
|
||||
%{_libdir}/lib%{name}p64_.so
|
||||
%endif
|
||||
|
||||
%files Rblas
|
||||
%{_libdir}/R/lib/libRblas.so
|
||||
|
||||
%files static
|
||||
%{_libdir}/lib%{name}.a
|
||||
%{_libdir}/lib%{name}o.a
|
||||
@ -668,6 +659,83 @@ rm -rf %{buildroot}%{_libdir}/pkgconfig
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Wed Oct 19 2022 David Abdurachmanov <davidlt@rivosinc.com> - 0.3.21-3.0.riscv64
|
||||
- Enable riscv64
|
||||
|
||||
* Fri Aug 26 2022 Honza Horak <hhorak@redhat.com> - 0.3.21-3
|
||||
- Re-add flags for tests
|
||||
|
||||
* Wed Aug 24 2022 Honza Horak <hhorak@redhat.com> - 0.3.21-2
|
||||
- Fix SBGEMM test to work with INTERFACE64
|
||||
Resolves: #2120974
|
||||
|
||||
* Mon Aug 08 2022 Ali Erdinc Koroglu <aekoroglu@fedoraproject.org> - 0.3.21-1
|
||||
- Update to 0.3.21 (RHBZ #2116398)
|
||||
|
||||
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.20-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Tue Mar 08 2022 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.20-1
|
||||
- Update to 0.3.20.
|
||||
|
||||
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.19-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Mon Jan 03 2022 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.19-2
|
||||
- Fix BZ#1982856.
|
||||
|
||||
* Sun Dec 19 2021 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.19-1
|
||||
- Update to 0.3.19.
|
||||
|
||||
* Mon Oct 11 2021 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.18-1
|
||||
- Update to 0.3.18.
|
||||
|
||||
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.17-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Mon Jul 19 2021 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.17-1
|
||||
- Update to 0.3.17.
|
||||
|
||||
* Mon Jul 12 2021 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.16-1
|
||||
- Update to 0.3.16.
|
||||
|
||||
* Mon May 03 2021 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.15-1
|
||||
- Update to 0.3.15.
|
||||
|
||||
* Thu Mar 18 2021 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.14-1
|
||||
- Update to 0.3.14.
|
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.12-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Sun Oct 25 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.12-1
|
||||
- Update to 0.3.12.
|
||||
|
||||
* Sun Oct 18 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.11-1
|
||||
- Update to 0.3.11.
|
||||
|
||||
* Fri Sep 18 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-6
|
||||
- Fix incorrect result of cblas_zdotc_sub on ppc64le (BZ #1878449).
|
||||
|
||||
* Sat Aug 29 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-5
|
||||
- Fix unresolved bfloat16 datatype (BZ #1873667).
|
||||
|
||||
* Fri Aug 14 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-4
|
||||
- Obsolete Rblas package (BZ #1849966).
|
||||
|
||||
* Tue Aug 11 2020 Jeff Law <law@redhat.com> - 0.3.10-3
|
||||
- Disable LTO
|
||||
|
||||
* Tue Jul 28 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-2
|
||||
- Include upstream patch 2672 to fix test suite on systems with few CPUs.
|
||||
|
||||
* Mon Jun 15 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.10-1
|
||||
- Update to 0.3.10.
|
||||
|
||||
* Thu May 28 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.9-3
|
||||
- Enable USE_LOCKING in the sequential versions of the library for
|
||||
thread safety.
|
||||
|
||||
* Thu Apr 02 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.3.9-2
|
||||
- Patch for BZ #1820131.
|
||||
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (openblas-0.3.9.tar.gz) = e34da25b3aaf959ec12826ac68c81e739e453d44f2dba28b15e57d7a827edc4d5f42988e9b6d98ac07999940be7b5876246cb3a980e590ae87f77f4c2f12f40a
|
||||
SHA512 (openblas-0.3.21.tar.gz) = 4625c8e6ccfa9120281fd714d3f6b7c3ba2265470c1be76121d6b25dc3dacb899d26e5d9a417ddc616d23909f1411495aa995ef8d8d6df8511cd5cefbabcb1c5
|
||||
|
Loading…
x
Reference in New Issue
Block a user