summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* qwindowsxpstyle: Add std::nothrow to newIvan Komissarov2018-12-101-2/+2
| | | | | | | | | | | There is no sense in testing the 'buf' pointer against null, as the memory was allocated using the throwing 'new' operator. However, since this function already can fail in other cases, the 'buf' pointer can be checked for nullptr after the nothrow new. Task-number: QTBUG-71156 Change-Id: Ibca5d672544d3980dd8890474e3e2fbf7443e05d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* DropSite example: fix documentationChristian Ehrlicher2018-12-103-63/+3
| | | | | | | | | | The DropSite documentation mentioned the foreach keyword which was removed some times ago in the code. Therefore also remove the corresponding documentation snippet. Change-Id: Id9dd3f01dbdd37eeda43fabe12b60ef9e0b32d10 Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* QtDbus: Remove unused QStrings [-Wclazy-unused-non-trivial-variable]Sergio Martins2018-12-101-3/+0
| | | | | Change-Id: Iea776554aa5e01ecc6fa08ac2c8fb7b720d57126 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QtGui: Remove unused brushes [-Wclazy-unused-non-trivial-variable]Sergio Martins2018-12-102-3/+0
| | | | | | Change-Id: If7e5340ec8acdfd70ea919286da5940db7a4def9 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Fix a couple of unused QStringsSergio Martins2018-12-102-2/+2
| | | | | | | | | This is needed so we can add Q_WARN_UNUSED to QString. The xcb one might even be a bug. Change-Id: Ia2d2563bdd10aa747014410df4990597969f4634 Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io> Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* Add a means to specify the protocol type, to aid websockets over proxyAndy Shaw2018-12-104-1/+37
| | | | | | | | | | When a PAC script is used on macOS, it will only allow connections for http/https, although a proxy can be used for ws/wss. Therefore we need to add a means of setting the protocol type for this sort of connection so that we can pass on the necessary information to the PAC script. Change-Id: I3fa29fa85a529bd88d9565daa58fe9d748b61a92 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Add a few qAsConst() to range-for to prevent detachmentsSergio Martins2018-12-1010-27/+25
| | | | | | | | | | | places indicated by clazy As a drive-by, fixed minor styling issues in the affected lines. Change-Id: I88d3fc0c8573cde0e61f19a18dd9ea697ee40c34 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Luca Beldi <v.ronin@yahoo.it> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* QTypeInfo: use C++11 type traits to deduce if a type is static or complexLars Knoll2018-12-104-12/+51
| | | | | | | | | | | | | | | | | | | All types that can be trivially copied and destructed are by definition relocatable, and we should apply those semantics when moving them in memory. Types that are trivial, are by definition not complex and should be treated as such. [ChangeLog][QtCore] Qt Containers and meta type system now use C++11 type traits (std::is_trivial, std::is_trivially_copyable and std::is_trivially_destructible) to detect the class of a type not explicitly set by Q_DECLARE_TYPEINFO. (Q_DECLARE_TYPEINFO is still needed for QList.) Done-with: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Change-Id: Iebb87ece425ea919e86169d06cd509c54a074282 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Refresh QGuiApplication's devicePixelRatio cache when screens changeSteve Mokris2018-12-103-8/+27
| | | | | | Task-number: QTBUG-63548 Change-Id: Id934cda6e15449c00c80a646055899f49580da88 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* QUrlQuery: Implement initializer list constructorSamuel Gaist2018-12-093-0/+25
| | | | | | | | | | [ChangeLog][QtCore][QUrlQuery] QUrlQuery now provides an initializer list constructor. It can be created using a list of key/value pairs. Fixes: QTBUG-68645 Change-Id: Ief5939aa477718f6dd3580f2c60f95ff3aa892ae Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Merge remote-tracking branch 'origin/5.12' into devQt Forward Merge Bot2018-12-0920-94/+541
|\ | | | | | | Change-Id: I10ae61ec6867b38601d85d6fc34e1f6a6ba0cc11
| * Optimize further the loading of 8 Latin 1 charactersThiago Macieira2018-12-081-4/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is important when AVX is enabled, which makes the VMOVQ load and the VPMOVZXBW instruction be combined into a single VPMOVZXBW with direct memory access. This is guaranteed to only read 8 bytes, so it's safe even close to the end of a page. Clang and ICC do combine the instructions like we want and I have filed a request for GCC to do so too[1]. AVX was first introduced in 2011, so plenty of computers today would benefit from this. [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87317 Change-Id: I8f261579aad648fdb4f0fffd1553e08e90df3171 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * Allow overriding the maximum cached glyph size via the environmentTor Arne Vestbø2018-12-081-2/+7
| | | | | | | | | | | | | | Useful for testing. Change-Id: I8cfd4453018cba0301287ad6a1c15a88cdc33c1c Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * Add manual test case for verifying our text renderingTor Arne Vestbø2018-12-083-1/+319
| | | | | | | | | | | | | | | | Allows comparing Qt's text rendering to the native rendering. Change-Id: I56f015fb64df3f70c33db58891876c325cbbc55d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * Revert "Ensure alignment of image-data"Allan Sandfeld Jensen2018-12-081-11/+3
| | | | | | | | | | | | | | | | | | | | | | This reverts commit ae8389e19c5804c867b2981311c623003a691474. The result of malloc should be aligned in any case, and this change conflicts with the use of realloc on the data elsewhere. Change-Id: I01773132b240614a2656dd3013490b0df9cd14a7 Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * QToolButton: Don't elide text if an icon is presentChristian Ehrlicher2018-12-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous fix which adds an automatic text elision when the QToolButton is not large enough brought up an inconsistency between QToolButton::sizeHint() and QCommonStyle::drawControl(). Fix it by syncing the magic numbers between QToolButton::sizeHint() and QCommonStyle::drawControl(). Fixes: QTBUG-72226 Change-Id: If4a76792cb97bcdb918e18c6b29cb637730acec0 Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
| * Set QScroller's parent to its widget, for memory managementShawn Rutledge2018-12-082-2/+37
| | | | | | | | | | | | | | | | | | | | | | If the widget to which the scroller was assigned is deleted, the QScroller ought to be deleted too, to avoid filtering events and then following a dangling pointer while trying to react. Fixes: QTBUG-71232 Change-Id: I62680df8d84fb630df1bd8c482df099989457542 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
| * untangle the egl-x11 relationship in the build systemOswald Buddenhagen2018-12-073-8/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | egl-x11 is used in two places: - the eglfs-x11 plugin, which has a hard dependency on xcb-xlib - the xcb-egl plugin, which has a soft dependency on xcb-xlib that means that the egl-x11 configure test needs to be untangled from xcb, and that eglfs-x11 should be a separate feature with a proper dependency declaration. when the plugins that need egl-x11 are not built, it also makes no sense to build the respective integration in the egl_support module (even if it's possible to coax it into building), so adjust things accordingly. Change-Id: Ic729d0b7c893dd00844567329205c24ea2703033 Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
| * configure: atomize xcb-* tests properlyOswald Buddenhagen2018-12-072-28/+29
| | | | | | | | | | | | | | | | | | | | | | | | xcb is a dependency which should be detected upfront. same for xlib. this also removes calls to functions coming from the dependencies from the tests (both because these calls prove nothing, and because at some point we will stop linking transitive deps). Change-Id: Iac77305eab33ea8ff5c71302cef980eb908d8403 Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
| * configure: convert xlib to a proper library definitionOswald Buddenhagen2018-12-074-17/+18
| | | | | | | | | | Change-Id: I1623aee9e8632e4bfd466e09e275cc23f94c6dab Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
| * wasm: fix freetype library sourceOswald Buddenhagen2018-12-071-1/+1
| | | | | | | | | | Change-Id: Ib99c4c178808c7325e55e85a1548542ae3c57524 Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
| * configure: fix linking with statically linked freetypeTim Blechmann2018-12-071-0/+3
| | | | | | | | | | | | | | | | | | | | | | freetype depends on zlib. using statically linked freetype as system library lacks the usage requirement to link with zlib. so we need to add this manually. Task-number: QTBUG-63115 Change-Id: Iaf0f3027bd9d1386fcc1ecfbfbe07ab09b2d0bb9 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * add support for transitive deps to QMAKE_USEOswald Buddenhagen2018-12-074-18/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | we already knew the dependencies (as they are declared in the json files), but failed to export them in any way, which made linking against statically built external deps which have deps in turn fail (unless the project happened to pull in the dep anyway, as is the case with qtcore + zlib). the previous assumption was that the USE-able library objects would be self-contained, but that is conceptually unclean. instead, properly export the raw dependencies and resolve them only in qmake_use.prf. note that pkg-config produces self-contained output, so we need to actively subtract the dependencies we know. Change-Id: I4b41a7efc05bbd309a6d66275d7557a80efd5af4 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * qmake: fix QMAKE_DEFAULT_LIBDIRS detection for android on windowsOswald Buddenhagen2018-12-071-0/+2
| | | | | | | | | | | | | | | | | | | | clearly, nobody told clang that on windows you're supposed to use semicolons instead of colons to separate elements of a path list ... Fixes: QTBUG-72268 Change-Id: Ia7adc8de3bca586d4c15b069cb04e4cb647ae823 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Merge remote-tracking branch 'origin/5.12' into devQt Forward Merge Bot2018-12-0821-52/+161
|\| | | | | | | Change-Id: Ied1194730e75a6f30839bbf5429aa2699230288e
| * Merge "Merge remote-tracking branch 'origin/5.12.0' into 5.12" into ↵Liang Qi2018-12-074-2/+15
| |\ | | | | | | | | | refs/staging/5.12
| | * Merge remote-tracking branch 'origin/5.12.0' into 5.12Qt Forward Merge Bot2018-12-054-2/+15
| | |\ | | | | | | | | | | | | Change-Id: I54b4c14bed5150d3034ac87907a09254fd78face
| | | * [Android] Fix the ability to override environment and argumentsv5.12.0BogDan Vatra2018-12-031-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This mechanism should only be enabled only for debug deployments, but the check was removed by accident in ca139228abdd522a76b2750aed607440568eb7f3. Fixes: QTBUG-72230 Fixes: QTBUG-72132 Change-Id: I3378436e93314fdf254919aed066f1284a4581b3 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | | * tst_QNetworkReply: Blacklist getFromHttp:success-externalv5.12.0-rc2Liang Qi2018-11-271-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-71953 Change-Id: Ib69754b169dd4d5e78f566ce817608b2349c8ae0 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> (cherry picked from commit 46076f73337d6b0fea9a006dab2af8864571ae2c) Reviewed-by: Liang Qi <liang.qi@qt.io>
| | | * Fix build errors in OpenSSL 1.1 backendTimur Pocheptsov2018-11-271-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SSL_CTX_set_ciphers is new in 1.1.1. Task-number: QTBUG-71983 Change-Id: If0ae9f95dcc867c62ed0d3a6a60c22c7f5e1cc9f Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> (cherry picked from commit 36f3eeaf3ec12126956d151a026379ab0385ab72) Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | | * macOS: Don't link to debug versions of frameworks unless requestedTor Arne Vestbø2018-11-272-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The failure mode of this behavior is worse than the surprises that the non-explicit library dependency chain has, so it should be opt-in. This reverts back to the behavior in Qt 5.11, but lets our tests opt in to the feature. Fixes: QTBUG-71724 Change-Id: Iede11f02d978b637324ddf71d29e7c99fe3ee99f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
| | | * Windows QPA: Fix onPressedChanged only reported on touch upv5.12.0-rc1Andre de la Rocha2018-11-161-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This issue was caused by the workaround added to fix QTBUG-70887. Certain events like the initial touch down do not generate mouse messages after the pointer messages (but only touch messages) and should not be postponed by the pointer handler. Fixes: QTBUG-71775 Change-Id: I7b64ae4d422f6a4c1bb465ce5f8255e85640dab1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * | | QScroller: Fix crash when multiple scrollers are registeredFriedemann Kleint2018-12-071-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ensure the scroller cannot be added multiple times to the list of active scrollers. Patch as contributed on bug report. Amends 8b8e53f7267911c4f406f5c6f54e4a60a0f32112. Change-Id: Ic4e7d3e981f36e330dfd28d468288c5ef4b74a4c Fixes: QTBUG-72244 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * | | QSettings: quick refactor for readabilityThiago Macieira2018-12-071-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Helps with debugging the code too, as you can follow what's on the file with the "ch" variable. Change-Id: Idd0c85a4e7b64f9c9c7dfffd156c5b7d76cf657b Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * | | Fix QSettings parsing of spaces after comment linesThiago Macieira2018-12-074-0/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][QtCore][QSettings] Fixed QSettings parsing of blank spaces after comment lines in INI-style configuration files. Fixes: QTBUG-72007 Change-Id: Idd0c85a4e7b64f9c9c7dfffd156c5b219f3b5c0a Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * | | QTest: Make QCOMPARE of QCborError produce outputThiago Macieira2018-12-071-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I was getting: Actual (reader.validate()) : <null> Expected (QCborError::NoError): NoError Change-Id: Ib47c56818178458a88b4fffd1554f1751f447086 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
| * | | Doc: update docs for the sleeping functions' accuracyThiago Macieira2018-12-071-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | And take the opportunity to tell people not to sleep. It's always wrong. Fixes: QTBUG-71757 Change-Id: I36203b7dac414e3eb9effffd1566b956dd05f32a Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * | | Add a note about virtual_hookThiago Macieira2018-12-071-0/+1
| | | | | | | | | | | | | | | | | | | | Change-Id: I1ff3b344ec5a4499bb25fffd156b2bf6a7d88625 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * | | Fix build using Windows SDK 10.0.17763Thiago Macieira2018-12-071-6/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c:\qt\qt5\qtbase\src\3rdparty\libjpeg\src\jmorecfg.h(242): error C2371: 'boolean': redefinition; different basic types c:\program files (x86)\windows kits\10\include\10.0.17763.0\shared\rpcndr.h(193): note: see declaration of 'boolean' Instead of trying to guess if a certain header has been #included and whether that header does typedef something to boolean, let's just use the preprocessor to hide, like some people do for X11/Xlib.h's Bool (see qmetatype.h where we refused). Change-Id: I05b8d7ba19004af99f3cfffd15693a87e175f05d Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
| * | | configure: remove xkbcommon_evdev transition hackGatis Paeglis2018-12-071-15/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was added in c3a963da1f9e7b1d37e63eedded61da4fbdaaf9a. wayland was updated in a8fed20181729cae70de43079c4a34ad1780cfd7. Change-Id: Ibf458815c3b61c5f936f147086db3d2b5782c175 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * | | libinput: use QT_CONFIG(xkbcommon) macroGatis Paeglis2018-12-071-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch amends c3a963da1f9e7b1d37e63eedded61da4fbdaaf9a Change-Id: I9e66aac4f0f45714343c585c79f37bd76683e103 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
| * | | Fix inability to edit lines in QGraphicsTextItem when pageSize is setVitaly Fanaskov2018-12-071-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previous implementation relies on the fact that the only text document with height -1 can grow or shrink vertically, and, hence, a bounding rect should be updated under this circumstances. But method QTextDocument::setPageSize might set a height different from -1, and QGraphicsTextItem will be growing/shrinking vertically as well. So, we have to relax condition to cover all use cases. Bounding rect will be updated if new size is different from current size. This also doesn't affect performance. Fixes: QTBUG-55527 Change-Id: Id2c8e15d859aff9dde62c8ee14a6859c0c03f0d4 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * | | Remove one out-of-date comment, refine another that was impreciseEdward Welbourne2018-12-071-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The former is a follow-up to c17563eca8. Change-Id: I3cd41e6e38f740de67605f785a804ffd879b9e67 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | | Revise filtering of Content-Length in HTTP cache controlEdward Welbourne2018-12-071-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We filter out Content-Length from the cache metadata due to IIS sending it bogusly on 304 responses; however, we were only doing this if the cached response had a Content-Length header, which doesn't happen when the original request was delivered chunked. Furthermore, the filtering wasn't limited to the case of 304 responses. So skip the "had it previously" requirement and only do this for 304s. Fixes: QTBUG-72035 Change-Id: Ie5d858e0f0205bf68f0a13a9c9d4a6e844cb3568 Reviewed-by: Joni Poikelin <joni.poikelin@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| * | | Windows QPA: Fix QDockWindow Drag & DropAndre de la Rocha2018-12-071-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pointer messages should not be handled when we are inside a move/resize modal loop. DefWindowProc() should handle this case instead. Fixes: QTBUG-72078 Change-Id: I5ad7283bcf0cfe0ff7d21cf5640270c361b8ad8d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * | | Preallocate buffer for QLineEdit when used for password inputIvan Čukić2018-12-071-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While the user is entering the password, the string variable that stores the value might have to reallocate its content from time to time (when the string needs to grow beyond its current capacity). When the reallocation happens, the old buffer is freed, but its data is not zeroed-out. This means that a QLineEdit that serves as a password input field might leak chunks of the password during its lifetime, and the leaks will persist after its destruction. Since the QLineEdit can not control the behavior of the QString it uses to store the entered value, the only thing it can do is try to make the reallocations rare. This patch reserves the space for 30 characters for the string which stores the QLineEdit value when said QLineEdit is used for password input. This is enough to make sure no reallocation happens in majority of cases as barely anyone uses passwords longer than 30 characters. [ChangeLog][QtWidgets][QWidgetLineControl/security] Preallocate a buffer for the string that contains the entered value when the QLineEdit serves as a password input field to minimize reallocations. Change-Id: I3e695db93e34c93335c3bf9dbcbac832fc18b62d Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * | | configure: query pkg-config for deps of static libsOswald Buddenhagen2018-12-071-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | note that pkg-config is a tad stupid: it won't tell us if the package is built statically, but one needs to explicitly ask it to output transitive deps for static packages. we can do that, as we resolve the pkg-config output to actual libraries, so we know if they are static. always asking it would print the transitive deps also if we found a dynamically linked library, which would inappropriately extend the link interface. the latter actually happens on windows (because we can't easily tell apart real static libs from import libs), but that doesn't matter, as under windows, the linker transitively resolves dlls anyway. Change-Id: If1be3b3df476374d5c8e62f4b185477c988223b3 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * | | ANGLE: Set ANGLE_COMMIT_HASH and ANGLE_COMMIT_DATEOliver Wolff2018-12-071-2/+2
| |/ / | | | | | | | | | | | | | | | Fixes: QTBUG-72371 Change-Id: Ia03447b77d4f88eefc760e9bee14dbf3dd79d5a5 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | | Add support for linking against static builds in CMakeKyle Edwards2018-12-071-2/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change reinstates functionality that was removed in commit 102e1822ffcdc9954d3c698f863734a8083e349c. However, it differs from the original implementation in several ways: * It uses the QMAKE_PRL_LIBS variable, replacing whitespace with semicolons, rather than using a dedicated QMAKE_PRL_LIBS_FOR_CMAKE variable. * More importantly, it parses the -L and -l flags and uses CMake's find_library() command to look for the libraries in the specified search paths, and then converts them to absolute paths. This is the same approach that CMake's own FindPkgConfig module uses to find libraries specified in this form. Any other flags not of the form -L or -l (for instance, -s flags passed to Emscripten) are added to the new INTERFACE_LINK_OPTIONS target property if the CMake version is 3.13 or newer. The original implementation of this functionality was removed because of the lack of absolute library paths. At the time, it was believed that qmake would have to be modified to do its own equivalent of find_library() to get the absolute paths to the libraries. However, the approach taken by FindPkgConfig has proven robust enough to be used here, allowing CMake to find the absolute paths to the libraries without having to modify qmake. [ChangeLog][CMake] Added support for automatic linking of transitive dependencies in static builds Fixes: QTBUG-38913 Change-Id: I7d9cdb0d339c6ef697b04099d129481c770fc0fc Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Use a QMultiMap for the fontengine cacheLars Knoll2018-12-072-3/+3
| | | | | | | | | | | | | | | | | | | | | Cosmetic, so we can avoid using QMap::insertMulti(). Change-Id: If7c971e127af0537dd28bd25f7803804e7e01170 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>