From 4d572b6acaae00a6b3607baf6f78446ec6a1a14d Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Feb 11 2020 02:09:46 +0000 Subject: No Z15 kernel appears to exist for now. --- diff --git a/openblas-0.3.8-noz15.patch b/openblas-0.3.8-noz15.patch new file mode 100644 index 0000000..fbb6bd5 --- /dev/null +++ b/openblas-0.3.8-noz15.patch @@ -0,0 +1,55 @@ +From 5a6bba3061f19923eb9972378021e6498bf8e5ed Mon Sep 17 00:00:00 2001 +From: Susi Lehtola +Date: Tue, 11 Feb 2020 15:07:33 +1300 +Subject: [PATCH] Patch out instances of Z15 in dynamic_zarch.c + +There does not appear to be a Z15 kernel yet, causing link errors from the code. This patch fixes the issue. +--- + driver/others/dynamic_zarch.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/driver/others/dynamic_zarch.c b/driver/others/dynamic_zarch.c +index 1206bf870..c7b82e4df 100644 +--- a/driver/others/dynamic_zarch.c ++++ b/driver/others/dynamic_zarch.c +@@ -3,12 +3,12 @@ + + extern gotoblas_t gotoblas_Z13; + extern gotoblas_t gotoblas_Z14; +-extern gotoblas_t gotoblas_Z15; ++//extern gotoblas_t gotoblas_Z15; + //#if (!defined C_GCC) || (GCC_VERSION >= 60000) + //extern gotoblas_t gotoblas_Z14; + //#endif + +-#define NUM_CORETYPES 5 ++#define NUM_CORETYPES 4 + + extern void openblas_warning(int verbose, const char* msg); + +@@ -16,14 +16,14 @@ static char* corename[] = { + "unknown", + "Z13", + "Z14", +- "Z15", ++// "Z15", + "ZARCH_GENERIC", + }; + + char* gotoblas_corename(void) { + if (gotoblas == &gotoblas_Z13) return corename[1]; + if (gotoblas == &gotoblas_Z14) return corename[2]; +- if (gotoblas == &gotoblas_Z15) return corename[3]; ++// if (gotoblas == &gotoblas_Z15) return corename[3]; + //#if (!defined C_GCC) || (GCC_VERSION >= 60000) + // if (gotoblas == &gotoblas_POWER9) return corename[3]; + //#endif +@@ -78,7 +78,7 @@ static gotoblas_t* force_coretype(char* coretype) { + { + case 1: return (&gotoblas_Z13); + case 2: return (&gotoblas_Z14); +- case 3: return (&gotoblas_Z15); ++// case 3: return (&gotoblas_Z15); + //#if (!defined C_GCC) || (GCC_VERSION >= 60000) + // case 3: return (&gotoblas_POWER9); + //#endif diff --git a/openblas.spec b/openblas.spec index a25c3b0..e580bab 100644 --- a/openblas.spec +++ b/openblas.spec @@ -31,6 +31,8 @@ Patch3: openblas-0.3.7-tests.patch # https://patch-diff.githubusercontent.com/raw/xianyi/OpenBLAS/pull/2405.patch Patch4: openblas-0.3.8-zarch.patch +# https://github.com/xianyi/OpenBLAS/pull/2407 +Patch5: openblas-0.3.8-noz15.patch BuildRequires: gcc BuildRequires: gcc-c++ @@ -245,6 +247,7 @@ cd OpenBLAS-%{version} %endif %patch3 -p1 -b .tests %patch4 -p1 -b .zarch +%patch5 -p1 -b .noz15 # Fix source permissions find -name \*.f -exec chmod 644 {} \;