It would be fantastic if I could do something like:
<macrodef name="process-target">
<attribute name="target" default="?enclosing.target.name?" />
...
</macrodef>
<target name="myTarget>
<process-target/>
</target>
It would be fantastic if I could do something like:
<macrodef name="process-target">
<attribute name="target" default="?enclosing.target.name?" />
...
</macrodef>
<target name="myTarget>
<process-target/>
</target>
Need to use a script to access the target name as follows:
<project name="demo" default="run1">
<macrodef name="process-target">
<sequential>
<script language="javascript">
project.setProperty("enclosing.target.name", self.getOwningTarget());
</script>
<echo message="${enclosing.target.name}"/>
</sequential>
</macrodef>
<target name="run1">
<process-target/>
</target>
<target name="run2">
<process-target/>
</target>
</project>
I am putting this here because I wanted to have an optional attribute in core ant.
<macrodef name="process-target">
<attribute name="target" default="_not_set_" />
<sequential>
<property name="_target_" value="@{target}" />
<script language="javascript">
if(project.getProperty("_target_") == "_not_set_") {
project.setProperty("_target_", self.getOwningTarget());
}
</script>
<echo message="${_target_}"/>
</sequential>
</macrodef>