
include ../MakefileInclude
LIBS   = $(LIBNC)


NCINC  = -I$(NCDIR)/include
NCLIB  = -L$(NCDIR)/lib
DEF    = 

LM  = a.out
LM  = ave_optprop_particle

SRC_MAIN_DIR = .

COM_UTILS_SRCS = vtype_module.f90 planck_func_wrapper.f90
COM_UTILS_DIR  = ../src_common/utils

COM_IO_SRCS = fi_module.f90 ni3_module.f90
COM_IO_DIR  = ../src_common/io

COM_FL_SRCS    = 
COM_FL_DIR     = ../src_common/flux

COM_DCPAM_SRC_REP = constants0.f90 gauss_quad.f90 planck_func.f90
COM_DCPAM_DIR = ../src_common/files_dcpam_replace ../src_common/files_dcpam/setup ../src_common/files_dcpam/radiation

COM_SORTAC_SRCS = 
COM_SORTAC_DIR  = ../src_common/sortac


MAIN_SRCS   = main_sort_ac.f90
MAIN_DIR    = $(SRC_MAIN_DIR)/src/main


SRCS_F90   = $(COM_UTILS_SRCS) $(COM_IO_SRCS) $(COM_FL_SRCS) $(MAIN_SRCS) $(COM_SORTAC_SRCS) $(COM_DCPAM_SRC) $(COM_DCPAM_SRC_REP)
OBJS_F90   = $(SRCS_F90:.f90=.o)


VPATH = $(COM_UTILS_DIR) $(COM_IO_DIR) $(COM_FL_DIR) $(COM_DCPAM_DIR) $(MAIN_DIR) $(COM_SORTAC_DIR)

OBJS_ALL = $(OBJS_F90)


.SUFFIXES : .f90 .o

all: $(LM)

$(LM): $(OBJS_ALL)
	$(FC) $(FFLAGS) $(DEF) $(NCLIB) -o $@ $(OBJS_ALL) $(LIBS)

.f90.o:
	$(FC) $(FFLAGS) $(DEF) $(NCINC) -c $<

clean:
	rm -f $(LM) $(OBJS_ALL) *.mod *~

distclean: clean
realclean: distclean

###############################################################################
#
# Dependence
#
main_sort_ac.o: constants0.o planck_func.o
gauss_quad.o: constants0.o
planck_func_wrapper.o: planck_func.o
planck_func.o: gauss_quad.o
