MCS=mcs local_paths=-L ../glib -L ../pango -L ../atk -L ../gdk -L ../gtk all_assemblies=-r glib-sharp -r pango-sharp -r atk-sharp -r gdk-sharp -r gtk-sharp -r System.Drawing all: linux windows: $(CSC) /unsafe /out:gtk-hello-world.exe /r:../glib/glib-sharp.dll /r:../gtk/gtk-sharp.dll /r:../gdk/gdk-sharp.dll HelloWorld.cs $(CSC) /unsafe /out:button.exe /r:../glib/glib-sharp.dll /r:../gtk/gtk-sharp.dll ButtonApp.cs linux: gtk-hello-world.exe button.exe menu.exe gtk-hello-world.exe: HelloWorld.cs $(MCS) --unsafe -o gtk-hello-world.exe $(local_paths) $(all_assemblies) HelloWorld.cs button.exe: ButtonApp.cs $(MCS) --unsafe -o button.exe $(local_paths) $(all_assemblies) ButtonApp.cs menu.exe: Menu.cs $(MCS) --unsafe -o menu.exe $(local_paths) $(all_assemblies) Menu.cs clean: rm -f *.exe unix: @echo "'make unix' is broken for now." install: linux @echo "Nothing to install."