Run non-xcb X tests also with -no-xcb

Passing -no-xcb disables xcb and related configuration tests
completely so for example QT_NO_XRENDER is not defined.  This results
in linker errors in glxconvenience with -no-xcb since the XRender
calls are compiled in without linking to the library.

The XRender, XInput and such tests are not strictly xcb related and
may be used from elsewhere, for example glxconvenience which has
nothing to do with xcb. Therefore these tests are moved in configure
so that they are run even when xcb is disabled.

Task-number: QTBUG-35644
Change-Id: I77871612ea5f6711ecafd8ca53aac6c516c19e2e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
network tests: add manual test for uploading images to Facebook

... to have a real world test case for uploading via SSL,
QHttpMultiPart (+ resetting) etc.

Change-Id: I004dd6f2507776b2fb8ebe1f02625b40abff6261
Reviewed-by: Richard J. Moore <rich@kde.org>
Bump Qt version to 5.2.2

Change-Id: Ia7dd68e0a280d12eba28932b4c5edb9948310a1e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
consistently use single quotes to quote sed & tr arguments

... except where they actually contain variable expansions.
unescaped backslashes in double quoted strings aren't nice, and
apparently actually break with old solaris shells.

Task-number: QTBUG-14167
Change-Id: I703694b6ac7ab71d9293c049d77212e20dd5bcb0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
set QMAKE_INTERNAL_INCLUDED_FILES even without PROEVALUATOR_FULL

some qt prfs use this variable, so better set it it to avoid some noise.

Change-Id: I606c88dd7664b1cd8b490d60badd5c6bf80fd1c9
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
(cherry picked from qtcreator/e64cc71194cbe283dfe9bd2cd688f01fcdcadf34)
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
don't turn = into += in cumulative mode

it leads to pathological cases where the number of loop iterations may
go way beyond the reasonable.

this means that users need to avoid using the = operator in alternative
branches that lead to different sources/subdirectories being included
into the project. this is a bit of a corner case anyway, as people
usually add directly to SOURCES/SUBDIRS.

Task-number: QTCREATORBUG-1595
Change-Id: I7783e318fbc2790f6a853ba4e3f4a12db881feb5
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
(cherry picked from qtcreator/30bd7fcce1aef974f6af9eaa6532aa1f2b6192d2)
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Doc: Fix suggest parentheses GCC warning

Change-Id: I96cb76da7d260d08133830de72b0ff6e6a5099be
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Doc: Fix typo in Fade Message Effect Example documentation

Change-Id: I3a64f296d01f2b0147f87b406163ff25c4d12ada
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Fix unused-function warning in qdrawhelper.cpp

storePixel<QPixelLayout::BPP32> would have been called by
storePixels<QPixelLayout::BPP32> but that function has an overload that
uses memcpy instead. So it's really unused.

Found by Clang 3.4.

Change-Id: I661804e273486d3469221fdd362a24cd77cfb8a7
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Android: Add convenience function to get the API level.

It's common to check the Android API level at runtime to determine
what functionality is available. This change provides a convenient
way to get the Android SDK version (API level) from c++.

Change-Id: I88f65ae87e0fa8ac0affefffbd1b1bba855c9f46
Reviewed-by: BogDan Vatra <bogdan@kde.org>
Android: QStandardPaths implementation

Adds standard paths implementation for Android.

[ChangeLog][QtCore][QStandardPaths] Added
QStandardPaths implementation for Android.

Task-number: QTBUG-34631

Change-Id: I38673204a521a990438470c4e165105a2b02b7ad
Reviewed-by: BogDan Vatra <bogdan@kde.org>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Android: Don't register main thread on loading library

When building with debug, all SLOT or SIGNAL macros will
expand to a function call, and then function will call
QThreadData::current(), which will set
QCoreApplication::theMainThread if it has not already been
done. Since Qt Widgets has these macros in the static
initialization of the library, we would register the
Android main thread as the main thread of Qt, which would
mean that the actual application object was created on
a different thread than the main thread. This caused warnings
to appear, and also triggered a race condition which
caused widget applications to sometimes show a black screen
instead of content on startup when run with the OpenGL plugin.

Task-number: QTBUG-35048
Change-Id: Ie8979f5e7cd5662f8d7dd276de9f94f27cc120b5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
eglfs: Allow using a different framebuffer device

Right now /dev/fb0 is hardcoded. This is not ideal. Therefore
QT_QPA_EGLFS_FB is introduced. This environment variable can be set to
a different framebuffer device. Once it is set, eglfs will use the
specific device. This is similar to linuxfb's fb=... plugin parameter.

The actual behavior depends on the board-specific implementations.
For now only iMX6 has real support. It extracts the index from the
device name as bind the EGL display to the corresponding framebuffer
using the vendor-specific fbGetDisplayByIndex(). Other hooks can
follow suit later on.

With this patch eglfs is at least on par with linuxfb, meaning that,
if the board supports it, different apps can run on different screens.

Task-number: QTBUG-36113
Change-Id: Ia3c88bd06e108bc668433e3c5c3fce34a5a0e73d
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Do not consider a signal to be connected if only a signal spy is installed.

This fixes QtQuick key handling not propagating key events beyond the
specific onXPressed handlers, due to erroneously thinking those exist,
when signal spy callbacks are present.

Considering signal spies for isSignalConnected() goes back to 87239ef6 in
Qt4, and seems to be there just due to this code being based on activate(),
where this check obviously makes sense.

Change-Id: Iad41e42a8d3ee2a16a55be7d1a7cdc51484981ce
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
test: Don't build qmimedatabase-cache for QNX

update-mime-database does not exist, so there is no point in
trying to build this test.

Change-Id: Id60f2f8fc3af33d3f7ae2fb4f1042356b60f6596
Reviewed-by: David Faure <david.faure@kdab.com>
Reviewed-by: Wolfgang Bremer <wbremer@blackberry.com>
Add linux/kd.h to the config test for evdev

This header is used by qevdevmousehandler.cpp, so it's not a bad idea
to check that it exists as early as here. Apparently, FreeBSD's Linux
support has linux/input.h, so the "evdev" test was passing and then
the build would fail later.

Task-number: QTBUG-36205
Change-Id: Iab9788350a9f4c90d355524769a7a396679fd218
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
Make QCommandLineParser not crash if passed a bad QCommandLineOption

This otherwise crashed:
  QCommandLineOotion opt("with=equals");
  parser.isSet(opt);

Can't write a unit test because it produces a warning.

Change-Id: Ifc67f20bb4b16b96d93dffbe4e82e6cc8a17584d
Reviewed-by: David Faure <david.faure@kdab.com>