Response files

Leandro Lucarella llucax at gmail.com
Mon Mar 23 09:31:09 PDT 2009


Georg Wrede, el 22 de marzo a las 17:51 me escribiste:
> So, yesterday the best was SCons, today it's AAP, what's it gonna be tomorrow? 

Waf[1]?

No, really, I just discover it today =)

What I always hated from scons (and the reason I stopped using it) is it
was *sloooooow* (I don't know if it improved).

So today, because of this discussion, I hit this page with some benchmarks
about build systems:
http://psycle.svn.sourceforge.net/viewvc/psycle/branches/bohan/wonderbuild/benchmarks/time.xml

Waf seems to be a good candidate, this are the main features:

- Easy to use: Waf configuration files are written in the mainstream
  scripting language Python
- Easy to install and to distribute: Waf fits entirely in a single 75KB
  redistributable file which does not require any installation to run
- Portable: Waf only depends on Python which is ported onto most operating
  systems
- Reliable: Waf uses hash-based dependency calculation dependencies to
  compute the targets to rebuild
- User-friendly: The output can be displayed in colors, filtered,
  displayed with progress bars or output all the commands that get
  executed
- Documented: The Waf book sums up the essential concepts
- Flexible: Because Waf has a carefully designed object oriented
  architecture it is very easy to add new features
- Fast: Because of its carefully designed architecture, Waf is able to
  distribute the jobs on multi-core hardware (-j), it is able to reuse
  targets compiled already (ccache), and its runtime footprint is pretty
  small compared to other build tools
- Broad support for languages and tools: Waf is already used for C, C++,
  C#, D, java, ocaml, python project, and provides various tools for
  processing docbook, man pages, intltool, msgfmt

The only feature I don't appreciate much (as of scons) is that build files
are written in Python (even when I loooove Python, I don't think it's the
best choice for build files).

And guess what? It even support D =)
http://waf.googlecode.com/svn/trunk/demos/d/

[1] http://code.google.com/p/waf/

-- 
Leandro Lucarella (luca) | Blog colectivo: http://www.mazziblog.com.ar/blog/
----------------------------------------------------------------------------
GPG Key: 5F5A8D05 (F8CD F9A7 BF00 5431 4145  104C 949E BFB6 5F5A 8D05)
----------------------------------------------------------------------------



More information about the Digitalmars-d mailing list