1. all: AutoBox.dll UseBox.exe
2.
3. AutoBox.dll: AutoBox.cs
4. csc /t:library AutoBox.cs
5.
6. UseBox.exe: UseBox.cs
7. csc /r:AutoBox.dll UseBox.cs
8.
9. clean:
10. -del *.exe
11. -del *.dll
注明:代码中的每行前面的数字不是代码的一部份,只是为了方便代码的解释
第1行:all代表所有的目标文件(targes),在这个例子中,只有AutoBox.dll和UseBox.exe
第3-4行:代表target所依靠的文件以及编译target的方法,在这个例子中,AutoBox.dll是随着AutoBox.cs的改变而改变的,也就是说,一旦AutoBox.cs的代码改变了,那么AutoBox.dll文件也要随之改变。而第4行则是将AutoBox.cs编译成library文件的方法。
第6-7行:完全类似第3-4行的代码,而第7行则是将主程序文件编译成可执行文件的方法。
第9-11行:clean类似all,然后它并不去鉴别输出的文件,它只是指明了将清楚除source文件以外其它的文件,
正如第10-11行所写,这个makefile文件将会清楚除了AutoBox.dll和UseBox.exe文件之外其它的exe文件和dll文件。
引自: http://www.cnblogs.com/rayinuk/archive/2004/10/24/56020.html