There is also a possibility using vanilla ant to do the equivalent. You need to use specific targets to set "flag" properties, then use these flag properties with the if and unless clauses of other targets.You can achieve the below by using the ant-contrib package. Go here (http://ant-contrib.sourceforge.net/) to download.
Using the <if> task you can express the if/then/else type logic you're looking for.
-----Original Message-----
From: Holliday, Donald B. (LNG-CSP) [mailto:[EMAIL PROTECTED] Sent: Friday, February 06, 2004 5:39 PM
To: 'Ant Users List'
Subject: Conditionally setting property values
I have ant build scripts that need to run on both Win2K and Solaris. The JDK/SDKs, JREs, and locally constructed jar files are in different directories, depending on the operating system.
I want to write a script that says something like <if os.arch="windows" > set a bunch of properties </if> <if os.arch="unix" > set the same properties, only to different values </if>
<condition> provides "if" like properties, but I can't see how this allows me to set many properties to different values based on one condition test.
Is there an easy way to do this? If there is, what is it?
Thanks,
Donald Holliday
For instance
<target name="checkos">
<condition property="onwindows">
<os family="windows"/>
</condition>
<condition property="onunix">
<os family="unix"/>
</condition>
</target><target name="setwindowsproperties" if="onwindows"> <!-- define your windows specific properties here --> </target>
<target name="setunixproperties" if="onunix"> <!-- define your unix properties here --> </target>
<target name="setproperties" depends="checkos,setwindowsproperties,setunixproperties"/>
If you write such a build file and start ant setproperties, you will do what you want.
Cheers,
Antoine
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
