Documentation update.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51758 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Mikhail Glushenkov 2008-05-30 06:28:00 +00:00
parent 2b7bcb4e8d
commit 0ab8ac318f

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
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:
@ -254,6 +259,28 @@ currently implemented option types and properties are described below:
- ``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
==================================================================