quantum-espresso/install/Make.altix

104 lines
3.3 KiB
Plaintext

# Contributed by by Martin Hilgeman <hilgeman@sgi.com>
# Red Hat Linux Advanced Server release 2.1AS (Derry),
# SGI ProPack 2.4 for Linux, Build 240rp04021313_10046-040213135,
# SCSL >= 1.4.1, MPT >= 1.8.1, Intel 7.1 Fortran 95 and C++ compiler
#
# This Makefile has also been tested on:
# Red Hat Enterprise Linux AS release 3 (Taroon) with
# SGI ProPack 3SP2 for Linux, Build 302r67-0410222239
# SCSL >= 1.5.1.0, MPT >= 1.10, Intel 8.0.070 C/C++ compiler and
# Intel 8.0.050 Fortran compiler
#
# NOT guaranteed to work on newer QE versions! Edit according to your needs
.SUFFIXES :
.SUFFIXES : .o .c .f .f90
.f90.o:
$(F90) $(F90FLAGS) -c $<
.f.o:
$(F77) $(FFLAGS) -c $<
.c.o:
$(CC) $(CFLAGS) -c $<
# Use the SGI SCSL scientific library (recommended)
# We also use SHMEM as the parallel transport, which seems to be much
# faster in the reduction routines
DFLAGS = -D__ALTIX -D__LINUX64 -D__SCSL -D__PARA -D__MPI -D__SHMEM
## Use precompiled fftw library (version <= 2.1.5, NOT v.3!)
## In this case, specify also how to load the fftw library (FFTW_LIB)
## and the path to the fftw.h include file (FFTW_INC_DIR). Example:
# FFTW_LIB = -L/usr/local/src/fftw-2.1.3/fftw/.libs -lfftw64
# FFTW_INC_DIR = /usr/local/src/fftw-2.1.3/fftw
# CPPFLAGS = -D__ALTIX -D__LINUX64 -D__PARA -D__MPI -D__SHMEM -D__FFTW
## Use the local copy of fftw
# CPPFLAGS = -D__ALTIX -D__LINUX64 -D__FFTW \
# -D__USE_INTERNAL_FFTW -D__PARA -D__MPI -D__SHMEM -DSHMEM \
# -I../include -I.
## Serial version
# CPPFLAGS = -D__ALTIX -D__LINUX64 -D__SHMEM
FDFLAGS = $(DFLAGS)
IFLAGS = -I../include -I$(FFTW_INC_DIR)
MOD_FLAS = -I
CC = icc
MPICC = icc
F90 = ifort
MPIF90 = ifort
F77 = ifort
MPIF77 = ifort
CPP = cpp
CPPFLAGS = $(DFLAGS) $(IFLAGS)
CFLAGS = -ip -tpp2 $(CPPFLAGS) -O3
# Fortran compiler flags
# -W0 disable warnings
# -O3 more aggressive optimization
# -tpp2 Itanium2 family optimization
# -cm suppress all comment messages
# -w disable all warnings
# -ftz flush denormal results to zero
# -ip enable single-file IP optimizations (within files)
# -fno-alias assume no aliasing
# -safe_cray_ptr assume that CRAY pointers do not alias other variables
# -assume byterecl assume that record lengths are in bytes
# -r8 defines real variables to be REAL(KIND=8)
OFLAGS = -O3 -fno-alias -safe_cray_ptr -ip
FFLAGS = -cm -w -r8 -ftz -tpp2 -assume byterecl $(OFLAGS)
F90FLAGS = $(FFLAGS) -fpp $(FDFLAGS) $(IFLAGS) $(MODFLAGS)
FFLAGS_NOOPT = -O0 -assume byterecl
# Libraries:
# Use the SGI SCSL scientific library (recommended)
LIBS = -lmpi -lsma -lscs
## Use the Intel MKL libraries
# LIBS = -lmpi -lsma -L/opt/intel/mkl60/lib/64 \
# -lmkl_lapack64 -lmkl_itp -lguide -lpthread
LD = ifort
LDFLAGS =
AR = ar
ARFLAGS = ruv
# ranlib command. If ranlib is not needed (it isn't in most cases) use
# RANLIB = echo
RANLIB = ranlib
# all internal and external libraries - do not modify
LIBOBJS = ../flib/ptools.a ../flib/flib.a ../clib/clib.a \
../iotk/src/libiotk.a