ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jonathan doklovic <list-rea...@sysbliss.com>
Subject Wildcards in depends?
Date Tue, 01 Jul 2008 17:41:41 GMT
Hi,

I was wondering if anyone else thought being able to specify wildcards 
in the depends attribute of the target would be helpful.
Where I work, we use a lot of build fragments that get imported, and we 
would like the ability to allow the developer to add/remove build 
funtionality easilt without disrupting the basic workflow.

essentially something like:

build.xml imports base-java.xml and java-checkstyle.xml

base-java.xml:
<target name="pre-compile" depends="java-pre-plugin*,compile" />

java-checkstyle.xml
<target name="java-pre-plugin-checkstyle"> ... run checkstyle ... </target>

This way a developer can add/remove something like checkstyle simply by 
adding/removing the import.
This would also allow the developer to use a different syntax checker 
simply by the import.

I think the most reasonable way to do this would be to modify the 
addDependency method in Target.java. Something like this:
public void addDependency(final String dependency) {
   if (dependencies == null) {
       dependencies = new ArrayList(2);
   }

   if (dependency.endsWith("*")) {
       String key;
       final String prefix = dependency.substring(0, 
(dependency.indexOf("*") - 1));
       final Enumeration<String> e = getProject().getTargets().keys();
       while (e.hasMoreElements()) {
       key = e.nextElement();
       if (key.startsWith(prefix)) {
           dependencies.add(dependency);
       }
       }
   } else {
       dependencies.add(dependency);
   }
}

any thoughts?

- Jonathan



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Mime
View raw message