# Makefile for ddg-bundle method
#
FF = gfortran -O2
OBJ = parameters.o testps.o initialization.o objfun.o subpro.o ddgbundle.o tddgbundle.o

all:	tddgbundle


parameters.o: parameters.f95
	$(FF) -c parameters.f95

testps.o: r_precision.mod testps.f95
	$(FF) -c testps.f95

initialization.o: r_precision.mod problem_data.mod large_problems.mod initialization.f95
	$(FF) -c initialization.f95

objfun.o: r_precision.mod problem_data.mod large_problems.mod objfun.f95
	$(FF) -c objfun.f95

subpro.o: r_precision.mod param.mod subpro.f95
	$(FF) -c subpro.f95

ddgbundle.o: r_precision.mod param.mod initializat.mod exe_time.mod obj_fun.mod subpro.mod ddgbundle.f95
	$(FF) -c ddgbundle.f95

tddgbundle.o: r_precision.mod initializat.mod exe_time.mod subpro.mod ddgbundle_mod.mod problem_data.mod tddgbundle.f95
	$(FF) -c tddgbundle.f95

tddgbundle: $(OBJ)
	$(FF) -o tddgbundle $(OBJ)

clean:	
	rm tddgbundle $(OBJ) *.mod *~