diff --git a/doc/doc.pri b/doc/doc.pri
index 5d58a28c3e656a3a2717a0080daf684196efcb68..cb800823ec46b23bf37e1dc1afc23807de1d151a 100644
--- a/doc/doc.pri
+++ b/doc/doc.pri
@@ -1,16 +1,13 @@
-# Generate docs. Does not work for shadow builds and never will.
-# (adding a "docs" make target).
-
 unix {
-    QDOC = SRCDIR=$$PWD OUTDIR=$$OUT_PWD/html $$(QTDIR)/tools/qdoc3/qdoc3
+    QDOC = SRCDIR=$$PWD OUTDIR=$$OUT_PWD/doc/html $$(QTDIR)/tools/qdoc3/qdoc3
     HELPGENERATOR = qhelpgenerator
 } else {
     QDOC = $$(QTDIR)\tools\qdoc3\release\qdoc3.exe
     HELPGENERATOR = qhelpgenerator
 }
 
-QHP_FILE = $$OUT_PWD/html/qtcreator.qhp
-QCH_FILE = $$OUT_PWD/qtcreator.qch
+QHP_FILE = $$OUT_PWD/doc/html/qtcreator.qhp
+QCH_FILE = $$OUT_PWD/doc/qtcreator.qch
 
 html_docs.commands =$$QDOC $$PWD/qtcreator.qdocconf
 html_docs.depends += $$PWD/qtcreator.qdoc $$PWD/qtcreator.qdocconf
@@ -20,6 +17,14 @@ qch_docs.commands = $$HELPGENERATOR -o $$QCH_FILE $$QHP_FILE
 qch_docs.depends += html_docs
 qch_docs.files = $$QCH_FILE
 
-docs.depends = qch_docs
+macx {
+    cp_docs.commands = $${QMAKE_COPY_DIR} $${OUT_PWD}/doc $${OUT_PWD}/bin/QtCreator.app/Contents/Resources
+    cp_docs.depends += qch_docs
+    docs.depends = cp_docs
+    QMAKE_EXTRA_TARGETS += html_docs qch_docs cp_docs docs
+}
+!macx {
+    docs.depends = qch_docs
+    QMAKE_EXTRA_TARGETS += html_docs qch_docs docs
+}
 
-QMAKE_EXTRA_TARGETS += html_docs qch_docs docs
diff --git a/doc/doc.pro b/doc/doc.pro
deleted file mode 100644
index 8337190b2276b97883826e8158bdc70217f824e6..0000000000000000000000000000000000000000
--- a/doc/doc.pro
+++ /dev/null
@@ -1 +0,0 @@
-include(doc.pri)
diff --git a/qtcreator.pro b/qtcreator.pro
index 13f0b26fa3ed9c9b5fa4f2c120d0350061b6f45e..9a5e467eb6edfbdb6558d992786fa100655b06b7 100644
--- a/qtcreator.pro
+++ b/qtcreator.pro
@@ -2,3 +2,5 @@ TEMPLATE  = subdirs
 CONFIG   += ordered
 
 SUBDIRS = src
+
+include(doc/doc.pri)
diff --git a/src/app/app.pro b/src/app/app.pro
index a0e120da1c6666a27237d3abc03f30dbe450ecde..bc8376bbddbe6af634f9be962ef14031cd9eb6c3 100644
--- a/src/app/app.pro
+++ b/src/app/app.pro
@@ -36,13 +36,11 @@ macx {
         SCHEMES.files = $$IDE_SOURCE_TREE/bin/schemes
         GDBDEBUGGER.path = Contents/Resources
         GDBDEBUGGER.files = $$IDE_SOURCE_TREE/bin/gdbmacros
-        DOC.path = Contents/Resources/doc
-        DOC.files = $$IDE_SOURCE_TREE/doc/qtcreator.qch
         LICENSE.path = Contents/Resources
         LICENSE.files = $$IDE_SOURCE_TREE/bin/license.txt
         RUNINTERMINAL.path = Contents/Resources
         RUNINTERMINAL.files = $$IDE_SOURCE_TREE/bin/runInTerminal.command
-        QMAKE_BUNDLE_DATA += SNIPPETS TEMPLATES DESIGNER SCHEMES GDBDEBUGGER DOC LICENSE RUNINTERMINAL
+        QMAKE_BUNDLE_DATA += SNIPPETS TEMPLATES DESIGNER SCHEMES GDBDEBUGGER LICENSE RUNINTERMINAL
         QMAKE_INFO_PLIST = $$PWD/Info.plist
 }
 !macx {