Ported more of Makefile.system to CMake.
This commit is contained in:
parent
e4bfbd8258
commit
e818ace11a
|
@ -117,13 +117,13 @@ endif ()
|
|||
unset(ARFLAGS)
|
||||
set(CPP "${COMPILER} -E")
|
||||
set(AR "${CROSS_SUFFIX}ar")
|
||||
set(AS "$(CROSS_SUFFIX)as")
|
||||
set(LD "$(CROSS_SUFFIX)ld")
|
||||
set(RANLIB "$(CROSS_SUFFIX)ranlib")
|
||||
set(NM "$(CROSS_SUFFIX)nm")
|
||||
set(DLLWRAP "$(CROSS_SUFFIX)dllwrap")
|
||||
set(OBJCOPY "$(CROSS_SUFFIX)objcopy")
|
||||
set(OBJCONV "$(CROSS_SUFFIX)objconv")
|
||||
set(AS "${CROSS_SUFFIX}as")
|
||||
set(LD "${CROSS_SUFFIX}ld")
|
||||
set(RANLIB "${CROSS_SUFFIX}ranlib")
|
||||
set(NM "${CROSS_SUFFIX}nm")
|
||||
set(DLLWRAP "${CROSS_SUFFIX}dllwrap")
|
||||
set(OBJCOPY "${CROSS_SUFFIX}objcopy")
|
||||
set(OBJCONV "${CROSS_SUFFIX}objconv")
|
||||
|
||||
# OS dependent settings
|
||||
include("${CMAKE_SOURCE_DIR}/cmake/os.cmake")
|
||||
|
@ -137,3 +137,193 @@ include("${CMAKE_SOURCE_DIR}/cmake/cc.cmake")
|
|||
# Fortran Compiler dependent settings
|
||||
include("${CMAKE_SOURCE_DIR}/cmake/fc.cmake")
|
||||
|
||||
if (BINARY64)
|
||||
if (INTERFACE64)
|
||||
# CCOMMON_OPT += -DUSE64BITINT
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
if (NEED_PIC)
|
||||
if (${CMAKE_C_COMPILER} STREQUAL "IBM")
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -qpic=large")
|
||||
else ()
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -fPIC")
|
||||
endif ()
|
||||
|
||||
if (${Fortran_COMPILER_NAME} STREQUAL "SUN")
|
||||
set(FCOMMON_OPT "${FCOMMON_OPT} -pic")
|
||||
else ()
|
||||
set(FCOMMON_OPT "${FCOMMON_OPT} -fPIC")
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
if (DYNAMIC_ARCH)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DDYNAMIC_ARCH")
|
||||
endif ()
|
||||
|
||||
if (NO_LAPACK)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_LAPACK")
|
||||
#Disable LAPACK C interface
|
||||
set(NO_LAPACKE 1)
|
||||
endif ()
|
||||
|
||||
if (NO_LAPACKE)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_LAPACKE")
|
||||
endif ()
|
||||
|
||||
if (NO_AVX)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_AVX")
|
||||
endif ()
|
||||
|
||||
if (${ARCH} STREQUAL "x86")
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_AVX")
|
||||
endif ()
|
||||
|
||||
if (NO_AVX2)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_AVX2")
|
||||
endif ()
|
||||
|
||||
if (SMP)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DSMP_SERVER")
|
||||
|
||||
if (${ARCH} STERQUAL "mips64")
|
||||
if (NOT ${CORE} STREQUAL "LOONGSON3B")
|
||||
set(USE_SIMPLE_THREADED_LEVEL3 1)
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
if (USE_OPENMP)
|
||||
# USE_SIMPLE_THREADED_LEVEL3 = 1
|
||||
# NO_AFFINITY = 1
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DUSE_OPENMP")
|
||||
endif ()
|
||||
|
||||
if (BIGNUMA)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DBIGNUMA")
|
||||
endif ()
|
||||
|
||||
endif ()
|
||||
|
||||
if (NO_WARMUP)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_WARMUP")
|
||||
endif ()
|
||||
|
||||
if (CONSISTENT_FPCSR)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DCONSISTENT_FPCSR")
|
||||
endif ()
|
||||
|
||||
# Only for development
|
||||
# set(CCOMMON_OPT "${CCOMMON_OPT} -DPARAMTEST")
|
||||
# set(CCOMMON_OPT "${CCOMMON_OPT} -DPREFETCHTEST")
|
||||
# set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_SWITCHING")
|
||||
# set(USE_PAPI 1)
|
||||
|
||||
if (USE_PAPI)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DUSE_PAPI")
|
||||
set(EXTRALIB "${EXTRALIB} -lpapi -lperfctr")
|
||||
endif ()
|
||||
|
||||
if (DYNAMIC_THREADS)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DDYNAMIC_THREADS")
|
||||
endif ()
|
||||
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DMAX_CPU_NUMBER=${NUM_THREADS}")
|
||||
|
||||
if (USE_SIMPLE_THREADED_LEVEL3)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DUSE_SIMPLE_THREADED_LEVEL3")
|
||||
endif ()
|
||||
|
||||
if (DEFINED LIBNAMESUFFIX)
|
||||
set(LIBPREFIX "libopenblas_${LIBNAMESUFFIX}")
|
||||
else ()
|
||||
set(LIBPREFIX "libopenblas")
|
||||
endif ()
|
||||
|
||||
if (NOT DEFINED SYMBOLPREFIX)
|
||||
set(SYMBOLPREFIX "")
|
||||
endif ()
|
||||
|
||||
if (NOT DEFINED SYMBOLSUFFIX)
|
||||
set(SYMBOLSUFFIX "")
|
||||
endif ()
|
||||
|
||||
set(KERNELDIR "${CMAKE_SOURCE_DIR}/kernel/${ARCH}")
|
||||
|
||||
# TODO: nead to convert these Makefiles
|
||||
# include ${CMAKE_SOURCE_DIR}/cmake/${ARCH}.cmake
|
||||
|
||||
# TODO: Need to figure out how to get $(*F) in cmake
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DASMNAME=${FU}$(*F) -DASMFNAME=${FU}$(*F)${BU} -DNAME=$(*F)${BU} -DCNAME=$(*F) -DCHAR_NAME=\"$(*F)${BU}\" -DCHAR_CNAME=\"$(*F)\"")
|
||||
|
||||
if (${CORE} STREQUAL "PPC440")
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DALLOC_QALLOC")
|
||||
endif ()
|
||||
|
||||
if (${CORE} STREQUAL "PPC440FP2")
|
||||
set(STATIC_ALLOCATION 1)
|
||||
endif ()
|
||||
|
||||
if (NOT ${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
||||
set(NO_AFFINITY 1)
|
||||
endif ()
|
||||
|
||||
if (NOT ${ARCH} STREQUAL "x86_64" AND NOT ${ARCH} STREQUAL "x86" AND NOT ${CORE} STREQUAL "LOONGSON3B")
|
||||
set(NO_AFFINITY 1)
|
||||
endif ()
|
||||
|
||||
if (NO_AFFINITY)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DNO_AFFINITY")
|
||||
endif ()
|
||||
|
||||
if (FUNCTION_PROFILE)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DFUNCTION_PROFILE")
|
||||
endif ()
|
||||
|
||||
if (HUGETLB_ALLOCATION)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DALLOC_HUGETLB")
|
||||
endif ()
|
||||
|
||||
if (DEFINED HUGETLBFILE_ALLOCATION)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DALLOC_HUGETLBFILE -DHUGETLB_FILE_NAME=${HUGETLBFILE_ALLOCATION})")
|
||||
endif ()
|
||||
|
||||
if (STATIC_ALLOCATION)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DALLOC_STATIC")
|
||||
endif ()
|
||||
|
||||
if (DEVICEDRIVER_ALLOCATION)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DALLOC_DEVICEDRIVER -DDEVICEDRIVER_NAME=\"/dev/mapper\"")
|
||||
endif ()
|
||||
|
||||
if (MIXED_MEMORY_ALLOCATION)
|
||||
set(CCOMMON_OPT "${CCOMMON_OPT} -DMIXED_MEMORY_ALLOCATION")
|
||||
endif ()
|
||||
|
||||
if (${OSNAME} STREQUAL "SunOS")
|
||||
set(TAR gtar)
|
||||
set(PATCH gpatch)
|
||||
set(GREP ggrep)
|
||||
else ()
|
||||
set(TAR tar)
|
||||
set(PATCH patch)
|
||||
set(GREP grep)
|
||||
endif ()
|
||||
|
||||
if (NOT DEFINED MD5SUM)
|
||||
set(MD5SUM md5sum)
|
||||
endif ()
|
||||
|
||||
set(AWK awk)
|
||||
|
||||
set(REVISION "-r${VERSION}")
|
||||
string(REGEX MATCH "[0-9]+\\." MAJOR_VERSION "${VERSION}")
|
||||
|
||||
if (DEBUG)
|
||||
set(COMMON_OPT "${COMMON_OPT} -g")
|
||||
endif ()
|
||||
|
||||
if (NOT DEFINED COMMON_OPT)
|
||||
set(COMMON_OPT "-O2")
|
||||
endif ()
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue