#
# This makefile is included from 'makefile'. It defines the
# various machine dependent things such as compiler commands,
# directories, libraries, etc.
#
#
# FFTW directories
#
FFTW_DIR = /g/g19/sismail/fftw-2.1.3/fftw
FFTW_LIB_DIR = ${FFTW_DIR}/.libs
# The matrix diagonalization libraries, object, and and compile options
# (LAPACK or ESSL).
#
# MATDIAGF77_OBJ must be either lapackdiagF77.o or essldiagF77.o,
# depending on which library you are going to use.
#
# MATDIAG_OPTS tells the system which library you will be using (i.e.
# whether you'relinking to lapackdiagF77.o or essldiagF77.o).
# Set it to either -DDFT_USE_LAPACK or -DDFT_USE_ESSL.
#
# MATDIAG_LIB_DIR is the directory where the lapack library lives
# (needed if the complier can't find it automatically)
#
MATDIAGF77_OBJ = essldiagF77.o
MATDIAG_OPTS = -DDFT_USE_ESSL
MATDIAG_LIB_DIR =
#
# Our libraries: lapack, blas, and the FFTW packages
#
LIBS = -L${FFTW_LIB_DIR} -L${MATDIAG_LIB_DIR} \
-lfftw -lmpi -lxlf90 -lessl -lm
#
# Optimization options for all compilers
#
OPTIM_OPTS = -O3 -qarch=604 -qtune=604 -qstrict
#
# Parallelization options: machine dependent ones go here, **PLUS**
#
# put -DDFT_THREAD to use POSIX threads (SMP)
# put -DDFT_MPI to use MPI (DMP)
# (you can specify both if needed)
#
PARALLEL_OPTS = -DDFT_MPI -DDFT_THREAD
#
# Compiler flags for all compilers
#
COMPILE_OPTS = -I. -Icommands -I${FFTW_DIR} \
${OPTIM_OPTS} ${PARALLEL_OPTS} ${MATDIAG_OPTS} -DDFT_PROFILING
#
#
# C++ compiler and options
#
CPLUSPLUS = mpCC_r
CPLUSPLUSOPTS = -+ ${COMPILE_OPTS}
#
# C compiler and options
#
CC = xlc_r
CCOPTS = ${COMPILE_OPTS}
#
# F77 compiler and options
#
F77 = xlf_r
F77OPTS = -O3 -qarch=ppc -qstrict
#
# Linking options: static/dynamic flags, etc.
#
### For SP2 the maximum default memory per CPU is 256 MB whereas
### the node can have alot more memory (1.5 GB)... so this options
### tells the linker that the data size can be put to 1.25 GB large
LINKOPTS = -bmaxdata:0x50000000
syntax highlighted by Code2HTML, v. 0.9.1