Don't error out when configuring Qt on a headless system

Configuring and building Qt should not require a running dbus session bus.
However, when building the html_docs target on a headless system, qmake bails
out with error if dbus is linked in, while only showing a warning if it's not.

This is unnecessary. We can warn in both cases, build the tests with dbus
linked in. Running the tests will fail if there is no session bus, ie.
tst_QDBusConnection_Delayed::delayedMessages fails with

QVERIFY(session.isConnected);

Pick-to: 5.15
Change-Id: Ia6b6e226398e87880449b003d28dfd76553bee2c
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
This commit is contained in:
Volker Hilsheimer 2020-09-18 18:01:37 +02:00
parent c1fddbbd58
commit d26fe3c5d6

View File

@ -18,10 +18,12 @@ qtHaveModule(dbus):!cross_compile:!boot2qt {
system("dbus-send --session --type=signal / local.AutotestCheck.Hello >$$QMAKE_SYSTEM_NULL_DEVICE 2>&1") {
SUBDIRS += dbus
} else {
qtConfig(dbus-linked): \
error("QtDBus is enabled but session bus is not available. Please check the installation.")
else: \
qtConfig(dbus-linked) {
warning("QtDBus is enabled but session bus is not available. QtDBus tests will fail.")
SUBDIRS += dbus
} else: {
warning("QtDBus is enabled with runtime support, but session bus is not available. Skipping QtDBus tests.")
}
}
}
qtHaveModule(gui): SUBDIRS += gui