Costin Manolache wrote:
I think this is the crucial issue for embed.

We agreed on allowing top-level tasks. There are 2
implementations - one made by Stefan on the main branch
and one in embed.


In both cases a dummy target is created and all top-level stuff is placed in this target.

The difference is on the execution:

- in the main branch, the top-level target is added
as a dependency to all other targets. The dependency resolver will compute the execution graph and make it the first. This happen in execute(), after the XML
processing is completed.


- in [embed], the top-level target is executed _before_
resolving dependencies, as part of the XML processing


The main consequence is that in [embed] we can have top-level
tasks that operate on the build tree and affect the dependencies.
Import ( and any similar task that will operate on the tree level ) needs that.


The downside is that if tasks like <echo> or <javac> are used at top level,
they will be executed when -projecthelp is called.

The downside is that Centipede will no longer work :-(

We use this [embed] feature so that we can transform a template and import the result, all in one swoop, as has already been described here and it seemed to be a useful feature.

Unfortunately it is not possible to implement -projecthelp and also allow <javac> _and_ allow import in a clean way. The only solution is to document this and explain the
behavior - IMO javac at top level is a bad idea in the first place.


Opinions ?

I need a closure on this before anything else - if we keep
the current behavior then <import> and a lot of other stuff
will need to be rewritten ( so far I don't know any clean way
to do it ).

Stefan - can you live with the top-level processing in embed ?

pleeeeeease

--
Nicola Ken Barozzi                   [EMAIL PROTECTED]
            - verba volant, scripta manent -
   (discussions get forgotten, just code remains)
---------------------------------------------------------------------


-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>



Reply via email to