VirtualBox

Changeset 6288 in vbox


Ignore:
Timestamp:
Jan 9, 2008 12:47:09 AM (17 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
27146
Message:

Generate the doxygen file.

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Doxyfile.Core

    r6126 r6288  
    1 # Doxyfile 1.3.7
    2 
    3 # This file describes the settings to be used by the documentation system
    4 # doxygen (www.doxygen.org) for a project
    5 #
    6 # All text after a hash (#) is considered a comment and will be ignored
    7 # The format is:
    8 #       TAG = value [value, ...]
    9 # For lists items can also be appended using:
    10 #       TAG += value [value, ...]
    11 # Values that contain spaces should be placed between quotes (" ")
     1# Doxyfile 1.5.4
    122
    133#---------------------------------------------------------------------------
    144# Project related configuration options
    155#---------------------------------------------------------------------------
    16 
    17 # The PROJECT_NAME tag is a single word (or a sequence of words surrounded
    18 # by quotes) that should identify the project.
    19 
     6DOXYFILE_ENCODING      = UTF-8
    207PROJECT_NAME           = VBox
    21 
    22 # The PROJECT_NUMBER tag can be used to enter a project or revision number.
    23 # This could be handy for archiving the generated documentation or
    24 # if some version control system is used.
    25 
    268PROJECT_NUMBER         =
    27 
    28 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
    29 # base path where the generated documentation will be put.
    30 # If a relative path is entered, it will be relative to the location
    31 # where doxygen was started. If left blank the current directory will be used.
    32 
    33 OUTPUT_DIRECTORY       = $(PATH_OUT)/docs/Core
    34 
    35 # If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
    36 # 2 levels of 10 sub-directories under the output directory of each output
    37 # format and will distribute the generated files over these directories.
    38 # Enabling this option can be useful when feeding doxygen a huge amount of source
    39 # files, where putting all generated files in the same directory would otherwise
    40 # cause performance problems for the file system.
    41 
     9# OUTPUT_DIRECTORY       =  later
    4210CREATE_SUBDIRS         = NO
    43 
    44 # The OUTPUT_LANGUAGE tag is used to specify the language in which all
    45 # documentation generated by doxygen is written. Doxygen will use this
    46 # information to generate all constant output in the proper language.
    47 # The default language is English, other supported languages are:
    48 # Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch,
    49 # Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en
    50 # (Japanese with English messages), Korean, Korean-en, Norwegian, Polish, Portuguese,
    51 # Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
    52 
    5311OUTPUT_LANGUAGE        = English
    54 
    55 # This tag can be used to specify the encoding used in the generated output.
    56 # The encoding is not always determined by the language that is chosen,
    57 # but also whether or not the output is meant for Windows or non-Windows users.
    58 # In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES
    59 # forces the Windows encoding (this is the default for the Windows binary),
    60 # whereas setting the tag to NO uses a Unix-style encoding (the default for
    61 # all platforms other than Windows).
    62 
    63 USE_WINDOWS_ENCODING   = YES
    64 
    65 # If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
    66 # include brief member descriptions after the members that are listed in
    67 # the file and class documentation (similar to JavaDoc).
    68 # Set to NO to disable this.
    69 
    7012BRIEF_MEMBER_DESC      = YES
    71 
    72 # If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
    73 # the brief description of a member or function before the detailed description.
    74 # Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
    75 # brief descriptions will be completely suppressed.
    76 
    7713REPEAT_BRIEF           = YES
    78 
    79 # This tag implements a quasi-intelligent brief description abbreviator
    80 # that is used to form the text in various listings. Each string
    81 # in this list, if found as the leading text of the brief description, will be
    82 # stripped from the text and the result after processing the whole list, is used
    83 # as the annotated text. Otherwise, the brief description is used as-is. If left
    84 # blank, the following values are used ("$name" is automatically replaced with the
    85 # name of the entity): "The $name class" "The $name widget" "The $name file"
    86 # "is" "provides" "specifies" "contains" "represents" "a" "an" "the"
    87 
    8814ABBREVIATE_BRIEF       =
    89 
    90 # If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
    91 # Doxygen will generate a detailed section even if there is only a brief
    92 # description.
    93 
    9415ALWAYS_DETAILED_SEC    = NO
    95 
    96 # If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited
    97 # members of a class in the documentation of that class as if those members were
    98 # ordinary class members. Constructors, destructors and assignment operators of
    99 # the base classes will not be shown.
    100 
    10116INLINE_INHERITED_MEMB  = NO
    102 
    103 # If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
    104 # path before files name in the file list and in the header files. If set
    105 # to NO the shortest path that makes the file name unique will be used.
    106 
    10717FULL_PATH_NAMES        = NO
    108 
    109 # If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
    110 # can be used to strip a user-defined part of the path. Stripping is
    111 # only done if one of the specified strings matches the left-hand part of
    112 # the path. The tag can be used to show relative paths in the file list.
    113 # If left blank the directory from which doxygen is run is used as the
    114 # path to strip.
    115 
    11618STRIP_FROM_PATH        =
    117 
    118 # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
    119 # the path mentioned in the documentation of a class, which tells
    120 # the reader which header file to include in order to use a class.
    121 # If left blank only the name of the header file containing the class
    122 # definition is used. Otherwise one should specify the include paths that
    123 # are normally passed to the compiler using the -I flag.
    124 
    12519STRIP_FROM_INC_PATH    =
    126 
    127 # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
    128 # (but less readable) file names. This can be useful is your file systems
    129 # doesn't support long names like on DOS, Mac, or CD-ROM.
    130 
    13120SHORT_NAMES            = NO
    132 
    133 # If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
    134 # will interpret the first line (until the first dot) of a JavaDoc-style
    135 # comment as the brief description. If set to NO, the JavaDoc
    136 # comments will behave just like the Qt-style comments (thus requiring an
    137 # explicit @brief command for a brief description.
    138 
    13921JAVADOC_AUTOBRIEF      = YES
    140 
    141 # The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
    142 # treat a multi-line C++ special comment block (i.e. a block of //! or ///
    143 # comments) as a brief description. This used to be the default behaviour.
    144 # The new default is to treat a multi-line C++ comment block as a detailed
    145 # description. Set this tag to YES if you prefer the old behaviour instead.
    146 
     22QT_AUTOBRIEF           = NO
    14723MULTILINE_CPP_IS_BRIEF = NO
    148 
    149 # If the DETAILS_AT_TOP tag is set to YES then Doxygen
    150 # will output the detailed description near the top, like JavaDoc.
    151 # If set to NO, the detailed description appears after the member
    152 # documentation.
    153 
    15424DETAILS_AT_TOP         = NO
    155 
    156 # If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
    157 # member inherits the documentation from any documented member that it
    158 # re-implements.
    159 
    16025INHERIT_DOCS           = YES
    161 
    162 # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
    163 # tag is set to YES, then doxygen will reuse the documentation of the first
    164 # member in the group (if any) for the other members of the group. By default
    165 # all members of a group must be documented explicitly.
    166 
    167 DISTRIBUTE_GROUP_DOC   = NO
    168 
    169 # The TAB_SIZE tag can be used to set the number of spaces in a tab.
    170 # Doxygen uses this value to replace tabs by spaces in code fragments.
    171 
     26SEPARATE_MEMBER_PAGES  = NO
    17227TAB_SIZE               = 4
    173 
    174 # This tag can be used to specify a number of aliases that acts
    175 # as commands in the documentation. An alias has the form "name=value".
    176 # For example adding "sideeffect=\par Side Effects:\n" will allow you to
    177 # put the command \sideeffect (or @sideeffect) in the documentation, which
    178 # will result in a user-defined paragraph with heading "Side Effects:".
    179 # You can put \n's in the value part of an alias to insert newlines.
    180 
    18128ALIASES                = \
    18229    "note=@remark" \
     
    18532    "vmstateto=@par VM State Out:\n"
    18633
    187 # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
    188 # only. Doxygen will then generate output that is more tailored for C.
    189 # For instance, some of the names that are used will be different. The list
    190 # of all members will be omitted, etc.
     34# The following is for Global Configuration options.
     35ALIASES                += \
     36        gcfgm{6}="\xrefitem lst_gcfgm \"GCFGM\" \"Global Configuration Values\" \
     37<b>Name:</b> \1 <br> \
     38<b>Type:</b> \2 <br> \
     39<b>Unit:</b> \6 <br> \
     40<b>Min:</b> \3 <br> \
     41<b>Max:</b> \4 <br> \
     42<b>Default:</b> \5 <br> \
     43"
     44ALIASES                += \
     45        gcfgm{5}="\xrefitem lst_gcfgm \"GCFGM\" \"Global Configuration Values\" \
     46<b>Name:</b> \1 <br> \
     47<b>Type:</b> \2 <br> \
     48<b>Min:</b> \3 <br> \
     49<b>Max:</b> \4 <br> \
     50<b>Default:</b> \5 <br> \
     51"
     52ALIASES                += \
     53        gcfgm{4}="\xrefitem lst_gcfgm \"GCFGM\" \"Global Configuration Values\" \
     54<b>Name:</b> \1 <br> \
     55<b>Type:</b> \2 <br> \
     56<b>Min:</b> \3 <br> \
     57<b>Max:</b> \4 <br> \
     58"
     59ALIASES                += \
     60        gcfgm{3}="\xrefitem lst_gcfgm \"GCFGM\" \"Global Configuration Values\" \
     61<b>Name:</b> \1 <br> \
     62<b>Type:</b> \2 <br> \
     63<b>Default:</b> \3 <br> \
     64"
     65ALIASES                += \
     66        gcfgm{2}="\xrefitem lst_gcfgm \"GCFGM\" \"Global Configuration Values\" \
     67<b>Name:</b> \1 <br> \
     68<b>Type:</b> \2 <br> \
     69"
     70
     71# The following is for per-VM Configuration options.
     72ALIASES                += \
     73        cfgm{6}="\xrefitem lst_gcfgm \"GCFGM\" \"Global Configuration Values\" \
     74<b>Name:</b> \1 <br> \
     75<b>Type:</b> \2 <br> \
     76<b>Unit:</b> \6 <br> \
     77<b>Min:</b> \3 <br> \
     78<b>Max:</b> \4 <br> \
     79<b>Default:</b> \5 <br> \
     80"
     81ALIASES                += \
     82        cfgm{5}="\xrefitem lst_gcfgm \"GCFGM\" \"Global Configuration Values\" \
     83<b>Name:</b> \1 <br> \
     84<b>Type:</b> \2 <br> \
     85<b>Min:</b> \3 <br> \
     86<b>Max:</b> \4 <br> \
     87<b>Default:</b> \5 <br> \
     88"
     89ALIASES                += \
     90        cfgm{4}="\xrefitem lst_gcfgm \"GCFGM\" \"Global Configuration Values\" \
     91<b>Name:</b> \1 <br> \
     92<b>Type:</b> \2 <br> \
     93<b>Min:</b> \3 <br> \
     94<b>Max:</b> \4 <br> \
     95"
     96ALIASES                += \
     97        cfgm{3}="\xrefitem lst_gcfgm \"GCFGM\" \"Global Configuration Values\" \
     98<b>Name:</b> \1 <br> \
     99<b>Type:</b> \2 <br> \
     100<b>Default:</b> \3 <br> \
     101"
     102ALIASES                += \
     103        cfgm{2}="\xrefitem lst_gcfgm \"GCFGM\" \"Global Configuration Values\" \
     104<b>Name:</b> \1 <br> \
     105<b>Type:</b> \2 <br> \
     106"
    191107
    192108OPTIMIZE_OUTPUT_FOR_C  = YES
    193 
    194 # Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources
    195 # only. Doxygen will then generate output that is more tailored for Java.
    196 # For instance, namespaces will be presented as packages, qualified scopes
    197 # will look different, etc.
    198 
    199109OPTIMIZE_OUTPUT_JAVA   = NO
    200 
    201 # Set the SUBGROUPING tag to YES (the default) to allow class member groups of
    202 # the same type (for instance a group of public functions) to be put as a
    203 # subgroup of that type (e.g. under the Public Functions section). Set it to
    204 # NO to prevent subgrouping. Alternatively, this can be done per class using
    205 # the \nosubgrouping command.
    206 
     110BUILTIN_STL_SUPPORT    = NO
     111CPP_CLI_SUPPORT        = NO
     112SIP_SUPPORT            = NO
     113DISTRIBUTE_GROUP_DOC   = NO
    207114SUBGROUPING            = YES
     115TYPEDEF_HIDES_STRUCT   = NO
    208116
    209117#---------------------------------------------------------------------------
    210118# Build related configuration options
    211119#---------------------------------------------------------------------------
    212 
    213 # If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
    214 # documentation are documented, even if no documentation was available.
    215 # Private class members and static file members will be hidden unless
    216 # the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
    217 
    218120EXTRACT_ALL            = YES
    219 
    220 # If the EXTRACT_PRIVATE tag is set to YES all private members of a class
    221 # will be included in the documentation.
    222 
    223121EXTRACT_PRIVATE        = YES
    224 
    225 # If the EXTRACT_STATIC tag is set to YES all static members of a file
    226 # will be included in the documentation.
    227 
    228122EXTRACT_STATIC         = YES
    229 
    230 # If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
    231 # defined locally in source files will be included in the documentation.
    232 # If set to NO only classes defined in header files are included.
    233 
    234123EXTRACT_LOCAL_CLASSES  = YES
    235 
    236 # This flag is only useful for Objective-C code. When set to YES local
    237 # methods, which are defined in the implementation section but not in
    238 # the interface are included in the documentation.
    239 # If set to NO (the default) only methods in the interface are included.
    240 
    241124EXTRACT_LOCAL_METHODS  = NO
    242 
    243 # If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
    244 # undocumented members of documented classes, files or namespaces.
    245 # If set to NO (the default) these members will be included in the
    246 # various overviews, but no documentation section is generated.
    247 # This option has no effect if EXTRACT_ALL is enabled.
    248 
     125EXTRACT_ANON_NSPACES   = NO
    249126HIDE_UNDOC_MEMBERS     = NO
    250 
    251 # If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
    252 # undocumented classes that are normally visible in the class hierarchy.
    253 # If set to NO (the default) these classes will be included in the various
    254 # overviews. This option has no effect if EXTRACT_ALL is enabled.
    255 
    256127HIDE_UNDOC_CLASSES     = NO
    257 
    258 # If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
    259 # friend (class|struct|union) declarations.
    260 # If set to NO (the default) these declarations will be included in the
    261 # documentation.
    262 
    263128HIDE_FRIEND_COMPOUNDS  = NO
    264 
    265 # If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
    266 # documentation blocks found inside the body of a function.
    267 # If set to NO (the default) these blocks will be appended to the
    268 # function's detailed documentation block.
    269 
    270129HIDE_IN_BODY_DOCS      = NO
    271 
    272 # The INTERNAL_DOCS tag determines if documentation
    273 # that is typed after a \internal command is included. If the tag is set
    274 # to NO (the default) then the documentation will be excluded.
    275 # Set it to YES to include the internal documentation.
    276 
    277 INTERNAL_DOCS          = YES
    278 
    279 # If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
    280 # file names in lower-case letters. If set to YES upper-case letters are also
    281 # allowed. This is useful if you have classes or files whose names only differ
    282 # in case and if your file system supports case sensitive file names. Windows
    283 # users are advised to set this option to NO.
    284 
     130INTERNAL_DOCS          = NO
    285131CASE_SENSE_NAMES       = NO
    286 
    287 # If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
    288 # will show members with their full class and namespace scopes in the
    289 # documentation. If set to YES the scope will be hidden.
    290 
    291132HIDE_SCOPE_NAMES       = NO
    292 
    293 # If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
    294 # will put a list of the files that are included by a file in the documentation
    295 # of that file.
    296 
    297133SHOW_INCLUDE_FILES     = YES
    298 
    299 # If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
    300 # is inserted in the documentation for inline members.
    301 
    302134INLINE_INFO            = YES
    303 
    304 # If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
    305 # will sort the (detailed) documentation of file and class members
    306 # alphabetically by member name. If set to NO the members will appear in
    307 # declaration order.
    308 
    309135SORT_MEMBER_DOCS       = YES
    310 
    311 # If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
    312 # brief documentation of file, namespace and class members alphabetically
    313 # by member name. If set to NO (the default) the members will appear in
    314 # declaration order.
    315 
    316136SORT_BRIEF_DOCS        = NO
    317 
    318 # If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
    319 # sorted by fully-qualified names, including namespaces. If set to
    320 # NO (the default), the class list will be sorted only by class name,
    321 # not including the namespace part.
    322 # Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
    323 # Note: This option applies only to the class list, not to the
    324 # alphabetical list.
    325 
    326137SORT_BY_SCOPE_NAME     = NO
    327 
    328 # The GENERATE_TODOLIST tag can be used to enable (YES) or
    329 # disable (NO) the todo list. This list is created by putting \todo
    330 # commands in the documentation.
    331 
    332138GENERATE_TODOLIST      = YES
    333 
    334 # The GENERATE_TESTLIST tag can be used to enable (YES) or
    335 # disable (NO) the test list. This list is created by putting \test
    336 # commands in the documentation.
    337 
    338139GENERATE_TESTLIST      = YES
    339 
    340 # The GENERATE_BUGLIST tag can be used to enable (YES) or
    341 # disable (NO) the bug list. This list is created by putting \bug
    342 # commands in the documentation.
    343 
    344140GENERATE_BUGLIST       = YES
    345 
    346 # The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
    347 # disable (NO) the deprecated list. This list is created by putting
    348 # \deprecated commands in the documentation.
    349 
    350141GENERATE_DEPRECATEDLIST= YES
    351 
    352 # The ENABLED_SECTIONS tag can be used to enable conditional
    353 # documentation sections, marked by \if sectionname ... \endif.
    354 
    355142ENABLED_SECTIONS       =
    356 
    357 # The MAX_INITIALIZER_LINES tag determines the maximum number of lines
    358 # the initial value of a variable or define consists of for it to appear in
    359 # the documentation. If the initializer consists of more lines than specified
    360 # here it will be hidden. Use a value of 0 to hide initializers completely.
    361 # The appearance of the initializer of individual variables and defines in the
    362 # documentation can be controlled using \showinitializer or \hideinitializer
    363 # command in the documentation regardless of this setting.
    364 
    365143MAX_INITIALIZER_LINES  = 30
    366 
    367 # Set the SHOW_USED_FILES tag to NO to disable the list of files generated
    368 # at the bottom of the documentation of classes and structs. If set to YES the
    369 # list will mention the files that were used to generate the documentation.
    370 
    371144SHOW_USED_FILES        = YES
     145SHOW_DIRECTORIES       = NO
     146FILE_VERSION_FILTER    =
    372147
    373148#---------------------------------------------------------------------------
    374149# configuration options related to warning and progress messages
    375150#---------------------------------------------------------------------------
    376 
    377 # The QUIET tag can be used to turn on/off the messages that are generated
    378 # by doxygen. Possible values are YES and NO. If left blank NO is used.
    379 
    380151QUIET                  = NO
    381 
    382 # The WARNINGS tag can be used to turn on/off the warning messages that are
    383 # generated by doxygen. Possible values are YES and NO. If left blank
    384 # NO is used.
    385 
    386152WARNINGS               = YES
    387 
    388 # If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
    389 # for undocumented members. If EXTRACT_ALL is set to YES then this flag will
    390 # automatically be disabled.
    391 
    392153WARN_IF_UNDOCUMENTED   = YES
    393 
    394 # If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
    395 # potential errors in the documentation, such as not documenting some
    396 # parameters in a documented function, or documenting parameters that
    397 # don't exist or using markup commands wrongly.
    398 
    399154WARN_IF_DOC_ERROR      = YES
    400 
    401 # The WARN_FORMAT tag determines the format of the warning messages that
    402 # doxygen can produce. The string should contain the $file, $line, and $text
    403 # tags, which will be replaced by the file and line number from which the
    404 # warning originated and the warning text.
    405 
     155WARN_NO_PARAMDOC       = NO
    406156WARN_FORMAT            = "$file:$line: $text"
    407 
    408 # The WARN_LOGFILE tag can be used to specify a file to which warning
    409 # and error messages should be written. If left blank the output is written
    410 # to stderr.
    411 
    412 WARN_LOGFILE           = $(PATH_OUT)/docs/Core.err
     157#WARN_LOGFILE           = later
    413158
    414159#---------------------------------------------------------------------------
    415160# configuration options related to the input files
    416161#---------------------------------------------------------------------------
    417 
    418 # The INPUT tag can be used to specify the files and/or directories that contain
    419 # documented source files. You may enter file names like "myfile.cpp" or
    420 # directories like "/usr/src/myproject". Separate the files or directories
    421 # with spaces.
    422 
    423 ## VMM internal .h files:
    424 # find src/VBox/VMM/ -name '*Internal*h' | sort | sed -e 's/^/    /' -e 's/$/ \\/'
    425 ## VMM .cpp files:
    426 # find src/VBox/VMM/ -name '*.cpp'  | sed -e '/testcase/d' -e '/Deps\.cpp/d' -e 's/^\(.*\)\/\([a-zA-Z0-9.]*$\)/\2  \1\/\2/' | sort | sed -e 's/^[a-zA-Z0-9.]* */    /' -e 's/$/ \\/'
    427 
    428 INPUT                  = \
    429     doc/VBox-doc.c \
    430     doc/VBox-CodingGuidelines.cpp \
    431     src/VBox/VMM/VMMCodingGuidelines.cpp \
    432     src/VBox/VMM/VMMDocsRawMode.cpp \
    433     include/VBox/cdefs.h \
    434     include/VBox/vmapi.h \
    435     include/VBox/vmm.h \
    436     include/VBox/cpum.h \
    437     include/VBox/mm.h \
    438     include/VBox/pgm.h \
    439     include/VBox/selm.h \
    440     include/VBox/trpm.h \
    441     include/VBox/patm.h \
    442     include/VBox/dbgf.h \
    443     include/VBox/stam.h \
    444     include/VBox/em.h \
    445     include/VBox/pdm.h \
    446     include/VBox/rem.h \
    447     include/VBox/iom.h \
    448     include/VBox/cfgm.h \
    449     include/VBox/tm.h \
    450     include/VBox/csam.h \
    451     include/VBox/ssm.h \
    452     include/VBox/hwaccm.h \
    453     include/VBox/hwacc_svm.h \
    454     include/VBox/hwacc_vmx.h \
    455     \
    456     src/VBox/VMM/CFGMInternal.h \
    457     src/VBox/VMM/CPUMInternal.h \
    458     src/VBox/VMM/DBGFInternal.h \
    459     src/VBox/VMM/EMInternal.h \
    460     src/VBox/VMM/HWACCMInternal.h \
    461     src/VBox/VMM/IOMInternal.h \
    462     src/VBox/VMM/MMInternal.h \
    463     src/VBox/VMM/PDMInternal.h \
    464     src/VBox/VMM/PGMInternal.h \
    465     src/VBox/VMM/PATM/CSAMInternal.h \
    466     src/VBox/VMM/PATM/PATMInternal.h \
    467     src/VBox/VMM/REMInternal.h \
    468     src/VBox/VMM/SELMInternal.h \
    469     src/VBox/VMM/SSMInternal.h \
    470     src/VBox/VMM/STAMInternal.h \
    471     src/VBox/VMM/TMInternal.h \
    472     src/VBox/VMM/TRPMInternal.h \
    473     src/VBox/VMM/VMInternal.h \
    474     src/VBox/VMM/VMMInternal.h \
    475     \
    476     include/VBox/vm.h \
    477     include/VBox/sup.h \
    478     include/VBox/VBoxHDD.h \
    479     include/VBox/types.h \
    480     include/VBox/err.h \
    481     include/VBox/x86.h \
    482     include/VBox/cpumdis.h \
    483     include/VBox/dbggui.h \
    484     include/VBox/dis.h \
    485     include/VBox/disopcode.h \
    486     include/VBox/intnet.h \
    487     include/VBox/settings.h \
    488     include/VBox/pci.h \
    489     include/VBox/scsi.h \
    490     include/VBox/shflsvc.h \
    491     include/VBox/hgcmsvc.h \
    492     include/VBox/usb.h \
    493     include/VBox/vusb.h \
    494     \
    495     include/VBox/log.h \
    496     include/VBox/param.h \
    497     include/VBox/version.h \
    498     \
    499     include/iprt/alloc.h \
    500     include/iprt/asm.h \
    501     include/iprt/assert.h \
    502     include/iprt/avl.h \
    503     include/iprt/cdefs.h \
    504     include/iprt/crc32.h \
    505     include/iprt/critsect.h \
    506     include/iprt/dir.h \
    507     include/iprt/err.h \
    508     include/iprt/file.h \
    509     include/iprt/fs.h \
    510     include/iprt/ldr.h \
    511     include/iprt/log.h \
    512     include/iprt/path.h \
    513     include/iprt/process.h \
    514     include/iprt/runtime.h \
    515     include/iprt/semaphore.h \
    516     include/iprt/stdarg.h \
    517     include/iprt/stream.h \
    518     include/iprt/string.h \
    519     include/iprt/system.h \
    520     include/iprt/tcp.h \
    521     include/iprt/thread.h \
    522     include/iprt/time.h \
    523     include/iprt/timer.h \
    524     include/iprt/types.h \
    525     include/iprt/uuid.h \
    526     include/iprt/zip.h \
    527     \
    528     src/VBox/VMM/CFGM.cpp \
    529     src/VBox/VMM/VMMAll/CPUMAllRegs.cpp \
    530     src/VBox/VMM/CPUM.cpp \
    531     src/VBox/VMM/VMMGC/CPUMGC.cpp \
    532     src/VBox/VMM/VMMR0/CPUMR0.cpp \
    533     src/VBox/VMM/CPUMStack.cpp \
    534     src/VBox/VMM/PATM/VMMAll/CSAMAll.cpp \
    535     src/VBox/VMM/PATM/CSAM.cpp \
    536     src/VBox/VMM/PATM/VMMGC/CSAMGC.cpp \
    537     src/VBox/VMM/DBGFAddr.cpp \
    538     src/VBox/VMM/VMMAll/DBGFAll.cpp \
    539     src/VBox/VMM/DBGFBp.cpp \
    540     src/VBox/VMM/DBGF.cpp \
    541     src/VBox/VMM/DBGFDisas.cpp \
    542     src/VBox/VMM/VMMGC/DBGFGC.cpp \
    543     src/VBox/VMM/DBGFInfo.cpp \
    544     src/VBox/VMM/DBGFLog.cpp \
    545     src/VBox/VMM/DBGFStack.cpp \
    546     src/VBox/VMM/DBGFSym.cpp \
    547     src/VBox/VMM/VMMAll/EMAll.cpp \
    548     src/VBox/VMM/EM.cpp \
    549     src/VBox/VMM/HWACCM.cpp \
    550     src/VBox/VMM/VMMR0/HWACCMR0.cpp \
    551     src/VBox/VMM/VMMAll/IOMAll.cpp \
    552     src/VBox/VMM/IOM.cpp \
    553     src/VBox/VMM/VMMGC/IOMGC.cpp \
    554     src/VBox/VMM/VMMAll/MMAll.cpp \
    555     src/VBox/VMM/VMMAll/MMAllHyper.cpp \
    556     src/VBox/VMM/VMMAll/MMAllPagePool.cpp \
    557     src/VBox/VMM/VMMAll/MMAllPhys.cpp \
    558     src/VBox/VMM/MM.cpp \
    559     src/VBox/VMM/MMHeap.cpp \
    560     src/VBox/VMM/MMHyper.cpp \
    561     src/VBox/VMM/MMPagePool.cpp \
    562     src/VBox/VMM/MMPhys.cpp \
    563     src/VBox/VMM/VMMGC/MMRamGC.cpp \
    564     src/VBox/VMM/PATM/VMMAll/PATMAll.cpp \
    565     src/VBox/VMM/PATM/PATM.cpp \
    566     src/VBox/VMM/PATM/VMMGC/PATMGC.cpp \
    567     src/VBox/VMM/PATM/PATMGuest.cpp \
    568     src/VBox/VMM/PATM/PATMPatch.cpp \
    569     src/VBox/VMM/PATM/PATMSSM.cpp \
    570     src/VBox/VMM/VMMAll/PDMAllCritSect.cpp \
    571     src/VBox/VMM/VMMAll/PDMAllQueue.cpp \
    572     src/VBox/VMM/PDM.cpp \
    573     src/VBox/VMM/PDMCritSect.cpp \
    574     src/VBox/VMM/PDMDevice.cpp \
    575     src/VBox/VMM/PDMDriver.cpp \
    576     src/VBox/VMM/VMMGC/PDMGCDevice.cpp \
    577     src/VBox/VMM/PDMLdr.cpp \
    578     src/VBox/VMM/PDMQueue.cpp \
    579     src/VBox/VMM/VMMAll/PGMAll.cpp \
    580     src/VBox/VMM/VMMAll/PGMAllMap.cpp \
    581     src/VBox/VMM/VMMAll/PGMAllPhys.cpp \
    582     src/VBox/VMM/PGM.cpp \
    583     src/VBox/VMM/VMMGC/PGMGC.cpp \
    584     src/VBox/VMM/PGMMap.cpp \
    585     src/VBox/VMM/PGMPhys.cpp \
    586     src/VBox/VMM/PGMPool.cpp \
    587     src/VBox/VMM/VMMGC/REMGC.cpp \
    588     src/VBox/VMM/VMMAll/SELMAll.cpp \
    589     src/VBox/VMM/SELM.cpp \
    590     src/VBox/VMM/VMMGC/SELMGC.cpp \
    591     src/VBox/VMM/SSM.cpp \
    592     src/VBox/VMM/STAM.cpp \
    593     src/VBox/VMM/VMMAll/TMAll.cpp \
    594     src/VBox/VMM/VMMAll/TMAllCpu.cpp \
    595     src/VBox/VMM/VMMAll/TMAllReal.cpp \
    596     src/VBox/VMM/VMMAll/TMAllVirtual.cpp \
    597     src/VBox/VMM/TM.cpp \
    598     src/VBox/VMM/VMMAll/TRPMAll.cpp \
    599     src/VBox/VMM/TRPM.cpp \
    600     src/VBox/VMM/VMMGC/TRPMGC.cpp \
    601     src/VBox/VMM/VMMGC/TRPMGCHandlers.cpp \
    602     src/VBox/VMM/VMMR0/TRPMR0.cpp \
    603     src/VBox/VMM/VM.cpp \
    604     src/VBox/VMM/VMEmt.cpp \
    605     src/VBox/VMM/VMMAll/VMMAll.cpp \
    606     src/VBox/VMM/VMMCodingGuidelines.cpp \
    607     src/VBox/VMM/VMM.cpp \
    608     src/VBox/VMM/VMMDocsRawMode.cpp \
    609     src/VBox/VMM/VMMGC/VMMGC.cpp \
    610     src/VBox/VMM/VMMR0/VMMR0.cpp \
    611     src/VBox/VMM/VMReq.cpp \
    612     \
    613     src/VBox/Devices/Builtins2.cpp \
    614     src/VBox/Devices/Builtins.cpp \
    615     src/VBox/Devices/USB/DevOHCI.cpp \
    616     src/VBox/Devices/PC/DevPcBios.cpp \
    617     src/VBox/Devices/PC/DrvACPI.cpp \
    618     src/VBox/Devices/Storage/DevATA.cpp \
    619     src/VBox/Devices/Storage/DrvBlock.cpp \
    620     src/VBox/Devices/Storage/DrvHostBase.cpp \
    621     src/VBox/Devices/Storage/DrvHostDVD.cpp \
    622     src/VBox/Devices/Storage/DrvHostFloppy.cpp \
    623     src/VBox/Devices/Network/DrvIntNet.cpp \
    624     src/VBox/Devices/Storage/DrvISCSI.cpp \
    625     src/VBox/Devices/Storage/DrvISCSITransportTCP.cpp \
    626     src/VBox/Devices/Input/DrvKeyboardQueue.cpp \
    627     src/VBox/Devices/Storage/DrvMediaISO.cpp \
    628     src/VBox/Devices/Input/DrvMouseQueue.cpp \
    629     src/VBox/Devices/Network/DrvNAT.cpp \
    630     src/VBox/Devices/Network/DrvNetSniffer.cpp \
    631     src/VBox/Devices/Storage/DrvRawImage.cpp \
    632     src/VBox/Devices/Network/DrvTAP.cpp \
    633     src/VBox/Devices/Network/DrvTAPWin32.cpp \
    634     src/VBox/Devices/Network/DevPCNet.cpp \
    635     src/VBox/Devices/USB/DrvVUSBRootHub.cpp \
    636     src/VBox/Devices/PC/DevPit-i8254.cpp \
    637     src/VBox/Devices/USB/linux/USBProxyDevice-linux.cpp \
    638     src/VBox/Devices/USB/vrdp/USBProxyDevice-vrdp.cpp \
    639     src/VBox/Devices/USB/win32/USBLib-win32.cpp \
    640     src/VBox/Devices/USB/win32/USBProxyDevice-win32.cpp \
    641     src/VBox/Devices/Network/SrvIntNetR0.cpp \
    642     src/VBox/Devices/USB/USBProxyDevice.cpp \
    643     src/VBox/Devices/VMMDev/VBoxDev.cpp \
    644     src/VBox/Devices/Storage/VBoxHDD.cpp \
    645     src/VBox/Devices/VMMDev/VMMDevHGCM.cpp \
    646     src/VBox/Devices/USB/VUSBDevice.cpp \
    647     src/VBox/Devices/USB/VUSBUrb.cpp \
    648     \
    649     src/VBox/Devices/Input/DevPS2.cpp \
    650     src/VBox/Devices/Graphics/DevVGA.cpp \
    651     src/VBox/Devices/Bus/DevPCI.cpp \
    652     \
    653     src/VBox/HostDrivers/Support/SUPLib.cpp \
    654     \
    655     src/VBox/Disassembler/Disasm.cpp \
    656     src/VBox/Disassembler/DisasmCore.cpp \
    657     \
    658     src/VBox/Debugger/DBGConsole.cpp \
    659     src/VBox/Debugger/DBGCTcp.cpp \
    660 
    661 
    662 # If the value of the INPUT tag contains directories, you can use the
    663 # FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
    664 # and *.h) to filter out the source-files in the directories. If left
    665 # blank the following patterns are tested:
    666 # *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
    667 # *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm
    668 
     162# INPUT                  = later
     163INPUT_ENCODING         = UTF-8
    669164FILE_PATTERNS          =
    670 
    671 
    672 
    673 # The RECURSIVE tag can be used to turn specify whether or not subdirectories
    674 # should be searched for input files as well. Possible values are YES and NO.
    675 # If left blank NO is used.
    676 
    677165RECURSIVE              = NO
    678 
    679 # The EXCLUDE tag can be used to specify files and/or directories that should
    680 # excluded from the INPUT source files. This way you can easily exclude a
    681 # subdirectory from a directory tree whose root is specified with the INPUT tag.
    682 
    683166EXCLUDE                =
    684 
    685 # The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories
    686 # that are symbolic links (a Unix filesystem feature) are excluded from the input.
    687 
    688167EXCLUDE_SYMLINKS       = NO
    689 
    690 # If the value of the INPUT tag contains directories, you can use the
    691 # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
    692 # certain files from those directories.
    693 
    694168EXCLUDE_PATTERNS       =
    695 
    696 # The EXAMPLE_PATH tag can be used to specify one or more files or
    697 # directories that contain example code fragments that are included (see
    698 # the \include command).
    699 
     169EXCLUDE_SYMBOLS        =
    700170EXAMPLE_PATH           =
    701 
    702 # If the value of the EXAMPLE_PATH tag contains directories, you can use the
    703 # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
    704 # and *.h) to filter out the source-files in the directories. If left
    705 # blank all files are included.
    706 
    707171EXAMPLE_PATTERNS       =
    708 
    709 # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
    710 # searched for input files to be used with the \include or \dontinclude
    711 # commands irrespective of the value of the RECURSIVE tag.
    712 # Possible values are YES and NO. If left blank NO is used.
    713 
    714172EXAMPLE_RECURSIVE      = NO
    715 
    716 # The IMAGE_PATH tag can be used to specify one or more files or
    717 # directories that contain image that are included in the documentation (see
    718 # the \image command).
    719 
    720173IMAGE_PATH             = doc
    721 
    722 # The INPUT_FILTER tag can be used to specify a program that doxygen should
    723 # invoke to filter for each input file. Doxygen will invoke the filter program
    724 # by executing (via popen()) the command <filter> <input-file>, where <filter>
    725 # is the value of the INPUT_FILTER tag, and <input-file> is the name of an
    726 # input file. Doxygen will then use the output that the filter program writes
    727 # to standard output.
    728 
    729174INPUT_FILTER           =
    730 
    731 # If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
    732 # INPUT_FILTER) will be used to filter the input files when producing source
    733 # files to browse (i.e. when SOURCE_BROWSER is set to YES).
    734 
     175FILTER_PATTERNS        =
    735176FILTER_SOURCE_FILES    = NO
    736177
     
    738179# configuration options related to source browsing
    739180#---------------------------------------------------------------------------
    740 
    741 # If the SOURCE_BROWSER tag is set to YES then a list of source files will
    742 # be generated. Documented entities will be cross-referenced with these sources.
    743 # Note: To get rid of all source code in the generated output, make sure also
    744 # VERBATIM_HEADERS is set to NO.
    745 
    746181SOURCE_BROWSER         = NO
    747 
    748 # Setting the INLINE_SOURCES tag to YES will include the body
    749 # of functions and classes directly in the documentation.
    750 
    751182INLINE_SOURCES         = NO
    752 
    753 # Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
    754 # doxygen to hide any special comment blocks from generated source code
    755 # fragments. Normal C and C++ comments will always remain visible.
    756 
    757183STRIP_CODE_COMMENTS    = YES
    758 
    759 # If the REFERENCED_BY_RELATION tag is set to YES (the default)
    760 # then for each documented function all documented
    761 # functions referencing it will be listed.
    762 
    763184REFERENCED_BY_RELATION = YES
    764 
    765 # If the REFERENCES_RELATION tag is set to YES (the default)
    766 # then for each documented function all documented entities
    767 # called/used by that function will be listed.
    768 
    769185REFERENCES_RELATION    = YES
    770 
    771 # If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
    772 # will generate a verbatim copy of the header file for each class for
    773 # which an include is specified. Set to NO to disable this.
    774 
     186REFERENCES_LINK_SOURCE = YES
     187USE_HTAGS              = NO
    775188VERBATIM_HEADERS       = YES
    776189
     
    778191# configuration options related to the alphabetical class index
    779192#---------------------------------------------------------------------------
    780 
    781 # If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
    782 # of all compounds will be generated. Enable this if the project
    783 # contains a lot of classes, structs, unions or interfaces.
    784 
    785193ALPHABETICAL_INDEX     = NO
    786 
    787 # If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
    788 # the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
    789 # in which this list will be split (can be a number in the range [1..20])
    790 
    791194COLS_IN_ALPHA_INDEX    = 5
    792 
    793 # In case all classes in a project start with a common prefix, all
    794 # classes will be put under the same header in the alphabetical index.
    795 # The IGNORE_PREFIX tag can be used to specify one or more prefixes that
    796 # should be ignored while generating the index headers.
    797 
    798195IGNORE_PREFIX          =
    799196
     
    801198# configuration options related to the HTML output
    802199#---------------------------------------------------------------------------
    803 
    804 # If the GENERATE_HTML tag is set to YES (the default) Doxygen will
    805 # generate HTML output.
    806 
    807200GENERATE_HTML          = YES
    808 
    809 # The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
    810 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
    811 # put in front of it. If left blank `html' will be used as the default path.
    812 
    813201HTML_OUTPUT            = html
    814 
    815 # The HTML_FILE_EXTENSION tag can be used to specify the file extension for
    816 # each generated HTML page (for example: .htm,.php,.asp). If it is left blank
    817 # doxygen will generate files with .html extension.
    818 
    819202HTML_FILE_EXTENSION    = .html
    820 
    821 # The HTML_HEADER tag can be used to specify a personal HTML header for
    822 # each generated HTML page. If it is left blank doxygen will generate a
    823 # standard header.
    824 
    825203HTML_HEADER            =
    826 
    827 # The HTML_FOOTER tag can be used to specify a personal HTML footer for
    828 # each generated HTML page. If it is left blank doxygen will generate a
    829 # standard footer.
    830 
    831204HTML_FOOTER            =
    832 
    833 # The HTML_STYLESHEET tag can be used to specify a user-defined cascading
    834 # style sheet that is used by each HTML page. It can be used to
    835 # fine-tune the look of the HTML output. If the tag is left blank doxygen
    836 # will generate a default style sheet. Note that doxygen will try to copy
    837 # the style sheet file to the HTML output directory, so don't put your own
    838 # stylesheet in the HTML output directory as well, or it will be erased!
    839 
    840205HTML_STYLESHEET        =
    841 
    842 # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
    843 # files or namespaces will be aligned in HTML using tables. If set to
    844 # NO a bullet list will be used.
    845 
    846206HTML_ALIGN_MEMBERS     = YES
    847 
    848 # If the GENERATE_HTMLHELP tag is set to YES, additional index files
    849 # will be generated that can be used as input for tools like the
    850 # Microsoft HTML help workshop to generate a compressed HTML help file (.chm)
    851 # of the generated HTML documentation.
    852 
    853207GENERATE_HTMLHELP      = NO
    854 
    855 # If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
    856 # be used to specify the file name of the resulting .chm file. You
    857 # can add a path in front of the file if the result should not be
    858 # written to the html output directory.
    859 
     208HTML_DYNAMIC_SECTIONS  = NO
    860209CHM_FILE               =
    861 
    862 # If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
    863 # be used to specify the location (absolute path including file name) of
    864 # the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
    865 # the HTML help compiler on the generated index.hhp.
    866 
    867210HHC_LOCATION           =
    868 
    869 # If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
    870 # controls if a separate .chi index file is generated (YES) or that
    871 # it should be included in the master .chm file (NO).
    872 
    873211GENERATE_CHI           = NO
    874 
    875 # If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
    876 # controls whether a binary table of contents is generated (YES) or a
    877 # normal table of contents (NO) in the .chm file.
    878 
    879212BINARY_TOC             = NO
    880 
    881 # The TOC_EXPAND flag can be set to YES to add extra items for group members
    882 # to the contents of the HTML help documentation and to the tree view.
    883 
    884213TOC_EXPAND             = NO
    885 
    886 # The DISABLE_INDEX tag can be used to turn on/off the condensed index at
    887 # top of each HTML page. The value NO (the default) enables the index and
    888 # the value YES disables it.
    889 
    890214DISABLE_INDEX          = NO
    891 
    892 # This tag can be used to set the number of enum values (range [1..20])
    893 # that doxygen will group on one line in the generated HTML documentation.
    894 
    895215ENUM_VALUES_PER_LINE   = 4
    896 
    897 # If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
    898 # generated containing a tree-like index structure (just like the one that
    899 # is generated for HTML Help). For this to work a browser that supports
    900 # JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+,
    901 # Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are
    902 # probably better off using the HTML help feature.
    903 
    904216GENERATE_TREEVIEW      = NO
    905 
    906 # If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
    907 # used to set the initial width (in pixels) of the frame in which the tree
    908 # is shown.
    909 
    910217TREEVIEW_WIDTH         = 250
    911218
     
    913220# configuration options related to the LaTeX output
    914221#---------------------------------------------------------------------------
    915 
    916 # If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
    917 # generate Latex output.
    918 
    919222GENERATE_LATEX         = NO
    920 
    921 # The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
    922 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
    923 # put in front of it. If left blank `latex' will be used as the default path.
    924 
    925223LATEX_OUTPUT           = latex
    926 
    927 # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
    928 # invoked. If left blank `latex' will be used as the default command name.
    929 
    930224LATEX_CMD_NAME         = latex
    931 
    932 # The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
    933 # generate index for LaTeX. If left blank `makeindex' will be used as the
    934 # default command name.
    935 
    936225MAKEINDEX_CMD_NAME     = makeindex
    937 
    938 # If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
    939 # LaTeX documents. This may be useful for small projects and may help to
    940 # save some trees in general.
    941 
    942226COMPACT_LATEX          = NO
    943 
    944 # The PAPER_TYPE tag can be used to set the paper type that is used
    945 # by the printer. Possible values are: a4, a4wide, letter, legal and
    946 # executive. If left blank a4wide will be used.
    947 
    948227PAPER_TYPE             = a4wide
    949 
    950 # The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
    951 # packages that should be included in the LaTeX output.
    952 
    953228EXTRA_PACKAGES         =
    954 
    955 # The LATEX_HEADER tag can be used to specify a personal LaTeX header for
    956 # the generated latex document. The header should contain everything until
    957 # the first chapter. If it is left blank doxygen will generate a
    958 # standard header. Notice: only use this tag if you know what you are doing!
    959 
    960229LATEX_HEADER           =
    961 
    962 # If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
    963 # is prepared for conversion to pdf (using ps2pdf). The pdf file will
    964 # contain links (just like the HTML output) instead of page references
    965 # This makes the output suitable for online browsing using a pdf viewer.
    966 
    967230PDF_HYPERLINKS         = NO
    968 
    969 # If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
    970 # plain latex in the generated Makefile. Set this option to YES to get a
    971 # higher quality PDF documentation.
    972 
    973231USE_PDFLATEX           = NO
    974 
    975 # If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
    976 # command to the generated LaTeX files. This will instruct LaTeX to keep
    977 # running if errors occur, instead of asking the user for help.
    978 # This option is also used when generating formulas in HTML.
    979 
    980232LATEX_BATCHMODE        = NO
    981 
    982 # If LATEX_HIDE_INDICES is set to YES then doxygen will not
    983 # include the index chapters (such as File Index, Compound Index, etc.)
    984 # in the output.
    985 
    986233LATEX_HIDE_INDICES     = NO
    987234
     
    989236# configuration options related to the RTF output
    990237#---------------------------------------------------------------------------
    991 
    992 # If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
    993 # The RTF output is optimized for Word 97 and may not look very pretty with
    994 # other RTF readers or editors.
    995 
    996238GENERATE_RTF           = NO
    997 
    998 # The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
    999 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
    1000 # put in front of it. If left blank `rtf' will be used as the default path.
    1001 
    1002239RTF_OUTPUT             = rtf
    1003 
    1004 # If the COMPACT_RTF tag is set to YES Doxygen generates more compact
    1005 # RTF documents. This may be useful for small projects and may help to
    1006 # save some trees in general.
    1007 
    1008240COMPACT_RTF            = NO
    1009 
    1010 # If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
    1011 # will contain hyperlink fields. The RTF file will
    1012 # contain links (just like the HTML output) instead of page references.
    1013 # This makes the output suitable for online browsing using WORD or other
    1014 # programs which support those fields.
    1015 # Note: wordpad (write) and others do not support links.
    1016 
    1017241RTF_HYPERLINKS         = NO
    1018 
    1019 # Load stylesheet definitions from file. Syntax is similar to doxygen's
    1020 # config file, i.e. a series of assignments. You only have to provide
    1021 # replacements, missing definitions are set to their default value.
    1022 
    1023242RTF_STYLESHEET_FILE    =
    1024 
    1025 # Set optional variables used in the generation of an rtf document.
    1026 # Syntax is similar to doxygen's config file.
    1027 
    1028243RTF_EXTENSIONS_FILE    =
    1029244
     
    1031246# configuration options related to the man page output
    1032247#---------------------------------------------------------------------------
    1033 
    1034 # If the GENERATE_MAN tag is set to YES (the default) Doxygen will
    1035 # generate man pages
    1036 
    1037248GENERATE_MAN           = NO
    1038 
    1039 # The MAN_OUTPUT tag is used to specify where the man pages will be put.
    1040 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
    1041 # put in front of it. If left blank `man' will be used as the default path.
    1042 
    1043249MAN_OUTPUT             = man
    1044 
    1045 # The MAN_EXTENSION tag determines the extension that is added to
    1046 # the generated man pages (default is the subroutine's section .3)
    1047 
    1048250MAN_EXTENSION          = .3
    1049 
    1050 # If the MAN_LINKS tag is set to YES and Doxygen generates man output,
    1051 # then it will generate one additional man file for each entity
    1052 # documented in the real man page(s). These additional files
    1053 # only source the real man page, but without them the man command
    1054 # would be unable to find the correct page. The default is NO.
    1055 
    1056251MAN_LINKS              = NO
    1057252
     
    1059254# configuration options related to the XML output
    1060255#---------------------------------------------------------------------------
    1061 
    1062 # If the GENERATE_XML tag is set to YES Doxygen will
    1063 # generate an XML file that captures the structure of
    1064 # the code including all documentation.
    1065 
    1066256GENERATE_XML           = NO
    1067 
    1068 # The XML_OUTPUT tag is used to specify where the XML pages will be put.
    1069 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
    1070 # put in front of it. If left blank `xml' will be used as the default path.
    1071 
    1072257XML_OUTPUT             = xml
    1073 
    1074 # The XML_SCHEMA tag can be used to specify an XML schema,
    1075 # which can be used by a validating XML parser to check the
    1076 # syntax of the XML files.
    1077 
    1078258XML_SCHEMA             =
    1079 
    1080 # The XML_DTD tag can be used to specify an XML DTD,
    1081 # which can be used by a validating XML parser to check the
    1082 # syntax of the XML files.
    1083 
    1084259XML_DTD                =
    1085 
    1086 # If the XML_PROGRAMLISTING tag is set to YES Doxygen will
    1087 # dump the program listings (including syntax highlighting
    1088 # and cross-referencing information) to the XML output. Note that
    1089 # enabling this will significantly increase the size of the XML output.
    1090 
    1091260XML_PROGRAMLISTING     = YES
    1092261
     
    1094263# configuration options for the AutoGen Definitions output
    1095264#---------------------------------------------------------------------------
    1096 
    1097 # If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
    1098 # generate an AutoGen Definitions (see autogen.sf.net) file
    1099 # that captures the structure of the code including all
    1100 # documentation. Note that this feature is still experimental
    1101 # and incomplete at the moment.
    1102 
    1103265GENERATE_AUTOGEN_DEF   = NO
    1104266
     
    1106268# configuration options related to the Perl module output
    1107269#---------------------------------------------------------------------------
    1108 
    1109 # If the GENERATE_PERLMOD tag is set to YES Doxygen will
    1110 # generate a Perl module file that captures the structure of
    1111 # the code including all documentation. Note that this
    1112 # feature is still experimental and incomplete at the
    1113 # moment.
    1114 
    1115270GENERATE_PERLMOD       = NO
    1116 
    1117 # If the PERLMOD_LATEX tag is set to YES Doxygen will generate
    1118 # the necessary Makefile rules, Perl scripts and LaTeX code to be able
    1119 # to generate PDF and DVI output from the Perl module output.
    1120 
    1121271PERLMOD_LATEX          = NO
    1122 
    1123 # If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
    1124 # nicely formatted so it can be parsed by a human reader.  This is useful
    1125 # if you want to understand what is going on.  On the other hand, if this
    1126 # tag is set to NO the size of the Perl module output will be much smaller
    1127 # and Perl will parse it just the same.
    1128 
    1129272PERLMOD_PRETTY         = YES
    1130 
    1131 # The names of the make variables in the generated doxyrules.make file
    1132 # are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
    1133 # This is useful so different doxyrules.make files included by the same
    1134 # Makefile don't overwrite each other's variables.
    1135 
    1136273PERLMOD_MAKEVAR_PREFIX =
    1137274
     
    1139276# Configuration options related to the preprocessor
    1140277#---------------------------------------------------------------------------
    1141 
    1142 # If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
    1143 # evaluate all C-preprocessor directives found in the sources and include
    1144 # files.
    1145 
    1146278ENABLE_PREPROCESSING   = YES
    1147 
    1148 # If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
    1149 # names in the source code. If set to NO (the default) only conditional
    1150 # compilation will be performed. Macro expansion can be done in a controlled
    1151 # way by setting EXPAND_ONLY_PREDEF to YES.
    1152 
    1153279MACRO_EXPANSION        = YES
    1154 
    1155 # If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
    1156 # then the macro expansion is limited to the macros specified with the
    1157 # PREDEFINED and EXPAND_AS_PREDEFINED tags.
    1158 
    1159280EXPAND_ONLY_PREDEF     = YES
    1160 
    1161 # If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
    1162 # in the INCLUDE_PATH (see below) will be search if a #include is found.
    1163 
    1164281SEARCH_INCLUDES        = YES
    1165 
    1166 # The INCLUDE_PATH tag can be used to specify one or more directories that
    1167 # contain include files that are not input files but should be processed by
    1168 # the preprocessor.
    1169 
    1170 INCLUDE_PATH           = include
    1171 
    1172 # You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
    1173 # patterns (like *.h and *.hpp) to filter out the header-files in the
    1174 # directories. If left blank, the patterns specified with FILE_PATTERNS will
    1175 # be used.
    1176 
    1177 INCLUDE_FILE_PATTERNS  =
    1178 
    1179 # The PREDEFINED tag can be used to specify one or more macro names that
    1180 # are defined before the preprocessor is started (similar to the -D option of
    1181 # gcc). The argument of the tag is a list of macros of the form: name
    1182 # or name=definition (no spaces). If the definition and the = are
    1183 # omitted =1 is assumed.
    1184 
    1185 PREDEFINED             = __DOXYGEN__ __END_DECLS __BEGIN_DECLS VBOX VBOX_NEXT_STEP
    1186 
    1187 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
    1188 # this tag can be used to specify a list of macro names that should be expanded.
    1189 # The macro definition that is found in the sources will be used.
    1190 # Use the PREDEFINED tag if you want to use a different macro definition.
    1191 
     282# INCLUDE_PATH           = later
     283# INCLUDE_FILE_PATTERNS  = later
     284PREDEFINED             = __DOXYGEN__ __END_DECLS __BEGIN_DECLS VBOX
     285# Fix these:
     286# PREDEFINED            += DECLCALLBACK(a)=a
     287# PREDEFINED            += COMGETTER(a)=get##a
     288# PREDEFINED            += COMSETTER(a)=set##a
    1192289EXPAND_AS_DEFINED      = \
    1193290    GCTYPE \
    1194291    GCPTRTYPE \
    1195292    HCPTRTYPE \
     293    R3PTRTYPE \
     294    R0PTRTYPE \
     295    R3R0PTRTYPE \
     296    \
     297    ARCH_BITS \
     298    R3_ARCH_BITS \
     299    R0_ARCH_BITS \
     300    GC_ARCH_BITS \
     301    HC_ARCH_BITS \
    1196302    \
    1197303    DECLEXPORT \
     
    1203309    DECLHCCALLBACKMEMBER \
    1204310    DECLGCCALLBACKMEMBER \
     311    DECLR3CALLBACKMEMBER \
     312    DECLR0CALLBACKMEMBER \
    1205313    DECLINLINE \
    1206314    CTXSUFF \
     
    1208316    CTXMID \
    1209317    OTHERCTXMID \
     318    \
     319    COMSETTER \
     320    COMGETTER \
     321    INPTR \
     322    STDMETHOD \
     323    STDMETHODIMP \
    1210324    \
    1211325    CFGMDECL \
     
    1234348    EMR0DECL \
    1235349    EMR3DECL \
     350    GMMR0DECL \
     351    GVMMR0DECL \
    1236352    HWACCMDECL \
    1237353    HWACCMGCDECL \
     
    1263379    PDMR0DECL \
    1264380    PDMR3DECL \
     381    PGM_BTH_DECL \
     382    PGM_GST_DECL \
     383    PGM_SHW_DECL \
    1265384    PGMDECL \
    1266385    PGMGCDECL \
     
    1300419    TRPMR3DECL \
    1301420    USBR3DECL \
     421    VBGLR3DECL \
     422    VBOXDDU_DECL \
    1302423    VGADECL \
    1303424    VGAGCDECL \
     
    1314435    VMR3DECL \
    1315436
    1316 
    1317 # If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
    1318 # doxygen's preprocessor will remove all function-like macros that are alone
    1319 # on a line, have an all uppercase name, and do not end with a semicolon. Such
    1320 # function macros are typically used for boiler-plate code, and will confuse the
    1321 # parser if not removed.
    1322 
    1323 SKIP_FUNCTION_MACROS   = YES
     437SKIP_FUNCTION_MACROS   = NO
    1324438
    1325439#---------------------------------------------------------------------------
    1326440# Configuration::additions related to external references
    1327441#---------------------------------------------------------------------------
    1328 
    1329 # The TAGFILES option can be used to specify one or more tagfiles.
    1330 # Optionally an initial location of the external documentation
    1331 # can be added for each tagfile. The format of a tag file without
    1332 # this location is as follows:
    1333 #   TAGFILES = file1 file2 ...
    1334 # Adding location for the tag files is done as follows:
    1335 #   TAGFILES = file1=loc1 "file2 = loc2" ...
    1336 # where "loc1" and "loc2" can be relative or absolute paths or
    1337 # URLs. If a location is present for each tag, the installdox tool
    1338 # does not have to be run to correct the links.
    1339 # Note that each tag file must have a unique name
    1340 # (where the name does NOT include the path)
    1341 # If a tag file is not located in the directory in which doxygen
    1342 # is run, you must also specify the path to the tagfile here.
    1343 
    1344442TAGFILES               =
    1345 
    1346 # When a file name is specified after GENERATE_TAGFILE, doxygen will create
    1347 # a tag file that is based on the input files it reads.
    1348 
    1349443GENERATE_TAGFILE       =
    1350 
    1351 # If the ALLEXTERNALS tag is set to YES all external classes will be listed
    1352 # in the class index. If set to NO only the inherited external classes
    1353 # will be listed.
    1354 
    1355444ALLEXTERNALS           = NO
    1356 
    1357 # If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
    1358 # in the modules index. If set to NO, only the current project's groups will
    1359 # be listed.
    1360 
    1361445EXTERNAL_GROUPS        = YES
    1362 
    1363 # The PERL_PATH should be the absolute path and name of the perl script
    1364 # interpreter (i.e. the result of `which perl').
    1365 
    1366446PERL_PATH              = /usr/bin/perl
    1367447
     
    1369449# Configuration options related to the dot tool
    1370450#---------------------------------------------------------------------------
    1371 
    1372 # If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
    1373 # generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or
    1374 # super classes. Setting the tag to NO turns the diagrams off. Note that this
    1375 # option is superseded by the HAVE_DOT option below. This is only a fallback. It is
    1376 # recommended to install and use dot, since it yields more powerful graphs.
    1377 
    1378451CLASS_DIAGRAMS         = YES
    1379 
    1380 # If set to YES, the inheritance and collaboration graphs will hide
    1381 # inheritance and usage relations if the target is undocumented
    1382 # or is not a class.
    1383 
     452MSCGEN_PATH            =
    1384453HIDE_UNDOC_RELATIONS   = YES
    1385 
    1386 # If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
    1387 # available from the path. This tool is part of Graphviz, a graph visualization
    1388 # toolkit from AT&T and Lucent Bell Labs. The other options in this section
    1389 # have no effect if this option is set to NO (the default)
    1390 
    1391454HAVE_DOT               = NO
    1392 
    1393 # If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
    1394 # will generate a graph for each documented class showing the direct and
    1395 # indirect inheritance relations. Setting this tag to YES will force the
    1396 # the CLASS_DIAGRAMS tag to NO.
    1397 
    1398455CLASS_GRAPH            = YES
    1399 
    1400 # If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
    1401 # will generate a graph for each documented class showing the direct and
    1402 # indirect implementation dependencies (inheritance, containment, and
    1403 # class references variables) of the class with other documented classes.
    1404 
    1405456COLLABORATION_GRAPH    = YES
    1406 
    1407 # If the UML_LOOK tag is set to YES doxygen will generate inheritance and
    1408 # collaboration diagrams in a style similar to the OMG's Unified Modeling
    1409 # Language.
    1410 
     457GROUP_GRAPHS           = YES
    1411458UML_LOOK               = YES
    1412 
    1413 # If set to YES, the inheritance and collaboration graphs will show the
    1414 # relations between templates and their instances.
    1415 
    1416459TEMPLATE_RELATIONS     = YES
    1417 
    1418 # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
    1419 # tags are set to YES then doxygen will generate a graph for each documented
    1420 # file showing the direct and indirect include dependencies of the file with
    1421 # other documented files.
    1422 
    1423460INCLUDE_GRAPH          = YES
    1424 
    1425 # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
    1426 # HAVE_DOT tags are set to YES then doxygen will generate a graph for each
    1427 # documented header file showing the documented files that directly or
    1428 # indirectly include this file.
    1429 
    1430461INCLUDED_BY_GRAPH      = YES
    1431 
    1432 # If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will
    1433 # generate a call dependency graph for every global function or class method.
    1434 # Note that enabling this option will significantly increase the time of a run.
    1435 # So in most cases it will be better to enable call graphs for selected
    1436 # functions only using the \callgraph command.
    1437 
    1438462CALL_GRAPH             = YES
    1439 
    1440 # If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
    1441 # will graphical hierarchy of all classes instead of a textual one.
    1442 
     463CALLER_GRAPH           = YES
    1443464GRAPHICAL_HIERARCHY    = YES
    1444 
    1445 # The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
    1446 # generated by dot. Possible values are png, jpg, or gif
    1447 # If left blank png will be used.
    1448 
     465DIRECTORY_GRAPH        = YES
    1449466DOT_IMAGE_FORMAT       = png
    1450 
    1451 # The tag DOT_PATH can be used to specify the path where the dot tool can be
    1452 # found. If left blank, it is assumed the dot tool can be found on the path.
    1453 
    1454467DOT_PATH               =
    1455 
    1456 # The DOTFILE_DIRS tag can be used to specify one or more directories that
    1457 # contain dot files that are included in the documentation (see the
    1458 # \dotfile command).
    1459 
    1460468DOTFILE_DIRS           =
    1461 
    1462 # The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width
    1463 # (in pixels) of the graphs generated by dot. If a graph becomes larger than
    1464 # this value, doxygen will try to truncate the graph, so that it fits within
    1465 # the specified constraint. Beware that most browsers cannot cope with very
    1466 # large images.
    1467 
    1468 MAX_DOT_GRAPH_WIDTH    = 1024
    1469 
    1470 # The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height
    1471 # (in pixels) of the graphs generated by dot. If a graph becomes larger than
    1472 # this value, doxygen will try to truncate the graph, so that it fits within
    1473 # the specified constraint. Beware that most browsers cannot cope with very
    1474 # large images.
    1475 
    1476 MAX_DOT_GRAPH_HEIGHT   = 1024
    1477 
    1478 # The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
    1479 # graphs generated by dot. A depth value of 3 means that only nodes reachable
    1480 # from the root by following a path via at most 3 edges will be shown. Nodes that
    1481 # lay further from the root node will be omitted. Note that setting this option to
    1482 # 1 or 2 may greatly reduce the computation time needed for large code bases. Also
    1483 # note that a graph may be further truncated if the graph's image dimensions are
    1484 # not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT).
    1485 # If 0 is used for the depth value (the default), the graph is not depth-constrained.
    1486 
     469DOT_GRAPH_MAX_NODES    = 50
    1487470MAX_DOT_GRAPH_DEPTH    = 0
    1488 
    1489 # If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
    1490 # generate a legend page explaining the meaning of the various boxes and
    1491 # arrows in the dot generated graphs.
    1492 
     471DOT_TRANSPARENT        = YES
     472DOT_MULTI_TARGETS      = NO
    1493473GENERATE_LEGEND        = YES
    1494 
    1495 # If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
    1496 # remove the intermediate dot files that are used to generate
    1497 # the various graphs.
    1498 
    1499474DOT_CLEANUP            = YES
    1500475
     
    1502477# Configuration::additions related to the search engine
    1503478#---------------------------------------------------------------------------
    1504 
    1505 # The SEARCHENGINE tag specifies whether or not a search engine should be
    1506 # used. If set to NO the values of all tags below this one will be ignored.
    1507 
    1508479SEARCHENGINE           = NO
  • trunk/Makefile.kmk

    r6142 r6288  
    202202#
    203203docs: docs.Core
    204         $(MAKE) -C src/VBox/Main docs
    205         $(MAKE) -C src/VBox/Runtime docs
     204        $(KMK) -C src/VBox/Main docs
     205        $(KMK) -C src/VBox/Runtime docs
    206206
    207207docs.Core: $(PATH_TARGET)/docs.Core
    208208
    209209
    210 #
    211 # The core (VMM+Runtime+Devices) documentation.
    212 #
    213 $(PATH_TARGET)/docs.Core: \
    214                 Doxyfile.Core \
    215                 | $(call DIRDEP, $(PATH_TARGET)) \
    216                   $(call DIRDEP, $(PATH_OUT)/docs/Core)
    217         $(RM) -f $(wildcard $(PATH_OUT)/docs/Core/html/*)
    218 ifdef KMK_USE_REDIRECT
    219         $(REDIRECT) -E 'PATH_OUT=$(PATH_OUT)' -E 'PATH_TARGET=$(PATH_TARGET)' -- doxygen Doxyfile.Core
    220 else
    221         PATH_OUT="$(PATH_OUT)" PATH_TARGET="$(PATH_TARGET)" doxygen Doxyfile.Core
    222 endif
    223 
    224 $(call DIRDEP, $(PATH_OUT)/docs/Core):
     210
     211#
     212# The core (VMM+REM+Devices+Main) documentation.
     213#
     214# This includes so much because we wish to have the complete CFGM
     215# and GCFGM lists.
     216#
     217OTHER_CLEAN += \
     218        $(PATH_TARGET)/Doxyfile \
     219        $(PATH_TARGET)/Doxyfile.dep
     220
     221DOXYGEN_INPUT_DIRS = \
     222        include/iprt \
     223        include/VBox \
     224        include/VBox/com \
     225        include/VBox/HostServices \
     226        src/VBox/VMM \
     227        src/VBox/VMM/VMMR0 \
     228        src/VBox/VMM/VMMGC \
     229        src/VBox/VMM/VMMAll \
     230        src/VBox/VMM/PATM \
     231        src/VBox/VMM/PATM/VMMR0 \
     232        src/VBox/VMM/PATM/VMMGC \
     233        src/VBox/VMM/PATM/VMMAll \
     234        src/VBox/VMM/VMMSwitcher \
     235        src/VBox/Debugger \
     236        src/VBox/Devices/ \
     237        src/VBox/Devices/Audio \
     238        src/VBox/Devices/Bus \
     239        src/VBox/Devices/Graphics \
     240        src/VBox/Devices/Graphics/BIOS \
     241        src/VBox/Devices/Input \
     242        src/VBox/Devices/Networking \
     243        src/VBox/Devices/PC \
     244        src/VBox/Devices/PC/BIOS \
     245        src/VBox/Devices/Parallel \
     246        src/VBox/Devices/Serial \
     247        src/VBox/Devices/Storage \
     248        src/VBox/Devices/VBoxHDDFormats \
     249        src/VBox/Devices/VBoxHDDFormats/StorageCraft \
     250        src/VBox/Devices/USB \
     251        src/VBox/Devices/USB/darwin \
     252        src/VBox/Devices/USB/linux \
     253        src/VBox/Devices/USB/os2 \
     254        src/VBox/Devices/USB/solaris \
     255        src/VBox/Devices/USB/vrdp \
     256        src/VBox/Devices/USB/win32 \
     257        src/VBox/Devices/VMMDev \
     258        src/VBox/Main/include \
     259        src/VBox/Main/include/hgcm \
     260        src/VBox/Main/ \
     261        src/VBox/Main/glue \
     262        src/VBox/Main/hgcm \
     263        src/VBox/Main/webservice \
     264        src/VBox/Main/xml \
     265        src/VBox/Main/darwin \
     266        src/VBox/Main/linux \
     267        src/VBox/Main/os2 \
     268        src/VBox/Main/solaris \
     269        src/VBox/Main/win32 \
     270
     271# These must come first in order to make things look nice.
     272DOXYGEN_INPUT_FIRST =\
     273        $(PATH_ROOT)/doc/VBox-doc.c \
     274        $(PATH_ROOT)/doc/VBox-CodingGuidelines.cpp \
     275        $(PATH_ROOT)/src/VBox/VMM/VMMCodingGuidelines.cpp \
     276        $(PATH_ROOT)/src/VBox/VMM/VMMDocsRawMode.cpp \
     277        $(PATH_ROOT)/include/VBox/cdefs.h \
     278        $(PATH_ROOT)/include/VBox/vmapi.h \
     279        $(PATH_ROOT)/include/VBox/vmm.h \
     280        $(PATH_ROOT)/include/VBox/cpum.h \
     281        $(PATH_ROOT)/include/VBox/mm.h \
     282        $(PATH_ROOT)/include/VBox/pgm.h \
     283        $(PATH_ROOT)/include/VBox/selm.h \
     284        $(PATH_ROOT)/include/VBox/trpm.h \
     285        $(PATH_ROOT)/include/VBox/patm.h \
     286        $(PATH_ROOT)/include/VBox/dbgf.h \
     287        $(PATH_ROOT)/include/VBox/stam.h \
     288        $(PATH_ROOT)/include/VBox/em.h \
     289        $(PATH_ROOT)/include/VBox/pdm.h \
     290        $(PATH_ROOT)/include/VBox/rem.h \
     291        $(PATH_ROOT)/include/VBox/iom.h \
     292        $(PATH_ROOT)/include/VBox/cfgm.h \
     293        $(PATH_ROOT)/include/VBox/tm.h \
     294        $(PATH_ROOT)/include/VBox/csam.h \
     295        $(PATH_ROOT)/include/VBox/ssm.h \
     296        $(PATH_ROOT)/include/VBox/hwaccm.h \
     297        $(PATH_ROOT)/include/VBox/hwacc_svm.h \
     298        $(PATH_ROOT)/include/VBox/hwacc_vmx.h \
     299        $(PATH_ROOT)/\
     300        $(PATH_ROOT)/src/VBox/VMM/CFGMInternal.h \
     301        $(PATH_ROOT)/src/VBox/VMM/CPUMInternal.h \
     302        $(PATH_ROOT)/src/VBox/VMM/DBGFInternal.h \
     303        $(PATH_ROOT)/src/VBox/VMM/EMInternal.h \
     304        $(PATH_ROOT)/src/VBox/VMM/HWACCMInternal.h \
     305        $(PATH_ROOT)/src/VBox/VMM/IOMInternal.h \
     306        $(PATH_ROOT)/src/VBox/VMM/MMInternal.h \
     307        $(PATH_ROOT)/src/VBox/VMM/PDMInternal.h \
     308        $(PATH_ROOT)/src/VBox/VMM/PGMInternal.h \
     309        $(PATH_ROOT)/src/VBox/VMM/PATM/CSAMInternal.h \
     310        $(PATH_ROOT)/src/VBox/VMM/PATM/PATMInternal.h \
     311        $(PATH_ROOT)/src/VBox/VMM/REMInternal.h \
     312        $(PATH_ROOT)/src/VBox/VMM/SELMInternal.h \
     313        $(PATH_ROOT)/src/VBox/VMM/SSMInternal.h \
     314        $(PATH_ROOT)/src/VBox/VMM/STAMInternal.h \
     315        $(PATH_ROOT)/src/VBox/VMM/TMInternal.h \
     316        $(PATH_ROOT)/src/VBox/VMM/TRPMInternal.h \
     317        $(PATH_ROOT)/src/VBox/VMM/VMInternal.h \
     318        $(PATH_ROOT)/src/VBox/VMM/VMMInternal.h \
     319        $(PATH_ROOT)/\
     320        $(PATH_ROOT)/include/VBox/vm.h \
     321        \
     322        $(PATH_ROOT)/include/VBox/sup.h \
     323        $(PATH_ROOT)/include/VBox/VBoxHDD.h \
     324        $(PATH_ROOT)/include/VBox/types.h \
     325        $(PATH_ROOT)/include/VBox/err.h \
     326        $(PATH_ROOT)/include/VBox/x86.h \
     327        $(PATH_ROOT)/include/VBox/cpumdis.h \
     328        $(PATH_ROOT)/include/VBox/dbggui.h \
     329        $(PATH_ROOT)/include/VBox/dis.h \
     330        $(PATH_ROOT)/include/VBox/disopcode.h \
     331        $(PATH_ROOT)/include/VBox/intnet.h \
     332        $(PATH_ROOT)/include/VBox/settings.h \
     333        $(PATH_ROOT)/include/VBox/pci.h \
     334        $(PATH_ROOT)/include/VBox/scsi.h \
     335        $(PATH_ROOT)/include/VBox/shflsvc.h \
     336        $(PATH_ROOT)/include/VBox/hgcmsvc.h \
     337        $(PATH_ROOT)/include/VBox/usb.h \
     338        $(PATH_ROOT)/include/VBox/vusb.h \
     339        $(PATH_ROOT)/\
     340        $(PATH_ROOT)/include/VBox/log.h \
     341        $(PATH_ROOT)/include/VBox/param.h \
     342        $(PATH_ROOT)/include/VBox/version.h
     343
     344DOXYGEN_INPUT := \
     345        $(filter-out %.cpp.h, $(sort $(wildcard $(addsuffix /*.h, $(DOXYGEN_INPUT_DIRS)))) ) \
     346        $(foreach dir, $(DOXYGEN_INPUT_DIRS), $(wildcard $(dir)/*.cpp $(dir)/.c $(dir)/.asm))
     347DOXYGEN_INPUT := \
     348        $(DOXYGEN_INPUT_FIRST) \
     349        $(filter-out $(DOXYGEN_INPUT_FIRST), $(DOXYGEN_INPUT))
     350
     351# And some some additional stuff.
     352DOXYGEN_INPUT += \
     353        $(PATH_ROOT)/src/recompiler/VBoxRecompiler.c \
     354        $(PATH_ROOT)/src/recompiler/VBoxREMWrapper.cpp
     355
     356
     357DOXYGEN_OUTPUT = $(PATH_OUT)/docs/Core
     358
     359-include $(PATH_TARGET)/Doxyfile.dep
     360
     361# Generate the Doxyfile
     362$(PATH_TARGET)/Doxyfile: Doxyfile.Core \
     363                $(comp-vars DOXYGEN_INPUT,DOXYGEN_INPUT_PREV,FORCE) \
     364                $(comp-vars DOXYGEN_OUTPUT,DOXYGEN_OUTPUT_PREV,FORCE) \
     365                | $(call DIRDEP, $(PATH_TARGET))
     366        $(RM) -f $@ [email protected] $(PATH_TARGET)/Doxyfile.dep
     367        $(CP) -f Doxyfile.Core [email protected]
     368        $(APPEND) [email protected]
     369        $(APPEND) [email protected] "OUTPUT_DIRECTORY = $(DOXYGEN_OUTPUT)"
     370        $(APPEND) [email protected] "WARN_LOGFILE = $(DOXYGEN_OUTPUT)/errors"
     371        $(APPEND) [email protected] "INCLUDE_PATH = $(PATH_ROOT)/include $(PATH_ROOT)/src/VBox/VMM $(PATH_ROOT)/src/VBox/Main/include "
     372        $(APPEND) [email protected] "INCLUDE_FILE_PATTERNS = *.cpp.h"
     373        $(APPEND) [email protected]
     374        $(APPEND) [email protected] "INPUT = $(DOXYGEN_INPUT)"
     375        $(APPEND) [email protected]
     376        $(APPEND) [email protected] "PREDEFINED += $(DEFS) $(DEFS.$(BUILD_TARGET)) $(DEFS.$(BUILD_TARGET_ARCH)) $(ARCH_BITS_DEFS)"
     377        $(APPEND) [email protected] "PREDEFINED += ARCH_BITS=HC_ARCH_BITS R3_ARCH_BITS=HC_ARCH_BITS R0_ARCH_BITS=HC_ARCH_BITS "
     378        $(APPEND) [email protected]
     379        $(MV) -f [email protected] $@
     380        @$(APPEND) $(PATH_TARGET)/Doxyfile.dep "DOXYGEN_OUTPUT_PREV = $(DOXYGEN_OUTPUT)"
     381        @$(APPEND) $(PATH_TARGET)/Doxyfile.dep "DOXYGEN_INPUT_PREV = $(DOXYGEN_INPUT)"
     382
     383# Create the output directory.
     384$(call DIRDEP, $(DOXYGEN_OUTPUT)):
    225385        $(MKDIR) -p $@
     386
     387# Do the actual job.
     388$(PATH_TARGET)/docs.Core: $(PATH_TARGET)/Doxyfile $(DOXYGEN_INPUT) | $(call DIRDEP, $(DOXYGEN_OUTPUT))
     389        $(RM) -f $(wildcard $(DOXYGEN_OUTPUT)/html/*) $(PATH_TARGET)/docs.Core
     390        doxygen $(PATH_TARGET)/Doxyfile
     391        $(APPEND) $(PATH_TARGET)/docs.Core
    226392
    227393
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette