CPPFLAGS = -I. -C -P -DNETCDF

FC      = ifort
SFC     = ifort
FCDEBUG = -g -traceback -debug all -check all -O0 -ftrapuv -fpe0
FCDEBUG = -O3
FCFLAGS = $(FCDEBUG) -I dio -I${NETCDF}/include ${NEMSIO_INC}
CPP     = /lib/cpp
RM      = rm -f

DIOLIBS = dio/dio.o dio/fbioc.o

NETCDF_LIBS = ${NETCDF}/lib/libnetcdf.a
LIBS    = -L/contrib/nceplibs/nwprod/lib -lnemsio \
          -L/contrib/nceplibs/nwprod/lib -lw3nco_v2.0.3_4 -lw3emc_v2.0.3_4 \
          -L/contrib/nceplibs/nwprod/lib -lbacio_4 -lsp_4 \
          $(NETCDF_LIBS)

NEMSIO_INC  = -I/contrib/nceplibs/nwprod/lib/incmod/nemsio

.SUFFIXES: .f .f90 .F90

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

.f90.o:
	$(FC) -c $(FCFLAGS) $*.f90

.F90.o :
	$(FC) -c $(FCFLAGS) $*.F90


all: breeding_nmb.exe lbc_perturb_nmb.exe \
     breeding_nmm.exe breeding_arw.exe lbc_perturb_wrf.exe


breeding_dio.exe: breeding_dio.o
	$(SFC) $(FCFLAGS) breeding_dio.o  -o $@ $(DIOLIBS)

breeding_nmb.exe: breeding_nmb.o
	$(SFC) $(FCFLAGS) breeding_nmb.o  -o $@ ${LIBS}

lbc_perturb_nmb.exe: lbc_perturb_nmb.f90
	$(SFC) $(FCFLAGS) lbc_perturb_nmb.f90  -o $@ $(DIOLIBS)

breeding_nmm.exe: breeding_nmm.f90
	$(SFC) $(FCFLAGS) breeding_nmm.f90  -o $@ $(NETCDF_LIBS)

breeding_arw.exe: breeding_arw.f90
	$(SFC) $(FCFLAGS) breeding_arw.f90  -o $@ $(NETCDF_LIBS)

lbc_perturb_wrf.exe: lbc_perturb_wrf.f90
	$(SFC) $(FCFLAGS) lbc_perturb_wrf.f90  -o $@ $(NETCDF_LIBS)


clean:
	$(RM) *.exe *.o *.mod