QDoc: Generate correct relative paths and links when using -installdir.
This change will generate working links between all modules in qtbase. Some testing needs to be done on the other modules. Change-Id: Ic65a9c753f891ac51427ca7c1cdcab13611d2f5b Reviewed-by: Martin Smith <martin.smith@nokia.com>
This commit is contained in:
parent
a70b8d407e
commit
438787b0ca
@ -254,6 +254,11 @@ static void processQdocconfFile(const QString &fileName)
|
||||
|
||||
if (dependModules.size() > 0) {
|
||||
if (indexDirs.size() > 0) {
|
||||
for (int j = 0; j < indexDirs.size(); j++) {
|
||||
if (indexDirs[j].startsWith("..")) {
|
||||
indexDirs[j].prepend(QDir(dir).relativeFilePath(prevCurrentDir));
|
||||
}
|
||||
}
|
||||
for (int i = 0; i < dependModules.size(); i++) {
|
||||
QMultiMap<uint, QFileInfo> foundIndices;
|
||||
for (int j = 0; j < indexDirs.size(); j++) {
|
||||
|
@ -946,7 +946,9 @@ void Tree::readIndexFile(const QString& path)
|
||||
indexUrl = indexElement.attribute("url", "");
|
||||
}
|
||||
else {
|
||||
QDir installDir(Config::installDir);
|
||||
// Use a fake directory, since we will copy the output to a sub directory of
|
||||
// installDir when using "make install". This is just for a proper relative path.
|
||||
QDir installDir(Config::installDir + "/outputdir");
|
||||
indexUrl = installDir.relativeFilePath(path).section('/', 0, -2);
|
||||
}
|
||||
|
||||
@ -1001,7 +1003,6 @@ void Tree::readIndexSection(const QDomElement& element,
|
||||
location = Location(indexUrl + QLatin1Char('/') + name.toLower() + ".html");
|
||||
else if (!indexUrl.isNull())
|
||||
location = Location(name.toLower() + ".html");
|
||||
|
||||
}
|
||||
else if ((element.nodeName() == "qmlclass") ||
|
||||
((element.nodeName() == "page") && (element.attribute("subtype") == "qmlclass"))) {
|
||||
@ -1275,10 +1276,7 @@ void Tree::readIndexSection(const QDomElement& element,
|
||||
|
||||
section->setModuleName(element.attribute("module"));
|
||||
if (!indexUrl.isEmpty()) {
|
||||
if (indexUrl.startsWith(QLatin1Char('.')))
|
||||
section->setUrl(href);
|
||||
else
|
||||
section->setUrl(indexUrl + QLatin1Char('/') + href);
|
||||
section->setUrl(indexUrl + QLatin1Char('/') + href);
|
||||
}
|
||||
|
||||
// Create some content for the node.
|
||||
|
Loading…
Reference in New Issue
Block a user