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)
29 # Default Fortran compiler (FC) is selected by f_check.
32 include $(TOPDIR)/Makefile.rule
34 include $(TOPDIR)/$(MAKEFILE_RULE)
38 # Beginning of system configuration
46 GETARCH_FLAGS := -DFORCE_$(TARGET)
49 # Force fallbacks for 32bit
52 ifeq ($(TARGET), HASWELL)
53 GETARCH_FLAGS := -DFORCE_NEHALEM
55 ifeq ($(TARGET), SANDYBRIDGE)
56 GETARCH_FLAGS := -DFORCE_NEHALEM
58 ifeq ($(TARGET), BULLDOZER)
59 GETARCH_FLAGS := -DFORCE_BARCELONA
61 ifeq ($(TARGET), PILEDRIVER)
62 GETARCH_FLAGS := -DFORCE_BARCELONA
67 #TARGET_CORE will override TARGET which is used in DYNAMIC_ARCH=1.
70 GETARCH_FLAGS := -DFORCE_$(TARGET_CORE)
73 # Force fallbacks for 32bit
76 ifeq ($(TARGET_CORE), HASWELL)
77 GETARCH_FLAGS := -DFORCE_NEHALEM
79 ifeq ($(TARGET_CORE), SANDYBRIDGE)
80 GETARCH_FLAGS := -DFORCE_NEHALEM
82 ifeq ($(TARGET_CORE), BULLDOZER)
83 GETARCH_FLAGS := -DFORCE_BARCELONA
85 ifeq ($(TARGET_CORE), PILEDRIVER)
86 GETARCH_FLAGS := -DFORCE_BARCELONA
94 ifneq ($(INTERFACE64), 0)
95 GETARCH_FLAGS += -DUSE64BITINT
99 ifndef GEMM_MULTITHREAD_THRESHOLD
100 GEMM_MULTITHREAD_THRESHOLD=4
102 GETARCH_FLAGS += -DGEMM_MULTITHREAD_THRESHOLD=$(GEMM_MULTITHREAD_THRESHOLD)
105 GETARCH_FLAGS += -DNO_AVX
109 GETARCH_FLAGS += -DNO_AVX
113 GETARCH_FLAGS += -DNO_AVX2
120 ifeq ($(QUIET_MAKE), 1)
124 ifndef NO_PARALLEL_MAKE
127 GETARCH_FLAGS += -DNO_PARALLEL_MAKE=$(NO_PARALLEL_MAKE)
129 ifeq ($(HOSTCC), loongcc)
130 GETARCH_FLAGS += -static
133 #if don't use Fortran, it will only compile CBLAS.
134 ifeq ($(ONLY_CBLAS), 1)
140 # This operation is expensive, so execution should be once.
141 ifndef GOTOBLAS_MAKEFILE
142 export GOTOBLAS_MAKEFILE = 1
144 # Generating Makefile.conf and config.h
145 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)
148 include $(TOPDIR)/Makefile.conf
150 include $(TOPDIR)/Makefile_kernel.conf
156 NUM_THREADS = $(NUM_CORES)
159 ifeq ($(NUM_THREADS), 1)
160 override USE_THREAD = 0
164 ifeq ($(USE_THREAD), 0)
170 ifeq ($(NUM_THREAD), 1)
183 AR = $(CROSS_SUFFIX)ar
184 AS = $(CROSS_SUFFIX)as
185 LD = $(CROSS_SUFFIX)ld
186 RANLIB = $(CROSS_SUFFIX)ranlib
187 NM = $(CROSS_SUFFIX)nm
188 DLLWRAP = $(CROSS_SUFFIX)dllwrap
189 OBJCOPY = $(CROSS_SUFFIX)objcopy
190 OBJCONV = $(CROSS_SUFFIX)objconv
193 # OS dependent settings
196 ifeq ($(OSNAME), Darwin)
197 export MACOSX_DEPLOYMENT_TARGET=10.2
201 ifeq ($(OSNAME), FreeBSD)
205 ifeq ($(OSNAME), NetBSD)
209 ifeq ($(OSNAME), Linux)
214 ifeq ($(OSNAME), AIX)
218 ifeq ($(OSNAME), WINNT)
222 EXTRALIB += -defaultlib:advapi32
228 ifeq ($(C_COMPILER), CLANG)
229 CCOMMON_OPT += -DMS_ABI
232 ifeq ($(C_COMPILER), GCC)
233 #Test for supporting MS_ABI
234 GCCVERSIONGTEQ4 := $(shell expr `$(CC) -dumpversion | cut -f1 -d.` \>= 4)
235 GCCVERSIONGT4 := $(shell expr `$(CC) -dumpversion | cut -f1 -d.` \> 4)
236 GCCMINORVERSIONGTEQ7 := $(shell expr `$(CC) -dumpversion | cut -f2 -d.` \>= 7)
237 ifeq ($(GCCVERSIONGT4), 1)
238 # GCC Majar version > 4
239 # It is compatible with MSVC ABI.
240 CCOMMON_OPT += -DMS_ABI
243 ifeq ($(GCCVERSIONGTEQ4), 1)
244 ifeq ($(GCCMINORVERSIONGTEQ7), 1)
246 # It is compatible with MSVC ABI.
247 CCOMMON_OPT += -DMS_ABI
252 # Ensure the correct stack alignment on Win32
253 # http://permalink.gmane.org/gmane.comp.lib.openblas.general/97
255 CCOMMON_OPT += -mincoming-stack-boundary=2
256 FCOMMON_OPT += -mincoming-stack-boundary=2
261 ifeq ($(OSNAME), Interix)
265 INTERIX_TOOL_DIR = /opt/gcc.3.3/i586-pc-interix3/bin
268 ifeq ($(OSNAME), CYGWIN_NT)
273 ifneq ($(OSNAME), WINNT)
274 ifneq ($(OSNAME), CYGWIN_NT)
275 ifneq ($(OSNAME), Interix)
277 EXTRALIB += -lpthread
284 ifeq ($(OSNAME), $(filter $(OSNAME),WINNT CYGWIN_NT Interix))
289 CCOMMON_OPT += -DQUAD_PRECISION
294 ifneq ($(ARCH), x86_64)
300 CCOMMON_OPT += -DUTEST_CHECK
305 CCOMMON_OPT += -DSANITY_CHECK -DREFNAME=$(*F)f$(BU)
309 # Architecture dependent settings
316 ifndef NO_EXPRECISION
317 ifeq ($(F_COMPILER), GFORTRAN)
318 # ifeq logical or. GCC or LSB
319 ifeq ($(C_COMPILER), $(filter $(C_COMPILER),GCC LSB))
321 CCOMMON_OPT += -DEXPRECISION -m128bit-long-double
322 FCOMMON_OPT += -m128bit-long-double
324 ifeq ($(C_COMPILER), CLANG)
326 CCOMMON_OPT += -DEXPRECISION
327 FCOMMON_OPT += -m128bit-long-double
333 ifeq ($(ARCH), x86_64)
334 ifndef NO_EXPRECISION
335 ifeq ($(F_COMPILER), GFORTRAN)
336 # ifeq logical or. GCC or LSB
337 ifeq ($(C_COMPILER), $(filter $(C_COMPILER),GCC LSB))
339 CCOMMON_OPT += -DEXPRECISION -m128bit-long-double
340 FCOMMON_OPT += -m128bit-long-double
342 ifeq ($(C_COMPILER), CLANG)
344 CCOMMON_OPT += -DEXPRECISION
345 FCOMMON_OPT += -m128bit-long-double
351 ifeq ($(C_COMPILER), INTEL)
352 CCOMMON_OPT += -wd981
356 ifeq ($(USE_OPENMP), 1)
357 # ifeq logical or. GCC or LSB
358 ifeq ($(C_COMPILER), $(filter $(C_COMPILER),GCC LSB))
359 CCOMMON_OPT += -fopenmp
362 ifeq ($(C_COMPILER), CLANG)
363 $(error OpenBLAS: Clang didn't support OpenMP yet.)
364 CCOMMON_OPT += -fopenmp
367 ifeq ($(C_COMPILER), INTEL)
368 CCOMMON_OPT += -openmp
371 ifeq ($(C_COMPILER), PGI)
375 ifeq ($(C_COMPILER), OPEN64)
377 CEXTRALIB += -lstdc++
380 ifeq ($(C_COMPILER), PATHSCALE)
386 ifeq ($(DYNAMIC_ARCH), 1)
388 DYNAMIC_CORE = KATMAI COPPERMINE NORTHWOOD PRESCOTT BANIAS \
389 CORE2 PENRYN DUNNINGTON NEHALEM ATHLON OPTERON OPTERON_SSE3 BARCELONA BOBCAT ATOM NANO
392 ifeq ($(ARCH), x86_64)
393 DYNAMIC_CORE = PRESCOTT CORE2 PENRYN DUNNINGTON NEHALEM OPTERON OPTERON_SSE3 BARCELONA BOBCAT ATOM NANO
395 DYNAMIC_CORE += SANDYBRIDGE BULLDOZER PILEDRIVER
397 ifneq ($(NO_AVX2), 1)
398 DYNAMIC_CORE += HASWELL
411 ifeq ($(F_COMPILER), GFORTRAN)
412 ifeq ($(C_COMPILER), GCC)
414 # CCOMMON_OPT += -DEXPRECISION
419 ifeq ($(ARCH), mips64)
423 ifeq ($(ARCH), alpha)
433 ifeq ($(ARCH), arm64)
442 # C Compiler dependent settings
446 # ifeq logical or. GCC or CLANG or LSB
447 # http://stackoverflow.com/questions/7656425/makefile-ifeq-logical-or
448 ifeq ($(C_COMPILER), $(filter $(C_COMPILER),GCC CLANG LSB))
450 COMMON_PROF += -fno-inline
451 NO_UNINITIALIZED_WARN = -Wno-uninitialized
453 ifeq ($(QUIET_MAKE), 1)
454 CCOMMON_OPT += $(NO_UNINITIALIZED_WARN) -Wno-unused
459 ifeq ($(ARCH), mips64)
461 CCOMMON_OPT += -mabi=64
463 CCOMMON_OPT += -mabi=n32
468 ifeq ($(CORE), LOONGSON3A)
469 CCOMMON_OPT += -march=mips64
470 FCOMMON_OPT += -march=mips64
473 ifeq ($(CORE), LOONGSON3B)
474 CCOMMON_OPT += -march=mips64
475 FCOMMON_OPT += -march=mips64
478 ifeq ($(OSNAME), AIX)
484 ifndef BINARY_DEFINED
494 ifeq ($(C_COMPILER), PGI)
496 CCOMMON_OPT += -tp p7-64
498 CCOMMON_OPT += -tp p7
502 ifeq ($(C_COMPILER), PATHSCALE)
511 # Fortran Compiler dependent settings
514 ifeq ($(F_COMPILER), G77)
515 CCOMMON_OPT += -DF_INTERFACE_G77
517 ifndef NO_BINARY_MODE
526 ifeq ($(F_COMPILER), G95)
527 CCOMMON_OPT += -DF_INTERFACE_G95
529 ifndef NO_BINARY_MODE
538 ifeq ($(F_COMPILER), GFORTRAN)
539 CCOMMON_OPT += -DF_INTERFACE_GFORT
541 #Don't include -lgfortran, when NO_LAPACK=1 or lsbcc
542 ifneq ($(NO_LAPACK), 1)
543 EXTRALIB += -lgfortran
546 ifeq ($(ARCH), mips64)
548 FCOMMON_OPT += -mabi=64
550 FCOMMON_OPT += -mabi=n32
557 ifneq ($(INTERFACE64), 0)
558 FCOMMON_OPT += -fdefault-integer-8
566 FCOMMON_OPT += -fopenmp
570 ifeq ($(F_COMPILER), INTEL)
571 CCOMMON_OPT += -DF_INTERFACE_INTEL
573 ifneq ($(INTERFACE64), 0)
578 FCOMMON_OPT += -openmp
582 ifeq ($(F_COMPILER), FUJITSU)
583 CCOMMON_OPT += -DF_INTERFACE_FUJITSU
585 FCOMMON_OPT += -openmp
589 ifeq ($(F_COMPILER), IBM)
590 CCOMMON_OPT += -DF_INTERFACE_IBM
591 # FCOMMON_OPT += -qarch=440
595 ifneq ($(INTERFACE64), 0)
596 FCOMMON_OPT += -qintsize=8
603 FCOMMON_OPT += -openmp
607 ifeq ($(F_COMPILER), PGI)
608 CCOMMON_OPT += -DF_INTERFACE_PGI
609 COMMON_PROF += -DPGICOMPILER
612 ifneq ($(INTERFACE64), 0)
616 FCOMMON_OPT += -tp p7-64
618 FCOMMON_OPT += -tp p7
625 ifeq ($(F_COMPILER), PATHSCALE)
626 CCOMMON_OPT += -DF_INTERFACE_PATHSCALE
629 ifneq ($(INTERFACE64), 0)
635 ifneq ($(ARCH), mips64)
643 FCOMMON_OPT += -mabi=64
645 FCOMMON_OPT += -mabi=n32
654 ifeq ($(F_COMPILER), OPEN64)
655 CCOMMON_OPT += -DF_INTERFACE_OPEN64
658 ifneq ($(INTERFACE64), 0)
664 ifeq ($(ARCH), mips64)
670 ifeq ($(CORE), LOONGSON3A)
671 FCOMMON_OPT += -loongson3 -static
674 ifeq ($(CORE), LOONGSON3B)
675 FCOMMON_OPT += -loongson3 -static
687 FEXTRALIB += -lstdc++
692 ifeq ($(C_COMPILER), OPEN64)
694 ifeq ($(ARCH), mips64)
700 ifeq ($(CORE), LOONGSON3A)
701 CCOMMON_OPT += -loongson3 -static
704 ifeq ($(CORE), LOONGSON3B)
705 CCOMMON_OPT += -loongson3 -static
718 ifeq ($(C_COMPILER), SUN)
727 ifeq ($(F_COMPILER), SUN)
728 CCOMMON_OPT += -DF_INTERFACE_SUN
735 FCOMMON_OPT += -xopenmp=parallel
739 ifeq ($(F_COMPILER), COMPAQ)
740 CCOMMON_OPT += -DF_INTERFACE_COMPAQ
742 FCOMMON_OPT += -openmp
748 ifneq ($(INTERFACE64), 0)
755 ifeq ($(NEED_PIC), 1)
756 ifeq ($(C_COMPILER), IBM)
757 CCOMMON_OPT += -qpic=large
761 ifeq ($(F_COMPILER), SUN)
768 ifeq ($(DYNAMIC_ARCH), 1)
769 CCOMMON_OPT += -DDYNAMIC_ARCH
772 ifeq ($(NO_LAPACK), 1)
773 CCOMMON_OPT += -DNO_LAPACK
774 #Disable LAPACK C interface
778 ifeq ($(NO_LAPACKE), 1)
779 CCOMMON_OPT += -DNO_LAPACKE
783 CCOMMON_OPT += -DNO_AVX
787 CCOMMON_OPT += -DNO_AVX
791 CCOMMON_OPT += -DNO_AVX2
795 CCOMMON_OPT += -DSMP_SERVER
797 ifeq ($(ARCH), mips64)
798 ifneq ($(CORE), LOONGSON3B)
799 USE_SIMPLE_THREADED_LEVEL3 = 1
803 ifeq ($(USE_OPENMP), 1)
804 # USE_SIMPLE_THREADED_LEVEL3 = 1
806 CCOMMON_OPT += -DUSE_OPENMP
810 CCOMMON_OPT += -DBIGNUMA
815 ifeq ($(NO_WARMUP), 1)
816 CCOMMON_OPT += -DNO_WARMUP
819 ifeq ($(CONSISTENT_FPCSR), 1)
820 CCOMMON_OPT += -DCONSISTENT_FPCSR
823 # Only for development
824 # CCOMMON_OPT += -DPARAMTEST
825 # CCOMMON_OPT += -DPREFETCHTEST
826 # CCOMMON_OPT += -DNO_SWITCHING
830 CCOMMON_OPT += -DUSE_PAPI
831 EXTRALIB += -lpapi -lperfctr
834 ifdef DYNAMIC_THREADS
835 CCOMMON_OPT += -DDYNAMIC_THREADS
838 CCOMMON_OPT += -DMAX_CPU_NUMBER=$(NUM_THREADS)
840 ifdef USE_SIMPLE_THREADED_LEVEL3
841 CCOMMON_OPT += -DUSE_SIMPLE_THREADED_LEVEL3
845 LIBPREFIX = libopenblas
847 LIBPREFIX = libopenblas_$(LIBNAMESUFFIX)
858 KERNELDIR = $(TOPDIR)/kernel/$(ARCH)
860 include $(TOPDIR)/Makefile.$(ARCH)
862 CCOMMON_OPT += -DASMNAME=$(FU)$(*F) -DASMFNAME=$(FU)$(*F)$(BU) -DNAME=$(*F)$(BU) -DCNAME=$(*F) -DCHAR_NAME=\"$(*F)$(BU)\" -DCHAR_CNAME=\"$(*F)\"
864 ifeq ($(CORE), PPC440)
865 CCOMMON_OPT += -DALLOC_QALLOC
868 ifeq ($(CORE), PPC440FP2)
869 STATIC_ALLOCATION = 1
872 ifneq ($(OSNAME), Linux)
876 ifneq ($(ARCH), x86_64)
878 ifneq ($(CORE), LOONGSON3B)
885 CCOMMON_OPT += -DNO_AFFINITY
888 ifdef FUNCTION_PROFILE
889 CCOMMON_OPT += -DFUNCTION_PROFILE
892 ifdef HUGETLB_ALLOCATION
893 CCOMMON_OPT += -DALLOC_HUGETLB
896 ifdef HUGETLBFILE_ALLOCATION
897 CCOMMON_OPT += -DALLOC_HUGETLBFILE -DHUGETLB_FILE_NAME=$(HUGETLBFILE_ALLOCATION)
900 ifdef STATIC_ALLOCATION
901 CCOMMON_OPT += -DALLOC_STATIC
904 ifdef DEVICEDRIVER_ALLOCATION
905 CCOMMON_OPT += -DALLOC_DEVICEDRIVER -DDEVICEDRIVER_NAME=\"/dev/mapper\"
908 ifdef MIXED_MEMORY_ALLOCATION
909 CCOMMON_OPT += -DMIXED_MEMORY_ALLOCATION
912 ifeq ($(OSNAME), SunOS)
928 REVISION = -r$(VERSION)
929 MAJOR_VERSION = $(word 1,$(subst ., ,$(VERSION)))
940 override CFLAGS += $(COMMON_OPT) $(CCOMMON_OPT) -I$(TOPDIR)
941 override PFLAGS += $(COMMON_OPT) $(CCOMMON_OPT) -I$(TOPDIR) -DPROFILE $(COMMON_PROF)
943 override FFLAGS += $(COMMON_OPT) $(FCOMMON_OPT)
944 override FPFLAGS += $(COMMON_OPT) $(FCOMMON_OPT) $(COMMON_PROF)
947 #For LAPACK Fortran codes.
948 #Disable -fopenmp for LAPACK Fortran codes on Windows.
950 LAPACK_FFLAGS := $(filter-out -fopenmp -mp -openmp -xopenmp=parallel,$(FFLAGS))
951 LAPACK_FPFLAGS := $(filter-out -fopenmp -mp -openmp -xopenmp=parallel,$(FPFLAGS))
953 LAPACK_FFLAGS := $(FFLAGS)
954 LAPACK_FPFLAGS := $(FPFLAGS)
957 LAPACK_CFLAGS = $(CFLAGS)
958 LAPACK_CFLAGS += -DHAVE_LAPACK_CONFIG_H
960 ifneq ($(INTERFACE64), 0)
961 LAPACK_CFLAGS += -DLAPACK_ILP64
966 LAPACK_CFLAGS += -DOPENBLAS_OS_WINDOWS
968 ifeq ($(C_COMPILER), LSB)
969 LAPACK_CFLAGS += -DLAPACK_COMPLEX_STRUCTURE
984 ifneq ($(DYNAMIC_ARCH), 1)
986 LIBNAME = $(LIBPREFIX)_$(LIBCORE)$(REVISION).$(LIBSUFFIX)
987 LIBNAME_P = $(LIBPREFIX)_$(LIBCORE)$(REVISION)_p.$(LIBSUFFIX)
989 LIBNAME = $(LIBPREFIX)_$(LIBCORE)p$(REVISION).$(LIBSUFFIX)
990 LIBNAME_P = $(LIBPREFIX)_$(LIBCORE)p$(REVISION)_p.$(LIBSUFFIX)
994 LIBNAME = $(LIBPREFIX)$(REVISION).$(LIBSUFFIX)
995 LIBNAME_P = $(LIBPREFIX)$(REVISION)_p.$(LIBSUFFIX)
997 LIBNAME = $(LIBPREFIX)p$(REVISION).$(LIBSUFFIX)
998 LIBNAME_P = $(LIBPREFIX)p$(REVISION)_p.$(LIBSUFFIX)
1003 LIBDLLNAME = $(LIBPREFIX).dll
1004 LIBSONAME = $(LIBNAME:.$(LIBSUFFIX)=.so)
1005 LIBDYNNAME = $(LIBNAME:.$(LIBSUFFIX)=.dylib)
1006 LIBDEFNAME = $(LIBNAME:.$(LIBSUFFIX)=.def)
1007 LIBEXPNAME = $(LIBNAME:.$(LIBSUFFIX)=.exp)
1008 LIBZIPNAME = $(LIBNAME:.$(LIBSUFFIX)=.zip)
1010 LIBS = $(TOPDIR)/$(LIBNAME)
1011 LIBS_P = $(TOPDIR)/$(LIBNAME_P)
1014 LIB_COMPONENTS = BLAS
1015 ifneq ($(NO_CBLAS), 1)
1016 LIB_COMPONENTS += CBLAS
1019 ifneq ($(NO_LAPACK), 1)
1020 LIB_COMPONENTS += LAPACK
1021 ifneq ($(NO_LAPACKE), 1)
1022 LIB_COMPONENTS += LAPACKE
1026 ifeq ($(ONLY_CBLAS), 1)
1027 LIB_COMPONENTS = CBLAS
1040 export NEED2UNDERSCORES
1045 export MAKEFILE_RULE
1074 export FUNCTION_PROFILE
1077 export SGEMM_UNROLL_M
1078 export SGEMM_UNROLL_N
1079 export DGEMM_UNROLL_M
1080 export DGEMM_UNROLL_N
1081 export QGEMM_UNROLL_M
1082 export QGEMM_UNROLL_N
1083 export CGEMM_UNROLL_M
1084 export CGEMM_UNROLL_N
1085 export ZGEMM_UNROLL_M
1086 export ZGEMM_UNROLL_N
1087 export XGEMM_UNROLL_M
1088 export XGEMM_UNROLL_N
1089 export CGEMM3M_UNROLL_M
1090 export CGEMM3M_UNROLL_N
1091 export ZGEMM3M_UNROLL_M
1092 export ZGEMM3M_UNROLL_N
1093 export XGEMM3M_UNROLL_M
1094 export XGEMM3M_UNROLL_N
1104 .SUFFIXES: .$(PSUFFIX) .$(SUFFIX) .f
1107 $(FC) $(FFLAGS) -c $< -o $(@F)
1110 $(FC) $(FPFLAGS) -pg -c $< -o $(@F)
1114 PATHSCALEPATH = /opt/pathscale/lib/3.1
1115 PGIPATH = /opt/pgi/linux86-64/7.1-5/lib
1117 PATHSCALEPATH = /opt/pathscale/lib/3.1/32
1118 PGIPATH = /opt/pgi/linux86/7.1-5/lib
1121 ACMLPATH = /opt/acml/4.3.0
1122 ifneq ($(OSNAME), Darwin)
1123 MKLPATH = /opt/intel/mkl/10.2.2.025/lib
1125 MKLPATH = /Library/Frameworks/Intel_MKL.framework/Versions/10.0.1.014/lib
1127 ATLASPATH = /opt/atlas/3.9.17/opteron
1128 FLAMEPATH = $(HOME)/flame/lib
1129 ifneq ($(OSNAME), SunOS)
1130 SUNPATH = /opt/sunstudio12.1
1132 SUNPATH = /opt/SUNWspro