ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject top-level tasks, import, projecthelp, targetless
Date Tue, 23 Jul 2002 06:17:35 GMT
It seems we have 4 things to balance, and some are conflicting.

First - top level tasks, it seems we all agree we should allow
them and that they should be executed before anything else.
There are 3 options:
- execute as you read ( that's how ant1.5 works for the special
tasks and how 1.0 worked for all tasks  ).
- as a virtual target, handled by ProjectHelper
- as a virtual target handled by the normal dependencies ( i.e.
each other target will have automatically a dep on "" ).

This choice has a big impact on <import> or any other 
task that is going to affect the project structure. 
In the first case, <import> will read the other file 
_before_ the targets in the main build.xml are read. That's
how Nicola's original patch worked. 

With the second choice, <import> will read the other
file _after_ the build.xml is read. It can then alter the
project structure. 

With the third choice, things are a bit more difficult - 
when <import> is executed, all dependencies are resolved
and things get more difficult to implement.

"projecthelp" is adding another dimension: I think
it should list all the targets in build.xml and also
those imported. That won't work with the third choice.

Finally, for targetless files - the first 2 choices
are really bad, because projecthelp would actually
execute the build instead of just listing the targets.

What should we do ? 

One solution that would clarify things would be to 
somehow ( marker Interface, metadata, etc ) indicate
which task is 'active' ( javac, copy, etc ) and 
which is 'initialization' ( property, taskdef, import ).

Another solution is to give up one ( projecthelp,
import or targetless ). We can reimplement projecthelp
to not use ProjectHelper ( or add a flag to just 
read descriptions ).

At this moment both the main ProjectHelper ( using the 3-rd
choice ) and ProjectHelper2 ( using 2-nd ) have problems.

A second question is what to do for the 1.5 plugin. 


On 22 Jul 2002, Stefan Bodewig wrote:

> On Fri, 19 Jul 2002, <> wrote:
> > They'll still be added to an implicit target, and that target
> > will be executed first. But instead of achieving this by
> > adding the special target as a dependency to each other target
> > and relying on the deps graph, it'll be executed explicitely,
> > after the parsing and construction of the model.
> How will you avoid running them in
> ant -projecthelp
> Stefan
> --
> To unsubscribe, e-mail:   <>
> For additional commands, e-mail: <>

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

View raw message