It may be better to stay away from a grammar that gives the rules and use something like:
<target name="d" depends="e" ... </target> <target name="e" " ... <parallelexecute targets="a,c" ... </parallelexecute> ... </target> <target name="c" depends="b" ... </target> <target name="b" ... </target> How do you propose to handle potential fatal/non fatal errors? If target a exits due to an error, should there be an option to kill a or allow it to complete (similar to failonerror="yes/no")? If both a and (b,c) must succeed for d, should a be killed if b or c fails? That would indicate a method (stack, shared memory, etc.) for tracking the result of the sub processes. I have done parallel builds with make in the past using multiple systems with shared drives and file based information passing. It was not difficult, but error handling was always the issue. Klaus Malorny <[EMAIL PROTECTED]> wrote: Hi, with the increased availability of multi-core systems, I am wondering whether there are ways to improve the capabilities of Ant to parallelize the build process. While it is possible to execute tasks in parallel within a target, it seems to not be simple to execute multiple targets in parallel. My vision is an extension to the "depends" attribute: if a pipe is used instead of a comma, the target does not care about the order and the targets may be executed in parallel by Ant. I would also add parenthesis to group things. For example, "(a | (b, c)), d)" means, c must be executed after b, but both may be executed in parallel to a, while d must be executed only after completion of a, b and c. Of course, more constraints may occur in the dependent targets, e.g. if c depends on a, they can't be executed in parallel. Just an idea, feel free to ignore it ;-) Klaus --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] Thank you, Chuck Holzwarth (804) 403-3478 (home) (540) 335-3171 (cell) --------------------------------- Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now.