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. 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 ? Costin -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
