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)
266 lines
16 KiB
HTML
266 lines
16 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.VisualCpp.Tasks.ClTask-->
|
|
<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><cl> 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" /> <cl></td>
|
|
<td class="NavBar-Cell" align="right">
|
|
v0.91</td>
|
|
</tr>
|
|
</table>
|
|
<h1><cl></h1>
|
|
<p> Compiles C/C++ programs using <code>cl.exe</code>, Microsoft's C/C++ compiler. </p>
|
|
<p>This task is intended for version 13.00.9466 of <code>cl.exe</code>.</p>
|
|
<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" class="required">outputdir</td>
|
|
<td style="text-align: center;">directory</td>
|
|
<td> Directory where all output files are placed. </td>
|
|
<td style="text-align: center;">True</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">characterset</td>
|
|
<td style="text-align: center;">
|
|
<a href="../enums/NAnt.VisualCpp.Types.CharacterSet.html">CharacterSet</a>
|
|
</td>
|
|
<td> Tells the compiler to use the specified character set. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">managedextensions</td>
|
|
<td style="text-align: center;">bool</td>
|
|
<td> Specifies whether Managed Extensions for C++ should be enabled. The default is <b>false</b>. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">objectfile</td>
|
|
<td style="text-align: center;">string</td>
|
|
<td> A name to override the default object file name; can be either a file or directory name. The default is the output directory. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">options</td>
|
|
<td style="text-align: center;">string</td>
|
|
<td> Options to pass to the compiler. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">pchfile</td>
|
|
<td style="text-align: center;">string</td>
|
|
<td> Specifies the path and/or name of the generated precompiled header file - given either relative to <code>outputdir</code> or as an absolute path. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">pchmode</td>
|
|
<td style="text-align: center;">
|
|
<a href="../enums/NAnt.VisualCpp.Tasks.ClTask.PrecompiledHeaderMode.html">PrecompiledHeaderMode</a>
|
|
</td>
|
|
<td> The mode in which the specified <code>pchfile</code> (if any) is used. The default is <code>Use</code>. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">pchthroughfile</td>
|
|
<td style="text-align: center;">string</td>
|
|
<td> The path of the boundary file when generating/using the specified <code>pchfile</code>. If a precompiled header file is not specified then this attribute is ignored. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">pdbfile</td>
|
|
<td style="text-align: center;">string</td>
|
|
<td> A name for the compiler-generated PDB file; can be either a file or directory name. The default is the output directory. </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">timeout</td>
|
|
<td style="text-align: center;">int</td>
|
|
<td> The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out. </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>Framework-configurable 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">exename</td>
|
|
<td style="text-align: center;">string</td>
|
|
<td> The name of the executable that should be used to launch the external program. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">managed</td>
|
|
<td style="text-align: center;">
|
|
<a href="../enums/NAnt.Core.Types.ManagedExecution.html">ManagedExecution</a>
|
|
</td>
|
|
<td> Specifies whether the external program should be treated as a managed application, possibly forcing it to be executed under the currently targeted version of the CLR. </td>
|
|
<td style="text-align: center;">False</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">useruntimeengine</td>
|
|
<td style="text-align: center;">bool</td>
|
|
<td>
|
|
<i>Deprecated.</i> Specifies whether the external program is a managed application which should be executed using a runtime engine, if configured. 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="sources">
|
|
</a>
|
|
<<a href="../types/fileset.html">sources</a>>
|
|
</h4>
|
|
<div class="nested-element"> The list of files to compile. <p /></div>
|
|
<h4>
|
|
<a id="sources">
|
|
</a>
|
|
</<a href="../types/fileset.html">sources</a>>
|
|
</h4>
|
|
<!--Element-->
|
|
<h4>
|
|
<a id="includedirs">
|
|
</a>
|
|
<<a href="../types/fileset.html">includedirs</a>>
|
|
</h4>
|
|
<div class="nested-element"> The list of directories in which to search for include files. <p /></div>
|
|
<h4>
|
|
<a id="includedirs">
|
|
</a>
|
|
</<a href="../types/fileset.html">includedirs</a>>
|
|
</h4>
|
|
<!--Element-->
|
|
<h4>
|
|
<a id="metadataincludedirs">
|
|
</a>
|
|
<<a href="../types/fileset.html">metadataincludedirs</a>>
|
|
</h4>
|
|
<div class="nested-element"> Directories that the compiler will search to resolve file references passed to the <code>#using</code> directive. <p /></div>
|
|
<h4>
|
|
<a id="metadataincludedirs">
|
|
</a>
|
|
</<a href="../types/fileset.html">metadataincludedirs</a>>
|
|
</h4>
|
|
<!--Element-->
|
|
<h4>
|
|
<a id="forcedusingfiles">
|
|
</a>
|
|
<<a href="../types/fileset.html">forcedusingfiles</a>>
|
|
</h4>
|
|
<div class="nested-element"> Specifies metadata files to reference in this compilation as an alternative to passing a file name to <code>#using</code> in source code. <p /></div>
|
|
<h4>
|
|
<a id="forcedusingfiles">
|
|
</a>
|
|
</<a href="../types/fileset.html">forcedusingfiles</a>>
|
|
</h4>
|
|
<!--Collection-->
|
|
<h4>
|
|
<a id="defines">
|
|
</a>
|
|
<defines>
|
|
</h4>
|
|
<div class="nested-element"> Macro definitions to pass to cl.exe. Each entry will generate a /D <h5><define></h5><div class="nested-element"><p> Represents an option. </p><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" class="required">name</td><td style="text-align: center;">string</td><td> Name of the option. </td><td style="text-align: center;">True</td></tr><tr><td valign="top">if</td><td style="text-align: center;">bool</td><td> Indicates if the option should be passed to the task. If <b>true</b> then the option will be passed; 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> Indicates if the option should not be passed to the task. If <b>false</b> then the option will be passed; otherwise, skipped. The default is <b>false</b>. </td><td style="text-align: center;">False</td></tr><tr><td valign="top">value</td><td style="text-align: center;">string</td><td> Value of the option. The default is a null reference (<b>Nothing</b> in Visual Basic). </td><td style="text-align: center;">False</td></tr></table></div></div><h5></define></h5></div>
|
|
<h4></defines></h4>
|
|
<!--Collection-->
|
|
<h4>
|
|
<a id="undefines">
|
|
</a>
|
|
<undefines>
|
|
</h4>
|
|
<div class="nested-element"> Macro undefines (/U) to pass to cl.exe. <h5><undefine></h5><div class="nested-element"><p> Represents an option. </p><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" class="required">name</td><td style="text-align: center;">string</td><td> Name of the option. </td><td style="text-align: center;">True</td></tr><tr><td valign="top">if</td><td style="text-align: center;">bool</td><td> Indicates if the option should be passed to the task. If <b>true</b> then the option will be passed; 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> Indicates if the option should not be passed to the task. If <b>false</b> then the option will be passed; otherwise, skipped. The default is <b>false</b>. </td><td style="text-align: center;">False</td></tr><tr><td valign="top">value</td><td style="text-align: center;">string</td><td> Value of the option. The default is a null reference (<b>Nothing</b> in Visual Basic). </td><td style="text-align: center;">False</td></tr></table></div></div><h5></undefine></h5></div>
|
|
<h4></undefines></h4>
|
|
<!--Array-->
|
|
<!--NestedElementArray=T:NAnt.Core.Types.Argument-->
|
|
<h4>
|
|
<a id="arg">
|
|
</a>
|
|
<arg>
|
|
</h4>
|
|
<div class="nested-element"> The command-line arguments for the external program. <p> Represents a command-line argument. </p><p> When passed to an external application, the argument will be quoted when appropriate. This does not apply to the <code>line</code> parameter, which is always passed as is. </p><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">dir</td><td style="text-align: center;">directory</td><td> The value for a directory-based command-line argument; will be replaced with the absolute path of the directory. </td><td style="text-align: center;">False</td></tr><tr><td valign="top">file</td><td style="text-align: center;">file</td><td> The name of a file as a single command-line argument; will be replaced with the absolute filename of the file. </td><td style="text-align: center;">False</td></tr><tr><td valign="top">if</td><td style="text-align: center;">bool</td><td> Indicates if the argument should be passed to the external program. If <b>true</b> then the argument will be passed; otherwise, skipped. The default is <b>true</b>. </td><td style="text-align: center;">False</td></tr><tr><td valign="top">line</td><td style="text-align: center;">string</td><td> List of command-line arguments; will be passed to the executable as is. </td><td style="text-align: center;">False</td></tr><tr><td valign="top">path</td><td style="text-align: center;"><path></td><td> The value for a PATH-like command-line argument; you can use <code>:</code> or <code>;</code> as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables. </td><td style="text-align: center;">False</td></tr><tr><td valign="top">unless</td><td style="text-align: center;">bool</td><td> Indicates if the argument should not be passed to the external program. If <b>false</b> then the argument will be passed; otherwise, skipped. The default is <b>false</b>. </td><td style="text-align: center;">False</td></tr><tr><td valign="top">value</td><td style="text-align: center;">string</td><td> A single command-line argument; can contain space characters. </td><td style="text-align: center;">False</td></tr></table></div><h3>Nested Elements:</h3><!--Element--><h4><a id="path"></a>
|
|
<<a href="../types/path.html">path</a>>
|
|
</h4><div class="nested-element"> Sets a single command-line argument and treats it like a PATH - ensures the right separator for the local platform is used. <p /></div><h4><a id="path"></a>
|
|
</<a href="../types/path.html">path</a>>
|
|
</h4><h3>Examples</h3><ul class="examples"><li><p> A single command-line argument containing a space character. </p><pre class="code">
|
|
<arg value="-l -a" />
|
|
</pre></li><li><p> Two separate command-line arguments. </p><pre class="code">
|
|
<arg line="-l -a" />
|
|
</pre></li><li><p> A single command-line argument with the value <code>\dir;\dir2;\dir3</code> on DOS-based systems and <code>/dir:/dir2:/dir3</code> on Unix-like systems. </p><pre class="code">
|
|
<arg path="/dir;/dir2:\dir3" />
|
|
</pre></li></ul></div>
|
|
<h4>
|
|
<a id="arg">
|
|
</a>
|
|
</arg>
|
|
</h4>
|
|
<h3>Examples</h3>
|
|
<ul class="examples">
|
|
<li>
|
|
<p>Compiles <code>helloworld.cpp</code> for the Common Language Runtime.</p>
|
|
<pre class="code">
|
|
<cl outputdir="build" options="/clr">
|
|
<sources>
|
|
<include name="helloworld.cpp" />
|
|
</sources>
|
|
</cl>
|
|
</pre>
|
|
</li>
|
|
</ul>
|
|
<h3>Requirements</h3>
|
|
<div style="margin-left: 20px;">
|
|
<b>Assembly:</b> NAnt.VisualCppTasks (0.91.4312.0)
|
|
</div>
|
|
</body>
|
|
</html> |