#==============================================================================
# Makefile macros for "conejo," Linux cluster at LANL
#==============================================================================

INCLDIR    := -I. -I/usr/include
SLIBS      := -L/usr/lib
ULIBS      := 
CPP        := /usr/bin/cpp
CPPFLAGS   := -P -traditional
CPPDEFS    := -DLINUX
CFLAGS     := -c -O2
ifeq ($(COMMDIR), mpi)
   FC         := /net/shared_data/Libraries/openmpi-1.6.5_gfortran_4.4.7/bin/mpif90 
else
   FC         := gfortran 
endif
FIXEDFLAGS := -ffixed-line-length-132 
FREEFLAGS  := 
FFLAGS     :=  -O2 -fconvert=big-endian
#FFLAGS     := -r8 -i4  -align all -w -ftz -convert big_endian -assume byterecl -g
#FFLAGS     := -r8 -i4 -align all -w -ftz -convert big_endian -assume byterecl -fpe0 -CB -traceback 
#FFLAGS     := -r8 -i4 -align all -w -ftz -convert big_endian -assume byterecl -fpe0 -CB -g

#ifeq ($(THRD), yes)
#   FFLAGS  :=  $(FFLAGS) -openmp
##cesm   CPPDEFS :=  $(CPPDEFS) -DTHREADED_OMP
#endif

MOD_SUFFIX := mod
LD         := $(FC)
LDFLAGS    := $(FFLAGS) -v

    CPPDEFS :=  $(CPPDEFS) -DNXGLOB=$(NXGLOB) -DNYGLOB=$(NYGLOB) \
                -DBLCKX=$(BLCKX) -DBLCKY=$(BLCKY) -DMXBLCKS=$(MXBLCKS) \
                -DNICELYR=$(NICELYR) -DNSNWLYR=$(NSNWLYR) -DNICECAT=$(NICECAT) \
                -DTRAGE=$(TRAGE) -DTRFY=$(TRFY) -DTRLVL=$(TRLVL) -DTRPND=$(TRPND) \
                -DTRBRI=$(TRBRI) -DNTRAERO=$(NTRAERO) -DTRZS=$(TRZS) \
                -DNBGCLYR=$(NBGCLYR) -DTRALG=$(TRALG) -DTRBGCZ=$(TRBGCZ) \
                -DTRDOC=$(TRDOC) -DTRDOC=$(TRDOC) -DTRDIC=$(TRDIC) \
                -DTRDON=$(TRDON) -DTRFED=$(TRFED) -DTRFEP=$(TRFEP) \
                -DTRZAERO=$(TRZAERO)  \
                -DTRBGCS=$(TRBGCS) -DNUMIN=$(NUMIN) -DNUMAX=$(NUMAX)
#   CPPDEFS :=  $(CPPDEFS) -DAOMIP

ifeq ($(DITTO), yes)
   CPPDEFS :=  $(CPPDEFS) -DREPRODUCIBLE
endif

ifeq ($(IO_TYPE), netcdf)
   CPPDEFS :=  $(CPPDEFS) -Dncdf
#   INCLDIR := $(INCLDIR) $(NETCDF)/include
#   SLIBS   := $(SLIBS) $(NETCDF)/lib -lnetcdf
   INCLDIR := $(INCLDIR) -I/net/shared_data/Libraries/netcdf-3.6.2_gfortran_4.4.6/include
   SLIBS   := $(SLIBS) -L//net/shared_data/Libraries/netcdf-3.6.2_gfortran_4.4.6/lib -lnetcdf
endif

### if using parallel I/O, load all 3 libraries.  PIO must be first!
#ifeq ($(IO_TYPE), pio)
#   INCLDIR := $(INCLDIR) -I/usr/projects/climate/SHARED_CLIMATE/software/conejo/intel_openmpi/pio-1.4.0
#   SLIBS   := $(SLIBS) -L/usr/projects/climate/SHARED_CLIMATE/software/conejo/intel_openmpi/pio-1.4.0 -lpio
#
#   INCLDIR := $(INCLDIR) -I/usr/projects/climate/SHARED_CLIMATE/software/conejo/intel_openmpi/parallel-netcdf-1.2.0/include
#   SLIBS   := $(SLIBS) -L/usr/projects/climate/SHARED_CLIMATE/software/conejo/intel_openmpi/parallel-netcdf-1.2.0/lib -lpnetcdf
#
#   CPPDEFS :=  $(CPPDEFS) -Dncdf
#   INCLDIR := $(INCLDIR) -I/usr/projects/climate/SHARED_CLIMATE/software/conejo/intel_openmpi/netcdf-3.6.3/include
#   SLIBS   := $(SLIBS) -L/usr/projects/climate/SHARED_CLIMATE/software/conejo/intel_openmpi/netcdf-3.6.3/lib -lnetcdf
#
#endif
