-
-
-define csbuild
- @for d in $(filter ../%.dll,$^); do \
- rm -f $$(basename $$d); \
- $(SYMLINK) -v $$d .; \
- done
- $(CSC) $(CSFLAGS) /target:$1 /out:$@ \
- $(PKGS) \
- $(filter %.cs.E %.cs,$^) \
- $(patsubst %.dll,/r:%.dll,$(filter %.dll,$^))
-endef
-
-
-%.dll: assemblyinfo.cs
- $(call csbuild,library)
-
-# This must come before the %.cs rule, since %.cs.E files are better.
-%.exe: %.cs.E
- $(call csbuild,exe)
-
-%.exe: %.cs
- $(call csbuild,exe)
-
-%: %.exe
- rm -f $@
- $(SYMLINK) $< $@
-
-%.pass: %.exe
- rm -f $@
- $(TESTRUNNER) $(MONORUN) ./$^
- touch $@
-
-clean::
- rm -f *~ *.E *.d *.exe *.dll *.mdb *.pdb