### Compiler #####################

FC  = ifort

### Library locations ############

INC_NC  = -I/opt/ohpc/pub/libs/intel/impi/netcdf-fortran/4.4.5/include
LIB_NC  = -L/opt/ohpc/pub/libs/intel/impi/netcdf-fortran/4.4.5/lib -lnetcdff -L/opt/ohpc/pub/libs/intel/impi/hdf5/1.10.5/lib -L/opt/ohpc/pub/libs/intel/impi/netcdf/4.6.3/lib -lnetcdf -lnetcdf -lhdf5_hl -lhdf5 -lz -lm

COORDROOT = src/utils/coordinates
#COORDROOT = src/utils/coordinates_sp
INC_COORD = -I${COORDROOT}/include
LIB_COORD = -L${COORDROOT}/include -lcoordinates

LIB_MKL = -L${MKLROOT}/lib/intel64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread

LISROOT = src/utils/lis
INC_LIS = -I${LISROOT}/include 
LIB_LIS = -L${LISROOT}/lib/ -llis

#YELMOROOT = src/yelmo/libyelmo
YELMOROOT = src/yelmo_default/libyelmo
INC_YELMO = -I${YELMOROOT}/include
LIB_YELMO = -L${YELMOROOT}/include -lyelmo

VILMAROOT = src/vilma
INC_VILMA = -I${VILMAROOT}/include
LIB_VILMA = ${VILMAROOT}/lib/vega_vip.a

FFTWROOT = src/utils/fftw/
INC_FFTW = -I${FFTWROOT}/include
LIB_FFTW = -L${FFTWROOT}/lib -lfftw3 -lfftw3f

### Compiler options #############

CPPFLAGS     = -fpp
CPPFLAGS_BGC = #-DAGG
# Note: BGC flags control HAMOCC behaviour

DFLAGS_NODEBUG = -Ofast -xHASWELL -traceback #-O3  #-O2 -fp-model precise
DFLAGS_DEBUG   = -C  -fp-model precise -traceback -ftrapuv -fpe0 -check all -init=snan,arrays -warn -debug extended -gen-interfaces -warn interfaces -check arg_temp_created
DFLAGS_PROFILE = -O3 -pg -g #-O2 -fp-model precise -pg 

FFLAGS_DEFAULT = -module $(objdir) -L$(objdir) $(INC_NC) $(INC_LIS) $(INC_COORD) $(INC_YELMO) $(INC_VILMA) $(INC_FFTW)
FFLAGS_OPENMP  = $(FFLAGS_DEFAULT) -qopenmp #-parallel -qopt-report-phase=par #-qopt-report=5 #-ipo -parallel -par-threshold90 -qopt-report #-mcmodel=medium

LFLAGS  = $(LIB_NC) $(LIB_COORD) $(LIB_LIS) $(LIB_YELMO) $(LIB_VILMA) $(LIB_FFTW) -Wl,-zmuldefs

