import openblas-0.3.3-5.el8
This commit is contained in:
		
						commit
						7cbbb5d19f
					
				
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | |||||||
|  | SOURCES/v0.3.3.tar.gz | ||||||
							
								
								
									
										1
									
								
								.openblas.metadata
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.openblas.metadata
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | |||||||
|  | bff159c528c1a860cee4976114d224da32d302a2 SOURCES/v0.3.3.tar.gz | ||||||
							
								
								
									
										19
									
								
								SOURCES/openblas-0.2.15-constructor.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								SOURCES/openblas-0.2.15-constructor.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,19 @@ | |||||||
|  | diff -up OpenBLAS-0.2.15/driver/others/memory.c.priority OpenBLAS-0.2.15/driver/others/memory.c
 | ||||||
|  | --- OpenBLAS-0.2.15/driver/others/memory.c.priority	2015-10-27 21:44:50.000000000 +0100
 | ||||||
|  | +++ OpenBLAS-0.2.15/driver/others/memory.c	2016-01-13 21:12:01.862225898 +0100
 | ||||||
|  | @@ -146,8 +146,15 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 | ||||||
|  |  #define CONSTRUCTOR	__attribute__ ((constructor)) | ||||||
|  |  #define DESTRUCTOR	__attribute__ ((destructor)) | ||||||
|  |  #else | ||||||
|  | +#if __GNUC__ && INIT_PRIORITY && ((GCC_VERSION >= 40300) || (CLANG_VERSION >= 20900))
 | ||||||
|  |  #define CONSTRUCTOR	__attribute__ ((constructor(101))) | ||||||
|  |  #define DESTRUCTOR	__attribute__ ((destructor(101))) | ||||||
|  | +#elif __GNUC__ && INIT_PRIORITY
 | ||||||
|  | +#define CONSTRUCTOR	__attribute__ ((constructor))
 | ||||||
|  | +#define DESTRUCTOR	__attribute__ ((destructor))
 | ||||||
|  | +#else
 | ||||||
|  | +#define CONSTRUCTOR
 | ||||||
|  | +#define DESTRUCTOR
 | ||||||
|  |  #endif | ||||||
|  |   | ||||||
|  |  #ifdef DYNAMIC_ARCH | ||||||
							
								
								
									
										87
									
								
								SOURCES/openblas-0.2.15-system_lapack.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										87
									
								
								SOURCES/openblas-0.2.15-system_lapack.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,87 @@ | |||||||
|  | diff -up OpenBLAS-0.2.15/Makefile.system_lapack OpenBLAS-0.2.15/Makefile
 | ||||||
|  | --- OpenBLAS-0.2.15/Makefile.system_lapack	2015-10-27 13:44:50.000000000 -0700
 | ||||||
|  | +++ OpenBLAS-0.2.15/Makefile	2015-10-28 09:14:56.696685503 -0700
 | ||||||
|  | @@ -16,11 +16,7 @@ BLASDIRS += reference
 | ||||||
|  |  endif | ||||||
|  |   | ||||||
|  |  SUBDIRS	= $(BLASDIRS) | ||||||
|  | -ifneq ($(NO_LAPACK), 1)
 | ||||||
|  | -SUBDIRS	+= lapack
 | ||||||
|  | -endif
 | ||||||
|  | -
 | ||||||
|  | -LAPACK_NOOPT := $(filter-out -O0 -O1 -O2 -O3 -Ofast,$(LAPACK_FFLAGS))
 | ||||||
|  | +SUBDIRS += lapack
 | ||||||
|  |   | ||||||
|  |  SUBDIRS_ALL = $(SUBDIRS) test ctest utest exports benchmark ../laswp ../bench | ||||||
|  |   | ||||||
|  | @@ -211,57 +207,8 @@ hpl_p :
 | ||||||
|  |  	fi; \ | ||||||
|  |  	done | ||||||
|  |   | ||||||
|  | -ifeq ($(NO_LAPACK), 1)
 | ||||||
|  |  netlib : | ||||||
|  | -
 | ||||||
|  | -else
 | ||||||
|  | -netlib : lapack_prebuild
 | ||||||
|  | -ifndef NOFORTRAN
 | ||||||
|  | -	@$(MAKE) -C $(NETLIB_LAPACK_DIR) lapacklib
 | ||||||
|  | -	@$(MAKE) -C $(NETLIB_LAPACK_DIR) tmglib
 | ||||||
|  | -endif
 | ||||||
|  | -ifndef NO_LAPACKE
 | ||||||
|  | -	@$(MAKE) -C $(NETLIB_LAPACK_DIR) lapackelib
 | ||||||
|  | -endif
 | ||||||
|  | -endif
 | ||||||
|  | -
 | ||||||
|  | -prof_lapack : lapack_prebuild
 | ||||||
|  | -	@$(MAKE) -C $(NETLIB_LAPACK_DIR) lapack_prof
 | ||||||
|  | -
 | ||||||
|  | -lapack_prebuild :
 | ||||||
|  | -ifndef NOFORTRAN
 | ||||||
