SOURCES = $(wildcard *.p) TARGETS = $(patsubst %.p,%_opt.exe,$(SOURCES)) .PHONY : all clean distclean all: $(TARGETS) runtime.obj: ../src/runtime.obj cp $< $@ %.cas: %.p ../src/pc <$< >$@ %_opt.cas: %.p ../src/pc optimize <$< >$@ %.obj: %.cas caslasm $< %.lst: %.cas caslasm -l $< %.exe: %.obj runtime.obj casllink $+ %.sym: %.obj runtime.obj casllink -sym $+ %.run: %.exe caslsim $< %.deb: %.sym %.exe casldeb $+ clean: $(RM) *.syntax *.semantics *.lst *.sym core *.stackdump *~ distclean: clean $(RM) *.cas *.obj *.exe