summaryrefslogtreecommitdiffstats
path: root/src/qtdiag
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@theqtcompany.com>2015-12-03 09:32:20 +0100
committerFriedemann Kleint <Friedemann.Kleint@theqtcompany.com>2015-12-03 11:25:36 +0000
commit83a197e1d73d855360fd45d2172ba09bfc127f62 (patch)
tree14d47cc7300c6925f62fe728293f0613226891cd /src/qtdiag
parent5a97ebc184afe204e47578b66a1c495174c05066 (diff)
qtdiag: Output a list of relevant Qt features.
Change-Id: I6933d28c7959102ec825ba41a210c82a38910c33 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Diffstat (limited to 'src/qtdiag')
-rw-r--r--src/qtdiag/qtdiag.cpp67
1 files changed, 67 insertions, 0 deletions
diff --git a/src/qtdiag/qtdiag.cpp b/src/qtdiag/qtdiag.cpp
index de06877d1..690eb3661 100644
--- a/src/qtdiag/qtdiag.cpp
+++ b/src/qtdiag/qtdiag.cpp
@@ -222,6 +222,69 @@ static QString formatQDebug(T t)
return result;
}
+static inline QByteArrayList qtFeatures()
+{
+ QByteArrayList result;
+#ifdef QT_NO_CLIPBOARD
+ result.append("QT_NO_CLIPBOARD");
+#endif
+#ifdef QT_NO_CONTEXTMENU
+ result.append("QT_NO_CONTEXTMENU");
+#endif
+#ifdef QT_NO_CURSOR
+ result.append("QT_NO_CURSOR");
+#endif
+#ifdef QT_NO_DRAGANDDROP
+ result.append("QT_NO_DRAGANDDROP");
+#endif
+#ifdef QT_NO_EXCEPTIONS
+ result.append("QT_NO_EXCEPTIONS");
+#endif
+#ifdef QT_NO_LIBRARY
+ result.append("QT_NO_LIBRARY");
+#endif
+#ifdef QT_NO_NETWORK
+ result.append("QT_NO_NETWORK");
+#endif
+#ifdef QT_NO_OPENGL
+ result.append("QT_NO_OPENGL");
+#endif
+#ifdef QT_NO_OPENSSL
+ result.append("QT_NO_OPENSSL");
+#endif
+#ifdef QT_NO_PROCESS
+ result.append("QT_NO_PROCESS");
+#endif
+#ifdef QT_NO_PRINTER
+ result.append("QT_NO_PRINTER");
+#endif
+#ifdef QT_NO_SESSIONMANAGER
+ result.append("QT_NO_SESSIONMANAGER");
+#endif
+#ifdef QT_NO_SETTINGS
+ result.append("QT_NO_SETTINGS");
+#endif
+#ifdef QT_NO_SHORTCUT
+ result.append("QT_NO_SHORTCUT");
+#endif
+#ifdef QT_NO_SYSTEMTRAYICON
+ result.append("QT_NO_SYSTEMTRAYICON");
+#endif
+#ifdef QT_NO_QTHREAD
+ result.append("QT_NO_QTHREAD");
+#endif
+#ifdef QT_NO_WHATSTHIS
+ result.append("QT_NO_WHATSTHIS");
+#endif
+#ifdef QT_NO_WIDGETS
+ result.append("QT_NO_WIDGETS");
+#endif
+#ifdef QT_NO_ZLIB
+ result.append("QT_NO_ZLIB");
+#endif
+ return result;
+}
+
QString qtDiag(unsigned flags)
{
QString result;
@@ -261,6 +324,10 @@ QString qtDiag(unsigned flags)
}
#endif // !QT_NO_PROCESS
+ const QByteArrayList features = qtFeatures();
+ if (!features.isEmpty())
+ str << "\nFeatures: " << features.join(' ') << '\n';
+
str << "\nLibrary info:\n";
DUMP_LIBRARYPATH(str, PrefixPath)
DUMP_LIBRARYPATH(str, DocumentationPath)