aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Do not try to generate FwdHeaders when not using bundled Qt.ScriptIvan Komissarov2021-04-121-0/+7
| | | | | | | | | Apparently, if the submodule is not present, the Rule is not invoked at all, but it fails on Windows when submodule is there but Perl is not found in PATH Change-Id: I3edb4d3679f4528f05996c630c55c052c8202369 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* qt6: do not use QHash in adjustDefiningItemsInGroupModuleInstancesIvan Komissarov2021-03-191-1/+1
| | | | | Change-Id: Ibee969b9811e964569aa437e15e7c239f41d5918 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* Remove QTextCursor API from ChangeSetIvan Komissarov2021-03-175-31/+3
| | | | | | | | | | | It appears that neither Qbs not QtCreator use that API. Also, remove QtGui dependency in corelib and enable project files updates by default. Change-Id: I2eb90d0a7bc74bca4f1007eb63164111f52adb1b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* qt6: Fix installing Qt on LinuxIvan Komissarov2021-03-171-2/+9
| | | | | Change-Id: Id9aa640f013271ff9f3a7f4e0cd70f974efcc116 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* Do not use QTextDocument for project file updatesIvan Komissarov2021-03-172-21/+8
| | | | | | | | This class is used simply to include an empty line before Group we are removing. Change-Id: Ie7a5224c1f29dd67615cea70667a6c91cc2fee82 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* qt6: do not use QString::fromUtf16(ushort*) overloadIvan Komissarov2021-03-031-2/+2
| | | | | | | This amends 05b74ff72. Change-Id: I18b8006d246355a49b669b097b1e14d776f0cbac Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* qt6: fix deprecation warning about QScopedPointer::takeIvan Komissarov2021-03-031-3/+2
| | | | | | | Use std::unique_ptr instead, and call release(). Change-Id: Ic3f224a5e29ba3b1d6e9a0490b29a801265dfafd Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* Merge branch '1.18' into masterIvan Komissarov2021-03-021-0/+1
|\ | | | | | | Change-Id: Ia45a5502f2d3c30807b5cab14666070973654b3a
| * cmake build: Fix project files updates in Qbs binaryIvan Komissarov2021-03-021-0/+1
| | | | | | | | | | | | | | | | | | | | Session class is located in the binary itself, not in the corelib, so we need to pass this macro there as well. Do that by making this macro "public" as Qbs build does. Task-number: QTCREATORBUG-25232 Change-Id: I50b2f8a533db82cf28fd5d29c17fcfdc410c5ab2 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* | baremetal: Fix detection of GCC ARM toolchain installers on WindowsDenis Shienkov2021-03-021-20/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... provided by ARM group. Previously, we detected the installed GCC toolchain through the `Uninstall` group in the Windows registry. Where we have enumerated all sub-groups in this group, and searched for a matching for to the `GNU Tools for ARM Embedded Processors` token. But the problem is that in newer versions of the installer, the name of this group has been changed. Moreover, that method is slow because it enumerates all the entries in the group, where these entries can be a lot. Alternatively, we can search for installed toolchains using the `HKLM/SOFTWARE/ARM` path that is constant, contain only the installed toolchains, and present on all versions of installers. Change-Id: If3dc280d03a9c6e25113263309822599f0010d9b Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | baremetal: Fix detection of IAR toolchains if version contains build numberDenis Shienkov2021-02-271-1/+1
| | | | | | | | | | | | | | | | | | | | We need to allow the build number in the Version::fromString(), otherwise it returns `unknown` version if a version ends with the build number (i.e. when the version string contains the four parts <major>.<minor>.<path>.<build>). Change-Id: Ic295d53d7a68a043ce1461cbe3c84c9502407dc2 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | qt6: fix deprecation warnings about QVariant::*convertIvan Komissarov2021-02-223-2/+22
| | | | | | | | | | Change-Id: I29f72da92a471de0da3b20a5e1a604e535a46dd3 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | qt6: do not use QString::fromUtf16(ushort*) overloadIvan Komissarov2021-02-161-1/+1
| | | | | | | | | | | | | | ... it was deprecated Change-Id: Ibfff7424383edada54407e795fdf0b1757839dcb Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | 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