# Makefile for diagonal bundle method
#
FF = gfortran
OBJ = parameters.o testps.o initialization.o objfun.o subpro.o dbundle.o tdbundle.o

all:	tdbundle


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

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

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

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

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