... and make use of it in qt.prf.
[ChangeLog][qmake][Unix] Added support for relative paths in
QMAKE_RPATHDIR.
Note that this technically breaks backwards compatibility, as relative
paths were previously silently resolved against $$_PRO_FILE_PWD_. This
was not documented and seems rather useless, so i'm not worried.
Change-Id: I855042a8962ab34ad4617899a5b9825af0087f8a
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
See the comment in the header for an explanation of what it does.
This trick is enabled for every single .o that is compiled, unless
QT_NO_VERSION_TAGGING is defined. The assembly expands to a COMDAT
section, which is mergeable by the linker, so only one copy of the
output is present in the ELF module.
This is enabled only for Linux and x86 / x86-64 / x32 due to the
requirement of writing assembly and relocations, so it needs to be
tested on each platform, which I have not done. It might work on
Solaris/x86, but again it requires testing. Support for other
architectures requires different assembly output and relocations and can
be added as needed, but they are not as important since this trick is
has most value on desktop systems.
Change-Id: I049a653beeb5454c9539ffff13e3ff5782a8cb86
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Rex Dieter <rdieter@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
The only reason I had used them in the first place was because C
preprocessor macros cannot call themselves recursively. But the magic
was too magic and caused issues with some builds, so let's choose the
safer option.
Anyway, this solution now works for all ELF architectures, independent
of the processor, whereas previously it was restricted to x86 and Linux/
FreeBSD. However, this does not apply to the assembly in
qversiontagging.h.
Change-Id: I42e7ef1a481840699a8dffff1404f032fc5cacb8
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
If that section is there but empty, the manifest cannot be loaded using
the App Manifest Designer in Visual Studio.
Task-number: QTBUG-48648
Change-Id: I529eb2f2a690bececcf5c385b8f96e84ece363d6
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
WINAPI_FAMILY_APP is deprecated, so use WINAPI_FAMILY_PC_APP instead. Also,
open up the phone partition for use on MSVC2015.
Change-Id: I7476d71c31395b2914f5a1439e8088341976bf2f
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
msvc-desktop.conf does disable the exception warning for building all
modules, so use the same set of compiler flags for building qmake.
Change-Id: I97026f3cb78e656e8de76e1c8afe19cec6501499
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Change-Id: I391be8bda3a5cb4873b89b437d2b76b1cd88261f
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
Unlike other platforms and the EGL path, this one tries to parse
GL_VERSION on its own. Unfortunately it breaks for certain version
strings: we cannot assume more than major.minor in the beginning
and so looking for a second dot is wrong.
For example, "2.1 Mesa 7.11-devel" is parsed as major "2", minor
"1 Mesa 7" (result in 0), leading to a version of 2.0 instead of 2.1.
To overcome this, use the common helper function in
QPlatformOpenGLContext.
Change-Id: I460f4276a3a06659b542e0c076ddc1ada3122907
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
When the activity is paused, all runOnUi actions are dropped :(, this
patch ensures that no action is lost no matter what.
Task-number: QTBUG-45526
Change-Id: I61db4f73b0d2da47bf71a1324dc40b90dab01e81
Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
Second value of QPair is not used.
And add reserve for "indexNode->visibleChildren" list before pushing.
Change-Id: Ia002130c929f71e0802f73f4c0694fd2887b4c91
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Now that Qt Location is a fully-supported module in 5.6, it is
worth highlighting an example that demonstrates the new feature.
Change-Id: I70553f84af5587e3604115684ea1ea75203b91ce
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
QLatin1String wasn't really tested except as a drive-by.
Unearthed a discrepancy with docs. Fixed the docs.
Change-Id: I1246bb33888132edbc4e22da792a480a156357bf
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
It doesn't allocate memory, so cannot throw and is a lot faster
than qgetenv().
Change-Id: I863593166db8eff4c4466996110f5cfdb758ec00
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Check whether the action under the mouse is enabled before closing.
Task-number: QTBUG-48493
Change-Id: I2a0669840b9b6c81dacdf179325301c02f1c0c35
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
The delegate may be null in QHeaderView.
Task-number: QTBUG-48543
Change-Id: I4d3ba104b0b57431e8765271dc2dc880be096672
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Created local inSelection function to modify the x value (similar to
xToPos()) before sending it to the control. Ran the QLineEdit test and
manually tested with AlignLeft, AlignRight and AlignCenter.
Change-Id: I088430580dc87f3cfff90c4cd9ff90e6ab215f57
Task-number: QTBUG-48495
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
We need to add header template for commercial only modules in the
upstream now when we are using same ci system for building and testing
all. Without this tst_licenses.pl will fail in coin for those
commercial only modules
Change-Id: Ifb8170818b3b730b10e920012757af42442f0edc
Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
Reviewed-by: Sami Makkonen <sami.makkonen@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
- Use QDBusServiceWatcher to detect that pong service became available
(QDBusConnectionInterface::serviceOwnerChanged() signal is deprecated).
- Use new connection syntax.
Task-number: QTBUG-28082
Change-Id: I7b93b961ee6d45aaeefab77fa1d1943e38b4a4c0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Qt5WebKit is now deprecated and removed from the packages.
Change-Id: I176344cb2a6b43ffc44cc0e7ef1abb4e765a35b4
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Add a new documentation template, with simplified CSS rules that
work better when using QTextBrowser as a backend for Qt Assistant
or Qt Creator Help.
Select this new template by default for offline documentation
builds, but keep the old offline template as part of the template
files; use JavaScript to switch to the 'standard' CSS when the
generated files are viewed with a web browser.
Task-number: QTBUG-48322
Change-Id: Ib197896200bb482935f6e9f3a38976133a1e804d
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
The new offline template for Qt 5.6, including simplified CSS rules
suitable for rendering with a QTextBrowser, requires the navigation
bar to be generated as an HTML table instead of the previously-used
unordered list.
Make QDoc select between the two based on the contents of
HTML.postheader .qdocconf variable, which defines the header of
the navigation bar.
Modify the old offline CSS to look good also when the nav. bar
is a table.
Task-number: QTBUG-48322
Change-Id: I00e16c24f436e0be049b85d4bcfc916c33ea6b73
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
(as of qttools:a7ff0d7d9ac2ff17e540521ef59029bf5cb35e14)
Saves almost 10K of text size on optimized GCC 4.9 AMD64 Linux builds.
Change-Id: Ib059e8b076362dbf81356861bebaec3810af6dcc
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
QUrl::scheme() already returns the scheme in lowercase, so
this should guarantee that the matching works correctly.
Task-number: QTBUG-5552
Change-Id: Ie68e01943c8cb105e11e54b348a090d9ffd5e65b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Numbers formatted in the C locale should not use group
separators by default.
[ChangeLog][QtCore][QLocale] The C locale does not use group separators
when formatting numbers any more.
Task-number: QTBUG-4044
Task-number: QTBUG-3068
Change-Id: Ia647a72efc11fecd66d22f9253562b1d4ef58168
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
With the 10.8 SDK, NSArray may not respond to firstObject which ends the
build with an error. This implementation doesn't use it and also handles
the case where no screen is available when calling
qt_mac_mainScreenHeight
Change-Id: Idce278423c37cc24d8fc31062a386e78d6487492
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
We'll remove it in Qt 5.7, so people ought to be notified now.
Change-Id: Ib056b47dde3341ef9a52ffff13ef6caa91757a9f
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Redirecting on every command is wasteful.
Change-Id: I42e7ef1a481840699a8dffff1404fa0602805d1b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Implement as generic "@Nx" support in an exported
qt_findAtNxFile function.
3x devices now get one extra file existence test
in cases where @3x versions are not present. 1x
devices are still on the fast path where there are
no extra file system accesses.
Add an @3x image to the highdpi manual test.
Change-Id: I4ce3fc245ada01ea410abe1443ceb1e3abf7c17f
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
Export it for use by the iOS platform plugin. Also
move QCFSocketNotifier, and export for use by the
Cocoa platform plugin.
This is a pure code move with no intended behavior
changes, in anticipation of using the Core Foundation
event dispatcher as the default Qt Core event dispatcher
on OS X.
Change-Id: I43677d2f6f3c1d0ed0415c964225aa97d2f13078
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
We expect createPlatformWindow() to return a valid platform window. If
it fails we now assert in debug, and emit a warning in release. The only
platform where this is currently possible is on Windows, where the
platform plugin will return 0 if CreateWindowEx for some reason fails.
Change-Id: Ia2461efcfc48d180e073fa372d9c385650129e1c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Most of "immersive" flags are available on earlier Android versions.
Change-Id: Ic4f03a3c9491570bc5f8c5afbb61669644b20d8e
Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
Window collection behavior changed from OS X <= 10.9 to 10.10 to 10.11:
- the default behavior (0) included fullscreen button before 10.10, did not include
in 10.10, and now it's again included.
- it's not enough to exclude fullscreen - since the defualt is 0,
0 & ~fullscreen does not help - we also have to set fullscreen
auxiliary.
Task-number: QTBUG-48759
Change-Id: If427bd5cfa5c3cefc71f09dae7baa0d232601ee4
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
If a macro is used with too few parameters, complaining about its
definition using '#' followed by something other than a macro
parameter name is apt to be confusing - reading the definition will
reveal that the name in fact is a macro parameter after all. The
reader needs attention directed to the invocation, not the definition.
Split the test in two: one to test the prior error message does in
fact get produced for an invalid macro definition, the other to test
the invalid invocation case.
Task-number: QTBUG-46210
Change-Id: Ie177a56d346e553bf9d67e2008a4352633afa1ae
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>