added build folder added build script for release build of ANX.Framework and all RenderSystems fixed some issues in projects regarding compiler directives removed StockShaderCodeGenerator from Pre-Build-Events. Build the Stock shaders using NAnt target build_stock_shaders. started Wiki documentation for custom build switches (e.g. extended mode)
255 lines
9.4 KiB
HTML
255 lines
9.4 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<!-- Documenting T:NAnt.Core.Tasks.IfTask-->
|
|
<head>
|
|
<meta http-equiv="Content-Language" content="en-ca" />
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
<link rel="stylesheet" type="text/css" href="../style.css" />
|
|
<title><if> Task</title>
|
|
</head>
|
|
<body>
|
|
<table width="100%" border="0" cellspacing="0" cellpadding="2" class="NavBar">
|
|
<tr>
|
|
<td class="NavBar-Cell">
|
|
<a href="http://nant.sourceforge.net">
|
|
<b>NAnt</b>
|
|
</a>
|
|
<img alt="->" src="../images/arrow.gif" />
|
|
<a href="../index.html">Help</a>
|
|
<img alt="->" src="../images/arrow.gif" />
|
|
<a href="../tasks/index.html">Task Reference</a>
|
|
<img alt="->" src="../images/arrow.gif" /> <if></td>
|
|
<td class="NavBar-Cell" align="right">
|
|
v0.91</td>
|
|
</tr>
|
|
</table>
|
|
<h1><if></h1>
|
|
<p> Checks the conditional attributes and executes the children if <b>true</b>. </p>
|
|
<p> If no conditions are checked, all child tasks are executed. </p>
|
|
<p> If more than one attribute is used, they are &&'d. The first to fail stops the check. </p>
|
|
<p> The order of condition evaluation is, <code>targetexists</code>, <code>propertyexists</code>, <code>propertytrue</code>, <code>uptodatefile</code>. </p>
|
|
<p class="i2">
|
|
<b>Note:</b> instead of using the deprecated attributes, we advise you to use the following functions in combination with the <code>test</code> attribute: </p>
|
|
<div class="table">
|
|
<table>
|
|
<tr>
|
|
<th>Function</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<a href="../functions/property.exists(System.String).html">property::exists()</a>
|
|
</td>
|
|
<td>Checks whether the specified property exists.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<a href="../functions/target.exists(System.String).html">target::exists()</a>
|
|
</td>
|
|
<td>Checks whether the specified target exists.</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<h3>Parameters</h3>
|
|
<div class="table">
|
|
<table>
|
|
<tr>
|
|
<th>Attribute</th>
|
|
<th style="text-align: center;">Type</th>
|
|
<th>Description</th>
|
|
<th style="text-align: center;">Required</th>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">comparefile</td>
|
|
<td style="text-align: center;">string</td>
|
|
<td>
|
|
<i>Deprecated.</i> The file to check against for the uptodate file. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">propertyexists</td>
|
|
<td style="text-align: center;">string</td>
|
|
<td>
|
|
<i>Deprecated.</i> Used to test whether a property exists. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">propertytrue</td>
|
|
<td style="text-align: center;">string</td>
|
|
<td>
|
|
<i>Deprecated.</i> Used to test whether a property is true. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">targetexists</td>
|
|
<td style="text-align: center;">string</td>
|
|
<td>
|
|
<i>Deprecated.</i> Used to test whether a target exists. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">test</td>
|
|
<td style="text-align: center;">string</td>
|
|
<td> Used to test arbitrary boolean expression. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">uptodatefile</td>
|
|
<td style="text-align: center;">string</td>
|
|
<td>
|
|
<i>Deprecated.</i> The file to compare if uptodate. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">failonerror</td>
|
|
<td style="text-align: center;">bool</td>
|
|
<td> Determines if task failure stops the build, or is just reported. The default is <b>true</b>. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">if</td>
|
|
<td style="text-align: center;">bool</td>
|
|
<td> If <b>true</b> then the task will be executed; otherwise, skipped. The default is <b>true</b>. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">unless</td>
|
|
<td style="text-align: center;">bool</td>
|
|
<td> Opposite of <code>if</code>. If <b>false</b> then the task will be executed; otherwise, skipped. The default is <b>false</b>. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">verbose</td>
|
|
<td style="text-align: center;">bool</td>
|
|
<td> Determines whether the task should report detailed build log messages. The default is <b>false</b>. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<h3>Nested Elements:</h3>
|
|
<!--Element-->
|
|
<h4>
|
|
<a id="comparefiles">
|
|
</a>
|
|
<<a href="../types/fileset.html">comparefiles</a>>
|
|
</h4>
|
|
<div class="nested-element">
|
|
<i>Deprecated.</i> The <a href="../types/fileset.html"><fileset></a> that contains the comparison files for the <code>uptodatefile</code>(s) check. <p /></div>
|
|
<h4>
|
|
<a id="comparefiles">
|
|
</a>
|
|
</<a href="../types/fileset.html">comparefiles</a>>
|
|
</h4>
|
|
<!--Element-->
|
|
<h4>
|
|
<a id="uptodatefiles">
|
|
</a>
|
|
<<a href="../types/fileset.html">uptodatefiles</a>>
|
|
</h4>
|
|
<div class="nested-element">
|
|
<i>Deprecated.</i> The <a href="../types/fileset.html"><fileset></a> that contains the uptodate files for the <code>comparefile</code>(s) check. <p /></div>
|
|
<h4>
|
|
<a id="uptodatefiles">
|
|
</a>
|
|
</<a href="../types/fileset.html">uptodatefiles</a>>
|
|
</h4>
|
|
<h3>Examples</h3>
|
|
<ul class="examples">
|
|
<li>
|
|
<p>Tests the value of a property using expressions.</p>
|
|
<pre class="code">
|
|
<if test="${build.configuration=='release'}">
|
|
<echo>Build release configuration</echo>
|
|
</if>
|
|
</pre>
|
|
</li>
|
|
<li>
|
|
<p>Tests the the output of a function.</p>
|
|
<pre class="code">
|
|
<if test="${not file::exists(filename) or file::get-length(filename) = 0}">
|
|
<echo message="The version file ${filename} doesn't exist or is empty!" />
|
|
</if>
|
|
</pre>
|
|
</li>
|
|
<li>
|
|
<p>
|
|
<code>(Deprecated)</code> Check that a target exists.</p>
|
|
<pre class="code">
|
|
<target name="myTarget" />
|
|
<if targetexists="myTarget">
|
|
<echo message="myTarget exists" />
|
|
</if>
|
|
</pre>
|
|
</li>
|
|
<li>
|
|
<p>
|
|
<code>(Deprecated)</code> Check existence of a property.</p>
|
|
<pre class="code">
|
|
<if propertyexists="myProp">
|
|
<echo message="myProp Exists. Value='${myProp}'" />
|
|
</if>
|
|
</pre>
|
|
</li>
|
|
<li>
|
|
<p>
|
|
<code>(Deprecated)</code> Check that a property value is true.</p>
|
|
<pre class="code">
|
|
<if propertytrue="myProp">
|
|
<echo message="myProp is true. Value='${myProp}'" />
|
|
</if>
|
|
</pre>
|
|
</li>
|
|
<li>
|
|
<p>
|
|
<code>(Deprecated)</code> Check that a property exists and is <b>true</b> (uses multiple conditions). </p>
|
|
<pre class="code">
|
|
<if propertyexists="myProp" propertytrue="myProp">
|
|
<echo message="myProp is '${myProp}'" />
|
|
</if>
|
|
</pre>
|
|
<p>which is the same as</p>
|
|
<pre class="code">
|
|
<if propertyexists="myProp">
|
|
<if propertytrue="myProp">
|
|
<echo message="myProp is '${myProp}'" />
|
|
</if>
|
|
</if>
|
|
</pre>
|
|
</li>
|
|
<li>
|
|
<p>
|
|
<code>(Deprecated)</code> Check file dates. If <code>myfile.dll</code> is uptodate, then do stuff. </p>
|
|
<pre class="code">
|
|
<if uptodatefile="myfile.dll" comparefile="myfile.cs">
|
|
<echo message="myfile.dll is newer/same-date as myfile.cs" />
|
|
</if>
|
|
</pre>
|
|
<p>or</p>
|
|
<pre class="code">
|
|
<if uptodatefile="myfile.dll">
|
|
<comparefiles>
|
|
<include name="*.cs" />
|
|
</comparefiles>
|
|
<echo message="myfile.dll is newer/same-date as myfile.cs" />
|
|
</if>
|
|
</pre>
|
|
<p>or</p>
|
|
<pre class="code">
|
|
<if>
|
|
<uptodatefiles>
|
|
<include name="myfile.dll" />
|
|
</uptodatefiles>
|
|
<comparefiles>
|
|
<include name="*.cs" />
|
|
</comparefiles>
|
|
<echo message="myfile.dll is newer/same-date as myfile.cs" />
|
|
</if>
|
|
</pre>
|
|
</li>
|
|
</ul>
|
|
<h3>Requirements</h3>
|
|
<div style="margin-left: 20px;">
|
|
<b>Assembly:</b> NAnt.Core (0.91.4312.0)
|
|
</div>
|
|
</body>
|
|
</html> |