include ../ctl_config.mak
include ../config.mak

.PHONY: all clean compile mcr_clean

all: compile test test2 client client2 client3 test3 mcr_clean

test: test.o ./libmyeig.so
test2: test2.o ./libmyeval.so
test3: test3.o ./libfoo.so

compile: Makefile.myeig Makefile.mypcg Makefile.getproblem Makefile.foo Makefile.mypcg2
	$(MAKE) -f Makefile.myeig
	$(MAKE) -f Makefile.mypcg
	$(MAKE) -f Makefile.getproblem
	$(MAKE) -f Makefile.foo
	$(MAKE) -f Makefile.myeval
	$(MAKE) -f Makefile.mypcg2

clean: Makefile.myeig Makefile.mypcg Makefile.getproblem Makefile.foo Makefile.mypcg2
	$(MAKE) -f Makefile.myeig clean
	$(MAKE) -f Makefile.mypcg clean
	$(MAKE) -f Makefile.getproblem clean
	$(MAKE) -f Makefile.myeval clean
	$(MAKE) -f Makefile.mypcg2 clean
	$(MAKE) -f Makefile.foo clean || true
	rm -f test client log/* Makefile.myeig Makefile.mypcg Makefile.getproblem
	rm -f client2 client3 test2 test3 *.eps *.o Makefile.foo Makefile.mypcg2
	rm -f Makefile.myeval

mcr_clean:
	rm -rf *_mcr

Makefile.myeig: myeig.m gen_makefile.py
	./gen_makefile.py $<

Makefile.mypcg: mypcg.m gen_makefile.py
	./gen_makefile.py $<

Makefile.getproblem: getproblem.m gen_makefile.py
	./gen_makefile.py -sprob $<

Makefile.foo: myeval.m foo.m gen_makefile.py
	./gen_makefile.py -ufoo $<

#Makefile.myeval: myeval.m gen_makefile.py
#	./gen_makefile.py -ufoo $<

Makefile.mypcg2: mypcg2.m gen_makefile.py
	./gen_makefile.py $<
