1
2#--------------------------------------------------------------------------
3# setting compilers, compiler options and MKL_HOME
4#--------------------------------------------------------------------------
5set(CMAKE_CXX_COMPILER mpicxx)
6set(CMAKE_C_COMPILER  mpicc)
7set(GNU_OPTS "-DADD_ -DINLINE_ALL=inline -D_TIMER_ -DUSE_MPI -DMPI_VERSION=3 -D_LINUX_")
8
9set(INTEL_OPTS "-g -malign-double -fomit-frame-pointer -ffast-math -fopenmp -O3 -msse4 -Drestrict=__restrict__ -finline-limit=1000 -fstrict-aliasing -funroll-all-loops -Wno-deprecated")
10set(CMAKE_CXX_FLAGS "$ENV{CXX_FLAGS} ${GNU_OPTS} ${INTEL_OPTS} -std=c++11 ")
11set(CMAKE_C_FLAGS "$ENV{CC_FLAGS} ${INTEL_OPTS} -std=c99 ")
12
13
14#--------------------------------------------------------------------------
15# below is common for INTEL compilers and MKL library
16#--------------------------------------------------------------------------
17set(ENABLE_OPENMP 1)
18set(HAVE_MPI 1)
19set(HAVE_SSE 1)
20set(HAVE_SSE2 1)
21set(HAVE_SSE3 1)
22set(HAVE_SSSE3 1)
23set(HAVE_SSE41 1)
24set(USE_PREFETCH 1)
25set(PREFETCH_AHEAD 10)
26set(HAVE_MKL 1)
27set(MKL_FOUND 1)
28set(HAVE_MKL_VML 1)
29
30set( CMAKE_FIND_ROOT_PATH
31 /usr/tce/packages/fftw/fftw-3.3.4-mvapich2-2.2-gcc-4.8-redhat/lib/
32 /usr/gapps/qmc/libs/INTEL/boost_1_62_0
33 /usr/lib64/
34 )
35
36# mkl 10.3.x
37include_directories(/usr/tce/packages/mkl/mkl-2017.1/include)
38set(LAPACK_LIBRARY -L/usr/tce/packages/mkl/mkl-2017.1/mkl/lib/intel64 -Wl,--no-as-needed -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lpthread -lm -ldl -lrt -Wl,-rpath=/usr/tce/packages/mkl/mkl-2017.1/mkl/lib/intel64)
39
40SET(CMAKE_CXX_LINK_SHARED_LIBRARY)
41SET(CMAKE_CXX_LINK_MODULE_LIBRARY)
42SET(CMAKE_C_LINK_SHARED_LIBRARY)
43SET(CMAKE_C_LINK_MODULE_LIBRARY)
44
45