aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Implement missing check for allowed values in PropertyOptionsIvan Komissarov2020-10-287-10/+79
| | | | | | | | | | | | | | ========== Performance data for Resolving ========== Old instruction count: 10195378481 New instruction count: 10238464294 Relative change: 0 % [ChangeLog] Qbs now checks string and stringList values according to the allowedValues property in PropertyOptions Change-Id: Ide88987c74b35f4172ffaf71aacd991536131ee5 Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Use make_shared to create ValuesIvan Komissarov2020-10-272-11/+12
| | | | | | | Should save some allocations. Requires making ctors public. Change-Id: I9d8a14a1c2edf374add0fdae914a028f9987d216 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Merge branch '1.17'Ivan Komissarov2020-10-261-2/+2
|\ | | | | | | Change-Id: Ifcd65b201f060506d53dcffc0031d186a6dc227e
| * Android: Update for Qt 5.15Raphaƫl Cotty2020-10-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Use java.additionalClassPaths property to allow compilation of binding classes because starting with Qt 5.15 they depend on QtAndroid.jar Update AndroidManifest.xml with uses-sdk node using new properties Android.sdk.minVersion and Android.sdk.targetVersion because Qt 5.15 uses androiddeployqt to set it. Fixes: QBS-1580 Change-Id: I2fa5e77bb183be1b55e9dd9756fb7b6eb1f3c9d4 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | clang-tidy: Apply modernize-use-nullptr fix-itIvan Komissarov2020-10-263-5/+5
| | | | | | | | | | Change-Id: I404ac10a14517763daf656dd38dd560534cbf1fa Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Get rid of goto in InputArtifactScanner::resolveScanResultDependenciesIvan Komissarov2020-10-261-10/+17
| | | | | | | | | | Change-Id: I9220b1e6344e90401abf4fb91115e77a3a6c996f Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Use make_shared in InputArtifactScanner::scannersForArtifactIvan Komissarov2020-10-261-4/+3
| | | | | | | | | | Change-Id: Ia38f08fb32b50761e7fb8642019aad39a25c1ef2 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Force C++14 to keep QtScript compilableChristian Stenger2020-10-132-1/+3
| | | | | | | | | | Change-Id: I239eb88f52eef6c6733f02a9d3b372999a9195de Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix typo in JSON API project build answerDenis Shienkov2020-10-111-1/+1
| | | | | | | | | | | | Change-Id: Ibe8ce04ce1d036f6b1bb167855d493e6fb3e52a4 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | cmake: Make build output & install locations configurableEike Ziller2020-10-081-1/+1
| | | | | | | | | | | | | | | | So we can configure the right paths for direct inclusion in the Qt Creator build. Change-Id: Ie83eb402f0d9ce5f1ef32737921dc2ec8b43a315 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Merge branch '1.17'Ivan Komissarov2020-10-052-1/+1
|\| | | | | | | Change-Id: Ia8ac795b55ba18fd6d855a1f880c5e3caa66b742
| * Add new icon to chocolatey packagev1.17.0Richard Weickelt2020-09-012-1/+1
| | | | | | | | | | | | | | Fixes also the broken link in the nuspec file. Change-Id: I0da24c19eb388a8377772fa3f1115a6afba31777 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Remove the isBaseModule argument from loadModuleFile()Ivan Komissarov2020-09-172-9/+10
| | | | | | | | | | | | | | | | Pass the fullName to the isBaseModule() function so the value can be calculated where it is needed. Change-Id: I4f4574818fd335d67d72bf307276bacf18cfd89b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Do not use return argument in loadModuleFile()Ivan Komissarov2020-09-162-20/+22
| | | | | | | | | | | | | | | | | | Generally, return arguments make code harder to understand as they intoroduce unneseccary compexity and addidional states. Use std::pair and structured bindings to return the value. Change-Id: I7c387a346958e1df1174027574fa5797ee221429 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Do not store fail-to-load items in the prototype cacheIvan Komissarov2020-09-151-1/+1
| | | | | | | | | | | | | | | | | | It doesn't seem right to store such items in the cache. We do not try to load them in the future anyway since the names of the invalid files are discarded on the higher level. Change-Id: I48c23878df664dd5b761ebe42a6730f81850a904 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Update dmgbuild to upstreamIvan Komissarov2020-09-145-35/+43
| | | | | | | | | | | | | | | | | | This includes python3 support and adds retries to hdutil detach. Use c88163e70e95985a744bd0d0dc0817cea582b694 as the base commit. Change-Id: I14458a9c12fb6446796685867ee4c0c07c462d80 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Use auto when iterating in getModulePrototype()Ivan Komissarov2020-09-071-9/+7
| | | | | | | | | | Change-Id: Idcbcfc937271105b06e1c6dae84243a4e165e41e Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Use stl algorithms for filtering in mergeExportItemsIvan Komissarov2020-09-072-9/+11
| | | | | | | | | | | | | | | | | | It makes the intention clearer than a loop that does 2 actions simultaneously and is also a bit faster since we do not shift the tail of the list after removing an item. Change-Id: Ia39e972a6a9f83d5c352b2021246c5839b676f7f Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Use qbs archive for packagingIvan Komissarov2020-09-032-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | This changes the way how the archives are created by the github actions. Previously, the archive was created as a separate aaction, now "qbs archive" product is used. Also, rename the "qbs archive" product to qbs_archive since it is hard to deal with spaces in bash commands. Change-Id: Ia9d0f7004b503b4ce86243cad93dec7c57a9a212 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Improve Xcode auto-detectionIvan Komissarov2020-08-311-3/+4
| | | | | | | | | | | | | | | | This allows to set meaningful names for Xcodes with '.' in it's name, e.g. for Xcode-1.2.3.app Qbs will create xcode-1_2_3 profile. Change-Id: I9ca30eefd28454c4f8e4629c297618e0d550225e Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix cross-compilation linux->MinGWOrgad Shaneh2020-08-281-1/+1
| | | | | | | | | | | | | | | | | | Headers are lowercase. Amends commit a2d0b35c7c8bb7f36d2de43ff2e31485a4a46e69. Change-Id: I1d307a53aa39fa26f8ac7416cae3a29e7920bb45 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Use std::unique_ptr to store ItemReader in ModuleLoaderIvan Komissarov2020-08-272-9/+6
| | | | | | | | | | Change-Id: Ib75718bc71f0039a50dd019ab2b9f66ec4b3bdef Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Use std::unique_ptr in ItemReaderVisitorStateIvan Komissarov2020-08-272-6/+5
| | | | | | | | | | Change-Id: Ifc4caefb275f9a009ff15fcf6179365edcd639e0 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Use std::unique_ptr in ItemReaderIvan Komissarov2020-08-272-6/+6
| | | | | | | | | | Change-Id: I7b20cc1b991120ec3d86219c91397558458d5bd9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Use std::string_view in FileSaverIvan Komissarov2020-08-273-10/+4
| | | | | | | | | | | | | | | | This allows to avoid memory allocation when converting from QByteArray to std::string/std::vector<char> Change-Id: Id46791c02e2302cc9b0b3e6c01442393c0e73fa9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | c++17: do not use deprecated APIIvan Komissarov2020-08-271-3/+5
| | | | | | | | | | | | | | This produces warning which is treated as error in clang-cl build Change-Id: If8360a8c18ce5fea6f9767e1feb729ffbc9f6e68 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | qbsbuild: use QbsStaticLibrary in json.qbsIvan Komissarov2020-08-271-8/+1
| | | | | | | | | | | | | | ...to remove some copy&paste Change-Id: Ibfda3dbf7955ba3cc0c70cd754ef4012a099e739 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | cmake: suppress warning in json.cppIvan Komissarov2020-08-271-0/+4
| | | | | | | | | | | | | | | | Qbs compiles with the default warning level while CMake compiles with / W3 which leads to extra warnings. Suppress such warning in json.cpp. Change-Id: I2d7ee329f9ec532d36b1de79c013116c0d72c8ce Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Use std::optional in the m_existingModulePathCache functionIvan Komissarov2020-08-242-7/+6
| | | | | | | | | | | | | | ... instead of the bool/QString pair Change-Id: Ied2911e438ffbfb6e5544b8cb99d8ee4077641aa Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Introduce an "exportingProduct" variableChristian Kandeler2020-08-241-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... for use in Export items. It's not obvious that "product" refers to the exporting product, and in fact setting it up this way pollutes the scope for modules loaded via Export items. Therefore, we introduce exportingProduct for symmetry with importingProduct. [ChangeLog] Deprecate the product variable inside Export items in favor of the new exportingProduct variable. Task-number: QBS-1576 Change-Id: Ie91752d1ae2160cb7701ae0167bccde0cd5c0e5d Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | C++17: Simplify some templatesChristian Kandeler2020-08-213-12/+12
| | | | | | | | | | Change-Id: I6e0eaf625a1d90b4be97e4a6c352b4541f174413 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | cmake: do not set exported include paths for the qbsconsoleloggerIvan Komissarov2020-08-211-1/+0
| | | | | | | | | | | | | | | | We do export the "." folder in the add_qbs_library function, no need to export that again. Change-Id: Ic851eafc67b3296d57702a70af111392519a097f Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Bump c++ version to the 17th standardIvan Komissarov2020-08-214-4/+4
| | | | | | | | | | | | | | We can do that now as QtC moved to c++17 in master Change-Id: I91d7fc425f1b288f341ee3025fec61a53e98c8d9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | c++17: use auto to deduce return value of the template functionIvan Komissarov2020-08-212-2/+2
| | | | | | | | | | | | | | ...to make clang-tidy happy Change-Id: Ic647f15377e0d09c0136db8c8fbd21cc4d133b91 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | c++17: fix TypeFilter::const_iteratorIvan Komissarov2020-08-211-1/+7
| | | | | | | | | | | | | | | | MSVC complains about inheriting from std::iterator and suggests declaring typedefs manually Change-Id: I19cf1d9efd86fccb53827235d3659ef571d4f8b5 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | cmake: rename qbslogging -> qbsconsoleloggerIvan Komissarov2020-08-208-9/+9
| | | | | | | | | | | | | | ...to match the Qbs build Change-Id: Ib17d9625bf06d2eed69f51cc0e6e6cbe7ba99085 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | qbsbuild: move logging to the static libraryIvan Komissarov2020-08-203-0/+20
| | | | | | | | | | Change-Id: I94bd7288a9ef3b7a785a76386ff7d395cdd01f81 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | cmake: Fix export macros in add_qbs_libraryIvan Komissarov2020-08-203-3/+1
| | | | | | | | | | | | | | | | | | | | | | We should not set those macros in the function, but we should set them independently for each target, otherwise the import/export macros for qbscore will be messed up. This amends b67b08f1c2c. Change-Id: Iff61ce050cd6c4c4e71d3e3e6a97cc3525459a39 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | cmake: Fix target namesIvan Komissarov2020-08-2017-18/+18
| | | | | | | | | | | | | | | | | | | | It should be 'qbscore', not 'corelib'. Same for the static logging library. This amends b67b08f1c2c. Change-Id: I3b79ce75168360f8708b143471f0b4c223b2f5fd Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Initial CMake portIvan Komissarov2020-08-1734-60/+1019
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change allows to build Qbs using CMake build tool Tested platforms - Linux (gcc) - macOS (clang) - Windows (msvc2017) Missing features (compared to Qbs build) - Documentation build - Bundled QtScript support - Static build - .pc file for qbscore - qbs module for qbscore Change-Id: I09b5dadd6723d5a47e5ef2a9a38d3300488718f2 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge branch 1.17 into masterRichard Weickelt2020-08-144-4/+19
|\| | | | | | | Change-Id: Ibdf2afb9f05682e0624540af22330abc8580bafb
| * Fix MinGW buildChristian Stenger2020-08-063-3/+18
| | | | | | | | | | Change-Id: I9894098b05004bb99273e091e3d1821f88d7c4af Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * ModuleLoader: Fix scope for RHS of module provider property bindingsChristian Kandeler2020-08-041-1/+1
| | | | | | | | | | | | | | | | The scope should be the product item itself. Fixes: QBS-1587 Change-Id: Iccdc89e3b57d6ee1f11205961cf6244ea560f425 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Adapt qmljslexer to Qt base change caa40f57d4dhjk2020-08-101-9/+9
| | | | | | | | | | | | | | | | qstrtod is no longer exported. Change-Id: I2b0563680af9f07db382f9b040d4b7528c496f1c Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* | qt6: use auto & in the lambda in the jsonhelper.hIvan Komissarov2020-08-031-1/+1
| | | | | | | | | | | | | | | | | | In qt6, QJsonArrayRef cannot be implicitly converted to QVariant, but we don't need that, we can simply call .toString() on the QJsonArrayRef object. Change-Id: I8cf394133f12946b195211df217e9d42c8d14fa5 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | qt6: Check the qt version while including QActionIvan Komissarov2020-08-031-0/+5
| | | | | | | | | | | | | | It was moved to QtGui Change-Id: I34933a15494e62d2b85fb2f1ff57bf514341d9b1 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge branch '1.17' into masterRichard Weickelt2020-08-034-18/+22
|\| | | | | | | Change-Id: I20a6b02ee34719636f9996e02cff9e29cf160dd7
| * xcode: add 'macosx-arm64' profile to the list of auto-created profilesIvan Komissarov2020-08-031-0/+2
| | | | | | | | | | | | | | | | There is no easy way to get xcode version from the c++ code, so add arm64 macos for all xcodes Change-Id: I4a8f6bff8ef5e067689d03a85917cdf0cb601ffe Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * Fix data race when calling LauncherSocket::isReadyIvan Komissarov2020-07-303-18/+20
| | | | | | | | | | | | | | | | According to C++ standard, it is not allowed to read/write non-atomic variable from different threads. Change-Id: Ia48a997b1f417ed68234afdcaad6d70c92d26064 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | qt6: explicitly specify template paramer for std::minIvan Komissarov2020-08-032-3/+3
| | | | | | | | | | | | | | | | It qt6, containers use qsizetype for the size instead of int, so compiler cannot deduce the correct type. Change-Id: Ifcade8926679389389f52610aed0d4561aa1287b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>