#
# ---------------------------------------------------------------------------
# common definitions for 24-core Cray XC30, MPI, small memory, real*4
# Intel Compiler: module switch PrgEnv-cray PrgEnv-intel
# -fp-model precise maintains bit for bit equality for all NMPI values
# ---------------------------------------------------------------------------
#
# MACROS      DESCRIPTIONS:
#
# FC:         Fortran 90 compiler.
# FCFFLAGS:   Fortran 90 compilation flags.
# CC:         C compiler.
# CCFLAGS:    C compilation flags.
# CPP:        cpp preprocessor (may be implied by FC).
# CPPFLAGS:   cpp -D macro flags.
# LD:         Loader.
# LDFLAGS:    Loader flags.
# EXTRALIBS:  Extra local libraries (if any).
#
FC            =	ftn
FCFFLAGS      =	-traceback -xHost -O3 -fp-model precise -ftz -align array64byte -assume byterecl -warn nogeneral -diag-disable 10212 -mcmodel=small
CC            =	xx
CCFLAGS       =	-traceback -xHost -O -mcmodel=small
CPP           =	cpp -P
CPPFLAGS      =	-DIA32 -DREAL4 -DMPI -DENDIAN_IO -DTIMER
LD            =	$(FC)
LDFLAGS       =	-V $(FCFFLAGS)
EXTRALIBS     = 

#
# --- generic make definitions
#
SHELL         = /bin/sh
RM            = \rm -f

#
# rules.
#

.c.o:
	$(CC) $(CPPFLAGS) $(CCFLAGS)  -c $*.c

.f.o:
	$(FC)             $(FCFFLAGS) -c $*.f

.F.o:
	$(FC) $(CPPFLAGS) $(FCFFLAGS) -c $*.F
