From cee04d9ac677c03180ec1d6786ef64afd56bc99f Mon Sep 17 00:00:00 2001
From: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Date: Thu, 22 May 2014 12:11:37 +0200
Subject: [PATCH] fix building against non-installed qt5 shadow builds

the global qdoc configs may live in the source dir, but the indexes are
always in the build dir.

this will obviously only work for a non-prefix (developer) build of qt,
as a non-installed prefix build is not usable from the outside.

Task-number: QTCREATORBUG-11919
Change-Id: I268af2f075a098ac5fe788a2f85c754dc6e4e8b0
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
---
 doc/config/qtcreator-project.qdocconf | 34 +++++++++++++--------------
 doc/doc.pri                           |  4 +++-
 2 files changed, 20 insertions(+), 18 deletions(-)

diff --git a/doc/config/qtcreator-project.qdocconf b/doc/config/qtcreator-project.qdocconf
index e73ab8ba1fb..424258f2f10 100644
--- a/doc/config/qtcreator-project.qdocconf
+++ b/doc/config/qtcreator-project.qdocconf
@@ -7,23 +7,23 @@ imagedirs = $SRCDIR/images $SRCDIR/templates/images
 outputdir = $OUTDIR
 exampledirs = $SRCDIR/examples \
               $SRCDIR/snippets
-indexes +=    $QT_INSTALL_DOCS/qtwidgets/qtwidgets.index \
-              $QT_INSTALL_DOCS/qtcore/qtcore.index \
-              $QT_INSTALL_DOCS/qtqml/qtqml.index \
-              $QT_INSTALL_DOCS/qtquick/qtquick.index \
-              $QT_INSTALL_DOCS/qmake/qmake.index \
-              $QT_INSTALL_DOCS/qtdesigner/qtdesigner.index \
-              $QT_INSTALL_DOCS/qtdoc/qtdoc.index \
-              $QT_INSTALL_DOCS/qtgui/qtgui.index \
-              $QT_INSTALL_DOCS/qthelp/qthelp.index \
-              $QT_INSTALL_DOCS/qtquickcontrols/qtquickcontrols.index \
-              $QT_INSTALL_DOCS/qtquicklayouts/qtquicklayouts.index \
-              $QT_INSTALL_DOCS/qtlinguist/qtlinguist.index \
-              $QT_INSTALL_DOCS/qtscript/qtscript.index \
-              $QT_INSTALL_DOCS/qtsensors/qtsensors.index \
-              $QT_INSTALL_DOCS/qtuitools/qtuitools.index \
-              $QT_INSTALL_DOCS/qtwebkit/qtwebkit.index \
-              $QT_INSTALL_DOCS/qtxml/qtxml.index
+indexes +=    $QDOC_INDEX_DIR/qtwidgets/qtwidgets.index \
+              $QDOC_INDEX_DIR/qtcore/qtcore.index \
+              $QDOC_INDEX_DIR/qtqml/qtqml.index \
+              $QDOC_INDEX_DIR/qtquick/qtquick.index \
+              $QDOC_INDEX_DIR/qmake/qmake.index \
+              $QDOC_INDEX_DIR/qtdesigner/qtdesigner.index \
+              $QDOC_INDEX_DIR/qtdoc/qtdoc.index \
+              $QDOC_INDEX_DIR/qtgui/qtgui.index \
+              $QDOC_INDEX_DIR/qthelp/qthelp.index \
+              $QDOC_INDEX_DIR/qtquickcontrols/qtquickcontrols.index \
+              $QDOC_INDEX_DIR/qtquicklayouts/qtquicklayouts.index \
+              $QDOC_INDEX_DIR/qtlinguist/qtlinguist.index \
+              $QDOC_INDEX_DIR/qtscript/qtscript.index \
+              $QDOC_INDEX_DIR/qtsensors/qtsensors.index \
+              $QDOC_INDEX_DIR/qtuitools/qtuitools.index \
+              $QDOC_INDEX_DIR/qtwebkit/qtwebkit.index \
+              $QDOC_INDEX_DIR/qtxml/qtxml.index
 
 include(macros.qdocconf)
 include(qt-cpp-ignore.qdocconf)
diff --git a/doc/doc.pri b/doc/doc.pri
index 8181e059c9d..c97bf0a02d7 100644
--- a/doc/doc.pri
+++ b/doc/doc.pri
@@ -1,10 +1,12 @@
 greaterThan(QT_MAJOR_VERSION, 4) {
     HELPGENERATOR = $$targetPath($$[QT_INSTALL_BINS]/qhelpgenerator) -platform minimal
     QDOC_BIN = $$targetPath($$[QT_INSTALL_BINS]/qdoc)
+    QDOC_GLOBAL = QT_INSTALL_DOCS=$$[QT_INSTALL_DOCS/src] QDOC_INDEX_DIR=$$[QT_INSTALL_DOCS]
     COMPAT =
 } else {
     HELPGENERATOR = $$targetPath($$[QT_INSTALL_BINS]/qhelpgenerator)
     QDOC_BIN = $$targetPath($$[QT_INSTALL_BINS]/qdoc3)
+    QDOC_GLOBAL = QDOC_INDEX_DIR=dummy   # this will be ignored. we don't link qt4 docs any more.
     COMPAT = -qt4
 }
 
@@ -23,7 +25,7 @@ defineReplace(cmdEnv) {
 }
 
 defineReplace(qdoc) {
-    return("$$cmdEnv(SRCDIR=$$PWD OUTDIR=$$1 QTC_VERSION=$$QTCREATOR_VERSION QTC_VERSION_TAG=$$VERSION_TAG QTC_LICENSE_TYPE=$$LICENSE_TYPE QT_INSTALL_DOCS=$$[QT_INSTALL_DOCS]) $$QDOC_BIN")
+    return("$$cmdEnv(SRCDIR=$$PWD OUTDIR=$$1 QTC_VERSION=$$QTCREATOR_VERSION QTC_VERSION_TAG=$$VERSION_TAG QTC_LICENSE_TYPE=$$LICENSE_TYPE $$QDOC_GLOBAL) $$QDOC_BIN")
 }
 
 QHP_FILE = $$OUT_PWD/doc/html/qtcreator.qhp
-- 
GitLab