(1) Pass 'VAR=string' arguments to gmake
[oota-llvm.git] / docs / CommandLine.html
index bc357b13fed779308b8c89e8e5109eb96a12d115..7503015aa577db98ecde277120f9e78259dafb02 100644 (file)
@@ -94,8 +94,9 @@ CommandLine library to have the following features:<p>
 <li>Speed: The CommandLine library is very quick and uses little resources.  The
 parsing time of the library is directly proportional to the number of arguments
 parsed, not the the number of options recognized.  Additionally, command line
-argument values are captured transparently into user defined variables, which
-can be accessed like any other variable (and with the same performance).<p>
+argument values are captured transparently into user defined global variables,
+which can be accessed like any other variable (and with the same
+performance).<p>
 
 <li>Type Safe: As a user of CommandLine, you don't have to worry about
 remembering the type of arguments that you want (is it an int?  a string? a
@@ -183,24 +184,24 @@ declarations.<p>
 
 Now that you are ready to support command line arguments, we need to tell the
 system which ones we want, and what type of argument they are.  The CommandLine
-library uses a declarative syntax to model cammand line arguments with the
-variable declarations that capture the parsed values.  This means that for every
-command line option that you would like to support, there should be a variable
-declaration to capture the result.  For example, in a compiler, we would like to
-support the unix standard '<tt>-o &lt;filename&gt;</tt>' option to specify where
-to put the output.  With the CommandLine library, this is represented like
-this:<p>
+library uses a declarative syntax to model command line arguments with the
+global variable declarations that capture the parsed values.  This means that
+for every command line option that you would like to support, there should be a
+global variable declaration to capture the result.  For example, in a compiler,
+we would like to support the unix standard '<tt>-o &lt;filename&gt;</tt>' option
+to specify where to put the output.  With the CommandLine library, this is
+represented like this:<p>
 
 <pre><a name="value_desc_example">
 <a href="#cl::opt">cl::opt</a>&lt;string&gt; OutputFilename("<i>o</i>", <a href="#cl::desc">cl::desc</a>("<i>Specify output filename</i>"), <a href="#cl::value_desc">cl::value_desc</a>("<i>filename</i>"));
 </pre><p>
 
-This declares a variable "<tt>OutputFilename</tt>" that is used to capture the
-result of the "<tt>o</tt>" argument (first parameter).  We specify that this is
-a simple scalar option by using the "<tt><a href="#cl::opt">cl::opt</a></tt>"
-template (as opposed to the <a href="#list">"<tt>cl::list</tt>
-template</a>), and tell the CommandLine library that the data type that we are
-parsing is a string.<p>
+This declares a global variable "<tt>OutputFilename</tt>" that is used to
+capture the result of the "<tt>o</tt>" argument (first parameter).  We specify
+that this is a simple scalar option by using the "<tt><a
+href="#cl::opt">cl::opt</a></tt>" template (as opposed to the <a
+href="#list">"<tt>cl::list</tt> template</a>), and tell the CommandLine library
+that the data type that we are parsing is a string.<p>
 
 The second and third parameters (which are optional) are used to specify what to
 output for the "<tt>--help</tt>" option.  In this case, we get a line that looks
@@ -541,7 +542,7 @@ enum DebugLev {
 };
 
 // Enable Debug Options to be specified on the command line
-<a href="#cl::opt">cl::opt</a><DebugLev> DebugLevel("<i>debug_level</i>", <a href="#cl::desc">cl::desc</a>("<i>Set the debugging level:</i>"),
+<a href="#cl::opt">cl::opt</a>&lt;DebugLev&gt; DebugLevel("<i>debug_level</i>", <a href="#cl::desc">cl::desc</a>("<i>Set the debugging level:</i>"),
   <a href="#cl::values">cl::values</a>(
     clEnumValN(nodebuginfo, "none", "<i>disable debug information</i>"),
      clEnumVal(quick,               "<i>enable quick debug information</i>"),
@@ -1108,7 +1109,7 @@ specifies that this option is used to capture "interpreter style" arguments.  Se
 
 <a name="cl::Prefix">The <b><tt>cl::Prefix</tt></b> modifier specifies that this
 option prefixes its value.  With 'Prefix' options, there is no equal sign that
-seperates the value from the option name specified.  This is useful for
+separates the value from the option name specified.  This is useful for
 processing odd arguments like '<tt>-lmalloc -L/usr/lib'</tt> in a linker tool.
 Here, the '<tt>l</tt>' and '<tt>L</tt>' options are normal string (list)
 options, that have the <a href="#cl::Prefix">cl::Prefix</a> modifier added to
@@ -1495,7 +1496,7 @@ line options </b></font></td></tr></table><ul>
 <address><a href="mailto:sabre@nondot.org">Chris Lattner</a></address>
 <!-- Created: Tue Jan 23 15:19:28 CST 2001 -->
 <!-- hhmts start -->
-Last modified: Thu May 22 15:35:19 CDT 2003
+Last modified: Mon Jul 14 12:12:15 CDT 2003
 <!-- hhmts end -->
 </font>
 </body></html>