ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Vogel <pvo...@arsin.com>
Subject RE: Need Ammo in Make vs. Ant argument...
Date Sat, 09 Jun 2001 05:36:44 GMT
Well, I've been building SCM/Build infrastructures for people for 12 years
now, let me put it to you this way:
 
If your project is largely Java based, ant is hard to beat, despite its many
faults
*simply because of the javac task* that alone makes it appropriate to
replace
make with Ant *for Java based projects*.
 
As for "free and unsupported" I'd agree with the "free" part, I'd argue the
unsupported,
if ant is unsupported, then so is the *only* make worth considering: GNUmake
since
it is the only make that runs on *every* platform you might consider *and*
it has the
power to enable a decent, maintainable build system with the majority of the
work
in template makefiles that are included by all other makefiles.
 
As for performance ant vs. make, it is quite true that a poorly written ant
file will 
outperfom the average make-based build (of a java project) 10x or better.  I
will say that
I have make-based builds of 100KLOC+ projects that take < 3 seconds to
determine 
nothing needs to be done, ant cannot do that.  The trick is to *not* fall
into the common
trap of writing recursive makefiles, which not only throw performance out
the window
due to process setup/teardown overhead in the OS, but also force an
artificial dependency
management scheme.
 
Finally, if your project is *not* Java based, or at least 90% java based,
Ant is the wrong
hammer.  Look into cons if you want a truly innovative make replacement for
traditional
projects:  http:// <http://www.dsmit.com/cons/> www.dsmit.com/cons/  you
won't be sorry -- I keep wishing that the 
Ant development community would take a page out of cons' book, it would
truly be 
a great tool to combine some of the ideas of ant with the ideas of cons...

 
One of these days, when I'm not working 12+ hour days on a contract, I'll
take the time
out and create my own make replacement based on cons but borrowing liberally
from
the ideas in ant...
 
-Peter
 

---
Peter A. Vogel
Manager, Configuration Management
Arsin Corporation, Professional Services
http://www.arsin.com <http://www.arsin.com/>  


-----Original Message-----
From: Lance Hankins [mailto:lhankins@focus-technologies.com]
Sent: Friday, June 08, 2001 10:23 AM
To: ant-user@jakarta.apache.org; ant-dev@jakarta.apache.org
Subject: Need Ammo in Make vs. Ant argument...


Guys,
 
I'm working for a large telecomm client as one of the lead developers on a
relatively new J2EE project.   We've just finished putting together Ant
scripts for our build process and I think Ant is great - its so much better
than Make IMO.   We're in the early stages of the project, and the core team
is just releasing our initial "baseline" to the rest of the developers so
that they can begin working on the vertical functionality.


Now I'm getting pushback from the management and CM organizations because
they don't want to use Ant (my perception on this is that they don't really
know what Ant is, aside from a "replacement for Make").    They've made
statements like they don't want to use Ant because its "free and not
supported".    They are decreeing that everyone shall use Make.
 
Don't get me wrong - I think standards are needed in large organizations,
but there comes a time when you must re-evaluate all such policies and
decide if its time to adapt them to use more contemporary tools.
 
>From my perspective, our build process is like driving a nail into a board.
Ant is a hammer, and Make is a big rock.  Sure I can use the Rock to drive
the nail, but it would be a lot easier if you'll let me use the more
appropriate tool.   


My questions :

*	Do any of you have any advice on how to wage this argument (aside
from "Ant is cross platform, make is not")...? 

*	Is there any literature out there which endorses Ant as the
recommended build tool for Java projects?  This would be helpful in
legitimizing Ant as an option. 

*	Ant has a lot of built in support for Java and J2EE based builds,
how effective is it at building C++ based stuff (particularly with large
CORBA based systems).   We have a very heterogeneous environment here (C++
systems, CORBA/C++ systems, CORBA/Java systems, J2EE based systems, etc). 


Any ammunition will be greatly appreciated :)
 
Thanks,
Lance Hankins
 
Focus Technologies LLC
www.focus-technologies.com <http://www.focus-technologies.com/> 
 

Phone : 972-396-2064<?xml:namespace prefix = o ns =
"urn:schemas-microsoft-com:office:office" />
Fax : 972-396-9283
Cell : 214-616-7064
 
"To only a fraction of the human race does God give the privilege of earning
one's bread doing what one would have gladly pursued for free, for passion."
- Fred Brooks 

 


Mime
View raw message