Disable only accessibility bridge without dbus on linux

Keeping accessibility and only disabling the bridge will
enable more builds to work.

Warning about disabling accessibility disabled is needed
because in QStyle it is used to discover semantics about widgets
(if a toolbutton is in a toolbar).

Change-Id: Iae4e6ab63479743bdd70cba4b1954ec7cf3f88e9
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
This commit is contained in:
Frederik Gladhorn 2013-01-18 16:36:42 +01:00 committed by The Qt Project
parent d5dec5d00d
commit 586fabb3b5
5 changed files with 28 additions and 18 deletions

30
configure vendored
View File

@ -831,6 +831,7 @@ CFG_AVX=auto
CFG_AVX2=auto
CFG_REDUCE_RELOCATIONS=auto
CFG_ACCESSIBILITY=auto
CFG_ACCESSIBILITY_ATSPI_BRIDGE=no # will be enabled depending on dbus and accessibility being enabled
CFG_IWMMXT=no
CFG_NEON=auto
CFG_MIPS_DSP=auto
@ -3093,6 +3094,10 @@ Configure options:
+ -largefile ......... Enables Qt to access files larger than 4 GB.
-no-accessibility .. Do not compile Accessibility support.
Disabling accessibility is not recommended, as it will break QStyle
and may break other internal parts of Qt.
With this switch you create a source incompatible version of Qt,
which is unsupported.
+ -accessibility ..... Compile Accessibility support.
-no-sql-<driver> ... Disable SQL <driver> entirely.
@ -4949,20 +4954,19 @@ if [ "$CFG_KMS" = "yes" ]; then
fi
# Detect accessibility support
if [ "$CFG_ACCESSIBILITY" != "no" ]; then
if [ "$CFG_XCB" = "no" ]; then
CFG_ACCESSIBILITY=yes
else
# linux/xcb accessibility needs dbus
if [ "$CFG_DBUS" != "no" ] && [ -n "$PKG_CONFIG" ]; then
CFG_ACCESSIBILITY=yes
if [ "$CFG_ACCESSIBILITY" = "no" ]; then
echo >&2 "Warning: Disabling Accessibility. This version of Qt is unsupported."
else
CFG_ACCESSIBILITY=yes
# linux/xcb accessibility bridge needs dbus
if [ "$CFG_XCB" != "no" ]; then
if [ "$CFG_DBUS" != "no" ]; then
CFG_ACCESSIBILITY_ATSPI_BRIDGE=yes
QT_CONFIG="$QT_CONFIG accessibility-atspi-bridge"
else
if [ "$CFG_ACCESSIBILITY" = "auto" ]; then
CFG_ACCESSIBILITY=no
else
echo "Accessibility support needs DBus."
exit 101
fi
echo >&2 "Warning: Disabling Linux Accessibility Bridge: DBus is missing."
QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_ACCESSIBILITY_ATSPI_BRIDGE"
fi
fi
fi

View File

@ -1,4 +1,4 @@
qtHaveModule(dbus):contains(QT_CONFIG, xcb):contains(QT_CONFIG, accessibility) {
contains(QT_CONFIG, accessibility-atspi-bridge) {
QT += dbus
include(../../3rdparty/atspi2/atspi2.pri)

View File

@ -84,8 +84,10 @@
#include <QtGui/QScreen>
#ifndef QT_NO_ACCESSIBILITY
#include <qpa/qplatformaccessibility.h>
#ifndef QT_NO_ACCESSIBILITY_ATSPI_BRIDGE
#include "../../../platformsupport/linuxaccessibility/bridge_p.h"
#endif
#endif
QT_BEGIN_NAMESPACE
@ -112,7 +114,7 @@ QXcbIntegration::QXcbIntegration(const QStringList &parameters)
m_fontDatabase.reset(new QGenericUnixFontDatabase());
m_inputContext.reset(QPlatformInputContextFactory::create());
#ifndef QT_NO_ACCESSIBILITY
#ifndef QT_NO_ACCESSIBILITY_ATSPI_BRIDGE
m_accessibility.reset(new QSpiAccessibleBridge());
#endif
}

View File

@ -50,7 +50,7 @@ cross_compile: SUBDIRS -= \
wince*|!contains(QT_CONFIG, accessibility): SUBDIRS -= qaccessibility
!contains(QT_CONFIG, accessibility)|!contains(QT_CONFIG, xcb): SUBDIRS -= qaccessibilitylinux
!contains(QT_CONFIG, accessibility-atspi-bridge): SUBDIRS -= qaccessibilitylinux
!mac: SUBDIRS -= \
macgui \

View File

@ -1650,8 +1650,12 @@ bool Configure::displayHelp()
desc("WIDGETS", "no", "-no-widgets", "Disable QtWidgets module.\n");
desc("ACCESSIBILITY", "no", "-no-accessibility", "Do not compile Windows Active Accessibility support.");
desc("ACCESSIBILITY", "yes", "-accessibility", "Compile Windows Active Accessibility support.\n");
desc("ACCESSIBILITY", "no", "-no-accessibility", "Disable accessibility support.\n");
desc( "", "Disabling accessibility is not recommended, as it will break QStyle\n"
"and may break other internal parts of Qt.\n"
"With this switch you create a source incompatible version of Qt,\n"
"which is unsupported.\n");
desc("ACCESSIBILITY", "yes", "-accessibility", "Enable accessibility support.\n");
desc( "-no-sql-<driver>", "Disable SQL <driver> entirely, by default none are turned on.");
desc( "-qt-sql-<driver>", "Enable a SQL <driver> in the Qt Library.");