2 ## Author: Hank Anderson <hank@statease.com>
3 ## Description: Ported from portion of OpenBLAS/Makefile.system
4 ## Sets Fortran related variables.
6 if (${F_COMPILER} STREQUAL "G77")
7 set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_G77")
8 set(FCOMMON_OPT "${FCOMMON_OPT} -Wall")
9 if (NOT NO_BINARY_MODE)
11 set(FCOMMON_OPT "${FCOMMON_OPT} -m64")
13 set(FCOMMON_OPT "${FCOMMON_OPT} -m32")
18 if (${F_COMPILER} STREQUAL "G95")
19 set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_G95")
20 set(FCOMMON_OPT "${FCOMMON_OPT} -Wall")
21 if (NOT NO_BINARY_MODE)
23 set(FCOMMON_OPT "${FCOMMON_OPT} -m64")
25 set(FCOMMON_OPT "${FCOMMON_OPT} -m32")
30 if (${F_COMPILER} STREQUAL "GFORTRAN")
31 set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_GFORT")
32 set(FCOMMON_OPT "${FCOMMON_OPT} -Wall")
33 #Don't include -lgfortran, when NO_LAPACK=1 or lsbcc
35 set(EXTRALIB "{EXTRALIB} -lgfortran")
38 if (${ARCH} STREQUAL "mips64")
40 set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=64")
42 set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=n32")
47 set(FCOMMON_OPT "${FCOMMON_OPT} -m64")
49 set(FCOMMON_OPT "${FCOMMON_OPT} -fdefault-integer-8")
52 set(FCOMMON_OPT "${FCOMMON_OPT} -m32")
57 set(FCOMMON_OPT "${FCOMMON_OPT} -fopenmp")
61 if (${F_COMPILER} STREQUAL "INTEL")
62 set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_INTEL")
64 set(FCOMMON_OPT "${FCOMMON_OPT} -i8")
67 set(FCOMMON_OPT "${FCOMMON_OPT} -openmp")
71 if (${F_COMPILER} STREQUAL "FUJITSU")
72 set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_FUJITSU")
74 set(FCOMMON_OPT "${FCOMMON_OPT} -openmp")
78 if (${F_COMPILER} STREQUAL "IBM")
79 set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_IBM")
80 # FCOMMON_OPT += -qarch=440
82 set(FCOMMON_OPT "${FCOMMON_OPT} -q64")
84 set(FCOMMON_OPT "${FCOMMON_OPT} -qintsize=8")
87 set(FCOMMON_OPT "${FCOMMON_OPT} -q32")
90 set(FCOMMON_OPT "${FCOMMON_OPT} -openmp")
94 if (${F_COMPILER} STREQUAL "PGI")
95 set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_PGI")
96 set(COMMON_PROF "${COMMON_PROF} -DPGICOMPILER")
99 set(FCOMMON_OPT "${FCOMMON_OPT} -i8")
101 set(FCOMMON_OPT "${FCOMMON_OPT} -tp p7-64")
103 set(FCOMMON_OPT "${FCOMMON_OPT} -tp p7")
106 set(FCOMMON_OPT "${FCOMMON_OPT} -mp")
110 if (${F_COMPILER} STREQUAL "PATHSCALE")
111 set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_PATHSCALE")
114 set(FCOMMON_OPT "${FCOMMON_OPT} -i8")
118 if (NOT ${ARCH} STREQUAL "mips64")
120 set(FCOMMON_OPT "${FCOMMON_OPT} -m32")
122 set(FCOMMON_OPT "${FCOMMON_OPT} -m64")
126 set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=64")
128 set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=n32")
133 set(FCOMMON_OPT "${FCOMMON_OPT} -mp")
137 if (${F_COMPILER} STREQUAL "OPEN64")
139 set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_OPEN64")
142 set(FCOMMON_OPT "${FCOMMON_OPT} -i8")
146 if (${ARCH} STREQUAL "mips64")
149 set(FCOMMON_OPT "${FCOMMON_OPT} -n32")
151 set(FCOMMON_OPT "${FCOMMON_OPT} -n64")
154 if (${CORE} STREQUAL "LOONGSON3A")
155 set(FCOMMON_OPT "${FCOMMON_OPT} -loongson3 -static")
158 if (${CORE} STREQUAL "LOONGSON3B")
159 set(FCOMMON_OPT "${FCOMMON_OPT} -loongson3 -static")
163 set(FCOMMON_OPT "${FCOMMON_OPT} -m32")
165 set(FCOMMON_OPT "${FCOMMON_OPT} -m64")
170 set(FEXTRALIB "${FEXTRALIB} -lstdc++")
171 set(FCOMMON_OPT "${FCOMMON_OPT} -mp")
175 if (${F_COMPILER} STREQUAL "SUN")
176 set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_SUN")
177 if (${ARCH} STREQUAL "x86")
178 set(FCOMMON_OPT "${FCOMMON_OPT} -m32")
180 set(FCOMMON_OPT "${FCOMMON_OPT} -m64")
183 set(FCOMMON_OPT "${FCOMMON_OPT} -xopenmp=parallel")
187 if (${F_COMPILER} STREQUAL "COMPAQ")
188 set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_COMPAQ")
190 set(FCOMMON_OPT "${FCOMMON_OPT} -openmp")
194 # from the root Makefile - this is for lapack-netlib to compile the correct secnd file.
195 if (${F_COMPILER} STREQUAL "GFORTRAN")
196 set(TIMER "INT_ETIME")