aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* baremetal: Fix detection for Keil toolchainsDenis Shienkov2021-02-161-82/+28
| | | | | | | | | | | | | | | | | | | Previous implementation does not work if qbs is compiled with 64-bit compiler. The reason is the wrong path in the registry, because it differs for 32/64 bit applications. Besides, the search in the registry was difficult, it was done through the `Uninstall` section, with the parsing of the `tools.ini` file. But we can use an alternative search algorithm using the `HKLM/SOFTWARE` path instead, that simplifies the algorithm. This patch tested with the Qbs compiled with both 32/64 bit compilers. Change-Id: I87e9f62966482ba840b0aa92d4600be29b296384 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Allow to overwrite path to Perl in scriptengine.qbsIvan Komissarov2021-02-121-1/+7
| | | | | | | Can be useful if perl is not in PATH e.g. on Windows Change-Id: Id3d245588fea5dd3ca2579f418f2e6fe43151994 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* qt6: Do not use QVariant::Type as it was deprecatedIvan Komissarov2021-02-118-40/+40
| | | | | Change-Id: I0dad1ee403176a665e4e9dead2f94dd032e1d75b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* qt6: Do not use QVariant::type()Ivan Komissarov2021-02-1114-35/+35
| | | | | | | | | ...and use QVariant::userType() instead since type() method was deprecated (variant.metaType().id() or variant.typeId() or variant.userType() should be user instead). Change-Id: I00b93c5e010a0c7b733b3c6dfeae2d744be32ce1 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* buildgraph: fix storing container sizesIvan Komissarov2021-02-103-3/+3
| | | | | | | | The type should match the one used in load() since in qt6 the type is not int anymore Change-Id: I0e7e402dec6f059279de933d5afd0c450cde8ddd Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* qt6: explicitly register Transformer * and JavaScriptCommand * metatypesIvan Komissarov2021-02-101-0/+3
| | | | | | | Otherwise, Qt complains when emitting the signal Change-Id: I1840eff8c041ca21475658cb3113e81298b3a8a6 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* qt6: fix Qt library version in bundledqt.qbsIvan Komissarov2021-02-101-1/+3
| | | | | | | Qt6 uses "A" version instead of "6" Change-Id: I1e424f0f62659b481545511c9ba5eec3b2f92892 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Do not assign file tags to files in bundledqt.qbsIvan Komissarov2021-02-101-0/+2
| | | | | | | Otherwise, Qbs tries to moc Qt headers Change-Id: I6d2c340f7e419688f1aed69aaaa7da563cf98f75 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* qt6: also install core5compat when using bundled QtIvan Komissarov2021-02-101-0/+5
| | | | | Change-Id: I249daeb8d4f12bf2dfe49ad354c1bef7dfa0cb59 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* qt6: do not use QHash in ModuleLoaderResultIvan Komissarov2021-02-084-9/+19
| | | | | | | | Otherwise, Qbs crashes in TestApi::multiplexing when inserting into this hash Change-Id: Idcb136e6f9af1036c7b725e67508b0b677a9cb20 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* qt6: fix crash in ItemReaderVisitorState::readFileIvan Komissarov2021-02-081-1/+1
| | | | | | | | | In qt6, QHash::operator[] invalidates the reference stored in ProcessingFlagManager. However, std::unordered_map guarantees the stability of references, so use it instead of QHash Change-Id: I771ee0fe8b0581407376f60b03c1624ab9eaa7b9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* baremetal: Add support for HCS08 architectures to SDCC toolchainDenis Shienkov2021-02-021-14/+15
| | | | | | | | | | This patch adds the HCS08 architectures, provided by Freescale Semiconductor: * https://en.wikipedia.org/wiki/Motorola_S08 Change-Id: I0a08c6433041eb8a00cb3705c5e65857188f4830 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* baremetal: Add support for HCS08 architectures to IAR toolchainDenis Shienkov2021-01-261-2/+6
| | | | | | | | | | This patch adds the HCS08 architectures, provided by Freescale Semiconductor: * https://en.wikipedia.org/wiki/Motorola_S08 Change-Id: Idd668e30bfeb69e588b93b15131e741924b66f40 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* baremetal: Add support for HCS12 architectures to IAR toolchainDenis Shienkov2021-01-211-2/+7
| | | | | | | | | | This patch adds the HCS12 architectures, provided by Freescale Semiconductor: * https://en.wikipedia.org/wiki/Motorola_68HC12 Change-Id: I9083bac9997e0dec50e0392040ce63beaa8a8f05 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Merge branch '1.18'Ivan Komissarov2020-12-182-4/+4
|\ | | | | | | Change-Id: I37c359289dcd957fbc964a35fab381a047f7d04a
| * Reorder toolchain-check to enable creating of clang-cl profileKai Dohmen2020-12-171-3/+3
| | | | | | | | | | | | | | | | | | Since a clang-cl toolchain type will contain "msvc" and "clang-cl" the "clang-cl" branch would never be reached because the "msvc" branch will always be executed. Change-Id: I0a28d9044371b5242a1ad83c828b45915ed0626c Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
| * JSON API: use fullDisplayName in dependencies arrayRaphaël Cotty2020-12-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | Change the dependencies array to use the product full display name instead of just the name. That allows clients to search for the multiplexed products using the dependencies json array of the aggregate product. Clients are then able to properly update the search path of the dynamic libraries generated in the multiplexed products. Change-Id: I3dd8b66e2cb637e501cbfe29c670c57c2cea5f7b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix some Qt 6 build errorsChristian Kandeler2020-11-258-15/+30
| | | | | | | | | | Change-Id: I80dccfacb749ecfc8bfb8000bdc26c684f2afa52 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | qt6: do not use QTextStream::setCodec methodIvan Komissarov2020-11-099-46/+64
| | | | | | | | | | | | | | ...it is gone now Change-Id: Ie636dd6812fda4df0c149de240662d39ac63b86a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | qt6: Use QStringRef from core5compat module in qml parserIvan Komissarov2020-11-094-2/+17
| | | | | | | | | | | | | | | | | | ...it is not trivial to port to QStringView here as Ref and View has different semantics, e.g. ref is not invalidated when appending to a string Change-Id: I02d3506570264c9fb811fb28a3801c6833d23938 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | qt6: replace some QStringRefs with QStringViewsIvan Komissarov2020-11-0912-34/+29
| | | | | | | | | | | | | | | | | | QStringRef does not exist anymore. Qml parser is not ported yet. Change-Id: Ifb99a529b69c0085363031e852ffd7576f1d93be Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | qt6: depend on the "core5compat" moduleIvan Komissarov2020-11-091-0/+4
| | | | | | | | | | Change-Id: I312357b074630210c17c982396660d6fb3569e49 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | qt6: do not use QUuid(QString) ctorIvan Komissarov2020-11-092-2/+2
| | | | | | | | | | | | | | ...it is gone Change-Id: I945534457707f2ee9ed12c788eae1493e0ad966f Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | qt6: do not forward-declare QStringListIvan Komissarov2020-11-0412-34/+12
| | | | | | | | | | | | | | It is a typedef to QList<QString> now, not a separate class Change-Id: I2f84d11f09b8c0db64f25bd0682bdc684b64018e Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Re-create QML parser from grammar fileRichard Weickelt2020-11-014-1108/+1126
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This has not been done for years. In the meantime the generated code has been modified without backporting the changes to the grammar file. In preparation of potential future updates of the QML grammar, we need to make sure that we can reproduce the parser files and minimize manual post-processing. Small manual changes to qmljsgrammar_p/.cpp (license and namespace) are still necessary because unlike for qmljsparser_p.h, the template is hard-coded in qlalr. Change-Id: Ie920d4c0ca319a7d07bb83b0f3944531a4d7b7fa Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | Use std::optional to store theModuleProviderConfigIvan Komissarov2020-10-302-11/+10
|/ | | | | | | Using map+bool is a bit clumsy Change-Id: Ic2b8c354c583f19cde946ec24a69ed90e560cd11 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* 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>