Documentation update.

llvm-svn: 51758
This commit is contained in:
Mikhail Glushenkov 2008-05-30 06:28:00 +00:00
parent c03ce6071c
commit 47817cd1a4
1 changed files with 27 additions and 0 deletions

View File

@ -231,6 +231,11 @@ currently implemented option types and properties are described below:
- ``prefix_list_option`` - same as the above, but more than one - ``prefix_list_option`` - same as the above, but more than one
occurence of the option is allowed; example: ``-lm -lpthread``. occurence of the option is allowed; example: ``-lm -lpthread``.
- ``alias_option`` - a special option type for creating
aliases. Unlike other option types, aliases are not allowed to
have any properties besides the aliased option name. Usage
example: ``(alias_option "preprocess", "E")``
* Possible option properties: * Possible option properties:
@ -254,6 +259,28 @@ currently implemented option types and properties are described below:
- ``required`` - this option is obligatory. - ``required`` - this option is obligatory.
Option list - specifying all options in a single place
======================================================
It can be handy to have all information about options gathered in a
single place to provide an overview. This can be achieved by using a
so-called ``OptionList``::
def Options : OptionList<[
(switch_option "E", (help "Help string")),
(alias_option "quiet", "q")
...
]>;
``OptionList`` is also a good place to specify option aliases.
Tool-specific option properties like ``append_cmd`` have (obviously)
no meaning in the context of ``OptionList``, so the only properties
allowed there are ``help`` and ``required``.
Option lists are used at the file scope. See file
``examples/Clang.td`` for an example of ``OptionList`` usage.
Using hooks and environment variables in the ``cmd_line`` property Using hooks and environment variables in the ``cmd_line`` property
================================================================== ==================================================================