Peter Williams announced MBuild on the Mono list (via Miguel de Icaza).

I had a very quick look at its documentation and it seems to hold some nice concepts.

The dependency mechanism is closer to make than to Ant and friends, you state a relation between targets and sources via rules. Rules look and behave like functions and are implemented as .NET assemblies, which should make MBuild reasonably portable and easy to extend.

Targets (not necessarily files) are typed in MBuild which enables rules to infer some things about them, for example

program = CCompile [parser.c foo.c libmylib.so]
would know that the last part was a library and add -lmylib on the command line (and do the right thing on Windows AFAIU). It even goes so far to defer the rules based on types like invoking the C# compiler on
parser.exe = [parser.cs]

This looks interesting. Maybe there is some inspiration to be found for Ant.

path: /en/oss | #