On Jun 16, 2008, at 10:29 AM, Russel Winder wrote:
On Mon, 2008-06-16 at 01:13 -0700, Ittay Dror wrote:
I think it is tricky for C++. There are several reasons:
1. it is hard to code such rules without being dependent on the
OS. e.g.,
invoking gcc and cl (visual studio's compiler) are very different.
I want a
plugin that will be able to compile on all platforms, so the
plugin will
need to provide the compilation command, not the user. so the user
can only
supply the dependency.
To be honest your best bet is to use SCons for C, C++, Fortran and
LaTeX, it already has this infrastructure in place. It will take a
lot
of effort to replicate all the infrastructure in Gradle. Another
alternative is Waf, but I have been forbidden by its developer from
mentioning it and was forcibly ejected from the mailing list for
complaining that there was no way of setting bindir for installation.
The SCons developers are looking to improve their support for Java --
which is currently very minimal. So an alternative to further
developing Gradle is actually to put effort into SCons.
That might be the way for Gant to go.
Gradle has enough unique selling points and its own vision, that
there is no point at all to join SCons.
- Hans
Or take all the
material from SCons and dump it in Gradle of course. However the DAG
processing is almost certainly very different.
2. modern compilers can usually create dependencies for you. what
there is
left is mapping of source paths to output paths, which is better done
through using the convention object.
See SCons.
SCons does parsing for dependency calculation, and MD5 sums to avoid
using timestamps.
--
Russel.
====================================================
Dr Russel Winder Partner
Concertant LLP t: +44 20 7585 2200, +44 20 7193 9203
41 Buckmaster Road, f: +44 8700 516 084
London SW11 1EN, UK. m: +44 7770 465 077
--
Hans Dockter
Gradle Project lead
http://www.gradle.org
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email