aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
| * 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>
* | Rename IMsBuildProperty to MSBuildPropertyBaseIvan Komissarov2020-07-298-29/+29
| | | | | | | | | | | | | | | | This is not an interface and not even an abstract class, the 'I' prefix is misleading Change-Id: Iac15d67e0e43ddff76d37b132ad420a03c87f25f Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge branch 1.17 into masterRichard Weickelt2020-07-244-3/+17
|\| | | | | | | Change-Id: Ice408bd77aa9f6481960c4fdf7f345a1a39b9f80
| * Fix setting isBundle:false on macOS in config-ui.qbsIvan Komissarov2020-07-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Despite the fact that the second Properties item is not evaluated on macOS, this "works" because isBundle is set to undefined (which is false) due to a bug with Properties. Set isBundle:false explicitly for macOS as well. This amends 1eff548646 Change-Id: Ifd5bc3b656a0eff02914e4fe43945b0e8b0f04fe Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * Fix mingw linker issueOliver Wolff2020-07-161-0/+2
| | | | | | | | | | | | Change-Id: I4890eb09182446eb4df0e0c1ab8a6ab0cda1e6cd Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * Fix loading optional transitive dependenciesIvan Komissarov2020-07-162-3/+14
| | | | | | | | | | | | | | | | | | | | If optional module B depends on an invalid module A (i.e. whos validate script throws an exception), module B should be not present as well. Fix that by remembering the initial value of the "required" property in the Depends item. Change-Id: Ia21587b3f5a8bd49c12b9f31b65e009fb2eeafb9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Replace QRegExp by QRegularExpressionChristian Stenger2020-07-2315-70/+69
|/ | | | | Change-Id: I6c86565b8464efd0b7aec61c12879d3b95a5871c Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Initialize Depends item in aggregator Product properlyRichard Weickelt2020-07-071-0/+2
| | | | | | | Default properties were not initialized, but we do it everywhere else. Change-Id: I43226b7e683efe9295f1d587e374ef786d602ddb Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Avoid unwanted defines when building bundled QtScriptChristian Stenger2020-07-071-0/+6
| | | | | | | | | When building Qbs there might be project defines present that make the compile fail. Drop these defines if present. Change-Id: I24532efca94560a21690f3016282a8f9420abe54 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* visualstudiogenerator: fix generating projects for the new VSIvan Komissarov2020-07-061-1/+1
| | | | | | Fixes: QBS-1569 Change-Id: I190b4c0cc6f83078f7e16ed3263510e0bc208f4b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Android: Add support to generation of aab packageRaphaƫl Cotty2020-06-253-5/+10
| | | | | | | | | This patch adds the Android.sdk packageType property which sets the target application. By default (previous behavior) qbs generates an apk package. When set to aab, qbs generates instead an aab package Change-Id: Ic09776d08e2a2ecd68fb4c08881201a7a0a25240 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix Qt 5.15 deprecation warningsChristian Kandeler2020-06-1614-15/+47
| | | | | Change-Id: I1d6968de823c43e42ca53eb68972ba5e69dc29ed Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>