ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefan Bodewig <>
Subject Re: Brent Rector on Msbuild vs Ant
Date Wed, 05 Nov 2003 07:33:24 GMT
On Tue, 04 Nov 2003, Steve Loughran <> wrote:
> Here is the offending page from Brent's book.

I stumbled over it yesterday[1] - the snippet you post - here

As I don't speak french I've been unable to understand the context - I
was planing to ask the author of that article to translate it for me
and then answer it as well.

Let me add to your comments.

> 1. Ant does not provide built-in target dependency analysis -a
> requirement for a scalable build system


And your case where name mangling is more difficult than the current
engine knows is a good point as well.  We have a similar case in
<rmic>, where the Weblogic compiler adapter produces a different
result from Sun's.

And then there is the case of dependencies between classes.  If
superclass and subclass end up in different assemblies and you change
the superclass, the naive target dependency analysis will not
recompile the subclass.  And people will never think of doing
something like the <depend> task as this is done by MSBuild.

> 3. Ant does not have a normalized concept of task inputs and
> outputs; a necessity for a build system to support intra-task
> communication.

We do have references, we just don't use them as much as we could

I'm trying to get my thoughts on this into a better shape and will
have a proposal for the 1.7 timeframe.

> 4. Unlike Ant, MSbuild is a secure build engine. MSBuild introduces
> the notion of partially trusted builds, project level sandboxing and
> task level sandboxing.

I couldn't find anything about this in the public docs about MSBuild.

> 5. MSbuild has a richer extensibility model than ant.

I was laughing out loud on reading this.

> 6. Ant does not have the ability to import (macro insert) parts of
> the project file

It is fair to say that this is true for all released versions of Ant
(so let's get 1.6 out of door quickly ;-).  And only if you deny
entities, of course.

> What are we going to do now. I am feeling ruthless.

Wait until it apperas in MSDN to address it?  Address it right now?
Judging from my blog's referers, people are searching for infomation
on MSBuild a lot ATM, so we may as well set the record straight right
from the beginning.


[1]  While googling for msbuild and ant - I wanted to see why my blog
     gets so many hits 8-)

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message