# on Opeteron with pgf90
 F90 = mpif90 -Mbounds -r8 -O3
 LIBS = -lacml -lmpich
 FFLAGS = 
#
# on laptop runing linux and g95
# F90 = mpif90 -Wall -i4 -r8 -O3 -ftrace=full
# LIBS = /usr/local/lib/lapack.a /usr/local/lib/blas.a -lmpich
# FFLAGS = 
#
# on IBM cluster and xlf (must use gmake)
# F90 = mpxlf90_r -q64 -O3
# LIBS = -lessl
# FFLAGS = -L$(HOME)/fftw/lib
#
SUBDIRS = module common lead transmission center input main
VPATH := $(SUBDIRS)
modcomm := comm_dynamic.mod
modinterf := interface_commn.mod
modobj := interf.o module.o
source := main_ballistic.f90 green.f90 greenshapetran.f90 inverse.f90 \
	input.f90 inputparameter.f90 \
	selfengy.f90 sfgsolve.f90 distribution.f90 \
	caroli.f90 jobrange.f90 reverse_left.f90 

objects := ${source:.f90=.o}

.PHONY: all clean
all: green

green: $(objects)
	$(F90) $(FFLAGS) -o ../exe/$@ $^ $(modobj) $(LIBS)

%.o: %.f90 $(modcomm) $(modinterf)
	$(F90) -c $(FFLAGS) $< -I..

$(modcomm): module.f90
	$(F90) -c $<
$(modinterf): interf.f90 $(modcomm)
	$(F90) -c $<

clean: 
	-rm *.mod *.o

print:
	a2ps -X ascii main/*.f90 module/*.f90 input/*.f90 common/*.f90 center/*.f90 lead/*.f90 nonlinear/*.f90 transmission/*.f90 -o green.ps
