From 560c96a9a7e96461bd29cf2b984dc26655d98fb7 Mon Sep 17 00:00:00 2001 From: Hank Anderson Date: Tue, 3 Feb 2015 15:11:15 -0600 Subject: [PATCH] Fixed newlines in some cmake files. --- cmake/arch.cmake | 230 ++++++++++++++-------------- cmake/cc.cmake | 206 ++++++++++++------------- cmake/fc.cmake | 386 +++++++++++++++++++++++------------------------ cmake/os.cmake | 204 ++++++++++++------------- 4 files changed, 513 insertions(+), 513 deletions(-) diff --git a/cmake/arch.cmake b/cmake/arch.cmake index 34beb71b3..d6fa3ed5d 100644 --- a/cmake/arch.cmake +++ b/cmake/arch.cmake @@ -1,115 +1,115 @@ -## -## Author: Hank Anderson -## Description: Ported from portion of OpenBLAS/Makefile.system -## Sets various variables based on architecture. - -if (${ARCH} STREQUAL "x86" OR ${ARCH} STREQUAL "x86_64") - - if (${ARCH} STREQUAL "x86") - if (NOT BINARY) - set(NO_BINARY_MODE 1) - endif () - endif () - - if (NOT NO_EXPRECISION) - if (${F_COMPILER} MATCHES "GFORTRAN") - # N.B. I'm not sure if CMake differentiates between GCC and LSB -hpa - if (${CMAKE_C_COMPILER} STREQUAL "GNU" OR ${CMAKE_C_COMPILER} STREQUAL "LSB") - set(EXPRECISION 1) - set(CCOMMON_OPT "${CCOMMON_OPT} -DEXPRECISION -m128bit-long-double") - set(FCOMMON_OPT "${FCOMMON_OPT} -m128bit-long-double") - endif () - if (${CMAKE_C_COMPILER} STREQUAL "Clang") - set(EXPRECISION 1) - set(CCOMMON_OPT "${CCOMMON_OPT} -DEXPRECISION") - set(FCOMMON_OPT "${FCOMMON_OPT} -m128bit-long-double") - endif () - endif () - endif () -endif () - -if (${CMAKE_C_COMPILER} STREQUAL "Intel") - set(CCOMMON_OPT "${CCOMMON_OPT} -wd981") -endif () - -if (USE_OPENMP) - - if (${CMAKE_C_COMPILER} STREQUAL "GNU" OR ${CMAKE_C_COMPILER} STREQUAL "LSB") - set(CCOMMON_OPT "${CCOMMON_OPT} -fopenmp") - endif () - - if (${CMAKE_C_COMPILER} STREQUAL "Clang") - message(WARNING "Clang doesn't support OpenMP yet.") - set(CCOMMON_OPT "${CCOMMON_OPT} -fopenmp") - endif () - - if (${CMAKE_C_COMPILER} STREQUAL "Intel") - set(CCOMMON_OPT "${CCOMMON_OPT} -openmp") - endif () - - if (${CMAKE_C_COMPILER} STREQUAL "PGI") - set(CCOMMON_OPT "${CCOMMON_OPT} -mp") - endif () - - if (${CMAKE_C_COMPILER} STREQUAL "OPEN64") - set(CCOMMON_OPT "${CCOMMON_OPT} -mp") - set(CEXTRALIB "${CEXTRALIB} -lstdc++") - endif () - - if (${CMAKE_C_COMPILER} STREQUAL "PATHSCALE") - set(CCOMMON_OPT "${CCOMMON_OPT} -mp") - endif () -endif () - - -if (DYNAMIC_ARCH) - if (${ARCH} STREQUAL "x86") - set(DYNAMIC_CORE "KATMAI COPPERMINE NORTHWOOD PRESCOTT BANIAS CORE2 PENRYN DUNNINGTON NEHALEM ATHLON OPTERON OPTERON_SSE3 BARCELONA BOBCAT ATOM NANO") - endif () - - if (${ARCH} STREQUAL "x86_64") - set(DYNAMIC_CORE "PRESCOTT CORE2 PENRYN DUNNINGTON NEHALEM OPTERON OPTERON_SSE3 BARCELONA BOBCAT ATOM NANO") - if (NOT NO_AVX) - set(DYNAMIC_CORE "${DYNAMIC_CORE} SANDYBRIDGE BULLDOZER PILEDRIVER STEAMROLLER") - endif () - if (NOT NO_AVX2) - set(DYNAMIC_CORE "${DYNAMIC_CORE} HASWELL") - endif () - endif () - - if (NOT DYNAMIC_CORE) - unset(DYNAMIC_ARCH) - endif () -endif () - -if (${ARCH} STREQUAL "ia64") - set(NO_BINARY_MODE 1) - set(BINARY_DEFINED 1) - - if (${F_COMPILER} MATCHES "GFORTRAN") - if (${CMAKE_C_COMPILER} STREQUAL "GNU") - # EXPRECISION = 1 - # CCOMMON_OPT += -DEXPRECISION - endif () - endif () -endif () - -if (${ARCH} STREQUAL "mips64") - set(NO_BINARY_MODE 1) -endif () - -if (${ARCH} STREQUAL "alpha") - set(NO_BINARY_MODE 1) - set(BINARY_DEFINED 1) -endif () - -if (${ARCH} STREQUAL "arm") - set(NO_BINARY_MODE 1) - set(BINARY_DEFINED 1) -endif () - -if (${ARCH} STREQUAL "arm64") - set(NO_BINARY_MODE 1) - set(BINARY_DEFINED 1) -endif () - +## +## Author: Hank Anderson +## Description: Ported from portion of OpenBLAS/Makefile.system +## Sets various variables based on architecture. + +if (${ARCH} STREQUAL "x86" OR ${ARCH} STREQUAL "x86_64") + + if (${ARCH} STREQUAL "x86") + if (NOT BINARY) + set(NO_BINARY_MODE 1) + endif () + endif () + + if (NOT NO_EXPRECISION) + if (${F_COMPILER} MATCHES "GFORTRAN") + # N.B. I'm not sure if CMake differentiates between GCC and LSB -hpa + if (${CMAKE_C_COMPILER} STREQUAL "GNU" OR ${CMAKE_C_COMPILER} STREQUAL "LSB") + set(EXPRECISION 1) + set(CCOMMON_OPT "${CCOMMON_OPT} -DEXPRECISION -m128bit-long-double") + set(FCOMMON_OPT "${FCOMMON_OPT} -m128bit-long-double") + endif () + if (${CMAKE_C_COMPILER} STREQUAL "Clang") + set(EXPRECISION 1) + set(CCOMMON_OPT "${CCOMMON_OPT} -DEXPRECISION") + set(FCOMMON_OPT "${FCOMMON_OPT} -m128bit-long-double") + endif () + endif () + endif () +endif () + +if (${CMAKE_C_COMPILER} STREQUAL "Intel") + set(CCOMMON_OPT "${CCOMMON_OPT} -wd981") +endif () + +if (USE_OPENMP) + + if (${CMAKE_C_COMPILER} STREQUAL "GNU" OR ${CMAKE_C_COMPILER} STREQUAL "LSB") + set(CCOMMON_OPT "${CCOMMON_OPT} -fopenmp") + endif () + + if (${CMAKE_C_COMPILER} STREQUAL "Clang") + message(WARNING "Clang doesn't support OpenMP yet.") + set(CCOMMON_OPT "${CCOMMON_OPT} -fopenmp") + endif () + + if (${CMAKE_C_COMPILER} STREQUAL "Intel") + set(CCOMMON_OPT "${CCOMMON_OPT} -openmp") + endif () + + if (${CMAKE_C_COMPILER} STREQUAL "PGI") + set(CCOMMON_OPT "${CCOMMON_OPT} -mp") + endif () + + if (${CMAKE_C_COMPILER} STREQUAL "OPEN64") + set(CCOMMON_OPT "${CCOMMON_OPT} -mp") + set(CEXTRALIB "${CEXTRALIB} -lstdc++") + endif () + + if (${CMAKE_C_COMPILER} STREQUAL "PATHSCALE") + set(CCOMMON_OPT "${CCOMMON_OPT} -mp") + endif () +endif () + + +if (DYNAMIC_ARCH) + if (${ARCH} STREQUAL "x86") + set(DYNAMIC_CORE "KATMAI COPPERMINE NORTHWOOD PRESCOTT BANIAS CORE2 PENRYN DUNNINGTON NEHALEM ATHLON OPTERON OPTERON_SSE3 BARCELONA BOBCAT ATOM NANO") + endif () + + if (${ARCH} STREQUAL "x86_64") + set(DYNAMIC_CORE "PRESCOTT CORE2 PENRYN DUNNINGTON NEHALEM OPTERON OPTERON_SSE3 BARCELONA BOBCAT ATOM NANO") + if (NOT NO_AVX) + set(DYNAMIC_CORE "${DYNAMIC_CORE} SANDYBRIDGE BULLDOZER PILEDRIVER STEAMROLLER") + endif () + if (NOT NO_AVX2) + set(DYNAMIC_CORE "${DYNAMIC_CORE} HASWELL") + endif () + endif () + + if (NOT DYNAMIC_CORE) + unset(DYNAMIC_ARCH) + endif () +endif () + +if (${ARCH} STREQUAL "ia64") + set(NO_BINARY_MODE 1) + set(BINARY_DEFINED 1) + + if (${F_COMPILER} MATCHES "GFORTRAN") + if (${CMAKE_C_COMPILER} STREQUAL "GNU") + # EXPRECISION = 1 + # CCOMMON_OPT += -DEXPRECISION + endif () + endif () +endif () + +if (${ARCH} STREQUAL "mips64") + set(NO_BINARY_MODE 1) +endif () + +if (${ARCH} STREQUAL "alpha") + set(NO_BINARY_MODE 1) + set(BINARY_DEFINED 1) +endif () + +if (${ARCH} STREQUAL "arm") + set(NO_BINARY_MODE 1) + set(BINARY_DEFINED 1) +endif () + +if (${ARCH} STREQUAL "arm64") + set(NO_BINARY_MODE 1) + set(BINARY_DEFINED 1) +endif () + diff --git a/cmake/cc.cmake b/cmake/cc.cmake index 28daa72dc..de196524f 100644 --- a/cmake/cc.cmake +++ b/cmake/cc.cmake @@ -1,103 +1,103 @@ -## -## Author: Hank Anderson -## Description: Ported from portion of OpenBLAS/Makefile.system -## Sets C related variables. - -if (${CMAKE_C_COMPILER} STREQUAL "GNU" OR ${CMAKE_C_COMPILER} STREQUAL "LSB" OR ${CMAKE_C_COMPILER} STREQUAL "Clang") - - set(CCOMMON_OPT "${CCOMMON_OPT} -Wall") - set(COMMON_PROF "${COMMON_PROF} -fno-inline") - set(NO_UNINITIALIZED_WARN "-Wno-uninitialized") - - if (QUIET_MAKE) - set(CCOMMON_OPT "${CCOMMON_OPT} ${NO_UNINITIALIZED_WARN} -Wno-unused") - endif () - - if (NO_BINARY_MODE) - - if (${ARCH} STREQUAL "mips64") - if (BINARY64) - set(CCOMMON_OPT "${CCOMMON_OPT} -mabi=64") - else () - set(CCOMMON_OPT "${CCOMMON_OPT} -mabi=n32") - endif () - set(BINARY_DEFINED 1) - endif () - - if (${CORE} STREQUAL "LOONGSON3A") - set(CCOMMON_OPT "${CCOMMON_OPT} -march=mips64") - set(FCOMMON_OPT "${FCOMMON_OPT} -march=mips64") - endif () - - if (${CORE} STREQUAL "LOONGSON3B") - set(CCOMMON_OPT "${CCOMMON_OPT} -march=mips64") - set(FCOMMON_OPT "${FCOMMON_OPT} -march=mips64") - endif () - - if (${OSNAME} STREQUAL "AIX") - set(BINARY_DEFINED 1) - endif () - endif () - - if (NOT BINARY_DEFINED) - if (BINARY64) - set(CCOMMON_OPT "${CCOMMON_OPT} -m64") - else () - set(CCOMMON_OPT "${CCOMMON_OPT} -m32") - endif () - endif () -endif () - -if (${CMAKE_C_COMPILER} STREQUAL "PGI") - if (BINARY64) - set(CCOMMON_OPT "${CCOMMON_OPT} -tp p7-64") - else () - set(CCOMMON_OPT "${CCOMMON_OPT} -tp p7") - endif () -endif () - -if (${CMAKE_C_COMPILER} STREQUAL "PATHSCALE") - if (BINARY64) - set(CCOMMON_OPT "${CCOMMON_OPT} -m64") - else () - set(CCOMMON_OPT "${CCOMMON_OPT} -m32") - endif () -endif () - -if (${CMAKE_C_COMPILER} STREQUAL "OPEN64") - - if (${ARCH} STREQUAL "mips64") - - if (NOT BINARY64) - set(CCOMMON_OPT "${CCOMMON_OPT} -n32") - else () - set(CCOMMON_OPT "${CCOMMON_OPT} -n64") - endif () - - if (${CORE} STREQUAL "LOONGSON3A") - set(CCOMMON_OPT "${CCOMMON_OPT} -loongson3 -static") - endif () - - if (${CORE} STREQUAL "LOONGSON3B") - set(CCOMMON_OPT "${CCOMMON_OPT} -loongson3 -static") - endif () - - else () - - if (BINARY64) - set(CCOMMON_OPT "${CCOMMON_OPT} -m32") - else () - set(CCOMMON_OPT "${CCOMMON_OPT} -m64") - endif () - endif () -endif () - -if (${CMAKE_C_COMPILER} STREQUAL "SUN") - set(CCOMMON_OPT "${CCOMMON_OPT} -w") - if (${ARCH} STREQUAL "x86") - set(CCOMMON_OPT "${CCOMMON_OPT} -m32") - else () - set(FCOMMON_OPT "${FCOMMON_OPT} -m64") - endif () -endif () - +## +## Author: Hank Anderson +## Description: Ported from portion of OpenBLAS/Makefile.system +## Sets C related variables. + +if (${CMAKE_C_COMPILER} STREQUAL "GNU" OR ${CMAKE_C_COMPILER} STREQUAL "LSB" OR ${CMAKE_C_COMPILER} STREQUAL "Clang") + + set(CCOMMON_OPT "${CCOMMON_OPT} -Wall") + set(COMMON_PROF "${COMMON_PROF} -fno-inline") + set(NO_UNINITIALIZED_WARN "-Wno-uninitialized") + + if (QUIET_MAKE) + set(CCOMMON_OPT "${CCOMMON_OPT} ${NO_UNINITIALIZED_WARN} -Wno-unused") + endif () + + if (NO_BINARY_MODE) + + if (${ARCH} STREQUAL "mips64") + if (BINARY64) + set(CCOMMON_OPT "${CCOMMON_OPT} -mabi=64") + else () + set(CCOMMON_OPT "${CCOMMON_OPT} -mabi=n32") + endif () + set(BINARY_DEFINED 1) + endif () + + if (${CORE} STREQUAL "LOONGSON3A") + set(CCOMMON_OPT "${CCOMMON_OPT} -march=mips64") + set(FCOMMON_OPT "${FCOMMON_OPT} -march=mips64") + endif () + + if (${CORE} STREQUAL "LOONGSON3B") + set(CCOMMON_OPT "${CCOMMON_OPT} -march=mips64") + set(FCOMMON_OPT "${FCOMMON_OPT} -march=mips64") + endif () + + if (${OSNAME} STREQUAL "AIX") + set(BINARY_DEFINED 1) + endif () + endif () + + if (NOT BINARY_DEFINED) + if (BINARY64) + set(CCOMMON_OPT "${CCOMMON_OPT} -m64") + else () + set(CCOMMON_OPT "${CCOMMON_OPT} -m32") + endif () + endif () +endif () + +if (${CMAKE_C_COMPILER} STREQUAL "PGI") + if (BINARY64) + set(CCOMMON_OPT "${CCOMMON_OPT} -tp p7-64") + else () + set(CCOMMON_OPT "${CCOMMON_OPT} -tp p7") + endif () +endif () + +if (${CMAKE_C_COMPILER} STREQUAL "PATHSCALE") + if (BINARY64) + set(CCOMMON_OPT "${CCOMMON_OPT} -m64") + else () + set(CCOMMON_OPT "${CCOMMON_OPT} -m32") + endif () +endif () + +if (${CMAKE_C_COMPILER} STREQUAL "OPEN64") + + if (${ARCH} STREQUAL "mips64") + + if (NOT BINARY64) + set(CCOMMON_OPT "${CCOMMON_OPT} -n32") + else () + set(CCOMMON_OPT "${CCOMMON_OPT} -n64") + endif () + + if (${CORE} STREQUAL "LOONGSON3A") + set(CCOMMON_OPT "${CCOMMON_OPT} -loongson3 -static") + endif () + + if (${CORE} STREQUAL "LOONGSON3B") + set(CCOMMON_OPT "${CCOMMON_OPT} -loongson3 -static") + endif () + + else () + + if (BINARY64) + set(CCOMMON_OPT "${CCOMMON_OPT} -m32") + else () + set(CCOMMON_OPT "${CCOMMON_OPT} -m64") + endif () + endif () +endif () + +if (${CMAKE_C_COMPILER} STREQUAL "SUN") + set(CCOMMON_OPT "${CCOMMON_OPT} -w") + if (${ARCH} STREQUAL "x86") + set(CCOMMON_OPT "${CCOMMON_OPT} -m32") + else () + set(FCOMMON_OPT "${FCOMMON_OPT} -m64") + endif () +endif () + diff --git a/cmake/fc.cmake b/cmake/fc.cmake index d7215866c..a47865b63 100644 --- a/cmake/fc.cmake +++ b/cmake/fc.cmake @@ -1,193 +1,193 @@ -## -## Author: Hank Anderson -## Description: Ported from portion of OpenBLAS/Makefile.system -## Sets Fortran related variables. - -if (${F_COMPILER} STREQUAL "G77") - set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_G77") - set(FCOMMON_OPT "${FCOMMON_OPT} -Wall") - if (NOT NO_BINARY_MODE) - if (BINARY64) - set(FCOMMON_OPT "${FCOMMON_OPT} -m64") - else () - set(FCOMMON_OPT "${FCOMMON_OPT} -m32") - endif () - endif () -endif () - -if (${F_COMPILER} STREQUAL "G95") - set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_G95") - set(FCOMMON_OPT "${FCOMMON_OPT} -Wall") - if (NOT NO_BINARY_MODE) - if (BINARY64) - set(FCOMMON_OPT "${FCOMMON_OPT} -m64") - else () - set(FCOMMON_OPT "${FCOMMON_OPT} -m32") - endif () - endif () -endif () - -if (${F_COMPILER} STREQUAL "GFORTRAN") - set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_GFORT") - set(FCOMMON_OPT "${FCOMMON_OPT} -Wall") - #Don't include -lgfortran, when NO_LAPACK=1 or lsbcc - if (NOT NO_LAPACK) - set(EXTRALIB "{EXTRALIB} -lgfortran") - endif () - if (NO_BINARY_MODE) - if (${ARCH} STREQUAL "mips64") - if (BINARY64) - set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=64") - else () - set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=n32") - endif () - endif () - else () - if (BINARY64) - set(FCOMMON_OPT "${FCOMMON_OPT} -m64") - if (INTERFACE64) - set(FCOMMON_OPT "${FCOMMON_OPT} -fdefault-integer-8") - endif () - else () - set(FCOMMON_OPT "${FCOMMON_OPT} -m32") - endif () - endif () - - if (USE_OPENMP) - set(FCOMMON_OPT "${FCOMMON_OPT} -fopenmp") - endif () -endif () - -if (${F_COMPILER} STREQUAL "INTEL") - set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_INTEL") - if (INTERFACE64) - set(FCOMMON_OPT "${FCOMMON_OPT} -i8") - endif () - if (USE_OPENMP) - set(FCOMMON_OPT "${FCOMMON_OPT} -openmp") - endif () -endif () - -if (${F_COMPILER} STREQUAL "FUJITSU") - set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_FUJITSU") - if (USE_OPENMP) - set(FCOMMON_OPT "${FCOMMON_OPT} -openmp") - endif () -endif () - -if (${F_COMPILER} STREQUAL "IBM") - set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_IBM") - # FCOMMON_OPT += -qarch=440 - if (BINARY64) - set(FCOMMON_OPT "${FCOMMON_OPT} -q64") - if (INTERFACE64) - set(FCOMMON_OPT "${FCOMMON_OPT} -qintsize=8") - endif () - else () - set(FCOMMON_OPT "${FCOMMON_OPT} -q32") - endif () - if (USE_OPENMP) - set(FCOMMON_OPT "${FCOMMON_OPT} -openmp") - endif () -endif () - -if (${F_COMPILER} STREQUAL "PGI") - set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_PGI") - set(COMMON_PROF "${COMMON_PROF} -DPGICOMPILER") - if (BINARY64) - if (INTERFACE64) - set(FCOMMON_OPT "${FCOMMON_OPT} -i8") - endif () - set(FCOMMON_OPT "${FCOMMON_OPT} -tp p7-64") - else () - set(FCOMMON_OPT "${FCOMMON_OPT} -tp p7") - endif () - if (USE_OPENMP) - set(FCOMMON_OPT "${FCOMMON_OPT} -mp") - endif () -endif () - -if (${F_COMPILER} STREQUAL "PATHSCALE") - set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_PATHSCALE") - if (BINARY64) - if (INTERFACE64) - set(FCOMMON_OPT "${FCOMMON_OPT} -i8") - endif () - endif () - - if (NOT ${ARCH} STREQUAL "mips64") - if (NOT BINARY64) - set(FCOMMON_OPT "${FCOMMON_OPT} -m32") - else () - set(FCOMMON_OPT "${FCOMMON_OPT} -m64") - endif () - else () - if (BINARY64) - set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=64") - else () - set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=n32") - endif () - endif () - - if (USE_OPENMP) - set(FCOMMON_OPT "${FCOMMON_OPT} -mp") - endif () -endif () - -if (${F_COMPILER} STREQUAL "OPEN64") - - set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_OPEN64") - if (BINARY64) - if (INTERFACE64) - set(FCOMMON_OPT "${FCOMMON_OPT} -i8") - endif () - endif () - - if (${ARCH} STREQUAL "mips64") - - if (NOT BINARY64) - set(FCOMMON_OPT "${FCOMMON_OPT} -n32") - else () - set(FCOMMON_OPT "${FCOMMON_OPT} -n64") - endif () - - if (${CORE} STREQUAL "LOONGSON3A") - set(FCOMMON_OPT "${FCOMMON_OPT} -loongson3 -static") - endif () - - if (${CORE} STREQUAL "LOONGSON3B") - set(FCOMMON_OPT "${FCOMMON_OPT} -loongson3 -static") - endif () - else () - if (NOT BINARY64) - set(FCOMMON_OPT "${FCOMMON_OPT} -m32") - else () - set(FCOMMON_OPT "${FCOMMON_OPT} -m64") - endif () - endif () - - if (USE_OPENMP) - set(FEXTRALIB "${FEXTRALIB} -lstdc++") - set(FCOMMON_OPT "${FCOMMON_OPT} -mp") - endif () -endif () - -if (${F_COMPILER} STREQUAL "SUN") - set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_SUN") - if (${ARCH} STREQUAL "x86") - set(FCOMMON_OPT "${FCOMMON_OPT} -m32") - else () - set(FCOMMON_OPT "${FCOMMON_OPT} -m64") - endif () - if (USE_OPENMP) - set(FCOMMON_OPT "${FCOMMON_OPT} -xopenmp=parallel") - endif () -endif () - -if (${F_COMPILER} STREQUAL "COMPAQ") - set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_COMPAQ") - if (USE_OPENMP) - set(FCOMMON_OPT "${FCOMMON_OPT} -openmp") - endif () -endif () - +## +## Author: Hank Anderson +## Description: Ported from portion of OpenBLAS/Makefile.system +## Sets Fortran related variables. + +if (${F_COMPILER} STREQUAL "G77") + set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_G77") + set(FCOMMON_OPT "${FCOMMON_OPT} -Wall") + if (NOT NO_BINARY_MODE) + if (BINARY64) + set(FCOMMON_OPT "${FCOMMON_OPT} -m64") + else () + set(FCOMMON_OPT "${FCOMMON_OPT} -m32") + endif () + endif () +endif () + +if (${F_COMPILER} STREQUAL "G95") + set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_G95") + set(FCOMMON_OPT "${FCOMMON_OPT} -Wall") + if (NOT NO_BINARY_MODE) + if (BINARY64) + set(FCOMMON_OPT "${FCOMMON_OPT} -m64") + else () + set(FCOMMON_OPT "${FCOMMON_OPT} -m32") + endif () + endif () +endif () + +if (${F_COMPILER} STREQUAL "GFORTRAN") + set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_GFORT") + set(FCOMMON_OPT "${FCOMMON_OPT} -Wall") + #Don't include -lgfortran, when NO_LAPACK=1 or lsbcc + if (NOT NO_LAPACK) + set(EXTRALIB "{EXTRALIB} -lgfortran") + endif () + if (NO_BINARY_MODE) + if (${ARCH} STREQUAL "mips64") + if (BINARY64) + set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=64") + else () + set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=n32") + endif () + endif () + else () + if (BINARY64) + set(FCOMMON_OPT "${FCOMMON_OPT} -m64") + if (INTERFACE64) + set(FCOMMON_OPT "${FCOMMON_OPT} -fdefault-integer-8") + endif () + else () + set(FCOMMON_OPT "${FCOMMON_OPT} -m32") + endif () + endif () + + if (USE_OPENMP) + set(FCOMMON_OPT "${FCOMMON_OPT} -fopenmp") + endif () +endif () + +if (${F_COMPILER} STREQUAL "INTEL") + set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_INTEL") + if (INTERFACE64) + set(FCOMMON_OPT "${FCOMMON_OPT} -i8") + endif () + if (USE_OPENMP) + set(FCOMMON_OPT "${FCOMMON_OPT} -openmp") + endif () +endif () + +if (${F_COMPILER} STREQUAL "FUJITSU") + set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_FUJITSU") + if (USE_OPENMP) + set(FCOMMON_OPT "${FCOMMON_OPT} -openmp") + endif () +endif () + +if (${F_COMPILER} STREQUAL "IBM") + set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_IBM") + # FCOMMON_OPT += -qarch=440 + if (BINARY64) + set(FCOMMON_OPT "${FCOMMON_OPT} -q64") + if (INTERFACE64) + set(FCOMMON_OPT "${FCOMMON_OPT} -qintsize=8") + endif () + else () + set(FCOMMON_OPT "${FCOMMON_OPT} -q32") + endif () + if (USE_OPENMP) + set(FCOMMON_OPT "${FCOMMON_OPT} -openmp") + endif () +endif () + +if (${F_COMPILER} STREQUAL "PGI") + set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_PGI") + set(COMMON_PROF "${COMMON_PROF} -DPGICOMPILER") + if (BINARY64) + if (INTERFACE64) + set(FCOMMON_OPT "${FCOMMON_OPT} -i8") + endif () + set(FCOMMON_OPT "${FCOMMON_OPT} -tp p7-64") + else () + set(FCOMMON_OPT "${FCOMMON_OPT} -tp p7") + endif () + if (USE_OPENMP) + set(FCOMMON_OPT "${FCOMMON_OPT} -mp") + endif () +endif () + +if (${F_COMPILER} STREQUAL "PATHSCALE") + set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_PATHSCALE") + if (BINARY64) + if (INTERFACE64) + set(FCOMMON_OPT "${FCOMMON_OPT} -i8") + endif () + endif () + + if (NOT ${ARCH} STREQUAL "mips64") + if (NOT BINARY64) + set(FCOMMON_OPT "${FCOMMON_OPT} -m32") + else () + set(FCOMMON_OPT "${FCOMMON_OPT} -m64") + endif () + else () + if (BINARY64) + set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=64") + else () + set(FCOMMON_OPT "${FCOMMON_OPT} -mabi=n32") + endif () + endif () + + if (USE_OPENMP) + set(FCOMMON_OPT "${FCOMMON_OPT} -mp") + endif () +endif () + +if (${F_COMPILER} STREQUAL "OPEN64") + + set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_OPEN64") + if (BINARY64) + if (INTERFACE64) + set(FCOMMON_OPT "${FCOMMON_OPT} -i8") + endif () + endif () + + if (${ARCH} STREQUAL "mips64") + + if (NOT BINARY64) + set(FCOMMON_OPT "${FCOMMON_OPT} -n32") + else () + set(FCOMMON_OPT "${FCOMMON_OPT} -n64") + endif () + + if (${CORE} STREQUAL "LOONGSON3A") + set(FCOMMON_OPT "${FCOMMON_OPT} -loongson3 -static") + endif () + + if (${CORE} STREQUAL "LOONGSON3B") + set(FCOMMON_OPT "${FCOMMON_OPT} -loongson3 -static") + endif () + else () + if (NOT BINARY64) + set(FCOMMON_OPT "${FCOMMON_OPT} -m32") + else () + set(FCOMMON_OPT "${FCOMMON_OPT} -m64") + endif () + endif () + + if (USE_OPENMP) + set(FEXTRALIB "${FEXTRALIB} -lstdc++") + set(FCOMMON_OPT "${FCOMMON_OPT} -mp") + endif () +endif () + +if (${F_COMPILER} STREQUAL "SUN") + set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_SUN") + if (${ARCH} STREQUAL "x86") + set(FCOMMON_OPT "${FCOMMON_OPT} -m32") + else () + set(FCOMMON_OPT "${FCOMMON_OPT} -m64") + endif () + if (USE_OPENMP) + set(FCOMMON_OPT "${FCOMMON_OPT} -xopenmp=parallel") + endif () +endif () + +if (${F_COMPILER} STREQUAL "COMPAQ") + set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_COMPAQ") + if (USE_OPENMP) + set(FCOMMON_OPT "${FCOMMON_OPT} -openmp") + endif () +endif () + diff --git a/cmake/os.cmake b/cmake/os.cmake index c333cdbe0..cf36ef62f 100644 --- a/cmake/os.cmake +++ b/cmake/os.cmake @@ -1,102 +1,102 @@ -## -## Author: Hank Anderson -## Description: Ported from portion of OpenBLAS/Makefile.system -## Detects the OS and sets appropriate variables. - -if (${CMAKE_SYSTEM_NAME} STREQUAL "Darwin") - set(ENV{MACOSX_DEPLOYMENT_TARGET} "10.2") # TODO: should be exported as an env var - set(MD5SUM "md5 -r") -endif () - -if (${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") - set(MD5SUM "md5 -r") -endif () - -if (${CMAKE_SYSTEM_NAME} STREQUAL "NetBSD") - set(MD5SUM "md5 -n") -endif () - -if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux") - set(EXTRALIB "${EXTRALIB} -lm") - set(NO_EXPRECISION 1) -endif () - -if (${CMAKE_SYSTEM_NAME} STREQUAL "AIX") - set(EXTRALIB "${EXTRALIB} -lm") -endif () - -# TODO: this is probably meant for mingw, not other windows compilers -if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") - - set(NEED_PIC 0) - set(NO_EXPRECISION 1) - - set(EXTRALIB "${EXTRALIB} -defaultlib:advapi32") - - # probably not going to use these - set(SUFFIX "obj") - set(PSUFFIX "pobj") - set(LIBSUFFIX "a") - - if (${CMAKE_C_COMPILER_ID} STREQUAL "Clang") - set(CCOMMON_OPT "${CCOMMON_OPT} -DMS_ABI") - endif () - - if (${CMAKE_C_COMPILER_ID} STREQUAL "GNU") - - # Test for supporting MS_ABI - # removed string parsing in favor of CMake's version comparison -hpa - execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION) - if (${GCC_VERSION} VERSION_GREATER 4.7 OR ${GCC_VERSION} VERSION_EQUAL 4.7) - # GCC Version >=4.7 - # It is compatible with MSVC ABI. - set(CCOMMON_OPT "${CCOMMON_OPT} -DMS_ABI") - endif () - endif () - - # Ensure the correct stack alignment on Win32 - # http://permalink.gmane.org/gmane.comp.lib.openblas.general/97 - if (${ARCH} STREQUAL "x86") - set(CCOMMON_OPT "${CCOMMON_OPT} -mincoming-stack-boundary=2") - set(FCOMMON_OPT "${FCOMMON_OPT} -mincoming-stack-boundary=2") - endif () - -endif () - -if (${CMAKE_SYSTEM_NAME} STREQUAL "Interix") - set(NEED_PIC 0) - set(NO_EXPRECISION 1) - - set(INTERIX_TOOL_DIR STREQUAL "/opt/gcc.3.3/i586-pc-interix3/bin") -endif () - -if (CYGWIN) - set(NEED_PIC 0) - set(NO_EXPRECISION 1) -endif () - -if (NOT ${CMAKE_SYSTEM_NAME} STREQUAL "Windows" AND NOT ${CMAKE_SYSTEM_NAME} STREQUAL "Interix") - if (SMP) - set(EXTRALIB "${EXTRALIB} -lpthread") - endif () -endif () - -if (QUAD_PRECISION) - set(CCOMMON_OPT "${CCOMMON_OPT} -DQUAD_PRECISION") - set(NO_EXPRECISION 1) -endif () - -if (${ARCH} STREQUAL "x86") - set(NO_EXPRECISION 1) -endif () - -if (UTEST_CHECK) - set(CCOMMON_OPT "${CCOMMON_OPT} -DUTEST_CHECK") - set(SANITY_CHECK 1) -endif () - -if (SANITY_CHECK) - # TODO: need some way to get $(*F) (target filename) - set(CCOMMON_OPT "${CCOMMON_OPT} -DSANITY_CHECK -DREFNAME=$(*F)f${BU}") -endif () - +## +## Author: Hank Anderson +## Description: Ported from portion of OpenBLAS/Makefile.system +## Detects the OS and sets appropriate variables. + +if (${CMAKE_SYSTEM_NAME} STREQUAL "Darwin") + set(ENV{MACOSX_DEPLOYMENT_TARGET} "10.2") # TODO: should be exported as an env var + set(MD5SUM "md5 -r") +endif () + +if (${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") + set(MD5SUM "md5 -r") +endif () + +if (${CMAKE_SYSTEM_NAME} STREQUAL "NetBSD") + set(MD5SUM "md5 -n") +endif () + +if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux") + set(EXTRALIB "${EXTRALIB} -lm") + set(NO_EXPRECISION 1) +endif () + +if (${CMAKE_SYSTEM_NAME} STREQUAL "AIX") + set(EXTRALIB "${EXTRALIB} -lm") +endif () + +# TODO: this is probably meant for mingw, not other windows compilers +if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows") + + set(NEED_PIC 0) + set(NO_EXPRECISION 1) + + set(EXTRALIB "${EXTRALIB} -defaultlib:advapi32") + + # probably not going to use these + set(SUFFIX "obj") + set(PSUFFIX "pobj") + set(LIBSUFFIX "a") + + if (${CMAKE_C_COMPILER_ID} STREQUAL "Clang") + set(CCOMMON_OPT "${CCOMMON_OPT} -DMS_ABI") + endif () + + if (${CMAKE_C_COMPILER_ID} STREQUAL "GNU") + + # Test for supporting MS_ABI + # removed string parsing in favor of CMake's version comparison -hpa + execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION) + if (${GCC_VERSION} VERSION_GREATER 4.7 OR ${GCC_VERSION} VERSION_EQUAL 4.7) + # GCC Version >=4.7 + # It is compatible with MSVC ABI. + set(CCOMMON_OPT "${CCOMMON_OPT} -DMS_ABI") + endif () + endif () + + # Ensure the correct stack alignment on Win32 + # http://permalink.gmane.org/gmane.comp.lib.openblas.general/97 + if (${ARCH} STREQUAL "x86") + set(CCOMMON_OPT "${CCOMMON_OPT} -mincoming-stack-boundary=2") + set(FCOMMON_OPT "${FCOMMON_OPT} -mincoming-stack-boundary=2") + endif () + +endif () + +if (${CMAKE_SYSTEM_NAME} STREQUAL "Interix") + set(NEED_PIC 0) + set(NO_EXPRECISION 1) + + set(INTERIX_TOOL_DIR STREQUAL "/opt/gcc.3.3/i586-pc-interix3/bin") +endif () + +if (CYGWIN) + set(NEED_PIC 0) + set(NO_EXPRECISION 1) +endif () + +if (NOT ${CMAKE_SYSTEM_NAME} STREQUAL "Windows" AND NOT ${CMAKE_SYSTEM_NAME} STREQUAL "Interix") + if (SMP) + set(EXTRALIB "${EXTRALIB} -lpthread") + endif () +endif () + +if (QUAD_PRECISION) + set(CCOMMON_OPT "${CCOMMON_OPT} -DQUAD_PRECISION") + set(NO_EXPRECISION 1) +endif () + +if (${ARCH} STREQUAL "x86") + set(NO_EXPRECISION 1) +endif () + +if (UTEST_CHECK) + set(CCOMMON_OPT "${CCOMMON_OPT} -DUTEST_CHECK") + set(SANITY_CHECK 1) +endif () + +if (SANITY_CHECK) + # TODO: need some way to get $(*F) (target filename) + set(CCOMMON_OPT "${CCOMMON_OPT} -DSANITY_CHECK -DREFNAME=$(*F)f${BU}") +endif () +