|
| 1 | +#============================================================================== |
| 2 | +# Makefile macros for NCAR derecho, gnu compiler |
| 3 | +#============================================================================== |
| 4 | + |
| 5 | +CPP := ftn -E |
| 6 | +CPPDEFS := -DFORTRANUNDERSCORE ${ICE_CPPDEFS} |
| 7 | +CFLAGS := -c |
| 8 | + |
| 9 | +FIXEDFLAGS := -ffixed-line-length-132 |
| 10 | +FREEFLAGS := -ffree-form |
| 11 | +FFLAGS := -fconvert=big-endian -fbacktrace -ffree-line-length-none -fallow-argument-mismatch |
| 12 | +FFLAGS_NOOPT:= -O0 |
| 13 | + |
| 14 | +ifeq ($(ICE_BLDDEBUG), true) |
| 15 | + FFLAGS += -O0 -g -fcheck=bounds -finit-real=nan -fimplicit-none -ffpe-trap=invalid,zero,overflow --std f2008 |
| 16 | +# FFLAGS += -O0 -g -fcheck=all -finit-real=snan -fimplicit-none -ffpe-trap=invalid,zero,overflow |
| 17 | + CFLAGS += -O0 |
| 18 | +endif |
| 19 | + |
| 20 | +ifeq ($(ICE_COVERAGE), true) |
| 21 | + FFLAGS += -O0 -g -fprofile-arcs -ftest-coverage |
| 22 | + CFLAGS += -O0 -g -coverage |
| 23 | + LDFLAGS += -g -ftest-coverage -fprofile-arcs |
| 24 | +endif |
| 25 | + |
| 26 | +ifneq ($(ICE_BLDDEBUG), true) |
| 27 | +ifneq ($(ICE_COVERAGE), true) |
| 28 | + FFLAGS += -O2 |
| 29 | + CFLAGS += -O2 |
| 30 | +endif |
| 31 | +endif |
| 32 | + |
| 33 | +SCC := gcc |
| 34 | +SFC := gfortran |
| 35 | +MPICC := mpicc |
| 36 | +MPIFC := mpif90 |
| 37 | + |
| 38 | +ifeq ($(ICE_COMMDIR), mpi) |
| 39 | + FC := $(MPIFC) |
| 40 | + CC := $(MPICC) |
| 41 | +else |
| 42 | + FC := $(SFC) |
| 43 | + CC := $(SCC) |
| 44 | +endif |
| 45 | +LD:= $(FC) |
| 46 | + |
| 47 | +NETCDF_PATH := $(NETCDF) |
| 48 | + |
| 49 | +#PIO_CONFIG_OPTS:= --enable-filesystem-hints=gpfs |
| 50 | + |
| 51 | +#INCLDIR := $(INCLDIR) |
| 52 | + |
| 53 | +LIB_NETCDF := $(NETCDF_PATH)/lib |
| 54 | +#LIB_PNETCDF := $(PNETCDF_PATH)/lib |
| 55 | +#LIB_MPI := $(IMPILIBDIR) |
| 56 | + |
| 57 | +#SLIBS := -L$(LIB_NETCDF) -lnetcdf -lnetcdff -L$(LIB_PNETCDF) -lpnetcdf |
| 58 | +SLIBS := -L$(LIB_NETCDF) -lnetcdf -lnetcdff |
| 59 | + |
| 60 | +ifeq ($(ICE_THREADED), true) |
| 61 | + LDFLAGS += -fopenmp |
| 62 | + CFLAGS += -fopenmp |
| 63 | + FFLAGS += -fopenmp |
| 64 | +endif |
| 65 | + |
| 66 | +ifeq ($(ICE_IOTYPE), pio1) |
| 67 | + LIB_PIO := $(PIO)/lib |
| 68 | + SLIBS := $(SLIBS) -L$(LIB_PIO) -lpio |
| 69 | +endif |
| 70 | + |
| 71 | +ifeq ($(ICE_IOTYPE), pio2) |
| 72 | + LIB_PIO := $(PIO)/lib |
| 73 | + SLIBS := $(SLIBS) -L$(LIB_PIO) -lpiof -lpioc |
| 74 | +endif |
| 75 | + |
0 commit comments