qdoc: Fix problem of missing inherited members
authorMartin Smith <martin.smith@digia.com>
Fri, 21 Dec 2012 12:22:54 +0000 (13:22 +0100)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Fri, 11 Jan 2013 11:02:21 +0000 (12:02 +0100)
commitc72cbfc37f74f6f71d6be92a83f2ac838dbef64e
tree0b811ed66f354f93f33986479e880bb952883108
parentd208c8b2474d352223f78e315893ebfaa7c56ec1
qdoc: Fix problem of missing inherited members

This was another bug resulting from modularization.
qdoc is now run twice for each module in Qt 5.
First, qdoc is run with the -prepare flag for each
module. The only thing qdoc generates is the .index
file for each module. Then qdoc is run with the
-generate flag for each module. Here, for each
module, qdoc first reads the .index files for the
modules on which the current module depends. Then
qdoc generates the docs for the module.

qdoc was not reading the index files for the
prerequisite modules, when it was run in the
-prepare phase. This has now been corrected.
qdoc now reads the prerequisite .index files
in both the -prepare phase and the -generate
phase.

Note that this requires that the order qdoc
runs in the -prepare phase must be the same
as the order of building modules when building
Qt 5.

This change also tells qdoc to ignore nodes,
when traversing its main data structure to
output docs, if the nodes came from reading
a .index file, because the docs for these
nodes are generated in the -generate phase
for their respective modules.

Task-number: QTBUG-28508
Change-Id: Id73652ae1c4022e4c9e4f199caab12a854e5f9b4
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
src/tools/qdoc/main.cpp
src/tools/qdoc/qdocindexfiles.cpp