summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Port qopengl and qopenglconfig testsLeander Beernaert2019-10-283-2/+44
| | | | | | Change-Id: Ic3b61fb7f23cb884552126038d0bdf289d0cbc6a Reviewed-by: Qt CMake Build Bot Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Port rhi testsLeander Beernaert2019-10-284-1/+59
| | | | | | Change-Id: I3bf5731696a0647bf0e62758eb3d1742ba097041 Reviewed-by: Qt CMake Build Bot Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add replacement for '*g++*' to pro2cmake.pyLeander Beernaert2019-10-281-0/+1
| | | | | Change-Id: I3dc04a6169a98b7ff22392b979e743c41d6e0475 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Distinguish between qt_plugin and regular pluginsLeander Beernaert2019-10-2819-39/+312
| | | | | | | | | If we do not encounter the load(qt_plugin) statement in the .pro file but we do see the entry CONFIG+=plugin, treat the target as a regular CMake library instead of treating it as a qt_plugin by default. Change-Id: I67ad5c865a1a5ab691a6b0d86c2db4b686aa04dd Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Enable running test on AndroidLeander Beernaert2019-10-282-9/+55
| | | | | | | | | This patch converts all add_executable calls when building for Android to a module library and replaces the call to add_test() to use the android testrunner binary. Change-Id: I10ba5919217cdc93cc2cbbb7d13ad9d10fc5ac1a Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix declarative testsAlexandru Croitor2019-10-252-4/+0
| | | | | | | | | | | | | | | | | | | e1fd6074935cd0be0df14d89eb0244fcbd1677cf in qtbase removed the qml1 imports enum from qlibraryinfo.cpp, qconfig.cpp, etc. With the recent merge from dev, this was not adjusted in qt_generate_qconfig_cpp, and thus we generated one too many strings in qconfig.cpp, which resulted in QLibraryInfo::location(QLibraryInfo::Qml2ImportsPath) returning "imports" instead of "qml" subfolder, thus causing all qml modules not being found. Fix this by removing the extra qconfig.cpp entry, and all other references to the location. Change-Id: I128f667281138e2e0ef0fe1ced4af0405c532fef Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Fix invalid condition for test executionToni Saario2019-10-251-1/+1
| | | | | | | | | | Equals_value check that if the property is same as given value. Equals_property compares properties in this case the OS of target and host. Change-Id: Ica42f0f99562911a97d2f6bd02bd8a6420c980ac Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add --skip-install-root option to androidtestrunnerLeander Beernaert2019-10-241-4/+15
| | | | | | | | | Add the above option to android test runner since its not required when building with Cmake. Change-Id: Ie5c9b0af29cfa76802723960071b3bd2a37a56a5 Reviewed-by: Qt CMake Build Bot Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* Add Android test runner toolLeander Beernaert2019-10-232-0/+29
| | | | | Change-Id: I235bc07be0e0f7a3b0ce6297c187950a57fb31ed Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add custom targets to generate Android APKLeander Beernaert2019-10-234-4/+35
| | | | | | | | | | This patch adds two custom targets to generate android apks. The targets are named ${TARGET}_prepare_apk_dir and ${TARGET}_make_apk. The first one insures the binary is copied to the right location and the latter invokes androiddeployqt on the apk directory. Change-Id: I8152cef387b50ec03ee2bfd92b56910a6f22754c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Convert ANDROID_PACKAGE_SOURCE_DIR for android (pro2cmake)Leander Beernaert2019-10-231-1/+2
| | | | | | Change-Id: I76730852e4433d095bc42ff617254a77f2d1bf51 Reviewed-by: Qt CMake Build Bot Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* cmake scripts: do not override local target through includesFrederik Gladhorn2019-10-231-3/+3
| | | | | | | | | | This is needed for tests/auto/gui/kernel/qguiapplication which includes the qcoreapplication test. Without this change, the target name is taken from the included .pro file, instead of from the current file. Change-Id: I2d8a207fd70a49ad956fb9a83a59811d89682082 Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* cmake scripts: do not add spaces in empty linesFrederik Gladhorn2019-10-231-1/+5
| | | | | | | | | | When adding resources inside a condition, we'd end up with lines containing just spaces. Change-Id: I623203d042e2492bdd72f97d8b9d90517040b0df Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* cmake scripts: handle aix-g++Frederik Gladhorn2019-10-231-0/+1
| | | | | | Change-Id: I62b9e9fa9aae3350dc8c668a98453c2373c1a709 Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* cmake: add gui/image testsFrederik Gladhorn2019-10-2313-17/+564
| | | | | | | | Fixes: QTBUG-78223 Change-Id: I9a5c90bb664e3baa4481e6bdaa9a4990e3f68317 Reviewed-by: Qt CMake Build Bot Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Mimic qmake by building our own xinputLeander Beernaert2019-10-211-1/+16
| | | | | | | | When we don't find the xinput library on the system, build it ourselves. Change-Id: I399e847513cdd1c2dcdc1d862265284002f8808a Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Regenerate all configure.json filesLeander Beernaert2019-10-214-37/+127
| | | | | Change-Id: Iabd2430adc4877859dc73f4092927a69decf0311 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Handle Library dependencies in compile testsLeander Beernaert2019-10-211-10/+21
| | | | | | | | Update configurejson2cmake.py to also write out the libraries compile tests depend on. Change-Id: I22dbc227a33b9b5d39a2198c6ee6062e7e1bf3de Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* QtBuild: Use STRING type for install locationsTobias Hunger2019-10-211-15/+16
| | | | | | | | | | | | | Use STRING type for install locations as we use them relative to the CMAKE_INSTALL_PREFIX. PATH type will get expanded to absolute paths by newer CMake versions, so that breaks our logic. Change-Id: I36be1f0378c4fb07ad8db0051d540f9d243000be Reviewed-by: Tobias Hunger <tobias.hunger@qt.io> Reviewed-by: Qt CMake Build Bot Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Write out a module description fileTobias Hunger2019-10-213-0/+32
| | | | | | | | | Write out a file with some JSON data to describe a module. This file contains information on how that module has been built. Change-Id: I8a604692663cbb7b76b96b97124130e30b822e4b Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Convert corelib plugin testsLeander Beernaert2019-10-2127-2/+697
| | | | | Change-Id: Ia98f7945a2c5b09a9b4d59e430cf05a7fecb7d55 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Add ALLOW_UNDEFINED_SYMBOLS to add_qt_pluginLeander Beernaert2019-10-211-4/+6
| | | | | | | | Allow plugins to be built with undefined symbols when ALLOW_UNDEFINED_SYMBOLS is specified. Change-Id: I6bc809e3e5257302157bf8484f850d8319674a4a Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Temporarily disable automatic static linking of bearer pluginsAlexandru Croitor2019-10-182-0/+2
| | | | | | | | | | | The bearer plugins cause duplicate symbol errors when linking executables in a static build. Re-apply commit b2662b05dd078c46b82f5f041f51b0b83554113d Task-number: QTBUG-79211 Change-Id: Ie4c1359f1f4d649a22570a31634c94fd22102730 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Fix OpenSSL include path for QtNetwork private testsLeander Beernaert2019-10-181-0/+14
| | | | | | | | | On platforms which use OpenSSL that is not installed in a standard directory, e.g: android + vcpkg, private tests would fail to resolve the include for OpenSSL. Change-Id: I57ce6a83e3bc9a232d4285530f8619ffbfdf2f77 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Prospective fix for Boot2Qt build in the CISimon Hausmann2019-10-181-3/+3
| | | | | | | | | | | | | | | One of the parameters that Coin passes to configure is this: -device-option DISTRO_OPTS="hard-float boot2qt" The configure script would "swallow" the quotes and end up calling qmake with -device-option DISTRO_OPTS=hard-float boot2qt, causing qmake to complain that the standalone "boot2qt" option is unknown. Fix this by preserving the quotes in the forwarding helper functions. Change-Id: I16098bd35acb579ebf183b0f7746af8758269e7c Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
* Rename builtin test data resource nameLeander Beernaert2019-10-181-1/+1
| | | | | | | | | | Rename the builtin test data resource name to something more unique as there are name clashes when building tests which also add a resource named 'testdata'. Change-Id: Icc1bbff3134e1dbc6ea4f6a87a1715b936c723cc Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Add conversion code for Java codeLeander Beernaert2019-10-186-44/+126
| | | | | | | | | | Add support to pro2cmake to convert java code for android. Add support to override API_LEVEL for the Android sdk jar file. If the sdk is not found, we'll default to the one located by QT_ANDROID_JAR. Change-Id: If0b746dc7f9148ac43e6592a4a4dd23d46bbd4cd Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Pick the latest available C/C++ standard when compiling QtSimon Hausmann2019-10-173-5/+23
| | | | | | | | | | This maps the behavior of mkspecs/features/qt_common.prf and enables the use of C++17 for example in Android, where the toolchain supports it anyway. Change-Id: I41f4bdb160a3929e2fb78f36efb1ad5f2ad391a5 Reviewed-by: Qt CMake Build Bot Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Fix C++ standard detectionSimon Hausmann2019-10-173-17/+78
| | | | | | | | | | | We cannot use a generator expression in an if statement, it does not work. Instead, we could inspect the CMAKE_C/CXX_COMPILE_FEATURES list, but unfortunately that's not reliable. For example it detects that ICPC supports C++17 when in fact that depends on the installed libstdc++. Therefore this patch revives our own configure tests. Change-Id: Ic3bc5762fbe81837722523e3881ac16e84628519 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Re-generate affected cmake files and configure.json after the mergeSimon Hausmann2019-10-1719-119/+182
| | | | | | | | | This also removes the workarounds of commit b2662b05dd078c46b82f5f041f51b0b83554113d now that it's fixed "upstream" in the .pro files. Change-Id: Idd5e6273873a700fcda5a6cad2039c4e88b61f6f Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Merge remote-tracking branch 'origin/dev' into wip/cmakeSimon Hausmann2019-10-17135-633/+1093
|\ | | | | | | Change-Id: Ia1da879a7bd8f71a649661a1844144dd67d60b3a
| * Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-10-1799-518/+852
| |\ | | | | | | | | | Change-Id: Ica69de99be9c8af4d28a52e4b69e6af748ed983c
| | * QAbstractItemModel: implement QRegularExpression support for matchSamuel Gaist2019-10-164-17/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is part of the migration of qtbase from QRexExp to QRegularExpression. [ChangeLog][QtCore][QAbstractItemModel] The match() method now supports the new Qt::RegularExpression match flag value. This will allow users to use either a string or a fully configured QRegularExpression when doing searches. In the second case, the case sensitivity flag will be ignored if passed. Task-number: QTBUG-72587 Change-Id: I07c8d72a661c48b7f4fcf13ef8e95980bcdcb998 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
| | * Provide a feature for CBOR stream I/OUlf Hermann2019-10-166-2/+32
| | | | | | | | | | | | | | | | | | | | | We need to turn it off in bootstrap code. Change-Id: I826e49fbc5f6128e56f84b58d29358dd7b0b9dc5 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| | * tst_qfiledialog2: Don't assume window activation is availableJohan Klokkhammer Helsing2019-10-161-15/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prefer qWaitForWindowExposed over qWaitForWindowActive whenever possible, skip in the other cases. Makes the test pass on Wayland. Task-number: QTBUG-62188 Change-Id: I60b4000c72c3727a2f33b79a5038469055b0fef2 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | * tst_QAbstractScrollArea: Use qWaitForWindowExposed instead of activeJohan Klokkhammer Helsing2019-10-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Makes the test pass on Wayland. Task-number: QTBUG-62188 Change-Id: I53011ad623e4bdb557d79c136f06ce7ac00a08ee Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | * Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2019-10-1687-483/+709
| | |\ | | | | | | | | | | | | Change-Id: Ifd83db69416230175ddc3161f640b612755018fc
| | | * Prepare for deprecating the QDesktopWidgetSona Kurazyan2019-10-1529-65/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QDesktopWidget is marked as obsolete in docs, but it is not yet completely deprecated, some of its methods are still in use. Replace uses of the following methods marked as obsolete: - QDesktopWidget::screenNumber(QWidget*) -> QWidget::screen() - QDesktopWidget::screenGeometry(QWidget*) -> QWidget::screen()->geometry() - QDesktopWidget::availableGeometry(QWidget*) -> QWidget::screen()->availableGeometry() Task-number: QTBUG-76491 Change-Id: I2cca30f2b4caa6e6848e8190e09f959d2c272f33 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
| | | * rhi: gl: Do not let external rendering trash our vaoLaszlo Agocs2019-10-152-7/+22
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-79221 Change-Id: Ie8e6376f79c816071c12962dc054838aeaabcaa5 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
| | | * macOS: Simplify Objective-C namespacingTor Arne Vestbø2019-10-1528-117/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We only need to use the QT_MANGLE_NAMESPACE macro when declaring the interface of the class. As long as we couple that with an alias declaration using QT_NAMESPACE_ALIAS_OBJC_CLASS, any further uses of the class name can be un-namespaced, including declaring categories on the class. The only snag with QT_NAMESPACE_ALIAS_OBJC_CLASS is that it can only be used once per class and translation unit, so forward declarations get hairy, but we can avoid that by just including the headers instead. Change-Id: I333bcd18fe1e18d81fbd560b0941c98b1c32460e Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
| | | * Win32: Consolidate registry codeFriedemann Kleint2019-10-1417-207/+375
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a RAII class for registry keys and use it throughout the code base. Change-Id: I666b2fbb790f83436443101d6bc1e3c0525e78df Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
| | | * QtWidgets: Suppress QEvent::WindowActivate when minimizedFriedemann Kleint2019-10-141-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prevent call to activateWindow() for minimized windows in QWidget::setWindowState() by clearing the flag. Fixes: QTBUG-46763 Change-Id: I40389d0906438ffe251fc79f18a523ecb53edb1b Reviewed-by: Andy Shaw <andy.shaw@qt.io> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| | | * Fix the size calculation of QHeaderView when stylesheet is usedSona Kurazyan2019-10-142-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When calculating the header section size based on its contents when a stylesheet is used, the size hints from the stylesheet are used. In case if the stylesheet specifies only one of the sizes, the other is set to -1. Because of this the actual content size is ignored. The solution is to calculate the size based on the application style, in case if it's not specified in the stylesheet. Fixes: QTBUG-75615 Change-Id: I3453fa623d75b6b32832edf753de6e3e4e7f5a22 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
| | | * wasm: fix arch detect on windows with WASM_OBJECT_FILESLorn Potter2019-10-141-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: QTBUG-79146 Change-Id: I00188013b98687f34582aeb7b29b6d7439334536 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
| | | * CoreText: Preserve font descriptors when resolving fallback familiesTor Arne Vestbø2019-10-142-75/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From macOS 10.15 and iOS 13 forward it's not possible to create font descriptors for system fonts such as .AppleSystemUIFont based on the family name. This means we have to preserve the font descriptors we get from CoreText for fallback fonts, so that we can populate them along with the family name. Task-number: QTBUG-78821 Task-number: QTBUG-77467 Change-Id: Ifce01da65f90afb7dc2bc3005c3c5870b9c116de Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| | | * CoreText: Use StyleHint as fallback when family is not foundTor Arne Vestbø2019-10-141-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I11fb6cafe9d41c38eac6ca0695c89f30f998f257 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
| | | * Remove usages of deprecated APIs of QDesktopWidgetSona Kurazyan2019-10-136-13/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Replaced the usages of the following deprecated APIs: * QDesktopWidget::screenCount() -> QGuiApplication::screens().size() * QDesktopWidget::screenGeometry(int) -> QGuiApplication::screens().at() * QDesktopWidget::screenNumber(QPoint) -> QGuiApplication::screenAt(QPoint) - Added notes for the QWidget *QDesktopWidget::screen(int), which currently has no replacement. - Fixed the tests to build conditionally, only when these APIs are enabled. Task-number: QTBUG-76491 Change-Id: I2fdec96d0a6a4fc782c53549b05a5556412b8305 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
| * | | Fix duplicate platform plugin definitionsSimon Hausmann2019-10-163-65/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | androidplatformplugin.cpp and main.cpp both tried to define the platform plugin entry point. That happens to work with the android toolchain by chance, but it's certainly not intentional. Change-Id: Ie92281abfb2335aa3ee83bc0ba660700d3485b2d Reviewed-by: BogDan Vatra <bogdan@kdab.com>
| * | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-10-167-32/+228
| |\| | | | | | | | | | | | | | Change-Id: I8348c823117dd3d594d365fc3583f7e44d44a81c
| | * | Cbor: Avoid QUrl in bootstrap codeUlf Hermann2019-10-152-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QUrl is not available when building qmake. Hopefully we can get rid of this mess in Qt 6. Change-Id: Ia234996dd4f27d7f843db227e4cf2db869c92dc1 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>