summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Regenerate platforms plugins part 2Alexandru Croitor2019-10-089-51/+59
| | | | | | Change-Id: Iaaa7dde5f93f99ddec68138238bb05b0210bb2fb Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Regenerate platforms plugins part 1Alexandru Croitor2019-10-086-100/+168
| | | | | | Change-Id: I6093874220e7be6b92b0049d57e029e8dff62615 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Regenerate platforminputcontexts pluginsAlexandru Croitor2019-10-084-10/+31
| | | | | Change-Id: I4175a1249a477c96b7824cf1e82c0822bdf02eb3 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* pro2cmake: Handle QTRO_SOURCE_TREEJoerg Bornemann2019-10-081-0/+1
| | | | | | | | ...which is the source root of qtremoteobjects. Set to CMAKE_SOURCE_DIR for now. Change-Id: I6797e170749ed01bbc1bac4daa7709d3aae1f84b Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* pro2cmake: Handle REPC_{SOURCE|REPLICA|MERGED}Joerg Bornemann2019-10-081-0/+14
| | | | | Change-Id: I7c058bdc5a93038e7b67a727125c315062560d8f Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* pro2cmake: Handle QLALRSOURCESJoerg Bornemann2019-10-081-0/+13
| | | | | Change-Id: I8e6b2d542c96947d487b934c27544a8a4ae8745c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* pro2cmake: Use get_files for STATECHARTSJoerg Bornemann2019-10-081-1/+1
| | | | | | | ...to get proper variable replacements. Change-Id: I533a6abfbc7721313840fd75125eeaa7b26f2eba Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Update add_qml_module() to use INSTALL_QML_FILESLeander Beernaert2019-10-082-1/+1
| | | | | | | | | | | Update add_qml_module() to use the new INSTALL_QML_FILES argument from qt6_add_qml_module(). This patch also updates pro2cmake.py to remove the QT_QML_SOURCE_INSTALL property from qml files. Change-Id: I6623b2de76bb55bd6750e48f7d45c53ca536b391 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Update add_qml_module to use DO_NOT_INSTALL_METADATALeander Beernaert2019-10-081-1/+1
| | | | | | | Update to match latest changes to QtDeclarative. Change-Id: Ie455c0418e95c288149b4b1a29b065a8876e8b7e Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Regenerate sqldrivers pluginsAlexandru Croitor2019-10-0811-24/+196
| | | | | | Change-Id: I583b5936205495813cdb0f04fcdd2da3c7e2a3f4 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Annotate some projects that should not to be regeneratedAlexandru Croitor2019-10-087-0/+7
| | | | | | | Because they are completely custom written. Change-Id: I2f3d2e82ebf037a7bf42b3112fe4282589322b0e Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* pro2cmake: Allow skipping regeneration of a project via inline markerAlexandru Croitor2019-10-081-2/+30
| | | | | | | | | | | | | | If a CMakeLists.txt file has the special marker # special case skip regeneration then pro2cmake will skip the convertion of the .pro file that is present in the same folder as the CMakeLists.txt file. The --ignore-skip-marker can be used to force conversion of such a project file. Change-Id: I73aae742d1843148b5c22217cb3fc6b0f8e87b82 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Regenerate styles pluginsAlexandru Croitor2019-10-083-6/+17
| | | | | | Change-Id: I6b34fec0d6421e7523be0eb235495e6ab9b8df00 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Regenerate generic pluginsAlexandru Croitor2019-10-0810-17/+56
| | | | | | Change-Id: I8f009d629a977dcdf79535b3e0b1c4bdd0b89688 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Regenerate platformthemes pluginsAlexandru Croitor2019-10-084-15/+52
| | | | | | Change-Id: I1073bcc5467c345a4d6889a6bf5ba2ab484db050 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Regenerate printsupport pluginsAlexandru Croitor2019-10-084-12/+58
| | | | | | Change-Id: I3820d86bf4a36dd8ea53e5847c8d4de4b1ea9c61 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Regenerate plugins bearer and imageformats projectsAlexandru Croitor2019-10-0815-37/+120
| | | | | | Change-Id: I8858aaf6b96ea030a3af143099aee5dfd15655c8 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Regenerate platformsupport projectsAlexandru Croitor2019-10-0828-94/+26
| | | | | | Change-Id: I6f9d6b09a0b62171adedffa326b86f57e42ad449 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Regenerate tools projectsAlexandru Croitor2019-10-0814-24/+273
| | | | | | Change-Id: I69a56ca2bd1d5f983197c6cde400c191c5dc7bd9 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* run_pro2cmake: Fix the file preference sorterAlexandru Croitor2019-10-081-1/+3
| | | | | | | | | | | | When invoking the script with "." as the only argument, and there are multiple .pro files in the current directory, the script would not choose the correct preferred .pro file (the one that has the same name as the current directory). Fix the sorter to handle such a case. Change-Id: I6df70d7c577649f8854bca9b8879f13bdb1b4d26 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Clean up tinycbor handlingSimon Hausmann2019-10-087-15/+91
| | | | | | | | | | | | Now that pro2cmake handles the include path resolution more like qmake, the tinycbor wrapper target is not needed anymore. Re-generated some CMakeLists.txt to complete that step. Change-Id: I032b2e9bdf9e26f63f3c550d7bca5df93369a82a Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Qt CMake Build Bot
* pro2cmake: Don't add default Qt libraries to bootstrapped toolsAlexandru Croitor2019-10-071-1/+7
| | | | | | Change-Id: I3ccc20ed5fcd2eaceb5af09df4a8bf7ccb2d525f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Regenerate qmake and bootstrap projectsAlexandru Croitor2019-10-072-10/+11
| | | | | | Change-Id: I6649a58752309a346bc03271f17fe80d0b727be3 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Regenerate gui and network to handle source subtractions using scriptAlexandru Croitor2019-10-074-24/+27
| | | | | | Change-Id: Ifd7014b90e3eb054079de8904d9812cfd28b664d Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Regenerate corelibAlexandru Croitor2019-10-071-1/+1
| | | | | | Change-Id: I3bf8dfd152e7b8607a7bcbf4393839db443f007a Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* pro2cmake: Handle parentheses in if() scopes betterAlexandru Croitor2019-10-071-0/+13
| | | | | | | | | | | | | | The unwrap_if handler just removed the if keyword from a condition expression, and return the rest of the condition as-is. This proves not be enough, because map_condition splits on spaces and tries to map platform keywords, which would fail for values like "unix)". Change unwrap_if to add additional space between the values in the parentheses. Change-Id: I769ab430363d008a9fd91eaba014c88bd5ee43bd Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* pro2cmake: Fix QT_BUILD_TREE variable mappingAlexandru Croitor2019-10-071-1/+1
| | | | | | | | | | | | | CMake doesn't have a PROJECT_BUILD_DIR variable, but it does have a PROJECT_BINARY_DIR variable. Note that this might still be the wrong thing to do according to 35a30c7ebbd50e8b5b1fad7c00bd6c36b0dca8b9 , but it's still somwehat better. Change-Id: I493f82a791d933a16011d91774aaac4bcaffc5e5 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Restore top-level build with a separate functionVille Voutilainen2019-10-071-14/+19
| | | | | | | | | We have other helper functions like this, and the way they are made to work is to pass the script's arguments down to them. Change-Id: I3b80e82a2fb3d6e6a65b2deca3b60e4e0dd8de07 Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* pro2cmake: Allow disabling condition cacheAlexandru Croitor2019-10-072-2/+19
| | | | | | | | | New option --skip-condition-cache allows forcing recomputation of condition simplification. Useful when debugging certain condition mappings. Change-Id: I68a85c2e4085ad7a3043d7334db71a334a6469e9 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Fix pro2cmake.py path replacementFrederik Gladhorn2019-10-071-1/+1
| | | | | | | I forgot to add .items() in ed35e1ac845cfa1e4f3e46983f0d4c39d9ea0a4f. Change-Id: Ic46134daffa8f1a1b5b59040c8bcca76d32dbb35 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: clean up target.path and DESTDIR replacementsFrederik Gladhorn2019-10-071-7/+20
| | | | | Change-Id: I0891008cff939aa98b39a28a23710add0781901e Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* CMake: allow $$[QT_INSTALL_PREFIX]Frederik Gladhorn2019-10-071-0/+2
| | | | | | | This is used in QtPurchasing. Change-Id: I29c3a87d844eeaf3fd1b64057e33d64054f14a89 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* cmake: add tests in corelib/serializationFrederik Gladhorn2019-10-0716-9/+254
| | | | | | | | | | | | | The DEFINES -= QT_NO_LINKED_LIST is no longer needed, so just remove it from .pro and CMakeLists.txt. Handle $$[QT_INSTALL_TESTS] and $$TARGET in target.path. When we have DESTDIR set, do not use target.path for OUTPUT_DIRECTORY. Fixes: QTBUG-78219 Change-Id: I5161a955b25ff2f3b35428dc4b935a7c9d2d425b Reviewed-by: Qt CMake Build Bot Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Leander Beernaert <leander.beernaert@qt.io>
* Add expansion for QQC2_SOURCE_TREELeander Beernaert2019-10-071-0/+6
| | | | | | | | | | | Test in QtQuickControls2 rely on this variable, which basically points to the root of the project. We can't use PROJECT_SOURCE_DIR since it will vary depending on whether we build tests as stanadlone or part of the build. Change-Id: Ic59a79af2b4b62611d6c32391c936e98e469dea0 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Qt CMake Build Bot
* cmake: add examples/openglFrederik Gladhorn2019-10-0722-1/+810
| | | | | | | Fixes: QTBUG-78164 Change-Id: Iccc8bb1354d2362c950de17a6c00e00f95272967 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* cmake: add examples/vulkanFrederik Gladhorn2019-10-077-1/+253
| | | | | | | Fixes: QTBUG-78216 Change-Id: Id7d936ab0b3febc6b7ad3170ec2ea67836484217 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* cmake: Add find ICU to fix building testFrederik Gladhorn2019-10-041-0/+1
| | | | | | | | | | This fixes building of tests, which are currently all failing in auto/corelib/time/qtimezone. Change-Id: I6183217d51b5636651da9026f71353cdde1e2444 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Qt CMake Build Bot Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* cmake: add tests/auto/corelib/itemmodelsFrederik Gladhorn2019-10-0412-6/+172
| | | | | | | Fixes: QTBUG-78217 Change-Id: Ic2c343ab3cb1d86b9649e8ef242c7cd180f73c60 Reviewed-by: Qt CMake Build Bot Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* cmake: add tests in corelib/timeFrederik Gladhorn2019-10-045-4/+65
| | | | | | Change-Id: Idcd5d1be7503b50a43954c1b209e48a32cc8eaa9 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* cmake: add more tests in corelib/threadFrederik Gladhorn2019-10-0435-24/+451
| | | | | | | | | | | | This fixes the qatomicinteger magic by making $$basename work for one particular case. qthreadstorage still needs investigation. Task-number: QTBUG-78221 Change-Id: I7bb38f6ca24273bcf0443ab25685c8e815814c3c Reviewed-by: Qt CMake Build Bot Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* cmake: Add missing CLASS_NAMEAlbert Astals Cid2019-10-0314-0/+14
| | | | | | Change-Id: I5853578f427ae1d1b32ee5405694c216e2dd17cf Reviewed-by: Qt CMake Build Bot Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Make SDL2 library-mapping use a wrapperMårten Nordheim2019-10-031-1/+1
| | | | | | | | | | Since at least one system provides config files without an included target. Change-Id: If1f336aab4cec9704412349d7951849ee8c3dabb Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* pro2cmake: Handle SOURCES subtractionsAlexandru Croitor2019-10-011-0/+151
| | | | | | | | | | | | | | | SOURCES -= foo.cpp statements should now be handled correctly by the script. The script uses the same principle as for subdir handling: go through all scopes to collect source removals, and then generate new scopes with total conditions that take into account both additions and subtractions and their conditions. Should handle NO_PCH_SOURCES case as well. Tested on gui.pro, network.pro and qtconnectivity bluetooth.pro. Change-Id: I0cc913ef64cecf09e8ada4e6a3ce3ccb4365b44e Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* Implement persistent caching for simplify_conditionAlexandru Croitor2019-10-012-1/+115
| | | | | | | | | | | | | | | | | | | Store the results of simplify_condition in a json cache file, next to the pro2cmake.py script. Dramatically speeds up re-conversion of projects. The cache is cleared whenever the content of the condition_simplifier.py file changes, effectively presuming that the condition computing code has changed. Sample times. Initial corelib.pro conversion - 142.13 seconds. Next re-conversion with hot cache - 1.17 seconds. Change-Id: I8790b2736358236e4b23bcb5f10f45a36fdfa426 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* Move sympy condition simplification code into separate fileAlexandru Croitor2019-10-013-206/+239
| | | | | | Change-Id: I3f062bf939b452bb41b7a27508a83cbf93abff8c Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Qt CMake Build Bot
* CMake: Generate wayland protocol code for examples as wellJohan Klokkhammer Helsing2019-10-011-1/+6
| | | | | | Task-number: QTBUG-78177 Change-Id: Id1c49013244e5ba51b99c1538b314181efe786fb Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* cmake: Add IOBluetooth to list of apple system frameworksOliver Wolff2019-10-011-0/+1
| | | | | | | | The framework is needed for qtconnectivity. Change-Id: I6a502564fb5543ca94ba5ae458a544286e34564c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Qt CMake Build Bot
* Enchance qt_find_package with opt-in debug capabilityAlexandru Croitor2019-10-011-3/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes when writing a qt_find_package and configuring a project, you might get the following error from CMake: CMake Error at QtBuild.cmake (set_property) Attempt to promote imported target "WrapFreetype::WrapFreetype" to global scope (by setting IMPORTED_GLOBAL) which is not built in this directory. This means that another find_package call, found WrapFreetype in another directory scope other than the current one, and thus the found target cat not be made global. Sometimes that implies that the qt_find_package might not be needed if WrapFreeType will always be found via a transitive depdendency. By setting QT_DEBUG_QT_FIND_PACKAGE=1 on the command line, you can make qt_find_package skip all of its behavior if the package was already found and the provided targets were also found. Unfortunately this behavior can not be made the default, because there is no way to find out in what scope the package was found, and if it's legal to make the targets global. At least I haven't found a way to do that yet. Thus the opt-in QT_DEBUG_QT_FIND_PACKAGE is a means to help with debugging such cases. Change-Id: I04242ed0f2fd0a75bc199386d28a1a0bd92da41a Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Add a find_library entry for the GameController frameworkMårten Nordheim2019-10-011-0/+1
| | | | | | | | Needed for QtGamepad Change-Id: I50227949eb509c021ba8d9b4dbe2b36b6a6de87f Reviewed-by: Qt CMake Build Bot Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Always append extra cmake modules to CMAKE_MODULE_PATH in Qt6ConfigAlexandru Croitor2019-10-013-20/+6
| | | | | | | | | | | | | | | | | | | | | | During a static build we need to use the find modules in 3rdparty/extra-cmake-modules/find-modules when generating a ModuleDependencies file, so that the generated find_dependency() calls succeed. This means that the files have to be shipped with Qt6 package, making them pseudo public API. There is also a need to use these files when building QtWayland. Instead of setting / unsetting CMAKE_MODULE_PATH only in module and plugin Dependencies cmake files, just set them once when finding Qt6. This will allow QtWayland and QtX11Extras to easily find the required third party packages, without having to hardcode the paths in multiple repos. Change-Id: I750d0421a269e5632afa1bb62498c2501d73cdb1 Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>