qmcpack/config/LOP6_xlC_xlc.cmake

70 lines
2.8 KiB
CMake

# tool chain for huygens.sara.nl
# compile einspline library with the application
SET(CMAKE_SYSTEM_PROCESSOR "P5p")
SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG "-Wl,-blibpath:")
SET(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP ":")
# Files named "libfoo.a" may actually be shared libraries.
SET_PROPERTY(GLOBAL PROPERTY TARGET_ARCHIVES_MAY_BE_SHARED_LIBS 1)
#SET_PROPERTY(GLOBAL PROPERTY TARGET_SUPPORTS_SHARED_LIBS FALSE)
set(CMAKE_C_COMPILER /sara/sw/modules11/wrappers/sara/mpcc)
set(CMAKE_CXX_COMPILER /sara/sw/modules11/wrappers/sara/mpCC)
set(CMAKE_FIND_ROOT_PATH
/opt/ibmcmp/xlmass/5.0/
/opt/ibmcmp/xlf/12.1/
/home/jnkim/build/einspline/sles11_xl
/home/jnkim/build/fftw3.2/xlc64
/sara/sw/hdf5/1.6.7
)
# common flags for C/C++: architecture and object mode
SET(AIX_ARCH_FLAGS "-g -q64 -qarch=auto -qtune=auto -qcache=auto -D_GNU_SOURCE -DUSE_EVEN -DIBM -DINLINE_ALL= ")
SET(AIX_OPT_FLAGS "-O3 -qmaxmem=-1 -qkeyword=restrict -qinline -qunroll=yes -qprefetch -qlargepage -qsmp=omp -qthreaded")
#CXX flags
SET(AIX_CXX_FLAGS "-qsuppress=1540-1090:1540-1103:1540-1088:1540-0700")
#C flags
SET(AIX_C_FLAGS "-qlanglvl=stdc99")
#SET(AIX_CXX_COMMON_FLAGS "-qnoeh -qsuppress=1540-1090:1540-1103:1540-1088:1540-0700")
#SET(AIX_OPT_FLAGS "-O3 -Q -qmaxmem=-1 -qipa=inline -qinline -qlargepage -qprefetch -qstrict -qhot -qkeyword=restrict")
#SET(AIX_OPT_FLAGS "-g -O3 -qlargepage -qprefetch -qstrict -qhot -qkeyword=restrict")
#SET(AIX_OPT_FLAGS "-g -Q -qmaxmem=-1 -qlargepage -qprefetch -qkeyword=restrict")
#SET(AIX_F_FLAGS "-O3 -qmaxmem=-1 -qprefetch -qstrict -qhot")
######################################################################
#set the CXX flags: arch+common + opt
######################################################################
SET(CMAKE_CXX_FLAGS "${AIX_ARCH_FLAGS} ${AIX_OPT_FLAGS} ${AIX_CXX_FLAGS}")
SET(CMAKE_C_FLAGS "${AIX_ARCH_FLAGS} ${AIX_OPT_FLAGS} ${AIX_C_FLAGS}")
#SET(CMAKE_Fortran_FLAGS "${F_DEFINES} ${AIX_ARCH_FLAGS} ${AIX_F_FLAGS}")
#SET(CMAKE_Fortran_FLAGS_RELEASE ${CMAKE_Fortran_FLAGS})
SET(ENABLE_OPENMP 1)
SET(HAVE_MPI 1)
SET(HAVE_LIBESSL 1)
SET(ENABLE_FORTRAN 1)
SET(CMAKE_SHARED_LIBRARY_CREATE_Fortran_FLAGS "-G -Wl,-brtl,-bnoipath") # -shared
SET(CMAKE_SHARED_LIBRARY_LINK_Fortran_FLAGS "-Wl,-brtl,-bnoipath,-bexpall") # +s, flag for exe link to use shared lib
SET(CMAKE_SHARED_LIBRARY_Fortran_FLAGS " ")
SET(CMAKE_SHARED_MODULE_Fortran_FLAGS " ")
# CXX Compiler
IF(CMAKE_COMPILER_IS_GNUCXX)
SET(CMAKE_SHARED_LIBRARY_CREATE_CXX_FLAGS "-shared -Wl,-G") # -shared
ENDIF(CMAKE_COMPILER_IS_GNUCXX)
# C Compiler
IF(CMAKE_COMPILER_IS_GNUCC)
SET(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-shared -Wl,-G") # -shared
ENDIF(CMAKE_COMPILER_IS_GNUCC)
SET(XLF_LIBS -L/opt/ibmcmp/xlf/12.1/lib64 -lxlf90_r)
link_libraries(-L/sara/sw/lapack/3.1.1/lib -llapack -lessl -lmassvp6_64 -lmass_64 ${XLF_LIBS})
SET(CMAKE_SKIP_RPATH TRUE)