|  | -	-@echo "FORTRAN     = $(FC)" > $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "OPTS        = $(LAPACK_FFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "POPTS       = $(LAPACK_FPFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "NOOPT       = -O0 $(LAPACK_NOOPT)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "PNOOPT      = $(LAPACK_FPFLAGS) -O0" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "LOADOPTS    = $(FFLAGS) $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "CC          = $(CC)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "override CFLAGS      = $(LAPACK_CFLAGS)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "ARCH        = $(AR)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "ARCHFLAGS   = -ru" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "RANLIB      = $(RANLIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "LAPACKLIB   = ../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "TMGLIB      = ../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "BLASLIB     = ../../../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "LAPACKELIB  = ../$(LIBNAME)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "LAPACKLIB_P = ../$(LIBNAME_P)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "SUFFIX      = $(SUFFIX)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "PSUFFIX     = $(PSUFFIX)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "CEXTRALIB   = $(EXTRALIB)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -ifeq ($(FC), gfortran)
 | ||||||
|  | -	-@echo "TIMER       = INT_ETIME" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -ifdef SMP
 | ||||||
|  | -	-@echo "LOADER      = $(FC) -pthread" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -else
 | ||||||
|  | -	-@echo "LOADER      = $(FC)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -endif
 | ||||||
|  | -else
 | ||||||
|  | -	-@echo "TIMER       = NONE" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -	-@echo "LOADER      = $(FC)" >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -endif
 | ||||||
|  | -	-@cat  make.inc >> $(NETLIB_LAPACK_DIR)/make.inc
 | ||||||
|  | -endif
 | ||||||
|  | +	@$(MAKE) -C $(NETLIB_LAPACK_DIR)
 | ||||||
|  |   | ||||||
|  |  large.tgz : | ||||||
|  |  ifndef NOFORTRAN | ||||||
|  | diff -up OpenBLAS-0.2.15/Makefile.system.system_lapack OpenBLAS-0.2.15/Makefile.system
 | ||||||
|  | --- OpenBLAS-0.2.15/Makefile.system.system_lapack	2015-10-27 13:44:50.000000000 -0700
 | ||||||
|  | +++ OpenBLAS-0.2.15/Makefile.system	2015-10-28 09:14:39.994350500 -0700
 | ||||||
|  | @@ -9,7 +9,7 @@ ifndef TOPDIR
 | ||||||
|  |  TOPDIR = . | ||||||
|  |  endif | ||||||
|  |   | ||||||
|  | -NETLIB_LAPACK_DIR = $(TOPDIR)/lapack-netlib
 | ||||||
|  | +NETLIB_LAPACK_DIR = $(TOPDIR)/netliblapack
 | ||||||
|  |   | ||||||
|  |  # Default C compiler | ||||||
|  |  # - Only set if not specified on the command line or inherited from the environment. | ||||||
							
								
								
									
										6270
									
								
								SOURCES/openblas-0.2.20-asmflags.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6270
									
								
								SOURCES/openblas-0.2.20-asmflags.patch
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										39
									
								
								SOURCES/openblas-0.2.20-power-optimize.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								SOURCES/openblas-0.2.20-power-optimize.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,39 @@ | |||||||
|  | diff --git a/kernel/power/drot.c b/kernel/power/drot.c
 | ||||||
|  | index 3e10748..9d2b8c0 100644
 | ||||||
|  | --- a/kernel/power/drot.c
 | ||||||
|  | +++ b/kernel/power/drot.c
 | ||||||
|  | @@ -37,8 +37,6 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 | ||||||
|  |   | ||||||
|  |  #include "common.h" | ||||||
|  |   | ||||||
|  | -#pragma GCC optimize "O1"
 | ||||||
|  | -
 | ||||||
|  |  #if defined(POWER8) | ||||||
|  |  #include "drot_microk_power8.c" | ||||||
|  |  #endif | ||||||
|  | diff --git a/kernel/power/srot.c b/kernel/power/srot.c
 | ||||||
|  | index d2910ff..18f5362 100644
 | ||||||
|  | --- a/kernel/power/srot.c
 | ||||||
|  | +++ b/kernel/power/srot.c
 | ||||||
|  | @@ -37,8 +37,6 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 | ||||||
|  |   | ||||||
|  |  #include "common.h" | ||||||
|  |   | ||||||
|  | -#pragma GCC optimize "O1"
 | ||||||
|  | -
 | ||||||
|  |  #if defined(POWER8) | ||||||
|  |  #include "srot_microk_power8.c" | ||||||
|  |  #endif | ||||||
|  | diff --git a/kernel/power/zscal.c b/kernel/power/zscal.c
 | ||||||
|  | index 14d677f..79f7271 100644
 | ||||||
|  | --- a/kernel/power/zscal.c
 | ||||||
|  | +++ b/kernel/power/zscal.c
 | ||||||
|  | @@ -36,8 +36,6 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 | ||||||
|  |   | ||||||
|  |  #include "common.h" | ||||||
|  |   | ||||||
|  | -#pragma GCC optimize "O1"
 | ||||||
|  | -
 | ||||||
|  |  #if defined(POWER8) | ||||||
|  |  #if defined(DOUBLE) | ||||||
|  |  #include "zscal_microk_power8.c" | ||||||
							
								
								
									
										24
									
								
								SOURCES/openblas-0.2.5-libname.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								SOURCES/openblas-0.2.5-libname.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,24 @@ | |||||||
|  | diff -up OpenBLAS-0.2.5/Makefile.system.orig OpenBLAS-0.2.5/Makefile.system
 | ||||||
|  | --- OpenBLAS-0.2.5/Makefile.system.orig	2012-11-27 01:24:53.000000000 +0200
 | ||||||
|  | +++ OpenBLAS-0.2.5/Makefile.system	2012-12-24 16:13:57.316689688 +0200
 | ||||||
|  | @@ -758,16 +758,16 @@ ifndef SMP
 | ||||||
|  |  LIBNAME		= $(LIBPREFIX)_$(LIBCORE)$(REVISION).$(LIBSUFFIX) | ||||||
|  |  LIBNAME_P	= $(LIBPREFIX)_$(LIBCORE)$(REVISION)_p.$(LIBSUFFIX) | ||||||
|  |  else | ||||||
|  | -LIBNAME		= $(LIBPREFIX)_$(LIBCORE)p$(REVISION).$(LIBSUFFIX)
 | ||||||
|  | -LIBNAME_P	= $(LIBPREFIX)_$(LIBCORE)p$(REVISION)_p.$(LIBSUFFIX)
 | ||||||
|  | +LIBNAME		= $(LIBPREFIX)_$(LIBCORE)$(REVISION).$(LIBSUFFIX)
 | ||||||
|  | +LIBNAME_P	= $(LIBPREFIX)_$(LIBCORE)$(REVISION)_p.$(LIBSUFFIX)
 | ||||||
|  |  endif | ||||||
|  |  else | ||||||
|  |  ifndef SMP | ||||||
|  |  LIBNAME		= $(LIBPREFIX)$(REVISION).$(LIBSUFFIX) | ||||||
|  |  LIBNAME_P	= $(LIBPREFIX)$(REVISION)_p.$(LIBSUFFIX) | ||||||
|  |  else | ||||||
|  | -LIBNAME		= $(LIBPREFIX)p$(REVISION).$(LIBSUFFIX)
 | ||||||
|  | -LIBNAME_P	= $(LIBPREFIX)p$(REVISION)_p.$(LIBSUFFIX)
 | ||||||
|  | +LIBNAME		= $(LIBPREFIX)$(REVISION).$(LIBSUFFIX)
 | ||||||
|  | +LIBNAME_P	= $(LIBPREFIX)$(REVISION)_p.$(LIBSUFFIX)
 | ||||||
|  |  endif | ||||||
|  |  endif | ||||||
|  |   | ||||||
							
								
								
									
										13
									
								
								SOURCES/openblas-0.3.3-izamax-s390x.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								SOURCES/openblas-0.3.3-izamax-s390x.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,13 @@ | |||||||
|  | diff --git a/kernel/zarch/izamax.c b/kernel/zarch/izamax.c
 | ||||||
|  | index 216c341..6cde691 100644
 | ||||||
|  | --- a/kernel/zarch/izamax.c
 | ||||||
|  | +++ b/kernel/zarch/izamax.c
 | ||||||
|  | @@ -185,7 +185,7 @@ static BLASLONG   ziamax_kernel_16_TUNED(BLASLONG n, FLOAT *x, FLOAT *maxf) {
 | ||||||
|  |              "vsteg  %%v6,%[maxf],0  \n\t" | ||||||
|  |              "vmnlg  %%v1,%%v5,%%v7 \n\t" | ||||||
|  |              "vlgvg  %[index],%%v1,0  \n\t" | ||||||
|  | -            "j 3    \n\t"
 | ||||||
|  | +            "j 3f   \n\t"
 | ||||||
|  |              "2:     \n\t" | ||||||
|  |              "wfchdb %%v16,%%v26,%%v6      \n\t" | ||||||
|  |              "vsel   %%v1,%%v5,%%v7,%%v16  \n\t" | ||||||
							
								
								
									
										37
									
								
								SOURCES/openblas-0.3.3-noopt.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								SOURCES/openblas-0.3.3-noopt.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,37 @@ | |||||||
|  | diff --git a/lapack-netlib/INSTALL/Makefile b/lapack-netlib/INSTALL/Makefile
 | ||||||
|  | index 150a061..abf0843 100644
 | ||||||
|  | --- a/lapack-netlib/INSTALL/Makefile
 | ||||||
|  | +++ b/lapack-netlib/INSTALL/Makefile
 | ||||||
|  | @@ -45,6 +45,3 @@ cleantest:
 | ||||||
|  |  .SUFFIXES: .o .f | ||||||
|  |  .f.o: | ||||||
|  |  	$(FORTRAN) $(OPTS) -c -o $@ $< | ||||||
|  | -
 | ||||||
|  | -slamch.o: slamch.f ; $(FORTRAN) $(NOOPT) -c -o $@ $<
 | ||||||
|  | -dlamch.o: dlamch.f ; $(FORTRAN) $(NOOPT) -c -o $@ $<
 | ||||||
|  | diff --git a/lapack-netlib/SRC/Makefile b/lapack-netlib/SRC/Makefile
 | ||||||
|  | index 531cb51..94051a1 100644
 | ||||||
|  | --- a/lapack-netlib/SRC/Makefile
 | ||||||
|  | +++ b/lapack-netlib/SRC/Makefile
 | ||||||
|  | @@ -603,10 +603,3 @@ clean:
 | ||||||
|  |   | ||||||
|  |  .F.o: | ||||||
|  |  	$(FORTRAN) $(OPTS) -c $< -o $@ | ||||||
|  | -	
 | ||||||
|  | -slaruv.o: slaruv.f ; $(FORTRAN) $(NOOPT) -c -o $@ $<
 | ||||||
|  | -dlaruv.o: dlaruv.f ; $(FORTRAN) $(NOOPT) -c -o $@ $<
 | ||||||
|  | -sla_wwaddw.o: sla_wwaddw.f ; $(FORTRAN) $(NOOPT) -c -o $@ $<
 | ||||||
|  | -dla_wwaddw.o: dla_wwaddw.f ; $(FORTRAN) $(NOOPT) -c -o $@ $<
 | ||||||
|  | -cla_wwaddw.o: cla_wwaddw.f ; $(FORTRAN) $(NOOPT) -c -o $@ $<
 | ||||||
|  | -zla_wwaddw.o: zla_wwaddw.f ; $(FORTRAN) $(NOOPT) -c -o $@ $<
 | ||||||
|  | diff --git a/lapack-netlib/TESTING/MATGEN/Makefile b/lapack-netlib/TESTING/MATGEN/Makefile
 | ||||||
|  | index e20004c..f168821 100644
 | ||||||
|  | --- a/lapack-netlib/TESTING/MATGEN/Makefile
 | ||||||
|  | +++ b/lapack-netlib/TESTING/MATGEN/Makefile
 | ||||||
|  | @@ -95,6 +95,3 @@ cleanlib:
 | ||||||
|  |   | ||||||
|  |  .f.o: | ||||||
|  |  	$(FORTRAN) $(OPTS) -c -o $@ $< | ||||||
|  | -
 | ||||||
|  | -slaran.o: slaran.f ; $(FORTRAN) $(NOOPT) -c -o $@ $<
 | ||||||
|  | -dlaran.o: dlaran.f ; $(FORTRAN) $(NOOPT) -c -o $@ $<
 | ||||||
							
								
								
									
										57
									
								
								SOURCES/openblas-0.3.3-power9.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								SOURCES/openblas-0.3.3-power9.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,57 @@ | |||||||
|  | diff --git a/cpuid_power.c b/cpuid_power.c
 | ||||||
|  | index 6c7baef..388ea18 100644
 | ||||||
|  | --- a/cpuid_power.c
 | ||||||
|  | +++ b/cpuid_power.c
 | ||||||
|  | @@ -56,6 +56,7 @@
 | ||||||
|  |  #define CPUTYPE_CELL       6 | ||||||
|  |  #define CPUTYPE_PPCG4	   7 | ||||||
|  |  #define CPUTYPE_POWER8     8 | ||||||
|  | +#define CPUTYPE_POWER9     9
 | ||||||
|  |   | ||||||
|  |  char *cpuname[] = { | ||||||
|  |    "UNKNOWN", | ||||||
|  | @@ -66,7 +67,8 @@ char *cpuname[] = {
 | ||||||
|  |    "POWER6", | ||||||
|  |    "CELL", | ||||||
|  |    "PPCG4", | ||||||
|  | -  "POWER8"
 | ||||||
|  | +  "POWER8",
 | ||||||
|  | +  "POWER9"
 | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  |  char *lowercpuname[] = { | ||||||
|  | @@ -78,7 +80,8 @@ char *lowercpuname[] = {
 | ||||||
|  |    "power6", | ||||||
|  |    "cell", | ||||||
|  |    "ppcg4", | ||||||
|  | -  "power8"
 | ||||||
|  | +  "power8",
 | ||||||
|  | +  "power9"
 | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  |  char *corename[] = { | ||||||
|  | @@ -90,6 +93,7 @@ char *corename[] = {
 | ||||||
|  |    "POWER6", | ||||||
|  |    "CELL", | ||||||
|  |    "PPCG4", | ||||||
|  | +  "POWER8",
 | ||||||
|  |    "POWER8" | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  | @@ -120,6 +124,7 @@ int detect(void){
 | ||||||
|  |    if (!strncasecmp(p, "POWER6", 6)) return CPUTYPE_POWER6; | ||||||
|  |    if (!strncasecmp(p, "POWER7", 6)) return CPUTYPE_POWER6; | ||||||
|  |    if (!strncasecmp(p, "POWER8", 6)) return CPUTYPE_POWER8; | ||||||
|  | +  if (!strncasecmp(p, "POWER9", 6)) return CPUTYPE_POWER8;
 | ||||||
|  |    if (!strncasecmp(p, "Cell",   4)) return CPUTYPE_CELL; | ||||||
|  |    if (!strncasecmp(p, "7447",   4)) return CPUTYPE_PPCG4; | ||||||
|  |   | ||||||
|  | @@ -148,7 +153,7 @@ int id;
 | ||||||
|  |  id = __asm __volatile("mfpvr %0" : "=r"(id)); | ||||||
|  |  switch ( id >> 16 ) { | ||||||
|  |    case 0x4e: // POWER9 | ||||||
|  | -    return  return CPUTYPE_POWER8;
 | ||||||
|  | +    return CPUTYPE_POWER8;
 | ||||||
|  |      break; | ||||||
|  |    case 0x4d: | ||||||
|  |    case 0x4b: // POWER8/8E  | ||||||
							
								
								
									
										19
									
								
								SOURCES/openblas-0.3.3-tests.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								SOURCES/openblas-0.3.3-tests.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,19 @@ | |||||||
|  | diff --git a/Makefile b/Makefile
 | ||||||
|  | index d99521b..01bba2f 100644
 | ||||||
|  | --- a/Makefile
 | ||||||
|  | +++ b/Makefile
 | ||||||
|  | @@ -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 | ||||||
|  |   | ||||||
							
								
								
									
										943
									
								
								SPECS/openblas.spec
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										943
									
								
								SPECS/openblas.spec
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,943 @@ | |||||||
|  | %bcond_with system_lapack | ||||||
|  | # Version of bundled lapack | ||||||
|  | %global lapackver 3.7.0 | ||||||
|  | 
 | ||||||
|  | # DO NOT "CLEAN UP" OR MODIFY THIS SPEC FILE WITHOUT ASKING THE | ||||||
|  | # MAINTAINER FIRST! | ||||||
|  | # | ||||||
|  | # OpenBLAS is hand written assembler code and it has a limited number | ||||||
|  | # of supported architectures. Don't enable any new architectures / | ||||||
|  | # processors a) without checking that it is actually supported and b) | ||||||
|  | # without modifying the target flags. | ||||||
|  | # | ||||||
|  | # The same spec is also used on the EPEL branches, meaninng that some | ||||||
|  | # "obsoleted" features are still kept in the spec. | ||||||
|  | 
 | ||||||
|  | Name:           openblas | ||||||
|  | Version:        0.3.3 | ||||||
|  | Release:        5%{?dist} | ||||||
|  | Summary:        An optimized BLAS library based on GotoBLAS2 | ||||||
|  | Group:          Development/Libraries | ||||||
|  | License:        BSD | ||||||
|  | URL:            https://github.com/xianyi/OpenBLAS/ | ||||||
|  | Source0:        https://github.com/xianyi/OpenBLAS/archive/v%{version}.tar.gz | ||||||
|  | # Use system lapack | ||||||
|  | Patch0:         openblas-0.2.15-system_lapack.patch | ||||||
|  | # Drop extra p from threaded library name | ||||||
|  | Patch1:         openblas-0.2.5-libname.patch | ||||||
|  | # Don't use constructor priorities on too old architectures | ||||||
|  | Patch2:         openblas-0.2.15-constructor.patch | ||||||
|  | # Supply the proper flags to the test makefile | ||||||
|  | Patch3:         openblas-0.3.3-tests.patch | ||||||
|  | # Enable optimizations for all LAPACK sources | ||||||
|  | Patch4:         openblas-0.3.3-noopt.patch | ||||||
|  | # Pass ASMFLAGS to assembler compiler | ||||||
|  | Patch5:         openblas-0.2.20-asmflags.patch | ||||||
|  | # Remove optimization pragmas on ppc64le | ||||||
|  | Patch6:         openblas-0.2.20-power-optimize.patch | ||||||
|  | # Fix izamax on s390x | ||||||
|  | Patch7:         openblas-0.3.3-izamax-s390x.patch | ||||||
|  | # Detect POWER9 as POWER8 | ||||||
|  | Patch8:         openblas-0.3.3-power9.patch | ||||||
|  | 
 | ||||||
|  | BuildRequires:  gcc | ||||||
|  | BuildRequires:  gcc-gfortran | ||||||
|  | BuildRequires:  perl-devel | ||||||
|  | BuildRequires:  multilib-rpm-config | ||||||
|  | 
 | ||||||
|  | # Do we have execstack? | ||||||
|  | %if 0%{?rhel} == 7 | ||||||
|  | %ifarch ppc64le aarch64 | ||||||
|  | %global execstack 0 | ||||||
|  | %else | ||||||
|  | %global execstack 1 | ||||||
|  | %endif | ||||||
|  | %else | ||||||
|  | %global execstack 1 | ||||||
|  | %endif | ||||||
|  | %if %{execstack} | ||||||
|  | BuildRequires:  /usr/bin/execstack | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | # LAPACK | ||||||
|  | %if %{with system_lapack} | ||||||
|  | %if 0%{?rhel} == 5 || 0%{?rhel} == 6 | ||||||
|  | BuildRequires:  lapack-devel | ||||||
|  | %else | ||||||
|  | BuildRequires:  lapack-static | ||||||
|  | %endif | ||||||
|  | # Do we have LAPACKE? (Needs at least lapack 3.4.0) | ||||||
|  | %if 0%{?fedora} | ||||||
|  | %global lapacke 1 | ||||||
|  | %else | ||||||
|  | %global lapacke 0 | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %else | ||||||
|  | # Use bundled LAPACK | ||||||
|  | %global lapacke 1 | ||||||
|  | Provides:       bundled(lapack) = %{lapackver} | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | # Build 64-bit interface binaries? | ||||||
|  | %if 0%{?__isa_bits} == 64 | ||||||
|  | %global build64 1 | ||||||
|  | %else | ||||||
|  | %global build64 0 | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %if %{with system_lapack} | ||||||
|  | %if %build64 | ||||||
|  | BuildRequires:  lapack64-static | ||||||
|  | %endif | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | # Upstream supports the package only on these architectures. | ||||||
|  | # Runtime processor detection is not available on other archs. | ||||||
|  | ExclusiveArch:  %{openblas_arches} | ||||||
|  | 
 | ||||||
|  | %global base_description \ | ||||||
|  | OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD \ | ||||||
|  | version. The project is supported by the Lab of Parallel Software and \ | ||||||
|  | Computational Science, ISCAS. http://www.rdcps.ac.cn | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %description | ||||||
|  | %{base_description} | ||||||
|  | 
 | ||||||
|  | %package Rblas | ||||||
|  | Summary:	A version of OpenBLAS for R to use as libRblas | ||||||
|  | Group:		Development/Libraries | ||||||
|  | 
 | ||||||
|  | %description Rblas | ||||||
|  | %{base_description} | ||||||
|  | 
 | ||||||
|  | %package openmp | ||||||
|  | Summary:        An optimized BLAS library based on GotoBLAS2, OpenMP version | ||||||
|  | Group:          Development/Libraries | ||||||
|  | 
 | ||||||
|  | %description openmp | ||||||
|  | %{base_description} | ||||||
|  | 
 | ||||||
|  | This package contains the library compiled with OpenMP support. | ||||||
|  | 
 | ||||||
|  | %package threads | ||||||
|  | Summary:        An optimized BLAS library based on GotoBLAS2, pthreads version | ||||||
|  | Group:          Development/Libraries | ||||||
|  | 
 | ||||||
|  | %description threads | ||||||
|  | %{base_description} | ||||||
|  | 
 | ||||||
|  | This package contains the library compiled with threading support. | ||||||
|  | 
 | ||||||
|  | %if %build64 | ||||||
|  | %package serial64 | ||||||
|  | Summary:        An optimized BLAS library based on GotoBLAS2, serial version | ||||||
|  | Group:          Development/Libraries | ||||||
|  | 
 | ||||||
|  | %description serial64 | ||||||
|  | %{base_description} | ||||||
|  | 
 | ||||||
|  | This package contains the sequential library compiled with a 64-bit | ||||||
|  | interface. | ||||||
|  | 
 | ||||||
|  | %package openmp64 | ||||||
|  | Summary:        An optimized BLAS library based on GotoBLAS2, OpenMP version | ||||||
|  | Group:          Development/Libraries | ||||||
|  | 
 | ||||||
|  | %description openmp64 | ||||||
|  | %{base_description} | ||||||
|  | 
 | ||||||
|  | This package contains the library compiled with OpenMP support and | ||||||
|  | 64-bit interface. | ||||||
|  | 
 | ||||||
|  | %package threads64 | ||||||
|  | Summary:        An optimized BLAS library based on GotoBLAS2, pthreads version | ||||||
|  | Group:          Development/Libraries | ||||||
|  | 
 | ||||||
|  | %description threads64 | ||||||
|  | %{base_description} | ||||||
|  | 
 | ||||||
|  | This package contains the library compiled with threading support and | ||||||
|  | 64-bit interface. | ||||||
|  | 
 | ||||||
|  | %package serial64_ | ||||||
|  | Summary:        An optimized BLAS library based on GotoBLAS2, serial version | ||||||
|  | Group:          Development/Libraries | ||||||
|  | 
 | ||||||
|  | %description serial64_ | ||||||
|  | %{base_description} | ||||||
|  | 
 | ||||||
|  | This package contains the sequential library compiled with a 64-bit | ||||||
|  | interface and a symbol name suffix. | ||||||
|  | 
 | ||||||
|  | %package openmp64_ | ||||||
|  | Summary:        An optimized BLAS library based on GotoBLAS2, OpenMP version | ||||||
|  | Group:          Development/Libraries | ||||||
|  | 
 | ||||||
|  | %description openmp64_ | ||||||
|  | %{base_description} | ||||||
|  | 
 | ||||||
|  | This package contains the library compiled with OpenMP support and | ||||||
|  | 64-bit interface and a symbol name suffix. | ||||||
|  | 
 | ||||||
|  | %package threads64_ | ||||||
|  | Summary:        An optimized BLAS library based on GotoBLAS2, pthreads version | ||||||
|  | Group:          Development/Libraries | ||||||
|  | 
 | ||||||
|  | %description threads64_ | ||||||
|  | %{base_description} | ||||||
|  | 
 | ||||||
|  | This package contains the library compiled with threading support and | ||||||
|  | 64-bit interface and a symbol name suffix. | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %package devel | ||||||
|  | Summary:        Development headers and libraries for OpenBLAS | ||||||
|  | Group:          Development/Libraries | ||||||
|  | Requires:       %{name}%{?_isa} = %{version}-%{release} | ||||||
|  | Requires:       %{name}-openmp%{?_isa} = %{version}-%{release} | ||||||
|  | Requires:       %{name}-threads%{?_isa} = %{version}-%{release} | ||||||
|  | %if %build64 | ||||||
|  | Requires:       %{name}-openmp64%{?_isa} = %{version}-%{release} | ||||||
|  | Requires:       %{name}-threads64%{?_isa} = %{version}-%{release} | ||||||
|  | Requires:       %{name}-serial64%{?_isa} = %{version}-%{release} | ||||||
|  | Requires:       %{name}-openmp64_%{?_isa} = %{version}-%{release} | ||||||
|  | Requires:       %{name}-threads64_%{?_isa} = %{version}-%{release} | ||||||
|  | Requires:       %{name}-serial64_%{?_isa} = %{version}-%{release} | ||||||
|  | %endif | ||||||
|  | Requires:       %{name}-srpm-macros | ||||||
|  | 
 | ||||||
|  | %description devel | ||||||
|  | %{base_description} | ||||||
|  | 
 | ||||||
|  | This package contains the development headers and libraries. | ||||||
|  | 
 | ||||||
|  | %package static | ||||||
|  | Summary:        Static version of OpenBLAS | ||||||
|  | Group:          Development/Libraries | ||||||
|  | Requires:       %{name}-devel%{?_isa} = %{version}-%{release} | ||||||
|  | 
 | ||||||
|  | %description static | ||||||
|  | %{base_description} | ||||||
|  | 
 | ||||||
|  | This package contains the static libraries. | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | %prep | ||||||
|  | %setup -q -c -T | ||||||
|  | 
 | ||||||
|  | # Untar source | ||||||
|  | tar zxf %{SOURCE0} | ||||||
|  | cd OpenBLAS-%{version} | ||||||
|  | %if %{with system_lapack} | ||||||
|  | %patch0 -p1 -b .system_lapack | ||||||
|  | %endif | ||||||
|  | %patch1 -p1 -b .libname | ||||||
|  | %if 0%{?rhel} == 5 | ||||||
|  | %patch2 -p1 -b .constructor | ||||||
|  | %endif | ||||||
|  | %patch3 -p1 -b .tests | ||||||
|  | %patch4 -p1 -b .noopt | ||||||
|  | %patch5 -p1 -b .asmflags | ||||||
|  | %patch6 -p1 -b .power-optimize | ||||||
|  | %patch7 -p1 -b .izamax-s390x | ||||||
|  | %patch8 -p1 -b .power9 | ||||||
|  | 
 | ||||||
|  | # Fix source permissions | ||||||
|  | find -name \*.f -exec chmod 644 {} \; | ||||||
|  | 
 | ||||||
|  | %if %{with system_lapack} | ||||||
|  | # Get rid of bundled LAPACK sources | ||||||
|  | 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 | ||||||
|  | %if %build64 | ||||||
|  | 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 | ||||||
|  | cd netliblapack | ||||||
|  | ar x %{_libdir}/liblapack_pic.a | ||||||
|  | # Get rid of duplicate functions. See list in Makefile of lapack directory | ||||||
|  | for f in laswp getf2 getrf potf2 potrf lauu2 lauum trti2 trtri getrs; do | ||||||
|  |     \rm {c,d,s,z}$f.o | ||||||
|  | done | ||||||
|  | 
 | ||||||
|  | # LAPACKE | ||||||
|  | %if %{lapacke} | ||||||
|  | ar x %{_libdir}/liblapacke.a | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | # Create makefile | ||||||
|  | echo "TOPDIR = .." > Makefile | ||||||
|  | echo "include ../Makefile.system" >> Makefile | ||||||
|  | echo "COMMONOBJS = \\" >> Makefile | ||||||
|  | for i in *.o; do | ||||||
|  |  echo "$i \\" >> Makefile | ||||||
|  | done | ||||||
|  | echo -e "\n\ninclude \$(TOPDIR)/Makefile.tail" >> Makefile | ||||||
|  | 
 | ||||||
|  | %if %{lapacke} | ||||||
|  | # Copy include files | ||||||
|  | cp -a %{_includedir}/lapacke . | ||||||
|  | %endif | ||||||
|  | cd .. | ||||||
|  | 
 | ||||||
|  | # Copy in place | ||||||
|  | for d in serial threaded openmp; do | ||||||
|  |     cp -pr netliblapack $d | ||||||
|  | done | ||||||
|  | rm -rf netliblapack | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | # Setup 64-bit interface LAPACK | ||||||
|  | %if %build64 | ||||||
|  | mkdir netliblapack64 | ||||||
|  | cd netliblapack64 | ||||||
|  | ar x %{_libdir}/liblapack64_pic.a | ||||||
|  | # Get rid of duplicate functions. See list in Makefile of lapack directory | ||||||
|  | for f in laswp getf2 getrf potf2 potrf lauu2 lauum trti2 trtri getrs; do | ||||||
|  |     \rm {c,d,s,z}$f.o | ||||||
|  | done | ||||||
|  | 
 | ||||||
|  | # LAPACKE, no 64-bit interface | ||||||
|  | %if %{lapacke} | ||||||
|  | ar x %{_libdir}/liblapacke.a | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | # Create makefile | ||||||
|  | echo "TOPDIR = .." > Makefile | ||||||
|  | echo "include ../Makefile.system" >> Makefile | ||||||
|  | echo "COMMONOBJS = \\" >> Makefile | ||||||
|  | for i in *.o; do | ||||||
|  |     echo "$i \\" >> Makefile | ||||||
|  | done | ||||||
|  | echo -e "\n\ninclude \$(TOPDIR)/Makefile.tail" >> Makefile | ||||||
|  | 
 | ||||||
|  | %if %{lapacke} | ||||||
|  | # Copy include files | ||||||
|  | cp -a %{_includedir}/lapacke . | ||||||
|  | %endif | ||||||
|  | cd .. | ||||||
|  | 
 | ||||||
|  | # Copy in place | ||||||
|  | for d in {serial,threaded,openmp}64{,_}; do | ||||||
|  |     cp -pr netliblapack64 $d/netliblapack | ||||||
|  | done | ||||||
|  | rm -rf netliblapack64 | ||||||
|  | %endif | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %build | ||||||
|  | %if !%{lapacke} | ||||||
|  | LAPACKE="NO_LAPACKE=1" | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | # Maximum possible amount of processors | ||||||
|  | NMAX="NUM_THREADS=128" | ||||||
|  | 
 | ||||||
|  | %ifarch %{ix86} x86_64 | ||||||
|  | TARGET="TARGET=CORE2 DYNAMIC_ARCH=1" | ||||||
|  | 
 | ||||||
|  | # Compability for old versions of GCC | ||||||
|  | %if 0%{?rhel} == 5 | ||||||
|  | export AVX="NO_AVX=1 NO_AVX2=1" | ||||||
|  | %endif | ||||||
|  | %if 0%{?rhel} == 6 | ||||||
|  | export AVX="NO_AVX2=1" | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %endif | ||||||
|  | %ifarch armv7hl | ||||||
|  | TARGET="TARGET=ARMV7 DYNAMIC_ARCH=0" | ||||||
|  | %endif | ||||||
|  | %ifarch ppc64 | ||||||
|  | TARGET="TARGET=POWER6 DYNAMIC_ARCH=0" | ||||||
|  | %endif | ||||||
|  | %ifarch ppc64p7 | ||||||
|  | TARGET="TARGET=POWER7 DYNAMIC_ARCH=0" | ||||||
|  | %endif | ||||||
|  | %ifarch ppc64le | ||||||
|  | TARGET="TARGET=POWER8 DYNAMIC_ARCH=0" | ||||||
|  | %endif | ||||||
|  | %ifarch aarch64 | ||||||
|  | TARGET="TARGET=ARMV8 DYNAMIC_ARCH=0" | ||||||
|  | %endif | ||||||
|  | %ifarch s390x | ||||||
|  | TARGET="TARGET=Z13 DYNAMIC_ARCH=0" | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %if 0%{?rhel} == 5 | ||||||
|  | # Gfortran too old to recognize -frecursive | ||||||
|  | COMMON="%{optflags} -fPIC" | ||||||
|  | FCOMMON="%{optflags} -fPIC -cpp" | ||||||
|  | %else | ||||||
|  | COMMON="%{optflags} -fPIC" | ||||||
|  | FCOMMON="%{optflags} -fPIC -frecursive -cpp" | ||||||
|  | %endif | ||||||
|  | # Use Fedora linker flags | ||||||
|  | export LDFLAGS="%{__global_ldflags}" | ||||||
|  | 
 | ||||||
|  | # ensure object files built from assembler sources are annotated | ||||||
|  | export ASMFLAGS="-Wa,--generate-missing-build-notes=yes" | ||||||
|  | 
 | ||||||
|  | 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 | ||||||
|  | 
 | ||||||
|  | # Declare some necessary build flags | ||||||
|  | COMMON="%{optflags} -fPIC" | ||||||
|  | FCOMMON="$COMMON -frecursive -cpp" | ||||||
|  | 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 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 | ||||||
|  | COMMON="%{optflags} -fPIC -fopenmp -pthread" | ||||||
|  | FCOMMON="$COMMON -frecursive -cpp" | ||||||
|  | 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 | ||||||
|  | 
 | ||||||
|  | %if %build64 | ||||||
|  | COMMON="%{optflags} -fPIC" | ||||||
|  | FCOMMON="$COMMON -frecursive -fdefault-integer-8 -cpp" | ||||||
|  | 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 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" | ||||||
|  | FCOMMON="$COMMON -frecursive -fdefault-integer-8 -cpp" | ||||||
|  | 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 | ||||||
|  | 
 | ||||||
|  | COMMON="%{optflags} -fPIC" | ||||||
|  | FCOMMON="$COMMON -frecursive  -fdefault-integer-8 -cpp" | ||||||
|  | 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 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" | ||||||
|  | FCOMMON="$COMMON -frecursive -fdefault-integer-8 -cpp" | ||||||
|  | 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_ | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %install | ||||||
|  | rm -rf %{buildroot} | ||||||
|  | # Install serial library and headers | ||||||
|  | make -C serial USE_THREAD=0 PREFIX=%{buildroot} OPENBLAS_LIBRARY_DIR=%{buildroot}%{_libdir} OPENBLAS_INCLUDE_DIR=%{buildroot}%{_includedir}/%name OPENBLAS_BINARY_DIR=%{buildroot}%{_bindir} OPENBLAS_CMAKE_DIR=%{buildroot}%{_libdir}/cmake install | ||||||
|  | 
 | ||||||
|  | # Copy lapacke include files | ||||||
|  | %if %{with system_lapack} && %{lapacke} | ||||||
|  | cp -a %{_includedir}/lapacke %{buildroot}%{_includedir}/%{name} | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | # Fix i686-x86_64 multilib difference | ||||||
|  | %multilib_fix_c_header --file %{_includedir}/openblas/openblas_config.h | ||||||
|  | 
 | ||||||
|  | # Fix name of libraries | ||||||
|  | %ifarch armv7hl | ||||||
|  | suffix="_armv7" | ||||||
|  | %endif | ||||||
|  | %ifarch ppc64 | ||||||
|  | suffix="_power6" | ||||||
|  | %endif | ||||||
|  | %ifarch ppc64p7 | ||||||
|  | suffix="_power7" | ||||||
|  | %endif | ||||||
|  | %ifarch ppc64le | ||||||
|  | suffix="_power8" | ||||||
|  | %endif | ||||||
|  | %ifarch aarch64 | ||||||
|  | suffix="_armv8" | ||||||
|  | %endif | ||||||
|  | %ifarch s390x | ||||||
|  | suffix="_z13" | ||||||
|  | %endif | ||||||
|  | slibname=`basename %{buildroot}%{_libdir}/libopenblas${suffix}-*.so .so` | ||||||
|  | mv %{buildroot}%{_libdir}/${slibname}.a %{buildroot}%{_libdir}/lib%{name}.a | ||||||
|  | if [[ "$suffix" != "" ]]; then | ||||||
|  |    sname=$(echo $slibname | sed "s|$suffix||g") | ||||||
|  |    mv %{buildroot}%{_libdir}/${slibname}.so %{buildroot}%{_libdir}/${sname}.so | ||||||
|  | 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 | ||||||
|  | if [[ "$suffix" != "" ]]; then | ||||||
|  |    oname=$(echo $olibname | sed "s|$suffix||g") | ||||||
|  | else | ||||||
|  |    oname=${olibname} | ||||||
|  | fi | ||||||
|  | install -D -p -m 755 openmp/${olibname}.so %{buildroot}%{_libdir}/${oname}.so | ||||||
|  | 
 | ||||||
|  | # Install the threaded library | ||||||
|  | plibname=`echo ${slibname} | sed "s|lib%{name}|lib%{name}p|g"` | ||||||
|  | install -D -p -m 644 threaded/${plibname}.a %{buildroot}%{_libdir}/lib%{name}p.a | ||||||
|  | if [[ "$suffix" != "" ]]; then | ||||||
|  |    pname=$(echo $plibname | sed "s|$suffix||g") | ||||||
|  | else | ||||||
|  |    pname=${plibname} | ||||||
|  | fi | ||||||
|  | install -D -p -m 755 threaded/${plibname}.so %{buildroot}%{_libdir}/${pname}.so | ||||||
|  | 
 | ||||||
|  | # Install the 64-bit interface libraries | ||||||
|  | %if %build64 | ||||||
|  | slibname64=`echo ${slibname} | sed "s|lib%{name}|lib%{name}64|g"` | ||||||
|  | install -D -p -m 644 serial64/${slibname64}.a %{buildroot}%{_libdir}/lib%{name}64.a | ||||||
|  | slibname64_=`echo ${slibname} | sed "s|lib%{name}|lib%{name}64_|g"` | ||||||
|  | install -D -p -m 644 serial64_/${slibname64_}.a %{buildroot}%{_libdir}/lib%{name}64_.a | ||||||
|  | 
 | ||||||
|  | if [[ "$suffix" != "" ]]; then | ||||||
|  |    sname64=$(echo ${slibname64} | sed "s|$suffix||g") | ||||||
|  |    sname64_=$(echo ${slibname64_} | sed "s|$suffix||g") | ||||||
|  | else | ||||||
|  |    sname64=${slibname64} | ||||||
|  |    sname64_=${slibname64_} | ||||||
|  | fi | ||||||
|  | install -D -p -m 755 serial64/${slibname64}.so %{buildroot}%{_libdir}/${sname64}.so | ||||||
|  | install -D -p -m 755 serial64_/${slibname64_}.so %{buildroot}%{_libdir}/${sname64_}.so | ||||||
|  | 
 | ||||||
|  | olibname64=`echo ${slibname} | sed "s|lib%{name}|lib%{name}o64|g"` | ||||||
|  | install -D -p -m 644 openmp64/${olibname64}.a %{buildroot}%{_libdir}/lib%{name}o64.a | ||||||
|  | olibname64_=`echo ${slibname} | sed "s|lib%{name}|lib%{name}o64_|g"` | ||||||
|  | install -D -p -m 644 openmp64_/${olibname64_}.a %{buildroot}%{_libdir}/lib%{name}o64_.a | ||||||
|  | 
 | ||||||
|  | if [[ "$suffix" != "" ]]; then | ||||||
|  |    oname64=$(echo ${olibname64} | sed "s|$suffix||g") | ||||||
|  |    oname64_=$(echo ${olibname64_} | sed "s|$suffix||g") | ||||||
|  | else | ||||||
|  |    oname64=${olibname64} | ||||||
|  |    oname64_=${olibname64_} | ||||||
|  | fi | ||||||
|  | install -D -p -m 755 openmp64/${olibname64}.so %{buildroot}%{_libdir}/${oname64}.so | ||||||
|  | install -D -p -m 755 openmp64_/${olibname64_}.so %{buildroot}%{_libdir}/${oname64_}.so | ||||||
|  | 
 | ||||||
|  | plibname64=`echo ${slibname} | sed "s|lib%{name}|lib%{name}p64|g"` | ||||||
|  | install -D -p -m 644 threaded64/${plibname64}.a %{buildroot}%{_libdir}/lib%{name}p64.a | ||||||
|  | plibname64_=`echo ${slibname} | sed "s|lib%{name}|lib%{name}p64_|g"` | ||||||
|  | install -D -p -m 644 threaded64_/${plibname64_}.a %{buildroot}%{_libdir}/lib%{name}p64_.a | ||||||
|  | 
 | ||||||
|  | if [[ "$suffix" != "" ]]; then | ||||||
|  |    pname64=$(echo $plibname64 | sed "s|$suffix||g") | ||||||
|  |    pname64_=$(echo $plibname64_ | sed "s|$suffix||g") | ||||||
|  | else | ||||||
|  |    pname64=${plibname64} | ||||||
|  |    pname64_=${plibname64_} | ||||||
|  | fi | ||||||
|  | install -D -p -m 755 threaded64/${plibname64}.so %{buildroot}%{_libdir}/${pname64}.so | ||||||
|  | install -D -p -m 755 threaded64_/${plibname64_}.so %{buildroot}%{_libdir}/${pname64_}.so | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | # Fix symlinks | ||||||
|  | pushd %{buildroot}%{_libdir} | ||||||
|  | # Serial libraries | ||||||
|  | ln -sf ${sname}.so lib%{name}.so | ||||||
|  | ln -sf ${sname}.so lib%{name}.so.0 | ||||||
|  | # OpenMP libraries | ||||||
|  | ln -sf ${oname}.so lib%{name}o.so | ||||||
|  | ln -sf ${oname}.so lib%{name}o.so.0 | ||||||
|  | # Threaded libraries | ||||||
|  | ln -sf ${pname}.so lib%{name}p.so | ||||||
|  | ln -sf ${pname}.so lib%{name}p.so.0 | ||||||
|  | 
 | ||||||
|  | %if %build64 | ||||||
|  | # Serial libraries | ||||||
|  | ln -sf ${sname64}.so lib%{name}64.so | ||||||
|  | ln -sf ${sname64}.so lib%{name}64.so.0 | ||||||
|  | ln -sf ${sname64_}.so lib%{name}64_.so | ||||||
|  | ln -sf ${sname64_}.so lib%{name}64_.so.0 | ||||||
|  | # OpenMP libraries | ||||||
|  | ln -sf ${oname64}.so lib%{name}o64.so | ||||||
|  | ln -sf ${oname64}.so lib%{name}o64.so.0 | ||||||
|  | ln -sf ${oname64_}.so lib%{name}o64_.so | ||||||
|  | ln -sf ${oname64_}.so lib%{name}o64_.so.0 | ||||||
|  | # Threaded libraries | ||||||
|  | ln -sf ${pname64}.so lib%{name}p64.so | ||||||
|  | ln -sf ${pname64}.so lib%{name}p64.so.0 | ||||||
|  | ln -sf ${pname64_}.so lib%{name}p64_.so | ||||||
|  | ln -sf ${pname64_}.so lib%{name}p64_.so.0 | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %if %{execstack} | ||||||
|  | # Get rid of executable stacks | ||||||
|  | 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 | ||||||
|  | rm -rf %{buildroot}%{_libdir}/cmake | ||||||
|  | # Get rid of generated pkgconfig | ||||||
|  | rm -rf %{buildroot}%{_libdir}/pkgconfig | ||||||
|  | 
 | ||||||
|  | %post -p /sbin/ldconfig | ||||||
|  | %postun -p /sbin/ldconfig | ||||||
|  | 
 | ||||||
|  | %post openmp -p /sbin/ldconfig | ||||||
|  | %postun openmp -p /sbin/ldconfig | ||||||
|  | 
 | ||||||
|  | %post Rblas -p /sbin/ldconfig | ||||||
|  | %postun Rblas -p /sbin/ldconfig | ||||||
|  | 
 | ||||||
|  | %post threads -p /sbin/ldconfig | ||||||
|  | %postun threads -p /sbin/ldconfig | ||||||
|  | 
 | ||||||
|  | %if %build64 | ||||||
|  | %post openmp64 -p /sbin/ldconfig | ||||||
|  | %postun openmp64 -p /sbin/ldconfig | ||||||
|  | %post openmp64_ -p /sbin/ldconfig | ||||||
|  | %postun openmp64_ -p /sbin/ldconfig | ||||||
|  | 
 | ||||||
|  | %post serial64 -p /sbin/ldconfig | ||||||
|  | %postun serial64 -p /sbin/ldconfig | ||||||
|  | %post serial64_ -p /sbin/ldconfig | ||||||
|  | %postun serial64_ -p /sbin/ldconfig | ||||||
|  | 
 | ||||||
|  | %post threads64 -p /sbin/ldconfig | ||||||
|  | %postun threads64 -p /sbin/ldconfig | ||||||
|  | %post threads64_ -p /sbin/ldconfig | ||||||
|  | %postun threads64_ -p /sbin/ldconfig | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %files | ||||||
|  | %doc serial/Changelog.txt serial/GotoBLAS* serial/LICENSE | ||||||
|  | %{_libdir}/lib%{name}-*.so | ||||||
|  | %{_libdir}/lib%{name}.so.* | ||||||
|  | 
 | ||||||
|  | %files openmp | ||||||
|  | %{_libdir}/lib%{name}o-*.so | ||||||
|  | %{_libdir}/lib%{name}o.so.* | ||||||
|  | 
 | ||||||
|  | %files threads | ||||||
|  | %{_libdir}/lib%{name}p-*.so | ||||||
|  | %{_libdir}/lib%{name}p.so.* | ||||||
|  | 
 | ||||||
|  | %if %build64 | ||||||
|  | %files serial64 | ||||||
|  | %{_libdir}/lib%{name}64-*.so | ||||||
|  | %{_libdir}/lib%{name}64.so.* | ||||||
|  | 
 | ||||||
|  | %files openmp64 | ||||||
|  | %{_libdir}/lib%{name}o64-*.so | ||||||
|  | %{_libdir}/lib%{name}o64.so.* | ||||||
|  | 
 | ||||||
|  | %files threads64 | ||||||
|  | %{_libdir}/lib%{name}p64-*.so | ||||||
|  | %{_libdir}/lib%{name}p64.so.* | ||||||
|  | 
 | ||||||
|  | %files serial64_ | ||||||
|  | %{_libdir}/lib%{name}64_-*.so | ||||||
|  | %{_libdir}/lib%{name}64_.so.* | ||||||
|  | 
 | ||||||
|  | %files openmp64_ | ||||||
|  | %{_libdir}/lib%{name}o64_-*.so | ||||||
|  | %{_libdir}/lib%{name}o64_.so.* | ||||||
|  | 
 | ||||||
|  | %files threads64_ | ||||||
|  | %{_libdir}/lib%{name}p64_-*.so | ||||||
|  | %{_libdir}/lib%{name}p64_.so.* | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %files devel | ||||||
|  | %{_includedir}/%{name}/ | ||||||
|  | %{_libdir}/lib%{name}.so | ||||||
|  | %{_libdir}/lib%{name}o.so | ||||||
|  | %{_libdir}/lib%{name}p.so | ||||||
|  | %if %build64 | ||||||
|  | %{_libdir}/lib%{name}64.so | ||||||
|  | %{_libdir}/lib%{name}o64.so | ||||||
|  | %{_libdir}/lib%{name}p64.so | ||||||
|  | %{_libdir}/lib%{name}64_.so | ||||||
|  | %{_libdir}/lib%{name}o64_.so | ||||||
|  | %{_libdir}/lib%{name}p64_.so | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %files Rblas | ||||||
|  | %{_libdir}/R/lib/libRblas.so | ||||||
|  | 
 | ||||||
|  | %files static | ||||||
|  | %{_libdir}/lib%{name}.a | ||||||
|  | %{_libdir}/lib%{name}o.a | ||||||
|  | %{_libdir}/lib%{name}p.a | ||||||
|  | %if %build64 | ||||||
|  | %{_libdir}/lib%{name}64.a | ||||||
|  | %{_libdir}/lib%{name}o64.a | ||||||
|  | %{_libdir}/lib%{name}p64.a | ||||||
|  | %{_libdir}/lib%{name}64_.a | ||||||
|  | %{_libdir}/lib%{name}o64_.a | ||||||
|  | %{_libdir}/lib%{name}p64_.a | ||||||
|  | %endif | ||||||
|  | 
 | ||||||
|  | %changelog | ||||||
|  | * Fri Nov 22 2019 Nikola Forró <nforro@redhat.com> - 0.3.3-5 | ||||||
|  | - Detect POWER9 as POWER8 | ||||||
|  |   related: #1752241 | ||||||
|  | 
 | ||||||
|  | * Wed Nov 20 2019 Nikola Forró <nforro@redhat.com> - 0.3.3-4 | ||||||
|  | - Add tests and enable gating | ||||||
|  |   related: #1752241 | ||||||
|  | 
 | ||||||
|  | * Tue Sep 24 2019 Nikola Forró <nforro@redhat.com> - 0.3.3-3 | ||||||
|  | - Fix izamax on s390x | ||||||
|  |   resolves: #1752241 | ||||||
|  | 
 | ||||||
|  | * Wed Nov 07 2018 Nikola Forró <nforro@redhat.com> - 0.3.3-2 | ||||||
|  | - Fix i686-x86_64 multilib difference | ||||||
|  |   related: #1627890 | ||||||
|  | 
 | ||||||
|  | * Fri Oct 19 2018 Nikola Forró <nforro@redhat.com> - 0.3.3-1 | ||||||
|  | - Rebase to version 0.3.3 | ||||||
|  |   resolves: #1627890 | ||||||
|  | 
 | ||||||
|  | * Mon Oct 15 2018 Nikola Forró <nforro@redhat.com> - 0.2.20-16 | ||||||
|  | - Set proper CFLAGS also for Rblas | ||||||
|  |   related: #1624156 | ||||||
|  | 
 | ||||||
|  | * Fri Oct 12 2018 Nikola Forró <nforro@redhat.com> - 0.2.20-15 | ||||||
|  | - Remove optimization pragmas on ppc64le | ||||||
|  |   related: #1624156 | ||||||
|  | 
 | ||||||
|  | * Wed Sep 26 2018 Nikola Forró <nforro@redhat.com> - 0.2.20-14 | ||||||
|  | - Ensure object files built from assembler sources are annotated | ||||||
|  |   related: #1624156 | ||||||
|  | 
 | ||||||
|  | * Mon Sep 17 2018 Nikola Forró <nforro@redhat.com> - 0.2.20-13 | ||||||
|  | - Fix detection of generic ARMv8 CPUs | ||||||
|  | - Get rid of executable stack in libRblas.so | ||||||
|  |   related: #1624156 | ||||||
|  | 
 | ||||||
|  | * Thu Sep 06 2018 Nikola Forró <nforro@redhat.com> - 0.2.20-12 | ||||||
|  | - Force preprocessing of Fortran sources to make annobin record proper flags | ||||||
|  | - Enable optimizations for all LAPACK sources | ||||||
|  |   resolves: #1624156 | ||||||
|  | 
 | ||||||
|  | * Tue Aug 14 2018 Nikola Forró <nforro@redhat.com> - 0.2.20-11 | ||||||
|  | - Fix build on s390x (#1615557) | ||||||
|  | 
 | ||||||
|  | * Thu Mar 22 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.20-10 | ||||||
|  | - Disable CPU affinity unintentionally enabled upstream (BZ #1558091). | ||||||
|  | 
 | ||||||
|  | * Wed Mar 04 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.20-9 | ||||||
|  | - Clean up obsolete conditionals for 64 bit builds in spec file. | ||||||
|  | 
 | ||||||
|  | * Tue Feb 27 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.20-8 | ||||||
|  | - Use %%__global_ldflags instead of %%build_ldflags that doesn't work on | ||||||
|  |   all distributions. | ||||||
|  | 
 | ||||||
|  | * Tue Feb 27 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.20-7 | ||||||
|  | - Honor Fedora linker flags (BZ #1548750). | ||||||
|  | 
 | ||||||
|  | * Wed Feb 14 2018 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.20-6 | ||||||
|  | - Drop arch-dependent buildrequires (BZ #1545201); no changes to package | ||||||
|  |   (only affects packages custom built with --with system_lapack). | ||||||
|  | 
 | ||||||
|  | * Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.20-5 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Tue Jan 30 2018 Florian Weimer <fweimer@redhat.com> - 0.2.20-4 | ||||||
|  | - Rebuild for GCC 8 | ||||||
|  | 
 | ||||||
|  | * Thu Sep 14 2017 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.20-3 | ||||||
|  | - Simplify spec, dropping extra lib arguments. | ||||||
|  | 
 | ||||||
|  | * Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.20-2 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Fri Jul 28 2017 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.20-1 | ||||||
|  | - Update to 0.2.20. | ||||||
|  | 
 | ||||||
|  | * Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.19-12 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Mon May 29 2017 Dan Horák <dan[at]danny.cz> - 0.2.19-11 | ||||||
|  | - add generic s390x support (#1442048) | ||||||
|  | 
 | ||||||
|  | * Mon Mar 20 2017 Orion Poplawski <orion@cora.nwra.com> - 0.2.19-10 | ||||||
|  | - Drop openblas-srpm-macros version requirement | ||||||
|  | 
 | ||||||
|  | * Mon Mar 20 2017 Orion Poplawski <orion@cora.nwra.com> - 0.2.19-9 | ||||||
|  | - Move openblas-srpm-macros to separate package | ||||||
|  | 
 | ||||||
|  | * Wed Mar 15 2017 Orion Poplawski <orion@cora.nwra.com> - 0.2.19-8 | ||||||
|  | - Define %%openblas_arches for dependent packages to use | ||||||
|  | 
 | ||||||
|  | * Mon Feb 13 2017 Björn Esser <besser82@fedoraproject.org> - 0.2.19-7 | ||||||
|  | - Upgrade Patch4 to hopefully fully fix the issues on PPC64LE | ||||||
|  | 
 | ||||||
|  | * Fri Feb 03 2017 Björn Esser <besser82@fedoraproject.org> - 0.2.19-6 | ||||||
|  | - Add Patch4 to fix register clobbers (BZ #1417385) | ||||||
|  | 
 | ||||||
|  | * Sat Jan 28 2017 Björn Esser <besser82@fedoraproject.org> - 0.2.19-5 | ||||||
|  | - Rebuilt for GCC-7 | ||||||
|  | 
 | ||||||
|  | * Wed Dec 14 2016 Tom Callaway <spot@fedoraproject.org> - 0.2.19-4 | ||||||
|  | - build a copy of openblas that thinks it is Rblas | ||||||
|  |   There are no code changes, except for libname and soname, it is identical to libopenblas.so.0 | ||||||
|  |   Unfortunately, while R itself is fine using a symlink from libopenblas.so.0 to libRblas.so | ||||||
|  |   the larger R ecosystem becomes unhappy in this scenario. | ||||||
|  | 
 | ||||||
|  | * Thu Nov 03 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.19-3 | ||||||
|  | - Fix linkage of OpenMP libraries (BZ #1391491). | ||||||
|  | 
 | ||||||
|  | * Thu Oct 20 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.19-2 | ||||||
|  | - Actually use 8-bit integers in 64-bit interfaces (BZ #1382916). | ||||||
|  | 
 | ||||||
|  | * Tue Oct 18 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.19-1 | ||||||
|  | - Update to 0.2.19. | ||||||
|  | 
 | ||||||
|  | * Wed Aug 17 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.18-5 | ||||||
|  | - Revert "minor spec cleanups" by Peter Robinson. | ||||||
|  | 
 | ||||||
|  | * Wed Jul 13 2016 Peter Robinson <pbrobinson@fedoraproject.org> 0.2.18-4 | ||||||
|  | - aarch64 has execstack in Fedora | ||||||
|  | - Minor spec cleanups | ||||||
|  | 
 | ||||||
|  | * Wed Jul 13 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.18-3 | ||||||
|  | - Enable ppc64 and ppc64p7 architectures | ||||||
|  |   based on Dan Horák's patch (BZ #1356189). | ||||||
|  | - Supply proper make flags to the tests. | ||||||
|  | 
 | ||||||
|  | * Tue Jul 12 2016 Jeff Bastian <jbastian@redhat.com> - 0.2.18-2 | ||||||
|  | - update for aarch64 | ||||||
|  | 
 | ||||||
|  | * Tue Apr 12 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.18-1 | ||||||
|  | - Update to 0.2.18. | ||||||
|  | 
 | ||||||
|  | * Wed Apr 6 2016 Orion Poplawski <orion@cora.nwra.com> - 0.2.17-1 | ||||||
|  | - Update to 0.2.17 | ||||||
|  | 
 | ||||||
|  | * Fri Mar 18 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.16-3 | ||||||
|  | - Include deprecated LAPACK functions. | ||||||
|  | 
 | ||||||
|  | * Wed Mar 16 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.16-2 | ||||||
|  | - Fix library suffix on ppc64le. | ||||||
|  | 
 | ||||||
|  | * Tue Mar 15 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.16-1 | ||||||
|  | - Update to 0.2.16. | ||||||
|  | 
 | ||||||
|  | * Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.15-6 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Tue Jan 12 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.15-5 | ||||||
|  | - Need to use -frecursive to make LAPACK thread safe. | ||||||
|  | 
 | ||||||
|  | * Tue Jan 12 2016 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.15-4 | ||||||
|  | - Add version to bundled lapack provide. | ||||||
|  | 
 | ||||||
|  | * Mon Jan 11 2016 Orion Poplawski <orion@cora.nwra.com> - 0.2.15-3 | ||||||
|  | - Allow conditional build with or without system lapack, default to without | ||||||
|  | 
 | ||||||
|  | * Tue Dec 01 2015 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.15-2 | ||||||
|  | - Enable armv7hl and ppc64le architectures. | ||||||
|  | - Build versions of the 64-bit libraries with an additional suffix | ||||||
|  |   (BZ #1287541). | ||||||
|  | 
 | ||||||
|  | * Wed Oct 28 2015 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.15-1 | ||||||
|  | - Update to 0.2.15. | ||||||
|  | 
 | ||||||
|  | * Tue Aug 04 2015 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0.2.14-4 | ||||||
|  | - Use new execstack (#1247795) | ||||||
|  | 
 | ||||||
|  | * Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.14-3 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Sun May  3 2015 Peter Robinson <pbrobinson@fedoraproject.org> 0.2.14-2 | ||||||
|  | - Run ldconfig on 64 builds too | ||||||
|  | 
 | ||||||
|  | * Wed Mar 25 2015 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.14-1 | ||||||
|  | - Update to 0.2.14. | ||||||
|  | 
 | ||||||
|  | * Fri Dec 19 2014 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.13-2 | ||||||
|  | - Bump spec due to LAPACK rebuild. | ||||||
|  | 
 | ||||||
|  | * Fri Dec 05 2014 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.13-1 | ||||||
|  | - Update to 0.2.13. | ||||||
|  | 
 | ||||||
|  | * Mon Oct 13 2014 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.12-1 | ||||||
|  | - Update to 0.2.12. | ||||||
|  | 
 | ||||||
|  | * Mon Aug 18 2014 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.11-1 | ||||||
|  | - Update to 0.2.11. | ||||||
|  | 
 | ||||||
|  | * Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.10-2 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Wed Jul 16 2014 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.10-1 | ||||||
|  | - Update to 0.2.10. | ||||||
|  | 
 | ||||||
|  | * Wed Jun 11 2014 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.9-1 | ||||||
|  | - Increase maximum amount of cores from 32 to 128. | ||||||
|  | - Add 64-bit interface support. (BZ #1088256) | ||||||
|  | - Update to 0.2.9. (BZ #1043083) | ||||||
|  | 
 | ||||||
|  | * Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.8-2 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Wed Aug 07 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.8-1 | ||||||
|  | - Update to 0.2.8. | ||||||
|  | 
 | ||||||
|  | * Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.7-2 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Tue Jul 23 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.7-1 | ||||||
|  | - Update to 0.2.7. | ||||||
|  | - Use OpenBLAS versions of LAPACK functions, as they seem to be | ||||||
|  |   working now. | ||||||
|  | 
 | ||||||
|  | * Mon Jul 08 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-10 | ||||||
|  | - Due to long standing bug, replace all OpenBLAS LAPACK functions with | ||||||
|  |   generic ones, so that package can finally be released in stable. | ||||||
|  | 
 | ||||||
|  | * Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.5-9 | ||||||
|  | - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild | ||||||
|  | 
 | ||||||
|  | * Tue Jan 15 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-8 | ||||||
|  | - Added LAPACKE include files. | ||||||
|  | 
 | ||||||
|  | * Mon Jan 14 2013 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-7 | ||||||
|  | - Fix build on RHEL5 and ppc architecture. | ||||||
|  | 
 | ||||||
|  | * Mon Dec 24 2012 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-6 | ||||||
|  | - Review fixes. | ||||||
|  | 
 | ||||||
|  | * Fri Dec 21 2012 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-5 | ||||||
|  | - Disable LAPACKE support on distributions where it is not available due to | ||||||
|  |   a too old version of lapack. | ||||||
|  | 
 | ||||||
|  | * Mon Dec 17 2012 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-4 | ||||||
|  | - Don't use reference LAPACK functions that have optimized implementation. | ||||||
|  | 
 | ||||||
|  | * Wed Dec 12 2012 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-3 | ||||||
|  | - Use system version of LAPACK. | ||||||
|  | 
 | ||||||
|  | * Mon Nov 26 2012 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-2 | ||||||
|  | - Fixed 32-bit build, and build on EPEL 5. | ||||||
|  | 
 | ||||||
|  | * Mon Nov 26 2012 Susi Lehtola <jussilehtola@fedoraproject.org> - 0.2.5-1 | ||||||
|  | - Update to 0.2.5. | ||||||
|  | 
 | ||||||
|  | * Thu Oct 06 2011 Jussi Lehtola <jussilehtola@fedoraproject.org> - 0.1-2.alpha2.4 | ||||||
|  | - Added documentation. | ||||||
|  | 
 | ||||||
|  | * Sun Sep 18 2011 Jussi Lehtola <jussilehtola@fedoraproject.org> - 0.1-1.alpha2.4 | ||||||
|  | - First release. | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user