Rewrite glibc version check
[platform/upstream/openblas.git] / Makefile.power
1
2 ifdef USE_THREAD
3 ifeq ($(USE_THREAD), 0)
4 USE_OPENMP = 0
5 else
6 USE_OPENMP = 1
7 endif
8 else
9 USE_OPENMP = 1
10 endif
11
12
13
14 ifeq ($(CORE), POWER8)
15 ifeq ($(USE_OPENMP), 1)
16 COMMON_OPT += -Ofast -mcpu=power8 -mtune=power8 -mvsx -malign-power -DUSE_OPENMP -fno-fast-math -fopenmp
17 FCOMMON_OPT += -O2 -frecursive -mcpu=power8 -mtune=power8 -malign-power -DUSE_OPENMP -fno-fast-math -fopenmp
18 else
19 COMMON_OPT += -Ofast -mcpu=power8 -mtune=power8 -mvsx -malign-power -fno-fast-math
20 FCOMMON_OPT += -O2 -frecursive -mcpu=power8 -mtune=power8 -malign-power -fno-fast-math
21 endif
22 endif
23
24
25 FLAMEPATH       = $(HOME)/flame/lib
26
27 #ifeq ($(CORE), CELL)
28 #CELL_SDK_ROOT = /opt/IBM/cell-sdk-1.1/sysroot/usr
29 #SPU_CC          = spu-gcc
30 #EXTRALIB       += -lspe
31 #endif
32
33 ifeq ($(OSNAME), Linux)
34 ifdef BINARY64
35 # COMPILER_PREFIX = powerpc64-linux-
36 else
37 # COMPILER_PREFIX = powerpc-linux-
38 endif
39 endif
40
41 #Either uncomment below line or run make with `USE_MASS=1` to enable support of MASS library
42 #USE_MASS = 1
43
44 ifeq ($(USE_MASS), 1)
45 # Path to MASS libs, change it if the libs are installed at any other location
46 MASSPATH        = /opt/ibm/xlmass/8.1.5/lib
47 COMMON_OPT     += -mveclibabi=mass -ftree-vectorize -funsafe-math-optimizations -DUSE_MASS
48 EXTRALIB       += -L$(MASSPATH) -lmass -lmassvp8 -lmass_simdp8
49 endif
50
51 ifdef BINARY64
52
53
54 ifeq ($(OSNAME), AIX)
55 CCOMMON_OPT     += -mpowerpc64 -maix64
56 ifeq ($(COMPILER_F77), g77)
57 FCOMMON_OPT     += -mpowerpc64 -maix64
58 endif
59 ifeq ($(COMPILER_F77), xlf)
60 FCOMMON_OPT     += -q64
61 endif
62 ARFLAGS         = -X 64
63 ASFLAGS         = -a64
64 endif
65 else
66 ifeq ($(OSNAME), AIX)
67 CCOMMON_OPT     += -Wa,-a32
68 ARFLAGS         = -X 32
69 ASFLAGS         = -a32
70 endif
71 endif
72
73 # CCOMMON_OPT   += -maltivec -mabi=altivec
74
75 LIBFLAME        = -L$(FLAMEPATH) -llapack2flame -lflame-lapack -lflame-base $(LIBS)
76
77 ifeq ($(OSNAME), Darwin)
78 CCOMMON_OPT     += -force_cpusubtype_ALL
79 endif
80
81
82 ifndef BINARY64
83 ifeq ($(OSNAME), Linux)
84 ESSLPATH = -L/opt/ibmcmp/lib -L/opt/ibmcmp/xlf/11.1/lib -Wl,-rpath,/opt/ibmcmp/lib -Wl,-rpath,/opt/ibmcmp/xlf/11.1/lib -lxlf90_r -lxlomp_ser -lxlfmath -lxl -lpthread
85 else
86 ESSLPATH = -lxlf90_r
87 endif
88
89
90 LIBVECLIB       = -framework VecLib
91 ifndef SMP
92 LIBATLAS        = -L/usr/lib/atlas3.7.11 -lf77blas -latlas -lg2c -lm
93 LIBESSL         = -lessl $(ESSLPATH) ../../level1/others/libmisc.a -lm
94 else
95 LIBATLAS        = -L/usr/lib/atlas3.7.11p -lptf77blas -latlas -lm -lpthread
96 LIBESSL         = -lesslsmp $(ESSLPATH)  ../../level1/others/libmisc.a -lm
97 endif
98 else
99 ifeq ($(OSNAME), Linux)
100 ESSLPATH = -L/opt/ibmcmp/lib64 -Wl,-rpath,/opt/ibmcmp/lib64 -L/opt/ibmcmp/xlf/11.1/lib64 -Wl,-rpath,/opt/ibmcmp/xlf/11.1/lib64 -lxlf90_r -lxlomp_ser
101 else
102 ESSLPATH = -lxlf90_r
103 endif
104
105 LIBVECLIB       = /System/Library/Frameworks/vecLib.framework/Versions/Current/vecLib
106
107 ifndef SMP
108 LIBATLAS        = -L/usr/lib64/atlas3.7.11  -lf77blas -latlas -lg2c -lm
109 LIBESSL         = -lessl $(ESSLPATH) -lm
110 else
111 LIBATLAS        = -L/usr/lib64/atlas3.7.11p -lptf77blas -latlas -lm -lpthread
112 LIBESSL         = -lesslsmp $(ESSLPATH) -lxlsmp -lm
113 endif
114 endif