summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/features/default_post.prf53
-rw-r--r--mkspecs/features/qt_build_config.prf2
-rw-r--r--mkspecs/features/qt_docs_targets.prf52
3 files changed, 53 insertions, 54 deletions
diff --git a/mkspecs/features/default_post.prf b/mkspecs/features/default_post.prf
index bfabf25f21..6f3f318e0a 100644
--- a/mkspecs/features/default_post.prf
+++ b/mkspecs/features/default_post.prf
@@ -56,56 +56,3 @@ QMAKE_LIBDIR += $$QMAKE_LIBDIR_POST
check.depends = first # `make check' implies build
QMAKE_EXTRA_TARGETS += check
}
-
-!contains(QMAKE_EXTRA_TARGETS, docs) {
- contains(TEMPLATE, subdirs) {
- prepare_docs {
- prepareRecursiveTarget(prepare_docs)
- prepareRecursiveTarget(generate_docs)
- html_docs.commands = $(MAKE) -f $(MAKEFILE) prepare_docs && $(MAKE) -f $(MAKEFILE) generate_docs
- } else {
- prepareRecursiveTarget(html_docs)
- }
- prepareRecursiveTarget(qch_docs)
- prepareRecursiveTarget(docs)
- } else {
- # apps and libs only generate docs if QMAKE_DOCS is set
- !isEmpty(QMAKE_DOCS) {
- !exists($$QMAKE_DOCS):error("Cannot find documentation specification file $$QMAKE_DOCS")
- qtPrepareTool(QDOC, qdoc)
- for(index, QMAKE_DOCS_INDEX):QDOC_INDEX += -indexdir $$index
- !isEmpty(QMAKE_DOCS_OUTPUTDIR):QMAKE_DOCS_OPTIONS += -outputdir $$QMAKE_DOCS_OUTPUTDIR
- !isEmpty(QMAKE_DOCS_INSTALLDIR):QMAKE_DOCS_OPTIONS += -installdir $$QMAKE_DOCS_INSTALLDIR
- doc_command = $$QDOC $$QMAKE_DOCS_OPTIONS $$QDOC_INDEX $$QMAKE_DOCS
- prepare_docs {
- prepare_docs.commands += $$doc_command -prepare -no-link-errors
- generate_docs.commands += $$doc_command -generate
- html_docs.depends += generate_docs
- } else {
- html_docs.commands += $$doc_command
- }
-
- qtPrepareTool(QHELPGENERATOR, qhelpgenerator)
- isEmpty(QMAKE_DOCS_TARGET): QMAKE_DOCS_TARGET = $$basename(QMAKE_DOCS_OUTPUTDIR)
- qch_docs.commands = $$QHELPGENERATOR $$QMAKE_DOCS_OUTPUTDIR/$${QMAKE_DOCS_TARGET}.qhp -o $$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch
- }
- }
- docs.commands = $(MAKE) -f $(MAKEFILE) html_docs && $(MAKE) -f $(MAKEFILE) qch_docs
- QMAKE_EXTRA_TARGETS += html_docs qch_docs docs
- prepare_docs: QMAKE_EXTRA_TARGETS += prepare_docs generate_docs
-}
-
-!contains(QMAKE_EXTRA_TARGETS, install_docs) {
- contains(TEMPLATE, subdirs) {
- prepareRecursiveTarget(install_html_docs)
- prepareRecursiveTarget(uninstall_html_docs)
- prepareRecursiveTarget(install_qch_docs)
- prepareRecursiveTarget(uninstall_qch_docs)
- prepareRecursiveTarget(install_docs)
- prepareRecursiveTarget(uninstall_docs)
- }
- QMAKE_EXTRA_TARGETS += \
- install_html_docs uninstall_html_docs \
- install_qch_docs uninstall_qch_docs \
- install_docs uninstall_docs
-}
diff --git a/mkspecs/features/qt_build_config.prf b/mkspecs/features/qt_build_config.prf
index 9d960e54c3..df07630ffa 100644
--- a/mkspecs/features/qt_build_config.prf
+++ b/mkspecs/features/qt_build_config.prf
@@ -27,7 +27,7 @@ mac {
CONFIG += \
create_prl link_prl \
- prepare_docs \
+ prepare_docs qt_docs_targets \
no_private_qt_headers_warning QTDIR_build \
# Qt modules get compiled without exceptions enabled by default.
# However, testcases should be still built with exceptions.
diff --git a/mkspecs/features/qt_docs_targets.prf b/mkspecs/features/qt_docs_targets.prf
new file mode 100644
index 0000000000..69eefe9285
--- /dev/null
+++ b/mkspecs/features/qt_docs_targets.prf
@@ -0,0 +1,52 @@
+!contains(QMAKE_EXTRA_TARGETS, docs) {
+ contains(TEMPLATE, subdirs) {
+ prepare_docs {
+ prepareRecursiveTarget(prepare_docs)
+ prepareRecursiveTarget(generate_docs)
+ html_docs.commands = $(MAKE) -f $(MAKEFILE) prepare_docs && $(MAKE) -f $(MAKEFILE) generate_docs
+ } else {
+ prepareRecursiveTarget(html_docs)
+ }
+ prepareRecursiveTarget(qch_docs)
+ prepareRecursiveTarget(docs)
+ } else {
+ # apps and libs only generate docs if QMAKE_DOCS is set
+ !isEmpty(QMAKE_DOCS) {
+ !exists($$QMAKE_DOCS):error("Cannot find documentation specification file $$QMAKE_DOCS")
+ qtPrepareTool(QDOC, qdoc)
+ for(index, QMAKE_DOCS_INDEX):QDOC_INDEX += -indexdir $$index
+ !isEmpty(QMAKE_DOCS_OUTPUTDIR):QMAKE_DOCS_OPTIONS += -outputdir $$QMAKE_DOCS_OUTPUTDIR
+ !isEmpty(QMAKE_DOCS_INSTALLDIR):QMAKE_DOCS_OPTIONS += -installdir $$QMAKE_DOCS_INSTALLDIR
+ doc_command = $$QDOC $$QMAKE_DOCS_OPTIONS $$QDOC_INDEX $$QMAKE_DOCS
+ prepare_docs {
+ prepare_docs.commands += $$doc_command -prepare -no-link-errors
+ generate_docs.commands += $$doc_command -generate
+ html_docs.depends += generate_docs
+ } else {
+ html_docs.commands += $$doc_command
+ }
+
+ qtPrepareTool(QHELPGENERATOR, qhelpgenerator)
+ isEmpty(QMAKE_DOCS_TARGET): QMAKE_DOCS_TARGET = $$basename(QMAKE_DOCS_OUTPUTDIR)
+ qch_docs.commands = $$QHELPGENERATOR $$QMAKE_DOCS_OUTPUTDIR/$${QMAKE_DOCS_TARGET}.qhp -o $$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch
+ }
+ }
+ docs.commands = $(MAKE) -f $(MAKEFILE) html_docs && $(MAKE) -f $(MAKEFILE) qch_docs
+ QMAKE_EXTRA_TARGETS += html_docs qch_docs docs
+ prepare_docs: QMAKE_EXTRA_TARGETS += prepare_docs generate_docs
+}
+
+!contains(QMAKE_EXTRA_TARGETS, install_docs) {
+ contains(TEMPLATE, subdirs) {
+ prepareRecursiveTarget(install_html_docs)
+ prepareRecursiveTarget(uninstall_html_docs)
+ prepareRecursiveTarget(install_qch_docs)
+ prepareRecursiveTarget(uninstall_qch_docs)
+ prepareRecursiveTarget(install_docs)
+ prepareRecursiveTarget(uninstall_docs)
+ }
+ QMAKE_EXTRA_TARGETS += \
+ install_html_docs uninstall_html_docs \
+ install_qch_docs uninstall_qch_docs \
+ install_docs uninstall_docs
+}