From 4d5a8368a72617b942ced3d0fc3e1475abbcc7ab Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Fri, 22 Apr 2016 13:43:16 +0200 Subject: [PATCH] Build documentation also when using qbs. Change-Id: I17330fa27effc633a06bc8f0a5864e771b831476 Reviewed-by: Jake Petroules --- doc/doc.qbs | 55 ++++++++++++++++++++++++++++++++ qbs/imports/QtcDocumentation.qbs | 33 +++++++++++++++++++ qtcreator.qbs | 2 ++ 3 files changed, 90 insertions(+) create mode 100644 doc/doc.qbs create mode 100644 qbs/imports/QtcDocumentation.qbs diff --git a/doc/doc.qbs b/doc/doc.qbs new file mode 100644 index 00000000000..79220618da8 --- /dev/null +++ b/doc/doc.qbs @@ -0,0 +1,55 @@ +import qbs + +Project { + name: "documentation" + + QtcDocumentation { + name: "user doc online" + isOnlineDoc: true + mainDocConfFile: "qtcreator-online.qdocconf" + + files: [ + "src/**/*", + ] + } + + QtcDocumentation { + name: "user doc offline" + isOnlineDoc: false + mainDocConfFile: "qtcreator.qdocconf" + + files: [ + "src/**/*", + ] + } + + QtcDocumentation { + name: "API doc online" + isOnlineDoc: true + mainDocConfFile: "api/qtcreator-dev-online.qdocconf" + + Group { + name: "sources" + files: [ + "api/*.qdoc", + "api/**/*", + ] + excludeFiles: [mainDocConfFile] + } + } + + QtcDocumentation { + name: "API doc offline" + isOnlineDoc: false + mainDocConfFile: "api/qtcreator-dev.qdocconf" + + Group { + name: "sources" + files: [ + "api/*.qdoc", + "api/**/*", + ] + excludeFiles: [mainDocConfFile] + } + } +} diff --git a/qbs/imports/QtcDocumentation.qbs b/qbs/imports/QtcDocumentation.qbs new file mode 100644 index 00000000000..503143da5b9 --- /dev/null +++ b/qbs/imports/QtcDocumentation.qbs @@ -0,0 +1,33 @@ +import qbs + +Product { + builtByDefault: false + type: [isOnlineDoc ? "qdoc-output" : "qch"] + Depends { name: "Qt.core" } + + property path mainDocConfFile + property bool isOnlineDoc + + Group { + name: "main qdocconf file" + files: [mainDocConfFile] + fileTags: ["qdocconf-main"] + } + + property string versionTag: project.qtcreator_version.replace(/\.|-/g, "") + Qt.core.qdocEnvironment: [ + "QTC_LICENSE_TYPE=" + project.licenseType, + "QTC_VERSION=" + project.qtcreator_version, + "QTC_VERSION_TAG=" + project.qtcreator_version, + "SRCDIR=" + sourceDirectory, + "QT_INSTALL_DOCS=" + Qt.core.docPath, + "QDOC_INDEX_DIR=" + Qt.core.docPath, + "VERSION_TAG=" + versionTag + ] + + Group { + fileTagsFilter: ["qch"] + qbs.install: !qbs.targetOS.contains("osx") + qbs.installDir: project.ide_doc_path + } +} diff --git a/qtcreator.qbs b/qtcreator.qbs index 49227498d8e..263479f0dd3 100644 --- a/qtcreator.qbs +++ b/qtcreator.qbs @@ -6,6 +6,7 @@ Project { name: "Qt Creator" minimumQbsVersion: "1.5.0" property bool withAutotests: qbs.buildVariant === "debug" + property string licenseType: "opensource" property string ide_version_major: '4' property string ide_version_minor: '0' property string ide_version_release: '82' @@ -62,6 +63,7 @@ Project { qbsSearchPaths: "qbs" references: [ + "doc/doc.qbs", "src/src.qbs", "share/share.qbs", "share/qtcreator/translations/translations.qbs",