# # optimization programs # now : svd-t.out CC=gcc -w inc = opt.h lib = opt.a objects = mat.o rank.o svd.o lp.o feas.o bfgs.o multi.o neldermead.o multisimp.o int.o eqs.o rungekutta.o opt.a : $(objects) ar rv $@ $? # ranlib $@ mat.o : mat.c $(inc) rank.o : rank.c $(inc) svd.o : svd.c $(inc) lp.o : lp.c $(inc) feas.o : feas.c $(inc) bfgs.o : bfgs.c $(inc) multi.o : multi.c $(inc) int.o : int.c $(inc) eqs.o : eqs.c $(inc) neldermead.o : neldermead.c $(inc) multisimp.o : multisimp.c $(inc) rungekutta.o : rungekutta.c $(inc) # test programs mat-t0.o : mat-t0.c $(inc) mat-t0.out : mat-t0.o $(lib) $(CC) mat-t0.o $(lib) -o $@ rank-t.o : rank-t.c $(inc) rank-t.out : rank-t.o $(lib) $(CC) rank-t.o $(lib) -lm -o $@ svd-t.o : svd-t.c $(inc) svd-t.out : svd-t.o $(lib) $(CC) svd-t.o $(lib) -lm -o $@ lp-t0.o : lp-t0.c $(inc) lp-t1.o : lp-t1.c $(inc) lp-t0.out : lp-t0.o $(lib) $(CC) lp-t0.o $(lib) -o $@ lp-t1.out : lp-t1.o $(lib) $(CC) lp-t1.o $(lib) -o $@ feas-t0.o : feas-t0.c $(inc) feas-t1.o : feas-t1.c $(inc) feas-t2.o : feas-t2.c $(inc) feas-t3.o : feas-t3.c $(inc) feas-t0.out : feas-t0.o $(lib) $(CC) feas-t0.o $(lib) -o $@ feas-t1.out : feas-t1.o $(lib) $(CC) feas-t1.o $(lib) -o $@ feas-t2.out : feas-t2.o $(lib) $(CC) feas-t2.o $(lib) -o $@ feas-t3.out : feas-t3.o $(lib) $(CC) feas-t3.o $(lib) -o $@ bfgs-t0.o : bfgs-t0.c $(inc) bfgs-t1.o : bfgs-t1.c $(inc) bfgs-t2.o : bfgs-t2.c $(inc) bfgs-t0.out : bfgs-t0.o $(lib) $(CC) bfgs-t0.o $(lib) -o $@ bfgs-t1.out : bfgs-t1.o $(lib) $(CC) bfgs-t1.o $(lib) -o $@ bfgs-t2.out : bfgs-t2.o $(lib) $(CC) bfgs-t2.o $(lib) -o $@ multi-t0.o : multi-t0.c $(inc) multi-t1.o : multi-t1.c $(inc) multi-t0.out : multi-t0.o $(lib) $(CC) multi-t0.o $(lib) -o $@ multi-t1.out : multi-t1.o $(lib) $(CC) multi-t1.o $(lib) -o $@ int-t0.o : int-t0.c $(inc) int-t1.o : int-t1.c $(inc) int-t0.out : int-t0.o $(lib) $(CC) int-t0.o $(lib) -lm -o $@ int-t1.out : int-t1.o $(lib) $(CC) int-t1.o $(lib) -lm -o $@ eqs-t0.o : eqs-t0.c $(inc) eqs-t0.out : eqs-t0.o $(lib) $(CC) eqs-t0.o $(lib) -lm -o $@ neldermead-t0.o : neldermead-t0.c $(inc) neldermead-t1.o : neldermead-t1.c $(inc) neldermead-t0.out : neldermead-t0.o $(lib) $(CC) neldermead-t0.o $(lib) -lm -o $@ neldermead-t1.out : neldermead-t1.o $(lib) $(CC) neldermead-t1.o $(lib) -lm -o $@ multisimp-t0.o : multisimp-t0.c $(inc) multisimp-t0.out : multisimp-t0.o $(lib) $(CC) multisimp-t0.o $(lib) -lm -o $@ multisimp-t1.o : multisimp-t1.c $(inc) multisimp-t1.out : multisimp-t1.o $(lib) $(CC) multisimp-t1.o $(lib) -lm -o $@ # clean clean : rm *.out *-t?.o core allclean : rm *.o *.out opt.a *.c~ *.h~ Makefile~ core