--- /dev/null
+##\r
+## Author: Hank Anderson <hank@statease.com>\r
+## Description: Ported from portion of OpenBLAS/Makefile.system\r
+## Sets Fortran related variables.\r
+\r
+if (${Fortran_COMPILER_NAME} STREQUAL "G77")\r
+ set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_G77")\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -Wall")\r
+ if (NOT NO_BINARY_MODE)\r
+ if (BINARY64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -m64")\r
+ else ()\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -m32")\r
+ endif ()\r
+ endif ()\r
+endif ()\r
+\r
+if (${Fortran_COMPILER_NAME} STREQUAL "G95")\r
+ set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_G95")\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -Wall")\r
+ if (NOT NO_BINARY_MODE)\r
+ if (BINARY64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -m64")\r
+ else ()\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -m32")\r
+ endif ()\r
+ endif ()\r
+endif ()\r
+\r
+if (${Fortran_COMPILER_NAME} STREQUAL "GFORTRAN")\r
+ set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_GFORT")\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -Wall")\r
+ #Don't include -lgfortran, when NO_LAPACK=1 or lsbcc\r
+ if (NOT NO_LAPACK)\r
+ set(EXTRALIB "{EXTRALIB} -lgfortran")\r
+ endif ()\r
+ if (NO_BINARY_MODE)\r
+ if (${ARCH} STREQUAL "mips64")\r
+ if (BINARY64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=64")\r
+ else ()\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=n32")\r
+ endif ()\r
+ endif ()\r
+ else ()\r
+ if (BINARY64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -m64")\r
+ if (INTERFACE64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -fdefault-integer-8")\r
+ endif ()\r
+ else ()\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -m32")\r
+ endif ()\r
+ endif ()\r
+\r
+ if (USE_OPENMP)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -fopenmp")\r
+ endif ()\r
+endif ()\r
+\r
+if (${Fortran_COMPILER_NAME} STREQUAL "INTEL")\r
+ set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_INTEL")\r
+ if (INTERFACE64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -i8")\r
+ endif ()\r
+ if (USE_OPENMP)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -openmp")\r
+ endif ()\r
+endif ()\r
+\r
+if (${Fortran_COMPILER_NAME} STREQUAL "FUJITSU")\r
+ set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_FUJITSU")\r
+ if (USE_OPENMP)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -openmp")\r
+ endif ()\r
+endif ()\r
+\r
+if (${Fortran_COMPILER_NAME} STREQUAL "IBM")\r
+ set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_IBM")\r
+ # FCOMMON_OPT += -qarch=440\r
+ if (BINARY64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -q64")\r
+ if (INTERFACE64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -qintsize=8")\r
+ endif ()\r
+ else ()\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -q32")\r
+ endif ()\r
+ if (USE_OPENMP)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -openmp")\r
+ endif ()\r
+endif ()\r
+\r
+if (${Fortran_COMPILER_NAME} STREQUAL "PGI")\r
+ set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_PGI")\r
+ set(COMMON_PROF "${COMMON_PROF} -DPGICOMPILER")\r
+ if (BINARY64)\r
+ if (INTERFACE64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -i8")\r
+ endif ()\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -tp p7-64")\r
+ else ()\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -tp p7")\r
+ endif ()\r
+ if (USE_OPENMP)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -mp")\r
+ endif ()\r
+endif ()\r
+\r
+if (${Fortran_COMPILER_NAME} STREQUAL "PATHSCALE")\r
+ set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_PATHSCALE")\r
+ if (BINARY64)\r
+ if (INTERFACE64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -i8")\r
+ endif ()\r
+ endif ()\r
+\r
+ if (NOT ${ARCH} STREQUAL "mips64")\r
+ if (NOT BINARY64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -m32")\r
+ else ()\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -m64")\r
+ endif ()\r
+ else ()\r
+ if (BINARY64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=64")\r
+ else ()\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=n32")\r
+ endif ()\r
+ endif ()\r
+\r
+ if (USE_OPENMP)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -mp")\r
+ endif ()\r
+endif ()\r
+\r
+if (${Fortran_COMPILER_NAME} STREQUAL "OPEN64")\r
+\r
+ set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_OPEN64")\r
+ if (BINARY64)\r
+ if (INTERFACE64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -i8")\r
+ endif ()\r
+ endif ()\r
+\r
+ if (${ARCH} STREQUAL "mips64")\r
+\r
+ if (NOT BINARY64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -n32")\r
+ else ()\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -n64")\r
+ endif ()\r
+\r
+ if (${CORE} STREQUAL "LOONGSON3A")\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -loongson3 -static")\r
+ endif ()\r
+\r
+ if (${CORE} STREQUAL "LOONGSON3B")\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -loongson3 -static")\r
+ endif ()\r
+ else ()\r
+ if (NOT BINARY64)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -m32")\r
+ else ()\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -m64")\r
+ endif ()\r
+ endif ()\r
+\r
+ if (USE_OPENMP)\r
+ set(FEXTRALIB "${FEXTRALIB} -lstdc++")\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -mp")\r
+ endif ()\r
+endif ()\r
+\r
+if (${Fortran_COMPILER_NAME} "SUN")\r
+ set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_SUN")\r
+ if (${ARCH} STREQUAL "x86")\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -m32")\r
+ else ()\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -m64")\r
+ endif ()\r
+ if (USE_OPENMP)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -xopenmp=parallel")\r
+ endif ()\r
+endif ()\r
+\r
+if (${Fortran_COMPILER_NAME} STREQUAL "COMPAQ")\r
+ set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_COMPAQ")\r
+ if (USE_OPENMP)\r
+ set(FCOMMON_OPT "${FCOMMON_OPT} -openmp")\r
+ endif ()\r
+endif ()\r
+\r