On Feb 10, 2005, at 12:01 PM, Dominique Devienne wrote:


(b) create a task for each module (e.g., "modules:killer-app") that calls <ant> in the module subdirectory and also does some other stuff;

You mean create a target, right!?

yes, which I was thinking is "create a task" in the same sense that <macrodef> is said to "define a new task" (there, by template substitution) on the macrodef page in the Ant manual. Though maybe the Ant manual is guilty of a misnomer there, I don't know...



(c) make it so that the task "module" invokes all the module targets.

Again, that would be the "module" target, no!?

Yes — unequivocally, a "target" there :-)


I think I can handle all the ant machinery for (a) and (b); it's just
(c) that has me flummoxed.

This kind of thing is a way of life in 'make'... there, you don't even
think about it.  You can say:

        modules:; module.killer-app
        modules:; module.legacy-crap

Like you say, this isn't an easy one to answer, but let me try to answer random questions, and see if any of it is useful...


I 'think' you could replace your (b) and (c) by <subant>.

I thought that too at first :-)

Sounds like (a) creates a new build file by module, in the main build, and with (b) and (c) you want a way to build one or all modules from the main build. Am I close?

Yes, very close....


If (a) creates stand-alone build file, you can build a single module by just using build -f modules/moduleA/build.xml

They aren't really standalone... they do depend on some properties from the top-level build...


... and in the main build, you can call <subant><fileset dir="modules" includes="*/build.xml" /></subant>.

There's some per-module stuff that happens at the top-level (see the antage I posted in my reply to Matt B.)... I suppose I could pull that down into the module buildfiles, but since they can't run standalone anyway it doesn't help me much anyway.



I think the make analogy was useful ;-) --DD

:-)

Thanks a lot for the thoughts!
—ml—


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



Reply via email to