The package rpms/atlas.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/atlas.git/commit/?id=9a83c6c2acd0....
Change:
+%ifarch s390 s390x
Thanks.
Full change:
============
commit 9a83c6c2acd00d97a73b00e78a6a321dd3e626e9
Author: Jakub Martisko <jamartis(a)redhat.com>
Date: Fri Aug 28 17:23:01 2020 +0200
sync with rhel 8.3
- add the z14 and z15 subpackages. Unlike in RHEL, the base s390 package is still
build
for z12.
- add some covscan related fixes from rhel
- minor cleanup of the spec file/unused patches
diff --git a/.gitignore b/.gitignore
index 6661901..0700b1c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,3 +10,6 @@ K7323DNow.tgz
/lapack-3.5.0.tgz
/atlas3.10.2.tar.bz2
/POWER864LEVSXp4.tar.bz2
+/IBMz1364VXZ.tar.bz2
+/IBMz1464VXZ2.tar.bz2
+/IBMz1564VXZ2.tar.bz2
diff --git a/atlas-aarch64port.patch b/atlas-aarch64port.patch
deleted file mode 100644
index ad06226..0000000
--- a/atlas-aarch64port.patch
+++ /dev/null
@@ -1,219 +0,0 @@
-Author: Mark Salter <msalter(a)redhat.com>
-
-Index: ATLAS/CONFIG/include/atlconf.h
-===================================================================
---- ATLAS.orig/CONFIG/include/atlconf.h
-+++ ATLAS/CONFIG/include/atlconf.h
-@@ -16,9 +16,9 @@ enum OSTYPE {OSOther=0, OSLinux, OSSunOS
- ((OS_) == OSWin64) )
-
- enum ARCHFAM {AFOther=0, AFPPC, AFSPARC, AFALPHA, AFX86, AFIA64, AFMIPS,
-- AFARM, AFS390};
-+ AFARM, AFS390, AFAARCH64};
-
--#define NMACH 52
-+#define NMACH 53
- static char *machnam[NMACH] =
- {"UNKNOWN", "POWER3", "POWER4", "POWER5",
"PPCG4", "PPCG5",
- "POWER6", "POWER7", "POWERe6500", "IBMz9",
"IBMz10", "IBMz196",
-@@ -29,7 +29,7 @@ static char *machnam[NMACH] =
- "Efficeon", "K7", "HAMMER", "AMD64K10h",
"AMDLLANO", "AMDDOZER","AMDDRIVER",
- "UNKNOWNx86", "IA64Itan", "IA64Itan2",
- "USI", "USII", "USIII", "USIV",
"UST1", "UST2", "UnknownUS",
-- "MIPSR1xK", "MIPSICE9", "ARMv7"};
-+ "MIPSR1xK", "MIPSICE9", "ARMv7",
"AARCH64"};
- enum MACHTYPE {MACHOther, IbmPwr3, IbmPwr4, IbmPwr5, PPCG4, PPCG5,
- IbmPwr6, IbmPwr7, Pwre6500,
- IbmZ9, IbmZ10, IbmZ196, /* s390(x) in Linux */
-@@ -42,7 +42,8 @@ enum MACHTYPE {MACHOther, IbmPwr3, IbmPw
- SunUSI, SunUSII, SunUSIII, SunUSIV, SunUST1, SunUST2, SunUSX,
- MIPSR1xK, /* includes R10K, R12K, R14K, R16K */
- MIPSICE9, /* SiCortex ICE9 -- like MIPS5K */
-- ARMv7 /* includes Cortex A8, A9 */
-+ ARMv7, /* includes Cortex A8, A9 */
-+ AARCH64
- };
- #define MachIsX86(mach_) \
- ( (mach_) >= x86x87 && (mach_) <= x86X )
-@@ -63,6 +64,8 @@ enum MACHTYPE {MACHOther, IbmPwr3, IbmPw
- ( (mach_) == ARMv7 )
- #define MachIsS390(mach_) \
- ( (mach_) >= IbmZ9 && (mach_) <= IbmZ196 )
-+#define MachIsAARCH64(mach_) \
-+ ( (mach_) == AARCH64 )
-
-
- static char *f2c_namestr[5] = {"UNKNOWN","Add_", "Add__",
"NoChange", "UpCase"};
-@@ -84,13 +87,13 @@ enum ISAEXT
- {ISA_None=0, ISA_VSX, ISA_AV, ISA_AVXMAC, ISA_AVXFMA4, ISA_AVX,
- ISA_SSE3, ISA_SSE2, ISA_SSE1, ISA_3DNow, ISA_NEON};
-
--#define NASMD 9
-+#define NASMD 10
- enum ASMDIA
- {ASM_None=0, gas_x86_32, gas_x86_64, gas_sparc, gas_ppc, gas_parisc,
-- gas_mips, gas_arm, gas_s390};
-+ gas_mips, gas_arm, gas_s390, gas_aarch64};
- static char *ASMNAM[NASMD] =
- {"", "GAS_x8632", "GAS_x8664",
"GAS_SPARC", "GAS_PPC", "GAS_PARISC",
-- "GAS_MIPS", "GAS_ARM", "GAS_S390"};
-+ "GAS_MIPS", "GAS_ARM", "GAS_S390",
"GAS_AARCH64"};
-
- /*
- * Used for archinfo probes (can pack in bitfield)
-Index: ATLAS/CONFIG/src/Makefile
-===================================================================
---- ATLAS.orig/CONFIG/src/Makefile
-+++ ATLAS/CONFIG/src/Makefile
-@@ -260,6 +260,11 @@ IRun_BINDP :
- redir=config0.out
- - cat config0.out
-
-+IRun_GAS_AARCH64 :
-+ $(CC) $(CCFLAGS) -o xprobe_gas_aarch64 $(SRCdir)/backend/probe_this_asm.c
$(SRCdir)/backend/probe_gas_aarch64.S
-+ $(MAKE) $(atlrun) atldir=$(mydir) exe=xprobe_gas_aarch64 args="$(args)" \
-+ redir=config0.out
-+ - cat config0.out
- IRun_GAS_S390 :
- $(CC) $(CCFLAGS) -o xprobe_gas_s390 $(SRCdir)/backend/probe_this_asm.c
$(SRCdir)/backend/probe_gas_s390.S
- $(MAKE) $(atlrun) atldir=$(mydir) exe=xprobe_gas_s390 args="$(args)" \
-Index: ATLAS/CONFIG/src/SpewMakeInc.c
-===================================================================
---- ATLAS.orig/CONFIG/src/SpewMakeInc.c
-+++ ATLAS/CONFIG/src/SpewMakeInc.c
-@@ -391,6 +391,8 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu
-
- if (MachIsIA64(arch))
- return(sp);
-+ if (MachIsAARCH64(arch))
-+ return(sp);
- if (MachIsMIPS(arch))
- return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32");
- if (MachIsS390(arch))
-Index: ATLAS/CONFIG/src/atlcomp.txt
-===================================================================
---- ATLAS.orig/CONFIG/src/atlcomp.txt
-+++ ATLAS/CONFIG/src/atlcomp.txt
-@@ -267,6 +267,17 @@ MACH=ARMv7 OS=ALL LVL=1000 COMPS=dmc,dkc
- MACH=ARMv7 OS=ALL LVL=1000 COMPS=f77
- 'gfortran' '-mcpu=cortex-a8 -mfpu=vfpv3 -mfloat-abi=softfp -O'
- #
-+# AArch64 defaults
-+#
-+MACH=AARCH64 OS=ALL LVL=1000 COMPS=xcc
-+ 'gcc' '-O2'
-+MACH=AARCH64 OS=ALL LVL=1000 COMPS=smc,skc,gcc,icc
-+ 'gcc' '-O2'
-+MACH=AARCH64 OS=ALL LVL=1000 COMPS=dmc,dkc
-+ 'gcc' '-O2'
-+MACH=AARCH64 OS=ALL LVL=1000 COMPS=f77
-+ 'gfortran' '-O'
-+#
- # Generic defaults
- #
- MACH=ALL OS=ALL LVL=5 COMPS=icc,smc,dmc,skc,dkc,xcc,gcc
-Index: ATLAS/CONFIG/src/atlconf_misc.c
-===================================================================
---- ATLAS.orig/CONFIG/src/atlconf_misc.c
-+++ ATLAS/CONFIG/src/atlconf_misc.c
-@@ -563,6 +563,7 @@ enum ARCHFAM ProbeArchFam(char *targ)
- else if (strstr(res, "ia64")) fam = AFIA64;
- else if (strstr(res, "mips")) fam = AFMIPS;
- else if (strstr(res, "arm")) fam = AFARM;
-+ else if (strstr(res, "aarch64")) fam = AFAARCH64;
- else if (strstr(res, "s390")) fam = AFS390;
- else if ( strstr(res, "i686") || strstr(res, "i586") ||
- strstr(res, "i486") || strstr(res, "i386") ||
-@@ -588,6 +589,7 @@ enum ARCHFAM ProbeArchFam(char *targ)
- strstr(res, "x86_64") ) fam = AFX86;
- else if (strstr(res, "mips")) fam = AFMIPS;
- else if (strstr(res, "arm")) fam = AFARM;
-+ else if (strstr(res, "aarch64")) fam = AFAARCH64;
- else if (strstr(res, "s390")) fam = AFS390;
- free(res);
- }
-Index: ATLAS/CONFIG/src/backend/Make.ext
-===================================================================
---- ATLAS.orig/CONFIG/src/backend/Make.ext
-+++ ATLAS/CONFIG/src/backend/Make.ext
-@@ -57,6 +57,8 @@ probe_gas_arm.S : $(basf)
- $(extC) -b $(basf) -o probe_gas_arm.S rout=probe_gas_arm.S
- probe_gas_s390.S : $(basf)
- $(extC) -b $(basf) -o probe_gas_s390.S rout=probe_gas_s390.S
-+probe_gas_aarch64.S : $(basf)
-+ $(extC) -b $(basf) -o probe_gas_aarch64.S rout=probe_gas_aarch64.S
- probe_AVXMAC.S : $(basf)
- $(extC) -b $(basf) -o probe_AVXMAC.S rout=probe_AVXMAC.S
- probe_AVXFMA4.S : $(basf)
-Index: ATLAS/CONFIG/src/backend/archinfo_linux.c
-===================================================================
---- ATLAS.orig/CONFIG/src/backend/archinfo_linux.c
-+++ ATLAS/CONFIG/src/backend/archinfo_linux.c
-@@ -267,6 +267,14 @@ enum MACHTYPE ProbeArch()
- free(res);
- }
- break;
-+ case AFAARCH64:
-+ res = atlsys_1L(NULL, "fgrep 'Processor' /proc/cpuinfo", 0, 0);
-+ if (res)
-+ {
-+ if (strstr(res, "AArch64")) mach = AARCH64;
-+ free(res);
-+ }
-+ break;
- default:
- #if 0
- if (!CmndOneLine(NULL, "fgrep 'cpu family' /proc/cpuinfo",
res))
-Index: ATLAS/CONFIG/src/backend/probe_gas_aarch64.S
-===================================================================
---- /dev/null
-+++ ATLAS/CONFIG/src/backend/probe_gas_aarch64.S
-@@ -0,0 +1,14 @@
-+#define ATL_GAS_AARCH64
-+#include "atlas_asm.h"
-+#
-+# Linux AArch64 assembler for:
-+# int asm_probe(int i)
-+# RETURNS: i*3
-+#
-+.text
-+.globl ATL_asmdecor(asm_probe)
-+.type ATL_asmdecor(asm_probe), %function
-+ATL_asmdecor(asm_probe):
-+ add w0, w0, w0, LSL #1
-+ ret
-+.size ATL_asmdecor(asm_probe),.-ATL_asmdecor(asm_probe)
-Index: ATLAS/CONFIG/src/probe_comp.c
-===================================================================
---- ATLAS.orig/CONFIG/src/probe_comp.c
-+++ ATLAS/CONFIG/src/probe_comp.c
-@@ -582,7 +582,7 @@ char *GetPtrbitsFlag(enum OSTYPE OS, enu
- char *sp = "";
- int i, j, k;
-
-- if (MachIsIA64(arch))
-+ if (MachIsIA64(arch) || MachIsAARCH64(arch))
- return(sp);
- if (MachIsMIPS(arch))
- return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32");
-Index: ATLAS/include/atlas_genparse.h
-===================================================================
---- ATLAS.orig/include/atlas_genparse.h
-+++ ATLAS/include/atlas_genparse.h
-@@ -6,13 +6,13 @@
- #include <assert.h>
- #include <string.h>
- #include <ctype.h>
--#define NASMD 9
-+#define NASMD 10
- enum ASMDIA
- {ASM_None=0, gas_x86_32, gas_x86_64, gas_sparc, gas_ppc, gas_parisc,
-- gas_mips, gas_arm, gas_s390};
-+ gas_mips, gas_arm, gas_s390, gas_aarch64};
- static char *ASMNAM[NASMD] =
- {"", "GAS_x8632", "GAS_x8664",
"GAS_SPARC", "GAS_PPC", "GAS_PARISC",
-- "GAS_MIPS", "GAS_ARM", "GAS_S390"};
-+ "GAS_MIPS", "GAS_ARM", "GAS_S390",
"GAS_AARCH64"};
- /*
- * Basic data structure for forming queues with some minimal info
- */
diff --git a/atlas-affinity.patch b/atlas-affinity.patch
deleted file mode 100644
index 2a15d4d..0000000
--- a/atlas-affinity.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff -up wrk/src/threads/ATL_thread_start.c.wrk wrk/src/threads/ATL_thread_start.c
---- wrk/src/threads/ATL_thread_start.c.wrk 2013-09-23 13:46:51.881085276 +0200
-+++ wrk/src/threads/ATL_thread_start.c 2013-09-24 16:13:59.021065418 +0200
-@@ -101,9 +101,10 @@ int ATL_thread_start(ATL_thread_t *thr,
- ATL_assert(!pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED));
- pthread_attr_setscope(&attr, PTHREAD_SCOPE_SYSTEM); /* no chk, OK to fail */
- #ifdef ATL_PAFF_SETAFFNP
-- CPU_ZERO(&cpuset);
-- CPU_SET(affID, &cpuset);
-- ATL_assert(!pthread_attr_setaffinity_np(&attr, sizeof(cpuset), &cpuset));
-+ //affinity crashes a machine with fewer processors than the builder
-+ //CPU_ZERO(&cpuset);
-+ //CPU_SET(affID, &cpuset);
-+ //ATL_assert(!pthread_attr_setaffinity_np(&attr, sizeof(cpuset),
&cpuset));
- #elif defined(ATL_PAFF_SETPROCNP)
- ATL_assert(!pthread_attr_setprocessor_np(&attr, (pthread_spu_t)affID,
- PTHREAD_BIND_FORCED_NP));
diff --git a/atlas-fedora-arm.patch b/atlas-fedora-arm.patch
deleted file mode 100644
index 22a9889..0000000
--- a/atlas-fedora-arm.patch
+++ /dev/null
@@ -1,50 +0,0 @@
---- CONFIG/include/atlconf.h 2011-05-14 13:33:24.000000000 -0400
-+++ CONFIG/include/atlconf.h.new 2011-08-30 14:25:41.427136391 -0400
-@@ -16,7 +16,7 @@
-
- enum ARCHFAM {AFOther=0, AFPPC, AFSPARC, AFALPHA, AFX86, AFIA64, AFMIPS};
-
--#define NMACH 37
-+#define NMACH 38
- static char *machnam[NMACH] =
- {"UNKNOWN", "POWER3", "POWER4", "POWER5",
"PPCG4", "PPCG5",
- "POWER6", "POWER7",
-@@ -25,7 +25,7 @@
- "Efficeon", "K7", "HAMMER", "AMD64K10h",
"UNKNOWNx86",
- "IA64Itan", "IA64Itan2",
- "USI", "USII", "USIII", "USIV",
"UST2", "UnknownUS",
-- "MIPSR1xK", "MIPSICE9"};
-+ "MIPSR1xK", "MIPSICE9", "ARM"};
- enum MACHTYPE {MACHOther, IbmPwr3, IbmPwr4, IbmPwr5, PPCG4, PPCG5,
- IbmPwr6, IbmPwr7,
- IntP5, IntP5MMX, IntPPRO, IntPII, IntPIII, IntPM, IntCoreS,
-@@ -34,7 +34,8 @@
- IA64Itan, IA64Itan2,
- SunUSI, SunUSII, SunUSIII, SunUSIV, SunUST2, SunUSX,
- MIPSR1xK, /* includes R10K, R12K, R14K, R16K */
-- MIPSICE9 /* SiCortex ICE9 -- like MIPS5K */
-+ MIPSICE9, /* SiCortex ICE9 -- like MIPS5K */
-+ ARM
- };
- #define MachIsX86(mach_) \
- ( (mach_) >= IntP5 && (mach_) <= x86X )
-@@ -51,6 +52,8 @@
- #endif
- #define MachIsPPC(mach_) \
- ( (mach_) >= PPCG4 && (mach_) <= PPCG5 )
-+#define MachIsARM(mach_) \
-+ ( (mach_) == ARM )
-
- static char *f2c_namestr[5] = {"UNKNOWN","Add_", "Add__",
"NoChange", "UpCase"};
- static char *f2c_intstr[5] =
---- CONFIG/src/probe_comp.c 2011-05-14 13:33:24.000000000 -0400
-+++ CONFIG/src/probe_comp.c.new 2011-08-30 14:28:31.103015151 -0400
-@@ -507,6 +507,8 @@
-
- if (MachIsIA64(arch))
- return(sp);
-+ if (MachIsARM(arch))
-+ return(sp);
- if (MachIsMIPS(arch))
- return((ptrbits == 64) ? "-mabi=64" : "-mabi=n32");
- if (!CompIsGcc(comp))
diff --git a/atlas-fedora_shared.patch b/atlas-fedora_shared.patch
deleted file mode 100644
index 98caa61..0000000
--- a/atlas-fedora_shared.patch
+++ /dev/null
@@ -1,111 +0,0 @@
---- makes/Make.lib 2008-06-06 20:57:46.000000000 -0400
-+++ makes/Make.lib.new 2008-12-21 15:36:21.000000000 -0500
-@@ -3,6 +3,8 @@
- #
- # override with libatlas.so only when atlas is built to one lib
- #
-+so_ver_major=3
-+so_ver = $(so_ver_major).0
- DYNlibs = liblapack.so libf77blas.so libcblas.so libatlas.so
- PTDYNlibs = liblapack.so libptf77blas.so libptcblas.so libatlas.so
- CDYNlibs = liblapack.so libcblas.so libatlas.so
-@@ -32,38 +34,78 @@
- mv $(tarnam).tar.gz $(tarnam).tgz
-
- ptshared :
-- - rm -f libatlas.so liblapack.so
-- $(MAKE) libatlas.so liblapack.so libptf77blas.so libf77blas.so \
-- libptcblas.so libcblas.so liblapack.so
-+ - rm -f libatlas.so* liblapack.so* \
-+ lib*blas.so* libclapack.so*
-+ $(MAKE) libatlas.so libcblas.so libptf77blas.so libf77blas.so \
-+ libptcblas.so liblapack.so libclapack.so
- shared :
-- - rm -f libatlas.so liblapack.so
-- $(MAKE) libatlas.so liblapack.so libf77blas.so libcblas.so liblapack.so
-+ - rm -f libatlas.so liblapack.so \
-+ libatlas.so.$(so_ver) liblapack.so.$(so_ver)
-+ $(MAKE) libatlas.so libcblas.so libf77blas.so liblapack.so libclapack.so
- cptshared :
-- - rm -f libatlas.so libclapack.so
-- $(MAKE) libatlas.so libclapack.so libptcblas.so libcblas.so
-+ - rm -f libatlas.so libclapack.so \
-+ libatlas.so.$(so_ver) libclapack.so.$(so_ver)
-+ $(MAKE) libatlas.so libptcblas.so libcblas.so libclapack.so
- cshared :
-- - rm -f libatlas.so libclapack.so
-- $(MAKE) libatlas.so libclapack.so libcblas.so
-+ - rm -f libatlas.so libclapack.so \
-+ libatlas.so.$(so_ver) libclapack.so.$(so_ver)
-+ $(MAKE) libatlas.so libcblas.so libclapack.so
-
- libatlas.so : libatlas.a
-- ld $(LDFLAGS) -shared -soname libatlas.so -o libatlas.so \
-- --whole-archive libatlas.a --no-whole-archive -lc $(LIBS)
-+ mkdir static_libs ; cd static_libs ; ar x ../libatlas.a ; cd ../
-+ gcc $(LDFLAGS) -shared -Wl,-soname=libatlas.so.$(so_ver_major) \
-+ -o libatlas.so.$(so_ver) static_libs/*.o -lc $(LIBS)
-+ rm -rf static_libs
-+ ln -s ./libatlas.so.$(so_ver) libatlas.so.$(so_ver_major)
-+ ln -s ./libatlas.so.$(so_ver) libatlas.so
- liblapack.so : liblapack.a
-- ld $(LDFLAGS) -shared -soname $@ -o $@ --whole-archive \
-- liblapack.a --no-whole-archive $(F77SYSLIB)
-+ mkdir static_libs ; cd static_libs ; ar x ../liblapack.a ; cd ../
-+ gcc $(LDFLAGS) -shared -Wl,-soname=liblapack.so.$(so_ver_major) \
-+ -o liblapack.so.$(so_ver) static_libs/*.o $(F77SYSLIB) \
-+ libf77blas.so.$(so_ver_major) libcblas.so.$(so_ver_major)
-+ rm -rf static_libs
-+ ln -s ./liblapack.so.$(so_ver) liblapack.so.$(so_ver_major)
-+ ln -s ./liblapack.so.$(so_ver) liblapack.so
- libclapack.so : libclapack.a
-- ld $(LDFLAGS) -shared -soname liblapack.so -o liblapack.so \
-- --whole-archive libclapack.a
-+ mkdir static_libs ; cd static_libs ; ar x ../libclapack.a ; cd ../
-+ gcc $(LDFLAGS) -shared -Wl,-soname=libclapack.so.$(so_ver_major) \
-+ -o libclapack.so.$(so_ver) static_libs/*.o \
-+ libcblas.so.$(so_ver_major) -lc $(LIBS)
-+ rm -rf static_libs
-+ ln -s ./libclapack.so.$(so_ver) libclapack.so.$(so_ver_major)
-+ ln -s ./libclapack.so.$(so_ver) libclapack.so
- libptf77blas.so : libptf77blas.a
-- ld $(LDFLAGS) -shared -soname $@ -o $@ --whole-archive libptf77blas.a \
-- --no-whole-archive $(F77SYSLIB)
-+ mkdir static_libs ; cd static_libs ; ar x ../libptf77blas.a ; cd ../
-+ gcc $(LDFLAGS) -shared -Wl,-soname=libptf77blas.so.$(so_ver_major) \
-+ -o libptf77blas.so.$(so_ver) static_libs/*.o \
-+ libatlas.so.$(so_ver) $(F77SYSLIB)
-+ rm -rf static_libs
-+ ln -s ./libptf77blas.so.$(so_ver) libptf77blas.so.$(so_ver_major)
-+ ln -s ./libptf77blas.so.$(so_ver) libptf77blas.so
- libf77blas.so : libf77blas.a
-- ld $(LDFLAGS) -shared -soname $@ -o $@ --whole-archive libf77blas.a \
-- --no-whole-archive $(F77SYSLIB)
-+ mkdir static_libs ; cd static_libs ; ar x ../libf77blas.a ; cd ../
-+ gcc $(LDFLAGS) -shared -Wl,-soname=libf77blas.so.$(so_ver_major) \
-+ -o libf77blas.so.$(so_ver) static_libs/*.o \
-+ libatlas.so.$(so_ver) $(F77SYSLIB)
-+ rm -rf static_libs
-+ ln -s ./libf77blas.so.$(so_ver) libf77blas.so.$(so_ver_major)
-+ ln -s ./libf77blas.so.$(so_ver) libf77blas.so
- libptcblas.so : libptcblas.a
-- ld $(LDFLAGS) -shared -soname $@ -o $@ --whole-archive libptcblas.a
-+ mkdir static_libs ; cd static_libs ; ar x ../libptcblas.a ; cd ../
-+ gcc $(LDFLAGS) -shared -Wl,-soname=libptcblas.so.$(so_ver_major) \
-+ -o libptcblas.so.$(so_ver) static_libs/*.o \
-+ libatlas.so.$(so_ver) -lc $(LIBS)
-+ rm -rf static_libs
-+ ln -s ./libptcblas.so.$(so_ver) libptcblas.so.$(so_ver_major)
-+ ln -s ./libptcblas.so.$(so_ver) libptcblas.so
- libcblas.so : libcblas.a
-- ld $(LDFLAGS) -shared -soname $@ -o $@ --whole-archive libcblas.a
-+ mkdir static_libs ; cd static_libs ; ar x ../libcblas.a ; cd ../
-+ gcc $(LDFLAGS) -shared -Wl,-soname=libcblas.so.$(so_ver_major) \
-+ -o libcblas.so.$(so_ver) static_libs/*.o \
-+ libatlas.so.$(so_ver) -lc $(LIBS)
-+ rm -rf static_libs
-+ ln -s ./libcblas.so.$(so_ver) libcblas.so.$(so_ver_major)
-+ ln -s ./libcblas.so.$(so_ver) libcblas.so
- #
- # Builds one shared lib from all ATLAS files
- #
diff --git a/atlas-new_archdef_for_ppc64le.patch b/atlas-new_archdef_for_ppc64le.patch
deleted file mode 100644
index 0356786..0000000
--- a/atlas-new_archdef_for_ppc64le.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Subject: atlas new archdef for ppc64le
-From: Michel Normand <normand(a)linux.vnet.ibm.com>
-Date: Sun, 13 Jun 2014 18:02:47 +0200
-
-Need to define different archdef names
-for ppc64 (that is Big Endian) and ppc64le (that is Little Endian).
-This is already done upstream in atlas 3.11.30 with issue
-https://sourceforge.net/p/math-atlas/patches/66/
-
-Required at least as long as I need the bypass of
-atlas.3.10.2-ppc64le_do_not_use_files_with_lvx.patch
-
-Signed-off-by: Michel Normand <normand(a)linux.vnet.ibm.com>
----
- CONFIG/src/SpewMakeInc.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-Index: ATLAS/CONFIG/src/SpewMakeInc.c
-===================================================================
---- ATLAS.orig/CONFIG/src/SpewMakeInc.c
-+++ ATLAS/CONFIG/src/SpewMakeInc.c
-@@ -542,6 +542,10 @@ int main(int nargs, char **args)
- fprintf(fpout, "# -------------------------------------------------\n");
- fprintf(fpout, " ARCH = %s", machnam[mach]);
- fprintf(fpout, "%d", ptrbits);
-+ /* for ppc64le archi add 'LE' characters */
-+ #if defined(__powerpc64__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
-+ fprintf(fpout, "%s", "LE");
-+ #endif
- if (ISAX)
- fprintf(fpout, "%s", ISAXNAM[ISAX]);
- if (!USEIEEE)
diff --git a/atlas-sparc-linux.patch b/atlas-sparc-linux.patch
deleted file mode 100644
index d865a0f..0000000
--- a/atlas-sparc-linux.patch
+++ /dev/null
@@ -1,95 +0,0 @@
-diff -uNr ATLAS.orig/CONFIG/src/backend/archinfo_linux.c
ATLAS/CONFIG/src/backend/archinfo_linux.c
---- ATLAS.orig/CONFIG/src/backend/archinfo_linux.c 2010-02-01 23:28:58.000000000 +0000
-+++ ATLAS/CONFIG/src/backend/archinfo_linux.c 2010-02-02 22:38:31.000000000 +0000
-@@ -145,14 +145,12 @@
- * Add these back if we get machine access and can test
- */
- case AFSPARC: /* don't know here anymore */
-- #if 0
- if ( !CmndOneLine(NULL, "fgrep cpu /proc/cpuinfo", res) )
- {
-- if (strstr(res, "UltraSparc II")) mach = SunUS2;
-- else if (strstr(res, "UltraSparc I")) mach = SunUS1;
-- else if (strstr(res, "UltraSparc")) mach = SunUSX;
-+ if (strstr(res, "UltraSparc II")) mach = SunUSII;
-+ else if (strstr(res, "UltraSparc I")) mach = SunUSI;
-+ else if (strstr(res, "UltraSparc")) mach = SunUSII;
- }
-- #endif
- break;
- case AFALPHA:
- #if 0
-@@ -196,6 +194,11 @@
- reslns = CmndResults(NULL, "grep '^processor' /proc/cpuinfo");
- if (reslns) ncpu = fNumLines(reslns);
- }
-+ if (__sparc__)
-+ {
-+ reslns = CmndResults(NULL, "grep '^CPU.*online' /proc/cpuinfo");
-+ if (reslns) ncpu = fNumLines(reslns);
-+ }
- return(ncpu);
- }
-
-diff -uNr ATLAS.orig/tune/blas/gemm/CASES/ATL_dmm4x4x2_US.c
ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x2_US.c
---- ATLAS.orig/tune/blas/gemm/CASES/ATL_dmm4x4x2_US.c 2010-02-01 23:29:23.000000000
+0000
-+++ ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x2_US.c 2010-02-01 23:30:07.000000000 +0000
-@@ -95,6 +95,11 @@
- #define incBm %g3
- #define incBn %g4
-
-+#if defined(__sparc__) && defined(__arch64__)
-+ .register %g2, #scratch
-+ .register %g3, #scratch
-+#endif
-+
- #ifdef DCPLX
- #define incCm 64
- #define CSH 4
-diff -uNr ATLAS.orig/tune/blas/gemm/CASES/ATL_dmm4x4x8_US.c
ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x8_US.c
---- ATLAS.orig/tune/blas/gemm/CASES/ATL_dmm4x4x8_US.c 2010-02-01 23:29:24.000000000
+0000
-+++ ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x8_US.c 2010-02-01 23:30:08.000000000 +0000
-@@ -135,6 +135,11 @@
- #define pfB %i2 /* aliased with ldab */
- #endif
-
-+#if defined(__sparc__) && defined(__arch64__)
-+ .register %g2, #scratch
-+ .register %g3, #scratch
-+#endif
-+
- #ifdef DCPLX
- #define CMUL(arg_) ((arg_)*2)
- #define incCm 64
-diff -uNr ATLAS.orig/tune/blas/gemm/CASES/ATL_smm4x4x2_US.c
ATLAS/tune/blas/gemm/CASES/ATL_smm4x4x2_US.c
---- ATLAS.orig/tune/blas/gemm/CASES/ATL_smm4x4x2_US.c 2010-02-01 23:29:25.000000000
+0000
-+++ ATLAS/tune/blas/gemm/CASES/ATL_smm4x4x2_US.c 2010-02-01 23:30:09.000000000 +0000
-@@ -93,6 +93,12 @@
- #define rC23 %f30
- #define rC33 %f31
- #define FSIZE 64
-+
-+#if defined(__sparc__) && defined(__arch64__)
-+ .register %g2, #scratch
-+ .register %g3, #scratch
-+#endif
-+
- #ifdef SCPLX
- #define CSH 3
- #define CMUL(arg_) ((arg_)*2)
-diff -uNr ATLAS.orig/tune/blas/gemm/CASES/ATL_smm4x4x72_US.c
ATLAS/tune/blas/gemm/CASES/ATL_smm4x4x72_US.c
---- ATLAS.orig/tune/blas/gemm/CASES/ATL_smm4x4x72_US.c 2010-02-01 23:29:25.000000000
+0000
-+++ ATLAS/tune/blas/gemm/CASES/ATL_smm4x4x72_US.c 2010-02-01 23:30:09.000000000 +0000
-@@ -108,6 +108,12 @@
- #define rC23 %f30
- #define rC33 %f31
- #define FSIZE 64
-+
-+#if defined(__sparc__) && defined(__arch64__)
-+ .register %g2, #scratch
-+ .register %g3, #scratch
-+#endif
-+
- #ifdef SCPLX
- #define CSH 3
- #define CMUL(arg_) ((arg_)*2)
diff --git a/atlas.3.10.2-add_power8_cpu.patch b/atlas.3.10.2-add_power8_cpu.patch
deleted file mode 100644
index 7b58353..0000000
--- a/atlas.3.10.2-add_power8_cpu.patch
+++ /dev/null
@@ -1,131 +0,0 @@
-From: Michel Normand <normand(a)linux.vnet.ibm.com>
-Subject: atlas.3.10.2 add power8 cpu
-Date: Thu, 18 Sep 2014 15:13:24 +0200
-
-atlas.3.10.2 add Power8 cpu
-tracked upstream by issue 67
-https://sourceforge.net/p/math-atlas/patches/67/
-
-Signed-off-by: Michel Normand <normand(a)linux.vnet.ibm.com>
----
- CONFIG/ARCHS/Make.ext | 7 +++++++
- CONFIG/include/atlconf.h | 6 +++---
- CONFIG/src/atlcomp.txt | 6 ++++++
- CONFIG/src/backend/archinfo_aix.c | 2 ++
- CONFIG/src/backend/archinfo_linux.c | 1 +
- include/atlas_pca.h | 2 +-
- 6 files changed, 20 insertions(+), 4 deletions(-)
-
-Index: ATLAS/CONFIG/ARCHS/Make.ext
-===================================================================
---- ATLAS.orig/CONFIG/ARCHS/Make.ext
-+++ ATLAS/CONFIG/ARCHS/Make.ext
-@@ -33,6 +33,7 @@ files = AMD64K10h32SSE3.tar.bz2 AMD64K10
- MIPSR1xK64.tar.bz2 Makefile P432SSE2.tar.bz2 P4E32SSE3.tar.bz2 \
- P4E64SSE3.tar.bz2 PIII32SSE1.tar.bz2 POWER432.tar.bz2 \
- POWER464.tar.bz2 POWER564.tar.bz2 POWER764VSX.tar.bz2 \
-+ POWER864VSX.tar.bz2 \
- PPCG432AltiVec.tar.bz2 PPCG532AltiVec.tar.bz2 PPCG564AltiVec.tar.bz2 \
- PPRO32.tar.bz2 USIII32.tar.bz2 USIII64.tar.bz2 USIV32.tar.bz2 \
- USIV64.tar.bz2 UST232.tar.bz2 UST264.tar.bz2 atlas_test1.1.3.tar.bz2 \
-@@ -308,6 +309,12 @@ POWER764VSX.tar.bz2 : $(basdr)/POWER764V
- /tmp/POWER764VSX.tar POWER764VSX
- bzip2 /tmp/POWER764VSX.tar
- mv /tmp/POWER764VSX.tar.bz2 ./.
-+POWER864VSX.tar.bz2 : $(basdr)/POWER864VSX
-+ - rm -f /tmp/POWER864VSX.tar /tmp/POWER864VSX.tar.bz2
-+ cd $(basdr) ; tar --dereference --exclude 'CVS' -c -f \
-+ /tmp/POWER864VSX.tar POWER864VSX
-+ bzip2 /tmp/POWER864VSX.tar
-+ mv /tmp/POWER864VSX.tar.bz2 ./.
- IBMz1032.tar.bz2 : $(basdr)/IBMz1032
- - rm -f /tmp/IBMz1032.tar /tmp/IBMz1032.tar.bz2
- cd $(basdr) ; tar --dereference --exclude 'CVS' -c -f \
-Index: ATLAS/CONFIG/include/atlconf.h
-===================================================================
---- ATLAS.orig/CONFIG/include/atlconf.h
-+++ ATLAS/CONFIG/include/atlconf.h
-@@ -18,10 +18,10 @@ enum OSTYPE {OSOther=0, OSLinux, OSSunOS
- enum ARCHFAM {AFOther=0, AFPPC, AFSPARC, AFALPHA, AFX86, AFIA64, AFMIPS,
- AFARM, AFS390};
-
--#define NMACH 52
-+#define NMACH 53
- static char *machnam[NMACH] =
- {"UNKNOWN", "POWER3", "POWER4", "POWER5",
"PPCG4", "PPCG5",
-- "POWER6", "POWER7", "POWERe6500", "IBMz9",
"IBMz10", "IBMz196",
-+ "POWER6", "POWER7", "POWER8", "POWERe6500",
"IBMz9", "IBMz10", "IBMz196",
- "x86x87", "x86SSE1", "x86SSE2", "x86SSE3",
- "P5", "P5MMX", "PPRO", "PII",
"PIII", "PM", "CoreSolo",
- "CoreDuo", "Core2Solo", "Core2", "Corei1",
"Corei2", "Corei3",
-@@ -31,7 +31,7 @@ static char *machnam[NMACH] =
- "USI", "USII", "USIII", "USIV",
"UST1", "UST2", "UnknownUS",
- "MIPSR1xK", "MIPSICE9", "ARMv7"};
- enum MACHTYPE {MACHOther, IbmPwr3, IbmPwr4, IbmPwr5, PPCG4, PPCG5,
-- IbmPwr6, IbmPwr7, Pwre6500,
-+ IbmPwr6, IbmPwr7, IbmPwr8, Pwre6500,
- IbmZ9, IbmZ10, IbmZ196, /* s390(x) in Linux */
- x86x87, x86SSE1, x86SSE2, x86SSE3, /* generic targets */
- IntP5, IntP5MMX, IntPPRO, IntPII, IntPIII, IntPM, IntCoreS,
-Index: ATLAS/CONFIG/src/atlcomp.txt
-===================================================================
---- ATLAS.orig/CONFIG/src/atlcomp.txt
-+++ ATLAS/CONFIG/src/atlcomp.txt
-@@ -190,6 +190,10 @@ MACH=PPCG5 OS=ALL LVL=1000 COMPS=dmc,icc
- 'gcc' '-mpowerpc64 -maltivec -mabi=altivec -mcpu=970 -mtune=970 -O2'
- MACH=PPCG5 OS=ALL LVL=1000 COMPS=skc
- 'gcc' '-mpowerpc64 -maltivec -mabi=altivec -mcpu=970 -mtune=970 -O2
-mvrsave'
-+MACH=POWER8 OS=ALL LVL=1010 COMPS=icc,smc,dmc,skc,dkc,xcc,gcc
-+ 'gcc' '-O2 -mvsx -mcpu=power8 -mtune=power8 -m64 -mvrsave
-funroll-all-loops'
-+MACH=POWER8 OS=ALL LVL=1010 COMPS=f77
-+ 'gfortran' '-O2 -mvsx -mcpu=power8 -mtune=power8 -m64 -mvrsave
-funroll-all-loops'
- MACH=POWER7 OS=ALL LVL=1010 COMPS=icc,smc,dmc,skc,dkc,xcc,gcc
- 'gcc' '-O2 -mvsx -mcpu=power7 -mtune=power7 -m64 -mvrsave
-funroll-all-loops'
- MACH=POWER7 OS=ALL LVL=1010 COMPS=f77
-@@ -210,6 +214,8 @@ MACH=POWER4 OS=ALL LVL=1010 COMPS=icc,dm
- 'gcc' '-mcpu=power4 -mtune=power4 -O3 -fno-schedule-insns
-fno-rerun-loop-opt'
- MACH=POWER4 OS=ALL LVL=1010 COMPS=f77
- 'xlf' '-qtune=pwr4 -qarch=pwr4 -O3 -qmaxmem=-1 -qfloat=hsflt'
-+MACH=POWER8 OS=ALL LVL=1010 COMPS=f77
-+ 'xlf' '-qtune=pwr8 -qarch=pwr8 -O3 -qmaxmem=-1 -qfloat=hsflt'
- #
- # IBM System z or zEnterprise.
- # These compiler flags given by IBM; -O3 -funroll-loops are chosen because
-Index: ATLAS/CONFIG/src/backend/archinfo_linux.c
-===================================================================
---- ATLAS.orig/CONFIG/src/backend/archinfo_linux.c
-+++ ATLAS/CONFIG/src/backend/archinfo_linux.c
-@@ -77,6 +77,7 @@ enum MACHTYPE ProbeArch()
- else if (strstr(res, "7455")) mach = PPCG4;
- else if (strstr(res, "PPC970FX")) mach = PPCG5;
- else if (strstr(res, "PPC970MP")) mach = PPCG5;
-+ else if (strstr(res, "POWER8")) mach = IbmPwr8;
- else if (strstr(res, "POWER7")) mach = IbmPwr7;
- else if (strstr(res, "POWER6")) mach = IbmPwr6;
- else if (strstr(res, "POWER5")) mach = IbmPwr5;
-Index: ATLAS/include/atlas_pca.h
-===================================================================
---- ATLAS.orig/include/atlas_pca.h
-+++ ATLAS/include/atlas_pca.h
-@@ -26,7 +26,7 @@
- #endif
- #elif defined(ATL_ARCH_POWER3) || defined(ATL_ARCH_POWER4) || \
- defined(ATL_ARCH_POWER5) || defined(ATL_ARCH_POWER6) || \
-- defined(ATL_ARCH_POWER7)
-+ defined(ATL_ARCH_POWER7) || defined(ATL_ARCH_POWER8)
- #ifdef __GNUC__
- #define ATL_membarrier __asm__ __volatile__ ("dcs")
- /* #define ATL_USEPCA 1 */
-Index: ATLAS/CONFIG/src/backend/archinfo_aix.c
-===================================================================
---- ATLAS.orig/CONFIG/src/backend/archinfo_aix.c
-+++ ATLAS/CONFIG/src/backend/archinfo_aix.c
-@@ -67,6 +67,8 @@ enum MACHTYPE ProbeArch()
- {
- if (strstr(res, "PowerPC_POWER5"))
- mach = IbmPwr5;
-+ else if (strstr(res, "PowerPC_POWER8"))
-+ mach = IbmPwr8;
- else if (strstr(res, "PowerPC_POWER7"))
- mach = IbmPwr7;
- else if (strstr(res, "PowerPC_POWER6"))
diff --git a/atlas.3.10.2-ppc64le_abiv2.patch b/atlas.3.10.2-ppc64le_abiv2.patch
deleted file mode 100644
index 6633d95..0000000
--- a/atlas.3.10.2-ppc64le_abiv2.patch
+++ /dev/null
@@ -1,220 +0,0 @@
-From: Michel Normand <normand(a)linux.vnet.ibm.com>
-Subject: atlas.3.10.2 ppc64le abiv2 patch
-Date: Mon, 28 Jul 2014 04:29:05 -0400
-
-atlas.3.10.2 abiv2 step2 complete the changes already present in atlas 3.10.2
-* still some files with opd ABI V1 to be disabled for ABI V2
- tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c
- tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c
- tune/blas/gemm/CASES/ATL_smm4x4x128_av.c
-
-atlas.3.10.2 ppc64le abiv2 step3
-* change offsets of parameters read from stack to avoid some segfaults.
- (values changes 120 => 104 and 128 => 112 identified by gdb investigation)
-
-Despite this step3 patch there are two Remaining problems for ppc64le archi:
-* TODO: still have seg-faults in console during build/check
-but is not critical (without make check) and rpm are generated on fedora.
-unable to investigate because of problem tracked by issue 950
-https://sourceforge.net/p/math-atlas/support-requests/950/
-
-* TODO: make check failure because xsslvtst execution failure
-related to vector assembly code that assumes big-endian env
-as written in ATL_cmm4x4x128_av.c and ATL_smm4x4x128_av.c.
-Would need significant work to support little-endian as per
-endianess comments of all PowerPC vector instructions in:
-https://www-01.ibm.com/chips/techlib/techlib.nsf/techdocs/FBFA164F824370F987256D6A006F424D/$file/vector_simd_pem.ppc.2005AUG23.pdf
-
-Signed-off-by: Michel Normand <normand(a)linux.vnet.ibm.com>
----
- tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c | 7 +++++++
- tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c | 7 +++++++
- tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c | 9 ++++++++-
- tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c | 20 ++++++++++++++++++--
- tune/blas/gemm/CASES/ATL_smm4x4x128_av.c | 23 ++++++++++++++++++++++-
- 5 files changed, 62 insertions(+), 4 deletions(-)
-
-Index: ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c
-===================================================================
---- ATLAS.orig/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c
-+++ ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c
-@@ -268,7 +268,7 @@ Mjoin(.,ATL_USERMM):
- .globl Mjoin(_,ATL_USERMM)
- Mjoin(_,ATL_USERMM):
- #else
-- #if defined(ATL_USE64BITS)
-+ #if defined(ATL_USE64BITS) && _CALL_ELF != 2
- /*
- * Official Program Descripter section, seg fault w/o it on Linux/PPC64
- */
-@@ -324,8 +324,15 @@ ATL_USERMM:
- #endif
-
- #ifdef ATL_USE64BITS
-+#if _CALL_ELF == 2
-+/* ABIv2 */
-+ ld pC0, 104(r1)
-+ ld incCn, 112(r1)
-+#else
-+/* ABIv1 */
- ld pC0, 120(r1)
- ld incCn, 128(r1)
-+#endif
- #elif defined(ATL_AS_OSX_PPC) || defined(ATL_AS_AIX_PPC)
- lwz pC0, 68(r1)
- lwz incCn, 72(r1)
-Index: ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c
-===================================================================
---- ATLAS.orig/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c
-+++ ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c
-@@ -170,13 +170,21 @@ void ATL_USERMM(const int M, const int N
- const TYPE beta, TYPE *C, const int ldc)
- (r10) 8(r1)
- *******************************************************************************
--64 bit ABIs:
-+64 bit ABIv1s:
- r3 r4 r5 r6/f1
- void ATL_USERMM(const int M, const int N, const int K, const TYPE alpha,
- r7 r8 r9 r10
- const TYPE *A, const int lda, const TYPE *B, const int ldb,
- f2 120(r1) 128(r1)
- const TYPE beta, TYPE *C, const int ldc)
-+
-+64 bit ABIv2s:
-+ r3 r4 r5 r6/f1
-+void ATL_USERMM(const int M, const int N, const int K, const TYPE alpha,
-+ r7 r8 r9 r10
-+ const TYPE *A, const int lda, const TYPE *B, const int ldb,
-+ f2 104(r1) 112(r1)
-+ const TYPE beta, TYPE *C, const int ldc)
- #endif
- #ifdef ATL_AS_AIX_PPC
- .csect .text[PR]
-@@ -202,7 +210,7 @@ Mjoin(.,ATL_USERMM):
- .globl Mjoin(_,ATL_USERMM)
- Mjoin(_,ATL_USERMM):
- #else
-- #if defined(ATL_USE64BITS)
-+ #if defined(ATL_USE64BITS) && _CALL_ELF != 2
- /*
- * Official Program Descripter section, seg fault w/o it on Linux/PPC64
- */
-@@ -257,9 +265,17 @@ ATL_USERMM:
- #endif
- #endif
-
-+
- #if defined (ATL_USE64BITS)
-+#if _CALL_ELF == 2
-+/* ABIv2 */
-+ ld pC0, 104(r1)
-+ ld incCn, 112(r1)
-+#else
-+/* ABIv1 */
- ld pC0, 120(r1)
- ld incCn, 128(r1)
-+#endif
- #elif defined(ATL_AS_OSX_PPC) || defined(ATL_AS_AIX_PPC)
- lwz pC0, 68(r1)
- lwz incCn, 72(r1)
-Index: ATLAS/tune/blas/gemm/CASES/ATL_smm4x4x128_av.c
-===================================================================
---- ATLAS.orig/tune/blas/gemm/CASES/ATL_smm4x4x128_av.c
-+++ ATLAS/tune/blas/gemm/CASES/ATL_smm4x4x128_av.c
-@@ -196,7 +196,7 @@ void ATL_USERMM(const int M, const int N
- .globl Mjoin(_,ATL_USERMM)
- Mjoin(_,ATL_USERMM):
- #else
-- #if defined(ATL_USE64BITS)
-+ #if defined(ATL_USE64BITS) && _CALL_ELF != 2
- /*
- * Official Program Descripter section, seg fault w/o it on Linux/PPC64
- */
-@@ -221,8 +221,15 @@ ATL_USERMM:
- * kernel instead
- */
- #if defined (ATL_USE64BITS)
-+#if _CALL_ELF == 2
-+/* ABIv2 */
-+ ld r10, 104(r1)
-+ ld r5, 112(r1)
-+#else
-+/* ABIv1 */
- ld r10, 120(r1)
- ld r5, 128(r1)
-+#endif
- #elif defined(ATL_AS_OSX_PPC)
- lwz r10, 60(r1)
- lwz r5, 64(r1)
-@@ -285,8 +292,15 @@ ATL_USERMM:
- eqv r0, r0, r0 /* all 1s */
- ATL_WriteVRSAVE(r0) /* signal we use all vector regs */
- #if defined (ATL_USE64BITS)
-+#if _CALL_ELF == 2
-+ /* ABIv2 */
-+ ld pC0, FSIZE+104(r1)
-+ ld ldc, FSIZE+112(r1)
-+#else
-+ /* ABIv1 */
- ld pC0, FSIZE+120(r1)
- ld ldc, FSIZE+128(r1)
-+#endif
- #elif defined(ATL_AS_OSX_PPC)
- lwz pC0, FSIZE+60(r1)
- lwz ldc, FSIZE+64(r1)
-@@ -4258,8 +4272,15 @@ UNALIGNED_C:
- eqv r0, r0, r0 /* all 1s */
- ATL_WriteVRSAVE(r0) /* signal we use all vector regs */
- #if defined (ATL_USE64BITS)
-+#if _CALL_ELF == 2
-+ /* ABIv2 */
-+ ld pC0, FSIZE+104(r1)
-+ ld ldc, FSIZE+112(r1)
-+#else
-+ /* ABIv1 */
- ld pC0, FSIZE+120(r1)
- ld ldc, FSIZE+128(r1)
-+#endif
- #elif defined(ATL_AS_OSX_PPC)
- lwz pC0, FSIZE+60(r1)
- lwz ldc, FSIZE+64(r1)
-Index: ATLAS/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c
-===================================================================
---- ATLAS.orig/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c
-+++ ATLAS/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c
-@@ -258,8 +258,15 @@ ATL_USERMM:
- eqv r0, r0, r0 /* all 1s */
- ATL_WriteVRSAVE(r0) /* signal we use all vector regs */
- #if defined (ATL_USE64BITS)
-+#if _CALL_ELF == 2
-+/* ABIv2 */
-+ ld pC0, FSIZE+104(r1)
-+ ld ldc, FSIZE+112(r1)
-+#else
-+/* ABIv1 */
- ld pC0, FSIZE+120(r1)
- ld ldc, FSIZE+128(r1)
-+#endif
- #elif defined(ATL_AS_OSX_PPC)
- lwz pC0, FSIZE+60(r1)
- lwz ldc, FSIZE+64(r1)
-Index: ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c
-===================================================================
---- ATLAS.orig/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c
-+++ ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c
-@@ -405,8 +405,15 @@ Mjoin(_,ATL_USERMM):
- */
- #ifdef ATL_GAS_LINUX_PPC
- #ifdef ATL_USE64BITS
-+ #if _CALL_ELF == 2
-+ /* ABIv2 */
-+ ld pC0, 104(r1)
-+ ld incCn, 112(r1)
-+ #else
-+ /* ABIv1 */
- ld pC0, 120(r1)
- ld incCn, 128(r1)
-+ #endif
- #else
- lwz incCn, FSIZE+8(r1)
- #endif
diff --git a/atlas.3.10.2-ppc64le_do_not_use_files_with_lvx.patch
b/atlas.3.10.2-ppc64le_do_not_use_files_with_lvx.patch
deleted file mode 100644
index a3a6607..0000000
--- a/atlas.3.10.2-ppc64le_do_not_use_files_with_lvx.patch
+++ /dev/null
@@ -1,151 +0,0 @@
-From: Michel Normand <normand(a)linux.vnet.ibm.com>
-Subject: atlas.3.10.2 ppc64le do not use files with lvx
-Date: Tue, 12 Aug 2014 16:07:06 +0200
-
-ppc64le do not use files with lvx
-This is a temporary patch as long as the related files
-are not ported yet to ppc64 little-endian.
-
-Warning: patch to be applied only for ppc64le architecture
-and will also need atlas-new_archdef_for_ppc64le.patch
-
-Signed-off-by: Michel Normand <normand(a)linux.vnet.ibm.com>
----
- tune/blas/gemm/CASES/ccases.flg | 6 +-----
- tune/blas/gemm/CASES/dcases.flg | 8 +-------
- tune/blas/gemm/CASES/dcases.vnb | 4 ----
- tune/blas/gemm/CASES/scases.flg | 9 +--------
- tune/blas/gemm/CASES/scases.vnb | 3 ---
- tune/blas/gemm/CASES/zcases.flg | 8 +-------
- 6 files changed, 4 insertions(+), 34 deletions(-)
-
-Index: ATLAS/tune/blas/gemm/CASES/ccases.flg
-===================================================================
---- ATLAS.orig/tune/blas/gemm/CASES/ccases.flg
-+++ ATLAS/tune/blas/gemm/CASES/ccases.flg
-@@ -1,5 +1,5 @@
- <ID> <flag> <mb> <nb> <kb> <muladd> <lat>
<mu> <nu> <ku> <rout> "<Contributer>"
--24
-+22
- 304 192 4 3 8 0 4 4 3 8 ATL_mm4x3x8p.c "R. Clint Whaley" \
- gcc
- -mcpu=ultrasparc -mtune=ultrasparc -fomit-frame-pointer -O
-@@ -48,13 +48,9 @@ gcc
- 328 480 8 8 2 1 1 8 8 2 ATL_mm8x8x2.c "R. Clint Whaley" \
- gcc
- -fomit-frame-pointer -O2 -fno-tree-loop-optimize
--329 192 4 4 4 1 16 4 4 4 ATL_cmm4x4x128_av.c "R. Clint Whaley" \
--gcc
---x assembler-with-cpp
- 331 192 4 4 1 1 1 4 4 1 ATL_smm4x4xURx_mips.c "R. Clint Whaley" \
- gcc
- -x assembler-with-cpp -mips4
--332 192 8 2 4 1 0 8 2 4 ATL_smm8x2x4_av.c "IBM"
- 333 448 4 4 2 1 1 4 4 2 ATL_smm4x4x2pf_arm.c "R. Clint Whaley" \
- gcc
- -x assembler-with-cpp -mfpu=vfpv3
-Index: ATLAS/tune/blas/gemm/CASES/scases.flg
-===================================================================
---- ATLAS.orig/tune/blas/gemm/CASES/scases.flg
-+++ ATLAS/tune/blas/gemm/CASES/scases.flg
-@@ -1,5 +1,5 @@
- <ID> <flag> <mb> <nb> <kb> <muladd> <lat>
<mu> <nu> <ku> <rout> "<Contributer>"
--25
-+22
- 304 192 4 3 8 0 4 4 3 8 ATL_mm4x3x8p.c "R. Clint Whaley" \
- gcc
- -mcpu=ultrasparc -mtune=ultrasparc -fomit-frame-pointer -O
-@@ -48,16 +48,9 @@ gcc
- 328 480 8 8 2 1 1 8 8 2 ATL_mm8x8x2.c "R. Clint Whaley" \
- gcc
- -fomit-frame-pointer -O2 -fno-tree-loop-optimize
--329 192 4 4 4 1 16 4 4 4 ATL_smm4x4x128_av.c "R. Clint Whaley" \
--gcc
---x assembler-with-cpp
--330 200 92 92 92 1 16 92 92 92 ATL_smm4x4x128_av.c "R. Clint Whaley" \
--gcc
---x assembler-with-cpp
- 331 192 4 4 1 1 1 4 4 1 ATL_smm4x4xURx_mips.c "R. Clint Whaley" \
- gcc
- -x assembler-with-cpp -mips4
--332 192 8 2 4 1 0 8 2 4 ATL_smm8x2x4_av.c "IBM"
- 333 448 4 4 2 1 1 4 4 2 ATL_smm4x4x2pf_arm.c "R. Clint Whaley" \
- gcc
- -x assembler-with-cpp -mfpu=vfpv3
-Index: ATLAS/tune/blas/gemm/CASES/scases.vnb
-===================================================================
---- ATLAS.orig/tune/blas/gemm/CASES/scases.vnb
-+++ ATLAS/tune/blas/gemm/CASES/scases.vnb
-@@ -31,9 +31,6 @@
- # Defaults: TA='t', TB='n', SSE=0, X87=0, LDBOT=1, RTKU=0, AOUTER=0,
- # KBMAX=KU, KBMIN=KU, BETAN1=0, RTMN=1
- #
--ID=1 ROUT='ATL_smm4x4x128_av.c' AUTH='R. Clint Whaley' MU=4 NU=4 KU=4
\
-- LDKB=1 LDBOT=1 KBMIN=4 KBMAX=128 ASM=GAS_PPC \
-- COMP='gcc' FLAGS='-x assembler-with-cpp'
- ID=2 ROUT='ATL_smm4x4x16_av.c' AUTH='R. Clint Whaley' MU=4 NU=4 KU=16
\
- LDKB=1 LDBOT=0 KBMIN=16 KBMAX=2048 ASM=GAS_SPARC \
- COMP='gcc' FLAGS='-x assembler-with-cpp'
-Index: ATLAS/tune/blas/gemm/CASES/dcases.flg
-===================================================================
---- ATLAS.orig/tune/blas/gemm/CASES/dcases.flg
-+++ ATLAS/tune/blas/gemm/CASES/dcases.flg
-@@ -1,5 +1,5 @@
- <ID> <flag> <mb> <nb> <kb> <muladd> <lat>
<mu> <nu> <ku> <rout> "<Contributer>"
--32
-+30
- 306 192 4 3 8 0 4 4 3 8 ATL_mm4x3x8p.c "R. Clint Whaley" \
- gcc
- -mcpu=ultrasparc -mtune=ultrasparc -fomit-frame-pointer -O -fno-schedule-insns
-fno-schedule-insns2
-@@ -79,12 +79,6 @@ gcc
- 336 192 4 4 1 1 1 4 4 1 ATL_dmm4x4xURx_mips.c "R. Clint Whaley" \
- gcc
- -x assembler-with-cpp -mips4
--337 192 4 4 1 1 16 4 4 1 ATL_dmm4x4x80_ppc.c "Whaley & Castaldo" \
--gcc
---x assembler-with-cpp
--338 192 8 4 2 1 0 8 4 2 ATL_dmm8x4x2_vsx.c "IBM" \
--gcc
---O3 -mvsx
- 339 448 4 4 2 1 1 4 4 2 ATL_dmm4x4x2pf_arm.c "R. Clint Whaley" \
- gcc
- -x assembler-with-cpp -mfpu=vfpv3
-Index: ATLAS/tune/blas/gemm/CASES/dcases.vnb
-===================================================================
---- ATLAS.orig/tune/blas/gemm/CASES/dcases.vnb
-+++ ATLAS/tune/blas/gemm/CASES/dcases.vnb
-@@ -53,10 +53,6 @@ ID=6 ROUT='ATL_dmm4x1x90_x87.c' AUTH='R
- ID=7 ROUT='ATL_dmm8x1x120_sse2.c' AUTH='R. Clint Whaley' \
- MU=8 NU=1 KU=1 KBMAX=512 ASM=GAS_x8664 BETAN1=1 \
- COMP='gcc' FLAGS='-m64 -x assembler-with-cpp'
--ID=70 ROUT='ATL_dmm4x4x80_ppc.c' AUTH='R. Clint Whaley' TA='T',
TB='N' \
-- MU=4 NU=4 KU=1 KBMIN=1 KBMAX=80 ASM=GAS_PPC BETAN1=0 LDBOT=0 \
-- LDAB=0 LDISKB=1 RTN=1 RTM=1 RTK=0 \
-- COMP='gcc' FLAGS='-x assembler-with-cpp'
- ID=80 ROUT='ATL_dmm4x4x16r8_US.c' AUTH='R. Clint Whaley' TA='T',
TB='N' \
- MU=4 NU=4 KU=24 KBMIN=24 KBMAX=512 ASM=GAS_SPARC BETAN1=0 \
- LDAB=0 RTK=1 RTN=1 RTM=1 LDBOT=0 LDISKB=1 LDAB=1 \
-Index: ATLAS/tune/blas/gemm/CASES/zcases.flg
-===================================================================
---- ATLAS.orig/tune/blas/gemm/CASES/zcases.flg
-+++ ATLAS/tune/blas/gemm/CASES/zcases.flg
-@@ -1,5 +1,5 @@
- <ID> <flag> <mb> <nb> <kb> <muladd> <lat>
<mu> <nu> <ku> <rout> "<Contributer>"
--31
-+29
- 306 192 4 3 8 0 4 4 3 8 ATL_mm4x3x8p.c "R. Clint Whaley" \
- gcc
- -mcpu=ultrasparc -mtune=ultrasparc -fomit-frame-pointer -O -fno-schedule-insns
-fno-schedule-insns2
-@@ -76,12 +76,6 @@ gcc
- 336 192 4 4 1 1 1 4 4 1 ATL_dmm4x4xURx_mips.c "R. Clint Whaley" \
- gcc
- -x assembler-with-cpp -mips4
--337 192 4 4 1 1 16 4 4 1 ATL_dmm4x4x80_ppc.c "Whaley & Castaldo" \
--gcc
---x assembler-with-cpp
--338 192 8 4 2 1 0 8 4 2 ATL_dmm8x4x2_vsx.c "IBM" \
--gcc
---O3 -mvsx
- 339 448 4 4 2 1 1 4 4 2 ATL_dmm4x4x2pf_arm.c "R. Clint Whaley" \
- gcc
- -x assembler-with-cpp -mfpu=vfpv3
diff --git a/atlas.spec b/atlas.spec
index 08c2767..5cbac4c 100644
--- a/atlas.spec
+++ b/atlas.spec
@@ -12,39 +12,49 @@ License: BSD
URL:
http://math-atlas.sourceforge.net/
Source0:
http://downloads.sourceforge.net/math-atlas/%{name}%{version}.tar.bz2
Source1: PPRO32.tgz
-#Source2: K7323DNow.tgz
-Source3: README.dist
-#Source4: USII64.tgz
-#Source5: USII32.tgz
-#Source6: IBMz1032.tgz
-#Source7: IBMz1064.tgz
-#Source8: IBMz19632.tgz
-#Source9: IBMz19664.tgz
+Source2: README.dist
#archdefs taken from debian:
-Source11: POWER332.tar.bz2
-Source12: IBMz932.tar.bz2
-Source13: IBMz964.tar.bz2
+Source3: POWER332.tar.bz2
+Source4: IBMz932.tar.bz2
+Source5: IBMz964.tar.bz2
#upstream arm uses softfp abi, fedora arm uses hard
-Source14: ARMv732NEON.tar.bz2
+Source6: ARMv732NEON.tar.bz2
#again, taken from debian
-Source15: IBMz1264.tar.bz2
-Source16: ARMa732.tar.bz2
+Source7: IBMz1264.tar.bz2
+Source8: ARMa732.tar.bz2
+
+#Provided By IBM
+Source9: IBMz1364VXZ.tar.bz2
+Source10: IBMz1464VXZ2.tar.bz2
+Source11: IBMz1564VXZ2.tar.bz2
-Patch2: atlas-fedora-arm.patch
# Properly pass -melf_* to the linker with -Wl, fixes FTBFS bug 817552
#
https://sourceforge.net/tracker/?func=detail&atid=379484&aid=3555...
-Patch3: atlas-melf.patch
-Patch4: atlas-throttling.patch
+Patch1: atlas-melf.patch
+Patch2: atlas-throttling.patch
#credits Lukas Slebodnik
-Patch5: atlas-shared_libraries.patch
+Patch3: atlas-shared_libraries.patch
-Patch7: atlas-aarch64port.patch
-Patch8: atlas-genparse.patch
+Patch4: atlas-genparse.patch
# Unbundle LAPACK (BZ #1181369)
-Patch9: atlas.3.10.1-unbundle.patch
-Patch10: atlas-gcc10.patch
+Patch5: atlas.3.10.1-unbundle.patch
+Patch6: atlas-gcc10.patch
+
+
+#patches dealing with z{13,14,15}, provided by IBM
+Patch7: 0001-Avoid-c99-standard-compiler.patch
+Patch8: 0002-Fix-rpath-link-command-line-options.patch
+Patch9: 0003-Fix-SIMD-support-on-IBM-z13.patch
+Patch10: 0004-Read-L1-data-cache-size-from-sysconf-if-possible.patch
+Patch11: 0005-Optimizations-for-IBM-z13.patch
+Patch12: 0006-Add-IBM-z14-support.patch
+Patch13: 0007-Enable-cross-compile.patch
+Patch14: 0008-Add-IBM-z15-support.patch
+
+#Covscan
+Patch101: atlas-getri.patch
BuildRequires: gcc-gfortran, lapack-static, gcc
@@ -142,8 +152,6 @@ Linear Algebra Software).
#
%ifarch x86_64
%define types base corei2
-#corei4
-# sse3
%package corei2-static
Summary: ATLAS libraries for Corei2 (Ivy/Sandy bridge) CPUs
@@ -175,48 +183,79 @@ optimizations for the corei2 (Ivy/Sandy bridge) CPUs.
%endif
%ifarch %{ix86}
-%define types base
-#corei1
-
-#%package corei1
-#Summary: ATLAS libraries for Corei1 (Nehalem/Westmere) CPUs
-#Group: System Environment/Libraries
-
-#%description corei1
-#This package contains ATLAS (Automatically Tuned Linear Algebra Software)
-#shared libraries compiled with optimizations for the Corei1 (Nehalem/Westmere) CPUs.
-#The base ATLAS builds for the ix86 architecture are made for PIII CPUs.
-
-#%package corei1-devel
-#Summary: Development libraries for ATLAS for Corei1 (Nehalem/Westmere) CPUs
-#Group: Development/Libraries
-#Requires: %{name}-corei1 = %{version}-%{release}
-#Obsoletes: %name-header <= %version-%release
-#Requires(posttrans): /usr/sbin/alternatives
-#Requires(postun): /usr/sbin/alternatives
-
-#%description corei1-devel
-#This package contains shared and static versions of the ATLAS
-#(Automatically Tuned Linear Algebra Software) libraries compiled with
-#optimizations for the corei1 (Nehalem/Westmere) CPUs.
-
-#%package corei1-static
-#Summary: Static libraries for ATLAS for Corei1 (/Nehalem/Westmere) CPUs
-#Group: Development/Libraries
-#Requires: %{name}-corei1-devel = %{version}-%{release}
-#Requires(posttrans): /usr/sbin/alternatives
-#Requires(postun): /usr/sbin/alternatives
-
-#%description corei1-static
-#This package contains the ATLAS (Automatically Tuned Linear Algebra
-#Software) static libraries compiled with optimizations for the Corei1
(Nehalem/Westemere)
-#CPUs. The base ATLAS builds for the ix86 architecture are made for the PIII CPUs.
+%define types base
%endif
%ifarch s390 s390x
-%define types base
+%define types base z14 z15
+
+%package z14
+Summary: ATLAS libraries for z14
+Group: System Environment/Libraries
+
+%description z14
+This package contains ATLAS (Automatically Tuned Linear Algebra Software)
+shared libraries compiled with optimizations for the z14 CPUs.
+
+%package z14-devel
+Summary: Development libraries for ATLAS for z14
+Group: Development/Libraries
+Requires: %{name}-z14 = %{version}-%{release}
+Obsoletes: %name-header <= %version-%release
+Requires(posttrans): chkconfig
+Requires(postun): chkconfig
+
+%description z14-devel
+This package contains shared and static versions of the ATLAS
+(Automatically Tuned Linear Algebra Software) libraries compiled with
+optimizations for the z14 CPUs.
+
+%package z14-static
+Summary: Static libraries for ATLAS for z14
+Group: Development/Libraries
+Requires: %{name}-z14-devel = %{version}-%{release}
+Requires(posttrans): chkconfig
+Requires(postun): chkconfig
+
+%description z14-static
+This package contains the ATLAS (Automatically Tuned Linear Algebra
+Software) static libraries compiled with optimizations for the z14
+CPUs.
+
+%package z15
+Summary: ATLAS libraries for z15
+Group: System Environment/Libraries
+
+%description z15
+This package contains ATLAS (Automatically Tuned Linear Algebra Software)
+shared libraries compiled with optimizations for the z15 CPUs.
+
+%package z15-devel
+Summary: Development libraries for ATLAS for z15
+Group: Development/Libraries
+Requires: %{name}-z15 = %{version}-%{release}
+Obsoletes: %name-header <= %version-%release
+Requires(posttrans): chkconfig
+Requires(postun): chkconfig
+
+%description z15-devel
+This package contains shared and static versions of the ATLAS
+(Automatically Tuned Linear Algebra Software) libraries compiled with
+optimizations for the z15 CPUs.
+
+%package z15-static
+Summary: Static libraries for ATLAS for z15
+Group: Development/Libraries
+Requires: %{name}-z15-devel = %{version}-%{release}
+Requires(posttrans): chkconfig
+Requires(postun): chkconfig
+
+%description z15-static
+This package contains the ATLAS (Automatically Tuned Linear Algebra
+Software) static libraries compiled with optimizations for the z15
+CPUs.
%endif
@@ -292,42 +331,44 @@ CPUs. The base ATLAS builds for the ppc64 architecture are made for
the Power 5
%prep
#cat /proc/cpuinfo
%setup -q -n ATLAS
-#patch0 -p0 -b .shared
-#arm patch not applicable, probably not needed
-#%ifarch %{arm}
-#%patch2 -p0 -b .arm
-#%endif
-%patch3 -p1 -b .melf
-%patch4 -p1 -b .thrott
-%patch5 -p2 -b .sharedlib
-%ifarch aarch64
-#%patch7 -p1 -b .aarch64
-%endif
-%patch8 -p1 -b .genparse
-%patch9 -p1 -b .unbundle
+
+
+%patch1 -p1
+%patch2 -p1
+%patch3 -p2
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
+
+%patch7 -p1
+%patch8 -p1
%patch10 -p1
+%ifarch s390x s390
+%patch9 -p1
+%patch11 -p1
+%patch12 -p1
+%patch13 -p1
+%patch14 -p1
+%endif
+
+%patch101 -p1
+
cp %{SOURCE1} CONFIG/ARCHS/
-#cp %{SOURCE2} CONFIG/ARCHS/
-cp %{SOURCE3} doc
+cp %{SOURCE2} doc
+cp %{SOURCE3} CONFIG/ARCHS/
+cp %{SOURCE4} CONFIG/ARCHS/
+cp %{SOURCE5} CONFIG/ARCHS/
+cp %{SOURCE6} CONFIG/ARCHS/
+cp %{SOURCE7} CONFIG/ARCHS/
+cp %{SOURCE8} CONFIG/ARCHS/
+cp %{SOURCE9} CONFIG/ARCHS/
+cp %{SOURCE10} CONFIG/ARCHS/
cp %{SOURCE11} CONFIG/ARCHS/
-cp %{SOURCE12} CONFIG/ARCHS/
-cp %{SOURCE13} CONFIG/ARCHS/
-cp %{SOURCE14} CONFIG/ARCHS/
-cp %{SOURCE15} CONFIG/ARCHS/
-cp %{SOURCE16} CONFIG/ARCHS/
-#cp %{SOURCE8} CONFIG/ARCHS/
-#cp %{SOURCE9} CONFIG/ARCHS/
%ifarch %{arm}
-# Set arm flags in atlcomp.txt
-#sed -i -e 's,-mfpu=vfpv3,-mfpu=neon,' CONFIG/src/atlcomp.txt
sed -i -e 's,-mfloat-abi=softfp,-mfloat-abi=hard,' CONFIG/src/atlcomp.txt
-# Some extra arm flags not needed
-#sed -i -e 's,-mfpu=vfpv3,,' tune/blas/gemm/CASES/*.flg
%endif
-# Debug
-#sed -i -e 's,> \(.*\)/ptsanity.out,> \1/ptsanity.out || cat \1/ptsanity.out
\&\& exit 1,' makes/Make.*
# Generate lapack library
mkdir lapacklib
@@ -354,9 +395,10 @@ p=$(pwd)
%define threads_option "-t 2"
#Target architectures for the 'base' versions
-%ifarch s390x
+%ifarch s390x
%define flags %{nil}
%define base_options "-A IBMz12 -V 1"
+#%define base_options "-A IBMz13 -V 8 -Si archdef 2"
%endif
%ifarch x86_64
@@ -397,14 +439,14 @@ p=$(pwd)
%if "%{?enable_native_atlas}" != "0"
%define threads_option %{nil}
%define base_options %{nil}
-%define flags %{nil}
+%define flags %{nil}
%endif
for type in %{types}; do
if [ "$type" = "base" ]; then
libname=atlas
arg_options=%{base_options}
- thread_options=%{threads_option}
+ thread_options=%{threads_option}
%define pr_base %(echo $((%{__isa_bits}+0)))
else
libname=atlas-${type}
@@ -415,12 +457,14 @@ for type in %{types}; do
elif [ "$type" = "corei1" ]; then
arg_options="-A Corei1 -V 896"
%define pr_corei1 %(echo $((%{__isa_bits}+2)))
- elif [ "$type" = "z10" ]; then
- arg_options="-A IBMz10 -V 1"
- %define pr_z10 %(echo $((%{__isa_bits}+2)))
- elif [ "$type" = "z196" ]; then
- arg_options="-A IBMz196 -V 1"
- %define pr_z196 %(echo $((%{__isa_bits}+4)))
+ elif [ "$type" = "z14" ]; then
+ thread_options="-t 4"
+ arg_options="-A IBMz14 -V 4 -Si archdef 2"
+ %define pr_z14 %(echo $((%{__isa_bits}+2)))
+ elif [ "$type" = "z15" ]; then
+ thread_options="-t 4"
+ arg_options="-A IBMz15 -V 4 -Si archdef 2"
+ %define pr_z15 %(echo $((%{__isa_bits}+4)))
elif [ "$type" = "power7" ]; then
thread_options="-t 4"
arg_options="-A POWER7 -V 1"
@@ -433,10 +477,10 @@ for type in %{types}; do
fi
mkdir -p %{_arch}_${type}
pushd %{_arch}_${type}
- ../configure %{mode} $thread_options $arg_options -D c -DWALL -Fa alg '%{flags}
-D_FORTIFY_SOURCE=2 -g -Wa,--noexecstack,--generate-missing-build-notes=yes
-fstack-protector-strong -fstack-clash-protection -fPIC -fplugin=annobin -Wl,-z,now'\
+ ../configure %{mode} $thread_options $arg_options -D c -DWALL -F xc ' ' -Fa
alg '%{flags} -D_FORTIFY_SOURCE=2 -g
-Wa,--noexecstack,--generate-missing-build-notes=yes -fstack-protector-strong
-fstack-clash-protection -fPIC -fplugin=annobin -Wl,-z,now'\
--prefix=%{buildroot}%{_prefix} \
--incdir=%{buildroot}%{_includedir} \
- --libdir=%{buildroot}%{_libdir}/${libname}
+ --libdir=%{buildroot}%{_libdir}/${libname}
#--with-netlib-lapack-tarfile=%{SOURCE10}
#matches both SLAPACK and SSLAPACK
@@ -460,7 +504,7 @@ for type in %{types}; do
popd
done
-%install
+%install
for type in %{types}; do
pushd %{_arch}_${type}
make DESTDIR=%{buildroot} install
@@ -502,9 +546,14 @@ mkdir -p %{buildroot}%{_includedir}/atlas
%check
for type in %{types}; do
- pushd %{_arch}_${type}
- make check ptcheck
- popd
+ if [ "$type" = "z14" ] || [ "$type" = "z15" ];
then
+ # skip the tests (may fail due to illegal instructions).
+ echo "Skipping tests for the $type subpackage"
+ else
+ pushd %{_arch}_${type}
+ make check ptcheck
+ popd
+ fi
done
#%endif
@@ -558,31 +607,31 @@ fi
%ifarch s390 s390x
- #%post -n atlas-z10 -p /sbin/ldconfig
+ %post -n atlas-z14 -p /sbin/ldconfig
- #%postun -n atlas-z10 -p /sbin/ldconfig
+ %postun -n atlas-z14 -p /sbin/ldconfig
- #%posttrans z10-devel
- # /usr/sbin/alternatives --install %{_includedir}/atlas atlas-inc \
- # %{_includedir}/atlas-%{_arch}-z10 %{pr_z10}
+ %posttrans z14-devel
+ /usr/sbin/alternatives --install %{_includedir}/atlas atlas-inc \
+ %{_includedir}/atlas-%{_arch}-z14 %{pr_z14}
- #%postun z10-devel
- #if [ $1 -ge 0 ] ; then
- # /usr/sbin/alternatives --remove atlas-inc %{_includedir}/atlas-%{_arch}-z10
- #fi
+ %postun z14-devel
+ if [ $1 -ge 0 ] ; then
+ /usr/sbin/alternatives --remove atlas-inc %{_includedir}/atlas-%{_arch}-z14
+ fi
- #%post -n atlas-z196 -p /sbin/ldconfig
+ %post -n atlas-z15 -p /sbin/ldconfig
- #%postun -n atlas-z196 -p /sbin/ldconfig
+ %postun -n atlas-z15 -p /sbin/ldconfig
- #%posttrans z196-devel
- # /usr/sbin/alternatives --install %{_includedir}/atlas atlas-inc \
- # %{_includedir}/atlas-%{_arch}-z196 %{pr_z196}
+ %posttrans z15-devel
+ /usr/sbin/alternatives --install %{_includedir}/atlas atlas-inc \
+ %{_includedir}/atlas-%{_arch}-z15 %{pr_z15}
- #%postun z196-devel
- #if [ $1 -ge 0 ] ; then
- # /usr/sbin/alternatives --remove atlas-inc %{_includedir}/atlas-%{_arch}-z196
- #fi
+ %postun z15-devel
+ if [ $1 -ge 0 ] ; then
+ /usr/sbin/alternatives --remove atlas-inc %{_includedir}/atlas-%{_arch}-z15
+ fi
%endif
@@ -691,11 +740,55 @@ fi
%{_libdir}/atlas-power7/*.a
%endif
+%ifarch s390 s390x
+
+%files z14
+%doc doc/README.dist
+%dir %{_libdir}/atlas-z14
+%{_libdir}/atlas-z14/*.so.*
+%config(noreplace) /etc/ld.so.conf.d/atlas-%{_arch}-z14.conf
+
+%files z14-devel
+%doc doc
+%{_libdir}/atlas-z14/*.so
+%{_includedir}/atlas-%{_arch}-z14/
+%{_includedir}/*.h
+%ghost %{_includedir}/atlas
+
+%files z14-static
+%{_libdir}/atlas-z14/*.a
+
+
+%files z15
+%doc doc/README.dist
+%dir %{_libdir}/atlas-z15
+%{_libdir}/atlas-z15/*.so.*
+%config(noreplace) /etc/ld.so.conf.d/atlas-%{_arch}-z15.conf
+
+%files z15-devel
+%doc doc
+%{_libdir}/atlas-z15/*.so
+%{_includedir}/atlas-%{_arch}-z15/
+%{_includedir}/*.h
+%ghost %{_includedir}/atlas
+
+%files z15-static
+%{_libdir}/atlas-z15/*.a
+
+%endif
+
#enable_native_atlas if
%endif
%changelog
+* Thu Aug 27 2020 Jakub Martisko <jamartis(a)redhat.com> - 3.10.3.13
+- Sync with rhel 8.3 + cleanup
+- Add new subpackages - z{14,15}
+- Unlike in rhel8, the base subpackage still needs to be build for z12.
+- Covscan related bugfixes
+- Spec and git cleanup (remove unused patches/sources)
+
* Mon Jul 27 2020 Fedora Release Engineering <releng(a)fedoraproject.org> -
3.10.3-12
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
diff --git a/getdoublearr.stripwhite.patch b/getdoublearr.stripwhite.patch
deleted file mode 100644
index 86358a1..0000000
--- a/getdoublearr.stripwhite.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff -up ATLAS/include/atlas_genparse.h.than ATLAS/include/atlas_genparse.h
---- ATLAS/include/atlas_genparse.h.than 2015-11-26 10:53:55.056586198 -0500
-+++ ATLAS/include/atlas_genparse.h 2015-11-26 10:56:00.168537914 -0500
-@@ -149,13 +149,24 @@ static int asmNames2bitfield(char *str)
- }
-
- /* procedure 7 */
--static int GetDoubleArr(char *str, int N, double *d)
-+static int GetDoubleArr(char *callerstr, int N, double *d)
- /*
- * Reads in a list with form "%le,%le...,%le"; N-length d recieves doubles.
- * RETURNS: the number of doubles found, or N, whichever is less
- */
- {
-- int i=1;
-+ int i;
-+ char *dupstr = DupString(callerstr);
-+ char *str = dupstr;
-+ /* strip the string to end on first white space */
-+ for (i=0; dupstr[i]; i++)
-+ {
-+ if (isspace(dupstr[i])) {
-+ dupstr[i] = '\0';
-+ break;
-+ }
-+ }
-+ i = 1;
- assert(sscanf(str, "%le", d) == 1);
- while (i < N)
- {
-@@ -167,6 +178,7 @@ static int GetDoubleArr(char *str, int N
- break;
- i++;
- }
-+ free(dupstr);
- return(i);
- }
-
diff --git a/initialize_malloc_memory.invtrsm.wms.oct23.patch
b/initialize_malloc_memory.invtrsm.wms.oct23.patch
deleted file mode 100644
index 02fa9e4..0000000
--- a/initialize_malloc_memory.invtrsm.wms.oct23.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From: Michel Normand <normand(a)linux.vnet.ibm.com>
-Subject: initialize malloc memory.invtrsm.wms.oct23
-Date: Mon, 14 Apr 2014 17:18:53 +0200
-References:
http://sourceforge.net/p/math-atlas/mailman/message/32471499/
-
-initialize malloc memory invtrsm.c
-
-
-Signed-off-by: Will Schmidt <will_schmidt(a)vnet.ibm.com>
-Signed-off-by: Michel Normand <normand(a)linux.vnet.ibm.com>
----
- ATLAS/tune/blas/level3/invtrsm.c | 1 +
- 1 file changed, 1 insertion(+)
-
-Index: ATLAS/tune/blas/level3/invtrsm.c
-===================================================================
---- ATLAS.orig/tune/blas/level3/invtrsm.c
-+++ ATLAS/tune/blas/level3/invtrsm.c
-@@ -525,6 +525,7 @@ static double RunTiming
- a = A = malloc(i * ATL_MulBySize(incA));
- if (A)
- {
-+ memset(A,0,i*ATL_MulBySize(incA)); /* wms (!!) malloc call above returns
non-initialized memory. */
- if (Uplo == TestGE)
- for (i=0; i < k; i++)
- Mjoin(PATL,gegen)(N, N, A+i*incA, lda, N+lda);
diff --git a/sources b/sources
index 6eed107..766db50 100644
--- a/sources
+++ b/sources
@@ -15,3 +15,6 @@ SHA512 (ARMa732.tar) =
47d6564b5a439bc3778ccc79242220b236c7dc8d36e12ce6850c7e9a0
SHA512 (ARMa732.tar.bz2) =
8b83b59a32f18d2cd432c205efd4358b0000ce1685799f2f38a60532bc925e9cd871371d2dfd226ab8e30e830bf608f022d63bcd26f26f9fe74acab067bd4d4f
SHA512 (POWER864LEVSXp4.tar.bz2) =
e2fa637061a4a4806bc091009c37ccd719c4c4051baf36ed451917e255375881fa168caa5ca296ae9c89bb28523d9015fda42a5dbc51aef4c66efbf6efd966d2
SHA512 (K7323DNow.tgz) =
e1d5e4208ce454b5f5daa68663d2dd28a2bd3cc97496e4e1515df880b9ccd00bcc75bd820402c3b2bf8409f98500e43f2481fbf5dd480f7d0ba60fe2f82a1ac1
+SHA512 (IBMz1364VXZ.tar.bz2) =
abcd32e4e92eaee702bb9583179d7019b551c5cdc45733ef683a62627d52d002425f7eb9515c15c700160920a6cda9bdd9586a748e6bea0425958346c341481f
+SHA512 (IBMz1464VXZ2.tar.bz2) =
6783ec5658d59f8a1f1270fa9845c5aad3a320b03e7b0bee7e16c0357679118bec0bf99f0ada8815620d2df17ab10c3bd91dff2454dbd4f0e6401de69944317f
+SHA512 (IBMz1564VXZ2.tar.bz2) =
ff522d80d758c508c71989a189442121e4be2f0309c7c9dcb87174bacef6a3c6caf2debc069311335a9c14930450e84a81f9be171e46f4a0c2da5ae0771a9b1c