Hi,

I've been using ant for some time, but I'm no expert. I just joined this list. And here's my question! :-)

Actually, I can't even think how to phrase this question in any more general terms :-)... so I'll just describe specifically what I'm trying to accomplish (part of it will only make sense if you understand Subversion, but oh well).

I've got several "modules" that I need to be able to build into various projects. So what I think I'd like to be able to do is use <macrodef> and then be able to just call out the modules like so:

        <module name="killer-app" />
        <module name="job-security" />
        <module name="legacy-crap" />
        <!-- etc... -->

The idea is that this would

(a) build up a file that I can use to invoke "svn propset svn:externals -f", then "svn update" the external 'mount-point' if it doesn't exist — i.e., "fetch" the module sources into the local project;

(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;

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

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

to successively add dependencies to a target. So you can do the same thing in a macro ("modules:; this_module" or whatever). Or, you can say

        MODULES += this_module

or

        MODULES = $(MODULES) this_module

(depending on the variant of make), and then later:

        modules: $(MODULES)

So there are a couple of ways in make, but I haven't seen that it's possible to add a dependency to an existing target. And Ant properties are immutable, so I can't go that way...

BTW this isn't meant as an ant vs. make thing, I just mention it in the hopes that maybe somebody else with a 'make' background will recognize what the crap I'm talking about :-) :-).

Any suggestions?
—mark—


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



Reply via email to