summaryrefslogtreecommitdiff
path: root/configure.cmake
diff options
context:
space:
mode:
authorPaul Wicking <paul.wicking@qt.io>2023-02-27 20:53:57 +0100
committerPaul Wicking <paul.wicking@qt.io>2023-03-04 21:02:05 +0100
commitf1f4cad99a7097c8612ec1c5b05b1b5647e05251 (patch)
treeec1130e0c456178d71a72e44726820a8b78deac6 /configure.cmake
parentd4ca672f987916b0e05e014f0ba40d8facab871d (diff)
downloadqttools-f1f4cad99a7097c8612ec1c5b05b1b5647e05251.tar.gz
QDoc: Always depend on QmlPrivate
Make Qml a hard dependency for QDoc. - There are no known usecases for running QDoc without qml support. - We're not testing QDoc without qml support, as it's not officially supported. - There are known issues with parsing certain file types when qml support is missing. - Dropping feature checks makes the code easier to reason about and thus maintain. - Clean up some of the configure and CMake configuration that's affected by the change. [ChangeLog][QDoc] QDoc now requires the library QmlPrivate. Make sure the qtdeclarative module is available. Fixes: QTBUG-111673 Change-Id: I3a8aa20ace3c379c3896b9f59aa4e8113cd9a873 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Topi Reiniƶ <topi.reinio@qt.io>
Diffstat (limited to 'configure.cmake')
-rw-r--r--configure.cmake20
1 files changed, 18 insertions, 2 deletions
diff --git a/configure.cmake b/configure.cmake
index 1cd61cde9..9fbbe2c9b 100644
--- a/configure.cmake
+++ b/configure.cmake
@@ -45,12 +45,17 @@ qt_feature("assistant" PRIVATE
CONDITION TARGET Qt::Widgets AND QT_FEATURE_png AND QT_FEATURE_pushbutton AND QT_FEATURE_toolbutton AND (sqlite_plugin_available OR QT_BUILD_SHARED_LIBS)
)
qt_feature("clang" PRIVATE
- LABEL "QDoc"
+ LABEL "libclang found"
CONDITION TEST_libclang
)
+qt_feature("qdoc" PRIVATE
+ LABEL "QDoc"
+ PURPOSE "QDoc is Qt's documentation generator for C++ and QML projects."
+ CONDITION TARGET Qt::QmlPrivate AND QT_FEATURE_clang AND QT_FEATURE_clangcpp AND QT_FEATURE_commandlineparser AND QT_FEATURE_thread
+)
qt_feature("clangcpp" PRIVATE
LABEL "Clang-based lupdate parser"
- CONDITION QT_FEATURE_clang AND TEST_libclang
+ CONDITION QT_FEATURE_clang
)
qt_feature("designer" PRIVATE
LABEL "Qt Designer"
@@ -109,6 +114,7 @@ qt_configure_add_summary_entry(ARGS "distancefieldgenerator")
qt_configure_add_summary_entry(ARGS "linguist")
qt_configure_add_summary_entry(ARGS "pixeltool")
qt_configure_add_summary_entry(ARGS "qdbus")
+qt_configure_add_summary_entry(ARGS "qdoc")
#qt_configure_add_summary_entry(ARGS "qev")
qt_configure_add_summary_entry(ARGS "qtattributionsscanner")
qt_configure_add_summary_entry(ARGS "qtdiag")
@@ -126,6 +132,16 @@ You will also need to set the FEATURE_clang CMake variable to ON to re-evaluate
)
qt_configure_add_report_entry(
TYPE WARNING
+ MESSAGE "QDoc will not be compiled because the QmlPrivate library wasn't found."
+ CONDITION NOT TARGET Qt::QmlPrivate
+)
+qt_configure_add_report_entry(
+ TYPE WARNING
+ MESSAGE "QDoc cannot be compiled without Qt's commandline parser or thread features."
+ CONDITION NOT QT_FEATURE_commandlineparser OR NOT QT_FEATURE_thread
+)
+qt_configure_add_report_entry(
+ TYPE WARNING
MESSAGE "Clang-based lupdate parser will not be available. LLVM and Clang C++ libraries have not been found.
You will need to set the FEATURE_clangcpp CMake variable to ON to re-evaluate this check."
CONDITION NOT QT_FEATURE_clangcpp