ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ciramella, EJ" <ECirame...@emptoris.com>
Subject RE: Conditionally passing property to <ant>
Date Tue, 29 Apr 2003 14:54:49 GMT
Couldn't the available task work here?

<target name="target1" depends="do.other">

</target>

<target name="status.check">
 <property name="mydirexists" value="location/of/mydir"/>
 <available file="${mydirexists}" property="mydir.present"/>
</target>

<target name="do.other" if="mydir.present" depends="status.check">
  <ant dir="${the.dir}" inheritAll="false">
    <property name="mydir" value="${mydir}"/>
  </ant>
</target>

-----Original Message-----
From: Jesse Stockall [mailto:stockall@magma.ca]
Sent: Tuesday, April 29, 2003 9:43 AM
To: Ant Users List
Subject: Re: Conditionally passing property to <ant>


On Tue, 2003-04-29 at 06:57, Christopher Lenz wrote:
> Hi folks,
> 
> I'd like to call another build file with a set of optional properties. 
> If defined, those properties point to directories. In addition, I cannot 
> use property inheritance.
> 
> The naive attempt
> 
>    <ant dir="${the.dir}" inheritAll="false">
>      <property name="mydir" value="${mydir}"/>
>    </ant>
> 
> works fine if 'mydir' has been defined, but of course fails when it 
> hasn't -- because the property is set to the literal ${mydir}. The 
> called script checks whether the property has been set, and only 
> executes some tasks if it has.
> 
> So what I'd need would basically be:
> 
>    <ant dir="${the.dir}" inheritAll="false">
>      <property name="mydir" value="${mydir}" if="mydir"/>
>    </ant>
> 
> Any ideas?
> 

In your main build file have 3 targets

<target name="callantwithdir" if="mydir">
  <ant dir="${the.dir}" inheritAll="false">
    <property name="mydir" value="${mydir}"/>
  </ant>
</target>

and

<target name="callantnodir" unless="mydir">
  <ant dir="${the.dir}" inheritAll="false"/>
</target>

and

<target name="callant" depends="callantwithdir, callantnodir"/>

Use the 'callant' target and it will execute other build file with the
desired properties. 

-- 
Jesse Stockall <stockall@magma.ca>


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

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message