CSC = /usr/users/wwwifa/docs/subatom/nucltheo/bin/mcs
MONO = /usr/users/wwwifa/docs/subatom/nucltheo/bin/mono

comma:=,
empty:=
space:=$(empty) $(empty)

%.dll: %.cs
	$(CSC) /t:library $*.cs

dlls = matrix.dll jacobi.dll
refs = $(subst $(space),$(comma),$(dlls))

all: files main.exe

files:
	cp -f 2matrix.cs matrix.cs
	touch matrix.cs

jacobi.dll: jacobi.cs matrix.dll
	$(CSC) /t:library /r:matrix.dll jacobi.cs

main.exe: main.cs $(dlls) makefile
	$(CSC) main.cs /r:$(refs)
	\time $(MONO) main.exe 10 > out
	cat out


clean:
	rm -f $(dlls) *.exe* core*
