Fix compile warnings on 10.6

Apple clang 3.0 complains about missing function
declarations. Add them.

Change-Id: Ib9c3c238c94e8649844cf3e67a659875ad549ecb
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Remove superfluous 'libudev ...' line

Status for LIBUDEV printed again in the configure output under 'udev ....'

Change-Id: I3e0beca4c6de315dc2dfbdc24d83f4d9cd2b8856
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
kill unix_to_dos script

there is really no point in having such a thing here.

Change-Id: I2ffa2e911fadda1db2e402c05d59a7c88ddb30b9
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Fix virtual key mapping on MS Windows

In order to map MS Windows virtual keys to Qt keys without messing with
dead keys now I use the built-in keyMap structure of QWindowsKeyMapper
and assert every cell in the keymap is properly updated.

In order to guarantee this even when the user changes the keyboard
layout, WndProc now manages the WM_INPUTLANGCHANGE message, which is
handled by QWindowsKeyMapper, resetting the layout structure.

I don't fully understand yet some things about QWindowsKeyMapper, i.e.
how QWindowsKeyMapper::updatePossibleKeyCodes workarounds the dead key
issue with ToAscii; but it seems to work fine in all the tests I've
done. Any further testing is highly appreciated, though.

[ChangeLog][[QtGui][Platform Specific Changes][Windows] Fixed virtual key
mapping on Windows.

Task-number: QTBUG-33409
Task-number: QTBUG-8764
Task-number: QTBUG-10032

Change-Id: I4f7709a90906b03f4504deea1ff5c361e9f94b3f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Fix bug in updatePossibleKeyCodes() with dead keys and modifiers

As it was until now, QWindowsKeyMapper::updatePossibleKeyCodes() tested
using ToUnicode for which characters produce a key with every possible
combination of modifiers.

Calling ToUnicode with a dead key is dangerous, because MS Windows keeps
it in the driver buffer, so if you call ToUnicode with acute key and
then you press a, you get an á.

To prevent this, updatePossibleKeyCodes() checked if the key that was
being tested was a dead key. If true, it inserted an space and then
repeated the key in order to reset the system internal buffers to the
same state they were before the call.

The problem with this is if the dead key is really two keys (like ^ or ´
in US International keyboard layout) and you press one of those keys
without the modifier to make it a dead key (i.e. 6 in US International):
Since updatePossibleKeyCodes() only tests for the key that was pressed
it gets 6 is not a dead key, and thus it does not execute the
workaround. Thus, the next time the user presses 'a' they get 'â'
instead because updatePossibleKeyCodes() set the dead key on the
keyboard buffer and did not run the workaround.

This patch makes updatePossibleKeyCodes() run the workaround if any
possible combination of modifiers with the key being examinated makes a
dead key.

Task-number: QTBUG-33591
Change-Id: I8c0b27586f7c62798986258b1b84aa90e4c5d64c
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
xcode: Move Qt preprocessor steps to separate target

Xcode resolves dependencies at the beginning of each target, so if a
Qt preprocessor such as moc or rcc updates a cpp file Xcode will not
rebuild the cpp file until the next build.

We solve this by moving the Qt proceprocesor handling to a separate
aggregate build tool target, which the main application target then
depends on.

Change-Id: I8f9225b9603dc5f279b1cb60976fe709bd97963e
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
support cleanly querying private modules in qtHaveModule()

module names use dashes, but the internal module representation uses
underscores, so we must translate.

Change-Id: Ib6983d3731e7dae2a4d6232f8a5202390fd425e9
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Do not byteswap RGBA8888 formats

The three RGBA8888 formats was introduced to make it possible to have
QImages and QPixmaps in native OpenGL formats, but uploaded textures of
these types are still converted to ARGB first and then swapped back.

This patch detects the formats and ensures the unneeded back-and-forth
conversion does not take place. It also replaces a seemingly unused
private API meant for the same goal.

Change-Id: Id69d6973bb9c13d1052f2a1b0c516183f63421c2
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>