2 # Include user definition
5 # TO suppress recursive includes
12 NETLIB_LAPACK_DIR = $(TOPDIR)/lapack-netlib
15 # - Only set if not specified on the command line or inherited from the environment.
16 # - CC is an implicit variable so neither '?=' or 'ifndef' can be used.
17 # http://stackoverflow.com/questions/4029274/mingw-and-make-variables
18 # - Default value is 'cc' which is not always a valid command (e.g. MinGW).
19 ifeq ($(origin CC),default)
21 # Change the default compile to clang on Mac OSX.
22 # http://stackoverflow.com/questions/714100/os-detecting-makefile
23 UNAME_S := $(shell uname -s)
24 ifeq ($(UNAME_S),Darwin)
26 # EXTRALIB += -Wl,-no_compact_unwind
30 # Default Fortran compiler (FC) is selected by f_check.
33 include $(TOPDIR)/Makefile.rule
35 include $(TOPDIR)/$(MAKEFILE_RULE)
39 # Beginning of system configuration
47 GETARCH_FLAGS := -DFORCE_$(TARGET)
50 # Force fallbacks for 32bit
53 ifeq ($(TARGET), HASWELL)
54 GETARCH_FLAGS := -DFORCE_NEHALEM
56 ifeq ($(TARGET), SANDYBRIDGE)
57 GETARCH_FLAGS := -DFORCE_NEHALEM
59 ifeq ($(TARGET), BULLDOZER)
60 GETARCH_FLAGS := -DFORCE_BARCELONA
62 ifeq ($(TARGET), PILEDRIVER)
63 GETARCH_FLAGS := -DFORCE_BARCELONA
65 ifeq ($(TARGET), STEAMROLLER)
66 GETARCH_FLAGS := -DFORCE_BARCELONA
68 ifeq ($(TARGET), EXCAVATOR)
69 GETARCH_FLAGS := -DFORCE_BARCELONA
74 #TARGET_CORE will override TARGET which is used in DYNAMIC_ARCH=1.
77 GETARCH_FLAGS := -DFORCE_$(TARGET_CORE)
80 # Force fallbacks for 32bit
83 ifeq ($(TARGET_CORE), HASWELL)
84 GETARCH_FLAGS := -DFORCE_NEHALEM
86 ifeq ($(TARGET_CORE), SANDYBRIDGE)
87 GETARCH_FLAGS := -DFORCE_NEHALEM
89 ifeq ($(TARGET_CORE), BULLDOZER)
90 GETARCH_FLAGS := -DFORCE_BARCELONA
92 ifeq ($(TARGET_CORE), PILEDRIVER)
93 GETARCH_FLAGS := -DFORCE_BARCELONA
95 ifeq ($(TARGET_CORE), STEAMROLLER)
96 GETARCH_FLAGS := -DFORCE_BARCELONA
98 ifeq ($(TARGET_CORE), EXCAVATOR)
99 GETARCH_FLAGS := -DFORCE_BARCELONA
107 ifneq ($(INTERFACE64), 0)
108 GETARCH_FLAGS += -DUSE64BITINT
112 ifndef GEMM_MULTITHREAD_THRESHOLD
113 GEMM_MULTITHREAD_THRESHOLD=4
115 GETARCH_FLAGS += -DGEMM_MULTITHREAD_THRESHOLD=$(GEMM_MULTITHREAD_THRESHOLD)
118 GETARCH_FLAGS += -DNO_AVX
122 GETARCH_FLAGS += -DNO_AVX
126 GETARCH_FLAGS += -DNO_AVX2
133 ifeq ($(QUIET_MAKE), 1)
137 ifndef NO_PARALLEL_MAKE
140 GETARCH_FLAGS += -DNO_PARALLEL_MAKE=$(NO_PARALLEL_MAKE)
142 ifeq ($(HOSTCC), loongcc)
143 GETARCH_FLAGS += -static
146 #if don't use Fortran, it will only compile CBLAS.
147 ifeq ($(ONLY_CBLAS), 1)
153 # This operation is expensive, so execution should be once.
154 ifndef GOTOBLAS_MAKEFILE
155 export GOTOBLAS_MAKEFILE = 1
157 # Generating Makefile.conf and config.h
158 DUMMY := $(shell $(MAKE) -C $(TOPDIR) -f Makefile.prebuild CC="$(CC)" FC="$(FC)" HOSTCC="$(HOSTCC)" CFLAGS="$(GETARCH_FLAGS)" BINARY=$(BINARY) USE_OPENMP=$(USE_OPENMP) TARGET_CORE=$(TARGET_CORE) ONLY_CBLAS=$(ONLY_CBLAS) all)
161 include $(TOPDIR)/Makefile.conf
163 include $(TOPDIR)/Makefile_kernel.conf
169 NUM_THREADS = $(NUM_CORES)
172 ifeq ($(NUM_THREADS), 1)
173 override USE_THREAD = 0
177 ifeq ($(USE_THREAD), 0)
183 ifeq ($(NUM_THREAD), 1)
196 AR = $(CROSS_SUFFIX)ar
197 AS = $(CROSS_SUFFIX)as
198 LD = $(CROSS_SUFFIX)ld
199 RANLIB = $(CROSS_SUFFIX)ranlib
200 NM = $(CROSS_SUFFIX)nm
201 DLLWRAP = $(CROSS_SUFFIX)dllwrap
202 OBJCOPY = $(CROSS_SUFFIX)objcopy
203 OBJCONV = $(CROSS_SUFFIX)objconv
206 # For detect fortran failed, only build BLAS.
207 ifeq ($(NOFORTRAN), 1)
212 # OS dependent settings
215 ifeq ($(OSNAME), Darwin)
216 export MACOSX_DEPLOYMENT_TARGET=10.2
220 ifeq ($(OSNAME), FreeBSD)
224 ifeq ($(OSNAME), NetBSD)
228 ifeq ($(OSNAME), Linux)
233 ifeq ($(OSNAME), AIX)
237 ifeq ($(OSNAME), WINNT)
241 EXTRALIB += -defaultlib:advapi32
247 ifeq ($(C_COMPILER), CLANG)
248 CCOMMON_OPT += -DMS_ABI
251 ifeq ($(C_COMPILER), GCC)
252 #Test for supporting MS_ABI
253 GCCVERSIONGTEQ4 := $(shell expr `$(CC) -dumpversion | cut -f1 -d.` \>= 4)
254 GCCVERSIONGT4 := $(shell expr `$(CC) -dumpversion | cut -f1 -d.` \> 4)
255 GCCMINORVERSIONGTEQ7 := $(shell expr `$(CC) -dumpversion | cut -f2 -d.` \>= 7)
256 ifeq ($(GCCVERSIONGT4), 1)
257 # GCC Majar version > 4
258 # It is compatible with MSVC ABI.
259 CCOMMON_OPT += -DMS_ABI
262 ifeq ($(GCCVERSIONGTEQ4), 1)
263 ifeq ($(GCCMINORVERSIONGTEQ7), 1)
265 # It is compatible with MSVC ABI.
266 CCOMMON_OPT += -DMS_ABI
271 # Ensure the correct stack alignment on Win32
272 # http://permalink.gmane.org/gmane.comp.lib.openblas.general/97
274 CCOMMON_OPT += -mincoming-stack-boundary=2
275 FCOMMON_OPT += -mincoming-stack-boundary=2
280 ifeq ($(OSNAME), Interix)
284 INTERIX_TOOL_DIR = /opt/gcc.3.3/i586-pc-interix3/bin
287 ifeq ($(OSNAME), CYGWIN_NT)
292 ifneq ($(OSNAME), WINNT)
293 ifneq ($(OSNAME), CYGWIN_NT)
294 ifneq ($(OSNAME), Interix)
296 EXTRALIB += -lpthread
303 ifeq ($(OSNAME), $(filter $(OSNAME),WINNT CYGWIN_NT Interix))
308 CCOMMON_OPT += -DQUAD_PRECISION
313 ifneq ($(ARCH), x86_64)
319 CCOMMON_OPT += -DUTEST_CHECK
324 CCOMMON_OPT += -DSANITY_CHECK -DREFNAME=$(*F)f$(BU)
327 ifdef MAX_STACK_ALLOC
328 CCOMMON_OPT += -DMAX_STACK_ALLOC=$(MAX_STACK_ALLOC)
332 # Architecture dependent settings
339 ifndef NO_EXPRECISION
340 ifeq ($(F_COMPILER), GFORTRAN)
341 # ifeq logical or. GCC or LSB
342 ifeq ($(C_COMPILER), $(filter $(C_COMPILER),GCC LSB))
344 CCOMMON_OPT += -DEXPRECISION -m128bit-long-double
345 FCOMMON_OPT += -m128bit-long-double
347 ifeq ($(C_COMPILER), CLANG)
349 CCOMMON_OPT += -DEXPRECISION
350 FCOMMON_OPT += -m128bit-long-double
356 ifeq ($(ARCH), x86_64)
357 ifndef NO_EXPRECISION
358 ifeq ($(F_COMPILER), GFORTRAN)
359 # ifeq logical or. GCC or LSB
360 ifeq ($(C_COMPILER), $(filter $(C_COMPILER),GCC LSB))
362 CCOMMON_OPT += -DEXPRECISION -m128bit-long-double
363 FCOMMON_OPT += -m128bit-long-double
365 ifeq ($(C_COMPILER), CLANG)
367 CCOMMON_OPT += -DEXPRECISION
368 FCOMMON_OPT += -m128bit-long-double
374 ifeq ($(C_COMPILER), INTEL)
375 CCOMMON_OPT += -wd981
379 ifeq ($(USE_OPENMP), 1)
382 ifeq ($(USE_THREAD), 0)
383 $(error OpenBLAS: Cannot set both USE_OPENMP=1 and USE_THREAD=0. The USE_THREAD=0 is only for building single thread version.)
386 # ifeq logical or. GCC or LSB
387 ifeq ($(C_COMPILER), $(filter $(C_COMPILER),GCC LSB))
388 CCOMMON_OPT += -fopenmp
391 ifeq ($(C_COMPILER), CLANG)
392 $(error OpenBLAS: Clang didn't support OpenMP yet.)
393 CCOMMON_OPT += -fopenmp
396 ifeq ($(C_COMPILER), INTEL)
397 CCOMMON_OPT += -openmp
400 ifeq ($(C_COMPILER), PGI)
404 ifeq ($(C_COMPILER), OPEN64)
406 CEXTRALIB += -lstdc++
409 ifeq ($(C_COMPILER), PATHSCALE)
415 ifeq ($(DYNAMIC_ARCH), 1)
417 DYNAMIC_CORE = KATMAI COPPERMINE NORTHWOOD PRESCOTT BANIAS \
418 CORE2 PENRYN DUNNINGTON NEHALEM ATHLON OPTERON OPTERON_SSE3 BARCELONA BOBCAT ATOM NANO
421 ifeq ($(ARCH), x86_64)
422 DYNAMIC_CORE = PRESCOTT CORE2 PENRYN DUNNINGTON NEHALEM OPTERON OPTERON_SSE3 BARCELONA BOBCAT ATOM NANO
424 DYNAMIC_CORE += SANDYBRIDGE BULLDOZER PILEDRIVER STEAMROLLER EXCAVATOR
426 ifneq ($(NO_AVX2), 1)
427 DYNAMIC_CORE += HASWELL
440 ifeq ($(F_COMPILER), GFORTRAN)
441 ifeq ($(C_COMPILER), GCC)
443 # CCOMMON_OPT += -DEXPRECISION
448 ifeq ($(ARCH), mips64)
452 ifeq ($(ARCH), alpha)
462 ifeq ($(ARCH), arm64)
471 # C Compiler dependent settings
475 # ifeq logical or. GCC or CLANG or LSB
476 # http://stackoverflow.com/questions/7656425/makefile-ifeq-logical-or
477 ifeq ($(C_COMPILER), $(filter $(C_COMPILER),GCC CLANG LSB))
479 COMMON_PROF += -fno-inline
480 NO_UNINITIALIZED_WARN = -Wno-uninitialized
482 ifeq ($(QUIET_MAKE), 1)
483 CCOMMON_OPT += $(NO_UNINITIALIZED_WARN) -Wno-unused
488 ifeq ($(ARCH), mips64)
490 CCOMMON_OPT += -mabi=64
492 CCOMMON_OPT += -mabi=n32
497 ifeq ($(CORE), LOONGSON3A)
498 CCOMMON_OPT += -march=mips64
499 FCOMMON_OPT += -march=mips64
502 ifeq ($(CORE), LOONGSON3B)
503 CCOMMON_OPT += -march=mips64
504 FCOMMON_OPT += -march=mips64
507 ifeq ($(OSNAME), AIX)
513 ifndef BINARY_DEFINED
523 ifeq ($(C_COMPILER), PGI)
525 CCOMMON_OPT += -tp p7-64
527 CCOMMON_OPT += -tp p7
531 ifeq ($(C_COMPILER), PATHSCALE)
540 # Fortran Compiler dependent settings
543 ifeq ($(F_COMPILER), G77)
544 CCOMMON_OPT += -DF_INTERFACE_G77
546 ifndef NO_BINARY_MODE
555 ifeq ($(F_COMPILER), G95)
556 CCOMMON_OPT += -DF_INTERFACE_G95
558 ifndef NO_BINARY_MODE
567 ifeq ($(F_COMPILER), GFORTRAN)
568 CCOMMON_OPT += -DF_INTERFACE_GFORT
570 #Don't include -lgfortran, when NO_LAPACK=1 or lsbcc
571 ifneq ($(NO_LAPACK), 1)
572 EXTRALIB += -lgfortran
575 ifeq ($(ARCH), mips64)
577 FCOMMON_OPT += -mabi=64
579 FCOMMON_OPT += -mabi=n32
586 ifneq ($(INTERFACE64), 0)
587 FCOMMON_OPT += -fdefault-integer-8
595 FCOMMON_OPT += -fopenmp
599 ifeq ($(F_COMPILER), INTEL)
600 CCOMMON_OPT += -DF_INTERFACE_INTEL
602 ifneq ($(INTERFACE64), 0)
607 FCOMMON_OPT += -openmp
611 ifeq ($(F_COMPILER), FUJITSU)
612 CCOMMON_OPT += -DF_INTERFACE_FUJITSU
614 FCOMMON_OPT += -openmp
618 ifeq ($(F_COMPILER), IBM)
619 CCOMMON_OPT += -DF_INTERFACE_IBM
620 # FCOMMON_OPT += -qarch=440
624 ifneq ($(INTERFACE64), 0)
625 FCOMMON_OPT += -qintsize=8
632 FCOMMON_OPT += -openmp
636 ifeq ($(F_COMPILER), PGI)
637 CCOMMON_OPT += -DF_INTERFACE_PGI
638 COMMON_PROF += -DPGICOMPILER
641 ifneq ($(INTERFACE64), 0)
645 FCOMMON_OPT += -tp p7-64
647 FCOMMON_OPT += -tp p7
654 ifeq ($(F_COMPILER), PATHSCALE)
655 CCOMMON_OPT += -DF_INTERFACE_PATHSCALE
658 ifneq ($(INTERFACE64), 0)
664 ifneq ($(ARCH), mips64)
672 FCOMMON_OPT += -mabi=64
674 FCOMMON_OPT += -mabi=n32
683 ifeq ($(F_COMPILER), OPEN64)
684 CCOMMON_OPT += -DF_INTERFACE_OPEN64
687 ifneq ($(INTERFACE64), 0)
693 ifeq ($(ARCH), mips64)
699 ifeq ($(CORE), LOONGSON3A)
700 FCOMMON_OPT += -loongson3 -static
703 ifeq ($(CORE), LOONGSON3B)
704 FCOMMON_OPT += -loongson3 -static
716 FEXTRALIB += -lstdc++
721 ifeq ($(C_COMPILER), OPEN64)
723 ifeq ($(ARCH), mips64)
729 ifeq ($(CORE), LOONGSON3A)
730 CCOMMON_OPT += -loongson3 -static
733 ifeq ($(CORE), LOONGSON3B)
734 CCOMMON_OPT += -loongson3 -static
747 ifeq ($(C_COMPILER), SUN)
756 ifeq ($(F_COMPILER), SUN)
757 CCOMMON_OPT += -DF_INTERFACE_SUN
764 FCOMMON_OPT += -xopenmp=parallel
768 ifeq ($(F_COMPILER), COMPAQ)
769 CCOMMON_OPT += -DF_INTERFACE_COMPAQ
771 FCOMMON_OPT += -openmp
777 ifneq ($(INTERFACE64), 0)
784 ifeq ($(NEED_PIC), 1)
785 ifeq ($(C_COMPILER), IBM)
786 CCOMMON_OPT += -qpic=large
790 ifeq ($(F_COMPILER), SUN)
797 ifeq ($(DYNAMIC_ARCH), 1)
798 CCOMMON_OPT += -DDYNAMIC_ARCH
801 ifeq ($(NO_LAPACK), 1)
802 CCOMMON_OPT += -DNO_LAPACK
803 #Disable LAPACK C interface
807 ifeq ($(NO_LAPACKE), 1)
808 CCOMMON_OPT += -DNO_LAPACKE
812 CCOMMON_OPT += -DNO_AVX
816 CCOMMON_OPT += -DNO_AVX
820 CCOMMON_OPT += -DNO_AVX2
824 CCOMMON_OPT += -DSMP_SERVER
826 ifeq ($(ARCH), mips64)
827 ifneq ($(CORE), LOONGSON3B)
828 USE_SIMPLE_THREADED_LEVEL3 = 1
832 ifeq ($(USE_OPENMP), 1)
833 # USE_SIMPLE_THREADED_LEVEL3 = 1
835 CCOMMON_OPT += -DUSE_OPENMP
839 CCOMMON_OPT += -DBIGNUMA
844 ifeq ($(NO_WARMUP), 1)
845 CCOMMON_OPT += -DNO_WARMUP
848 ifeq ($(CONSISTENT_FPCSR), 1)
849 CCOMMON_OPT += -DCONSISTENT_FPCSR
852 # Only for development
853 # CCOMMON_OPT += -DPARAMTEST
854 # CCOMMON_OPT += -DPREFETCHTEST
855 # CCOMMON_OPT += -DNO_SWITCHING
859 CCOMMON_OPT += -DUSE_PAPI
860 EXTRALIB += -lpapi -lperfctr
863 ifdef DYNAMIC_THREADS
864 CCOMMON_OPT += -DDYNAMIC_THREADS
867 CCOMMON_OPT += -DMAX_CPU_NUMBER=$(NUM_THREADS)
869 ifdef USE_SIMPLE_THREADED_LEVEL3
870 CCOMMON_OPT += -DUSE_SIMPLE_THREADED_LEVEL3
874 LIBPREFIX = libopenblas
876 LIBPREFIX = libopenblas_$(LIBNAMESUFFIX)
887 KERNELDIR = $(TOPDIR)/kernel/$(ARCH)
889 include $(TOPDIR)/Makefile.$(ARCH)
891 CCOMMON_OPT += -DASMNAME=$(FU)$(*F) -DASMFNAME=$(FU)$(*F)$(BU) -DNAME=$(*F)$(BU) -DCNAME=$(*F) -DCHAR_NAME=\"$(*F)$(BU)\" -DCHAR_CNAME=\"$(*F)\"
893 ifeq ($(CORE), PPC440)
894 CCOMMON_OPT += -DALLOC_QALLOC
897 ifeq ($(CORE), PPC440FP2)
898 STATIC_ALLOCATION = 1
901 ifneq ($(OSNAME), Linux)
905 ifneq ($(ARCH), x86_64)
907 ifneq ($(CORE), LOONGSON3B)
914 CCOMMON_OPT += -DNO_AFFINITY
917 ifdef FUNCTION_PROFILE
918 CCOMMON_OPT += -DFUNCTION_PROFILE
921 ifdef HUGETLB_ALLOCATION
922 CCOMMON_OPT += -DALLOC_HUGETLB
925 ifdef HUGETLBFILE_ALLOCATION
926 CCOMMON_OPT += -DALLOC_HUGETLBFILE -DHUGETLB_FILE_NAME=$(HUGETLBFILE_ALLOCATION)
929 ifdef STATIC_ALLOCATION
930 CCOMMON_OPT += -DALLOC_STATIC
933 ifdef DEVICEDRIVER_ALLOCATION
934 CCOMMON_OPT += -DALLOC_DEVICEDRIVER -DDEVICEDRIVER_NAME=\"/dev/mapper\"
937 ifdef MIXED_MEMORY_ALLOCATION
938 CCOMMON_OPT += -DMIXED_MEMORY_ALLOCATION
941 ifeq ($(OSNAME), SunOS)
957 REVISION = -r$(VERSION)
958 MAJOR_VERSION = $(word 1,$(subst ., ,$(VERSION)))
969 override CFLAGS += $(COMMON_OPT) $(CCOMMON_OPT) -I$(TOPDIR)
970 override PFLAGS += $(COMMON_OPT) $(CCOMMON_OPT) -I$(TOPDIR) -DPROFILE $(COMMON_PROF)
972 override FFLAGS += $(COMMON_OPT) $(FCOMMON_OPT)
973 override FPFLAGS += $(COMMON_OPT) $(FCOMMON_OPT) $(COMMON_PROF)
976 #For LAPACK Fortran codes.
977 #Disable -fopenmp for LAPACK Fortran codes on Windows.
979 LAPACK_FFLAGS := $(filter-out -fopenmp -mp -openmp -xopenmp=parallel,$(FFLAGS))
980 LAPACK_FPFLAGS := $(filter-out -fopenmp -mp -openmp -xopenmp=parallel,$(FPFLAGS))
982 LAPACK_FFLAGS := $(FFLAGS)
983 LAPACK_FPFLAGS := $(FPFLAGS)
986 LAPACK_CFLAGS = $(CFLAGS)
987 LAPACK_CFLAGS += -DHAVE_LAPACK_CONFIG_H
989 ifneq ($(INTERFACE64), 0)
990 LAPACK_CFLAGS += -DLAPACK_ILP64
995 LAPACK_CFLAGS += -DOPENBLAS_OS_WINDOWS
997 ifeq ($(C_COMPILER), LSB)
998 LAPACK_CFLAGS += -DLAPACK_COMPLEX_STRUCTURE
1013 ifneq ($(DYNAMIC_ARCH), 1)
1015 LIBNAME = $(LIBPREFIX)_$(LIBCORE)$(REVISION).$(LIBSUFFIX)
1016 LIBNAME_P = $(LIBPREFIX)_$(LIBCORE)$(REVISION)_p.$(LIBSUFFIX)
1018 LIBNAME = $(LIBPREFIX)_$(LIBCORE)p$(REVISION).$(LIBSUFFIX)
1019 LIBNAME_P = $(LIBPREFIX)_$(LIBCORE)p$(REVISION)_p.$(LIBSUFFIX)
1023 LIBNAME = $(LIBPREFIX)$(REVISION).$(LIBSUFFIX)
1024 LIBNAME_P = $(LIBPREFIX)$(REVISION)_p.$(LIBSUFFIX)
1026 LIBNAME = $(LIBPREFIX)p$(REVISION).$(LIBSUFFIX)
1027 LIBNAME_P = $(LIBPREFIX)p$(REVISION)_p.$(LIBSUFFIX)
1032 LIBDLLNAME = $(LIBPREFIX).dll
1033 LIBSONAME = $(LIBNAME:.$(LIBSUFFIX)=.so)
1034 LIBDYNNAME = $(LIBNAME:.$(LIBSUFFIX)=.dylib)
1035 LIBDEFNAME = $(LIBNAME:.$(LIBSUFFIX)=.def)
1036 LIBEXPNAME = $(LIBNAME:.$(LIBSUFFIX)=.exp)
1037 LIBZIPNAME = $(LIBNAME:.$(LIBSUFFIX)=.zip)
1039 LIBS = $(TOPDIR)/$(LIBNAME)
1040 LIBS_P = $(TOPDIR)/$(LIBNAME_P)
1043 LIB_COMPONENTS = BLAS
1044 ifneq ($(NO_CBLAS), 1)
1045 LIB_COMPONENTS += CBLAS
1048 ifneq ($(NO_LAPACK), 1)
1049 LIB_COMPONENTS += LAPACK
1050 ifneq ($(NO_LAPACKE), 1)
1051 LIB_COMPONENTS += LAPACKE
1055 ifeq ($(ONLY_CBLAS), 1)
1056 LIB_COMPONENTS = CBLAS
1069 export NEED2UNDERSCORES
1074 export MAKEFILE_RULE
1103 export FUNCTION_PROFILE
1106 export SGEMM_UNROLL_M
1107 export SGEMM_UNROLL_N
1108 export DGEMM_UNROLL_M
1109 export DGEMM_UNROLL_N
1110 export QGEMM_UNROLL_M
1111 export QGEMM_UNROLL_N
1112 export CGEMM_UNROLL_M
1113 export CGEMM_UNROLL_N
1114 export ZGEMM_UNROLL_M
1115 export ZGEMM_UNROLL_N
1116 export XGEMM_UNROLL_M
1117 export XGEMM_UNROLL_N
1118 export CGEMM3M_UNROLL_M
1119 export CGEMM3M_UNROLL_N
1120 export ZGEMM3M_UNROLL_M
1121 export ZGEMM3M_UNROLL_N
1122 export XGEMM3M_UNROLL_M
1123 export XGEMM3M_UNROLL_N
1133 .SUFFIXES: .$(PSUFFIX) .$(SUFFIX) .f
1136 $(FC) $(FFLAGS) -c $< -o $(@F)
1139 $(FC) $(FPFLAGS) -pg -c $< -o $(@F)
1143 PATHSCALEPATH = /opt/pathscale/lib/3.1
1144 PGIPATH = /opt/pgi/linux86-64/7.1-5/lib
1146 PATHSCALEPATH = /opt/pathscale/lib/3.1/32
1147 PGIPATH = /opt/pgi/linux86/7.1-5/lib
1150 ACMLPATH = /opt/acml/4.3.0
1151 ifneq ($(OSNAME), Darwin)
1152 MKLPATH = /opt/intel/mkl/10.2.2.025/lib
1154 MKLPATH = /Library/Frameworks/Intel_MKL.framework/Versions/10.0.1.014/lib
1156 ATLASPATH = /opt/atlas/3.9.17/opteron
1157 FLAMEPATH = $(HOME)/flame/lib
1158 ifneq ($(OSNAME), SunOS)
1159 SUNPATH = /opt/sunstudio12.1
1161 SUNPATH = /opt/SUNWspro