commit
7d07a897a0
@ -1,18 +0,0 @@
|
||||
diff -up OpenBLAS-0.3.2/Makefile.tests OpenBLAS-0.3.2/Makefile
|
||||
--- OpenBLAS-0.3.2/Makefile.tests 2018-08-02 14:12:01.615117002 +0200
|
||||
+++ OpenBLAS-0.3.2/Makefile 2018-08-02 14:13:29.582918971 +0200
|
||||
@@ -122,11 +122,11 @@ tests :
|
||||
ifeq ($(NOFORTRAN), $(filter 0,$(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
|
||||
|
||||
@ -1,12 +0,0 @@
|
||||
diff -up OpenBLAS-0.3.3/Makefile.rule.tls OpenBLAS-0.3.3/Makefile.rule
|
||||
--- OpenBLAS-0.3.3/Makefile.rule.tls 2018-08-31 00:07:48.000000000 +0200
|
||||
+++ OpenBLAS-0.3.3/Makefile.rule 2018-09-29 19:00:47.804678736 +0200
|
||||
@@ -113,7 +113,7 @@ USE_SIMPLE_THREADED_LEVEL3 = 1
|
||||
# thread-local storage instead of a central memory buffer in memory.c
|
||||
# Note that if your system uses GLIBC, it needs to have at least glibc 2.21
|
||||
# for this to work.
|
||||
-USE_TLS = 1
|
||||
+#USE_TLS = 1
|
||||
|
||||
# If you want to drive whole 64bit region by BLAS. Not all Fortran
|
||||
# compiler supports this. It's safe to keep comment it out if you
|
||||
42
openblas-0.3.7-tests.patch
Normal file
42
openblas-0.3.7-tests.patch
Normal file
@ -0,0 +1,42 @@
|
||||
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 ::
|
||||
Binary file not shown.
@ -0,0 +1,73 @@
|
||||
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,17 +1,17 @@
|
||||
%bcond_with system_lapack
|
||||
|
||||
Name: openblas
|
||||
Version: 0.3.3
|
||||
Release: 3
|
||||
Version: 0.3.9
|
||||
Release: 1
|
||||
Summary: An optimized BLAS library based on GotoBLAS2 1.13 BSD version
|
||||
License: BSD
|
||||
URL: https://github.com/xianyi/OpenBLAS/
|
||||
Source0: https://github.com/xianyi/OpenBLAS/archive/v%{version}/openblas-%{version}.tar.gz
|
||||
Patch0000: openblas-0.2.15-system_lapack.patch
|
||||
Patch0001: openblas-0.2.5-libname.patch
|
||||
Patch0002: openblas-0.2.15-constructor.patch
|
||||
Patch0003: openblas-0.3.2-tests.patch
|
||||
Patch0004: openblas-0.3.3-tls.patch
|
||||
Patch0002: openblas-0.3.7-tests.patch
|
||||
Patch0003: openblas-move-declarations-of-lapack_complex_custom-types-.patch
|
||||
|
||||
Requires: %{name}-devel = %{version}-%{release}
|
||||
BuildRequires: gcc gcc-gfortran perl-devel
|
||||
|
||||
@ -58,8 +58,8 @@ cd OpenBLAS-%{version}
|
||||
%patch0000 -p1 -b .system_lapack
|
||||
%endif
|
||||
%patch0001 -p1 -b .libname
|
||||
%patch0003 -p1 -b .tests
|
||||
%patch0004 -p1 -b .tls
|
||||
%patch0002 -p1 -b .tests
|
||||
%patch0003 -p1 -b .cplusplus
|
||||
|
||||
# Set source permissions
|
||||
find -name \*.f -exec chmod 644 {} \;
|
||||
@ -172,7 +172,7 @@ COMMON="%{optflags} -fPIC"
|
||||
FCOMMON="%{optflags} -fPIC -frecursive"
|
||||
export LDFLAGS="%{__global_ldflags}"
|
||||
|
||||
make -C Rblas $TARGET USE_THREAD=0 USEOPENMP=0 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libRblas" LIBSONAME="libRblas.so" $AVX $LAPACKE INTERFACE64=0
|
||||
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"
|
||||
@ -183,7 +183,7 @@ make -C threaded $TARGET USE_THREAD=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_O
|
||||
# USE_THREAD determines use of SMP, not of pthreads
|
||||
COMMON="%{optflags} -fPIC -fopenmp -pthread"
|
||||
FCOMMON="$COMMON -frecursive"
|
||||
make -C openmp $TARGET USE_THREAD=1 USE_OPENMP=1 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblaso" $AVX $LAPACKE INTERFACE64=0
|
||||
make -C openmp $TARGET USE_THREAD=1 USE_OPENMP=1 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblaso" $AVX $LAPACKE INTERFACE64=0 %{with cpp_thread_check:CPP_THREAD_SAFETY_TEST=1}
|
||||
|
||||
COMMON="%{optflags} -fPIC"
|
||||
FCOMMON="$COMMON -frecursive -fdefault-integer-8"
|
||||
@ -192,7 +192,7 @@ make -C threaded64 $TARGET USE_THREAD=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_O
|
||||
|
||||
COMMON="%{optflags} -fPIC -fopenmp -pthread"
|
||||
FCOMMON="$COMMON -frecursive -fdefault-integer-8"
|
||||
make -C openmp64 $TARGET USE_THREAD=1 USE_OPENMP=1 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblaso64" $AVX $LAPACKE INTERFACE64=1
|
||||
make -C openmp64 $TARGET USE_THREAD=1 USE_OPENMP=1 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblaso64" $AVX $LAPACKE INTERFACE64=1 CPP_THREAD_SAFETY_TEST=1
|
||||
|
||||
COMMON="%{optflags} -fPIC"
|
||||
FCOMMON="$COMMON -frecursive -fdefault-integer-8"
|
||||
@ -201,7 +201,7 @@ make -C threaded64_ $TARGET USE_THREAD=1 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_
|
||||
|
||||
COMMON="%{optflags} -fPIC -fopenmp -pthread"
|
||||
FCOMMON="$COMMON -frecursive -fdefault-integer-8"
|
||||
make -C openmp64_ $TARGET USE_THREAD=1 USE_OPENMP=1 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblaso64_" $AVX $LAPACKE INTERFACE64=1 SYMBOLSUFFIX=64_
|
||||
make -C openmp64_ $TARGET USE_THREAD=1 USE_OPENMP=1 FC=gfortran CC=gcc COMMON_OPT="$COMMON" FCOMMON_OPT="$FCOMMON" $NMAX LIBPREFIX="libopenblaso64_" $AVX $LAPACKE INTERFACE64=1 SYMBOLSUFFIX=64_ CPP_THREAD_SAFETY_TEST=1
|
||||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
@ -355,5 +355,8 @@ rm -rf %{buildroot}%{_libdir}/pkgconfig
|
||||
%{_libdir}/lib%{name}*64_.so
|
||||
|
||||
%changelog
|
||||
* Fri Apr 17 2020 yuxiangyang<yuxiangyang4@huawei.com> - 0.3.9-1
|
||||
- Upgrade to 0.3.9
|
||||
|
||||
* Wed Nov 13 2019 Alex Chao <zhaolei746@huawei.com> - 0.3.3-3
|
||||
- Package init
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user