aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* baremetal: Improve 'linker-map' testDenis Shienkov2021-04-015-26/+11
| | | | | | | | We don't need in multiple test data instances (*.qbs) for each property, because we can pass the required properties from the C++ code directly. Change-Id: I3bc05db5f6c0d2533f9799cbadb830c0c687e1e5 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Android: Add support for ndk 22.1.7171670Raphael Cotty2021-03-312-41/+35
| | | | | | | | | | | | Android ndk 19 introduced a new layout for the platforms and sysroot directory. They are merged into the toolchain directory. Android ndk 22 removed the deprecated platforms and sysroot. Since the minimum required version of Android.ndk is 19 this patch switches Qbs to the new layout. Fixes: QBS-1637 Change-Id: Ie69d305ba77ac1689205e2fb2fd3414a3bada2bd Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Fix installing artifacts when multiplexingIvan Komissarov2021-03-313-5/+10
| | | | | Change-Id: Ice07b4b6cc918bd27e13b66c3c892a9be482a482 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* baremetal: Don't use Windows separators for KEIL toolchainsDenis Shienkov2021-03-311-32/+16
| | | | | | | | | We don't need to use the Windows path separators for the C51, C251 and C166 toolchains. These delimiters only complicate the code maintenance. Change-Id: Id87fd11259a1a1456a28e755eefa7e014b7f34d6 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* Fix accessing binaries from libexecIvan Komissarov2021-03-306-7/+33
| | | | | | | | | Starting from Qt 6.1, some binaries were moved to libexec/ directory from bin/ (e.g. moc, rcc, uic). Fixes: QBS-1636 Change-Id: Iaa329773a3ffcea5f09c0663dd4159d839980525 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* codesign: do not sign intermediate products when multiplexingIvan Komissarov2021-03-307-10/+46
| | | | | | | We should only sign the resulting binary during the lipo step. Change-Id: If4d508bcdf347bf2fc68d345ed8d5913a7457f8d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Merge "Merge branch '1.18' into master"The Qt Project2021-03-302-26/+40
|\
| * Merge branch '1.18' into masterIvan Komissarov2021-03-182-26/+40
| |\ | | | | | | | | | Change-Id: If4dfeed28c475b8d0db13b5a39a0d6752b2a5052
| | * protobuf: fix setting includePath in nanopb.qbsIvan Komissarov2021-03-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | This amends 0d42ca4d0f8b0866b51ac9587f68a6550ca6d3fe. Change-Id: I3650056431c51ae8d67575e217bfaebcf49b4f08 Reviewed-by: Kai Dohmen <psykai1993@googlemail.com> Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
| | * protobuf: fix accessing undefined objectIvan Komissarov2021-03-152-26/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Always execute Probes to find files protobuf libs and headers even when the user passes path to those manually. This is required for the correct search of different library variants. This amends 87fdf5002. Change-Id: Ic7b9368b2b17925da33fd16299e31fd016043466 Reviewed-by: Kai Dohmen <psykai1993@googlemail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| | * Bump version to 1.18.2Ivan Komissarov2021-03-091-1/+1
| | | | | | | | | | | | | | | Change-Id: I45dd78f2579555959742693d021613735d58c764 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | | doc: Add how-to about signing for Apple platformsIvan Komissarov2021-03-301-0/+43
| | | | | | | | | | | | | | | | | | Change-Id: Ic2f84fbe24a6980f6ac78201ca418aef83490fa2 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | | Share cpp::objectSuffix propertyDenis Shienkov2021-03-309-13/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It makes sense to add the cpp.objectSuffix property to the base CppModule due the following reasons: 1. It is possible that the user wants to change the extension for the generated object files, which makes working with Qbs more flexible. 2. It will be easier to write an autotests that check the generation of the object files for a bare metal platforms, where object files can have various extensions such as ".rel", ".r90", ".r43", and so forth. Change-Id: Ib73836d5e614a6924d312d061f02437c3b318785 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | | Do not run joblimits in parallel with other testsIvan Komissarov2021-03-251-1/+5
| | | | | | | | | | | | | | | | | | | | | To avoid concurrent access to QSettings Change-Id: I99e43d0b7cb19352fad4b16abb80fc88b0a11fd0 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | | Add missing artifact tags for loadable modules when multiplexingIvan Komissarov2021-03-211-1/+2
| | | | | | | | | | | | | | | Change-Id: I910e56161c815822f87f9754ad8ce5aceed2bd3a Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | | Run appleMultiConfig test with arm64 on newer XcodeIvan Komissarov2021-03-211-7/+14
| | | | | | | | | | | | | | | Change-Id: If8d579b612d8c44f697495d2ca985f7c34310682 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | | CI: Add new job to run bare-metal tests on self-hosted Windows PCDenis Shienkov2021-03-211-1/+134
| | | | | | | | | | | | | | | Change-Id: I5ce176a143c4df3b6dca97a79da0c2e5983dd478 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | | GitHub actions: Run tests with Qt6Ivan Komissarov2021-03-193-3/+96
| | | | | | | | | | | | | | | | | | | | | On MacOS, Linux and Windows with Qt 6.0.2. Change-Id: I12255d8ba5bb5277378d52a1cc5caca84f0dc98b Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | | Add Qt6 docker image and update Qt5 imageIvan Komissarov2021-03-192-2/+14
| | | | | | | | | | | | | | | | | | | | | ...to add additional packages required for the Qt6 image Change-Id: I42791440eaa754a1ae4ea3c24f86dd0ccedc1ed6 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | | qt6: fix setting up Qt.uitools module on MacIvan Komissarov2021-03-191-1/+6
| | | | | | | | | | | | | | | | | | | | | Since Qt6 it is a framework, not a standalone library Change-Id: I1561cea04a0472704d21f4ebbb5d5bc07d9c758d Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | | qt6: do not use QHash in adjustDefiningItemsInGroupModuleInstancesIvan Komissarov2021-03-191-1/+1
|/ / | | | | | | | | Change-Id: Ibee969b9811e964569aa437e15e7c239f41d5918 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | Fix building unit tests with bundled Qt.scriptIvan Komissarov2021-03-174-8/+25
| | | | | | | | | | | | | | | | | | Some of those tests require Qt.script headers which are used in corelib's headers. Introduce a new QbsUnitTest item type that pulls in the dependency on Qt.script/scriptengine for those tests. Change-Id: I5b981b910191ba690eded14bdf64b540f334bd53 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | Remove QTextCursor API from ChangeSetIvan Komissarov2021-03-176-32/+4
| | | | | | | | | | | | | | | | | | | | | | 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>
* | Use TemporaryProfile in TestBlackbox::qtBug51237Ivan Komissarov2021-03-041-8/+6
| | | | | | | | | | | | | | | | Otherwise the profile is not removed from settings after the test is finished Change-Id: Ib82f35f7f468733ad4d2c28ce15da59af9024697 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-024-3/+7
|\| | | | | | | Change-Id: Ia45a5502f2d3c30807b5cab14666070973654b3a
| * cmake build: Fix project files updates in Qbs binaryIvan Komissarov2021-03-022-1/+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>
| * protobuf: fix _libraryName prop if protobuf is not foundIvan Komissarov2021-02-222-2/+6
| | | | | | | | | | | | Change-Id: Ia0cc1583ca95ce97b99c136433125cb90c59f3be Reviewed-by: Kai Dohmen <psykai1993@googlemail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | install-qt.sh: Skip modules that are not existent in requested versionIvan Komissarov2021-03-021-0/+16
| | | | | | | | | | Change-Id: I1d918c8c56891e980aa862c005eb0b0a6114626a Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | 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>
* | cmake: rename QbsAPI to QbsBuildConfigIvan Komissarov2021-03-022-1/+1
| | | | | | | | | | | | | | | | The API name is misleading and can make users think this is for building against Qbs. Change-Id: I8d6553cde873389d0674ee779292af59f7d04c32 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* | cmake: add QBS_ENABLE_RPATH optionIvan Komissarov2021-03-022-13/+15
| | | | | | | | | | | | | | | | | | | | ...required for Brew to switch to CMake - current QMake build explicitly disables RPATH. Also, move all build options to QbsApi.cmake to have them in one place. Change-Id: I97bbfa1de3e34e9dc7a7f8ac4271f47e14ef435e Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* | GitHub actions: Bump Xcode version to 12.4Ivan Komissarov2021-03-011-2/+2
| | | | | | | | | | Change-Id: Id3e5823d0b8f346d34ba96953961cf7fb74fab0a Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | GitHub actions: fix setting up Qt on macOSIvan Komissarov2021-03-011-1/+1
| | | | | | | | | | | | | | | | | | Previously, this step was meaningless since we use the "qt" profile, but the one created via --detect is named qt-5-15-2. This does not affect tests since qmake is in PATH and is found via auto-detection. Change-Id: Ice027588bd8eaabf4eb715b0bf9b7c8087cefe3b Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
* | baremetal: Patch *.rel files generated by SDCC compiler on windows hostDenis Shienkov2021-02-281-20/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... before linking. SDCC still has an bug on Windows where it generates the object files in the DOS format instead of Unix format, that leads to the linking errors: * https://sourceforge.net/p/sdcc/bugs/2970/ A workaround is to remove all CR characters from the object files, what was done in the previous fix in Qbs. But that solution does not work since the TextFile service forcibly adds the CP characters to the ends of lines on the Windows host. We need to use the BinaryFile service instead which operates with the RAW data. Change-Id: I09f44a707081de6af7300348e743b6076366dd2c Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | baremetal: Pass tests for IAR 78K toolchainDenis Shienkov2021-02-281-1/+1
| | | | | | | | | | | | | | | | We need to pass the C and C ++ compiler flags because the new `compilerDefinesByLanguage ()` test uses the `cpp` files. Change-Id: Ic813e74da3bccbed60a55052d546c1de69a408d8 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | baremetal: Report only existing compiler's include paths for IARDenis Shienkov2021-02-271-2/+3
| | | | | | | | | | | | | | ... to pass the tests. Change-Id: I536a12d4da1634c8f4f02587c41e29750b64f8fc 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>
* | baremetal: Fix typo in `--endian` option for IAR ARM or RX assemblerDenis Shienkov2021-02-271-1/+1
| | | | | | | | | | | | | | We need to use `--endian <option>` instead of `--endian=<option>` Change-Id: Ic9f3a7d06491a99ca330cf7f40bab3bbf0ceb486 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
* | doc: remove duplicate doc entry for cpp.toolchainInstallPathIvan Komissarov2021-02-261-8/+0
| | | | | | | | | | | | | | Amends 9e91c978f Change-Id: Ia703221a3a978a22b1adb20554e900575ae30c2b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | doc: add a note about timestamps in File.copyIvan Komissarov2021-02-261-0/+3
| | | | | | | | | | | | Task-number: QBS-1634 Change-Id: I8098253e3858e114028017e7543494f9ba519160 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | qt6: fix deprecation warnings about QVariant::*convertIvan Komissarov2021-02-223-2/+22
| | | | | | | | | | Change-Id: I29f72da92a471de0da3b20a5e1a604e535a46dd3 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | codesign: add _canSignArtifacts propertyIvan Komissarov2021-02-194-4/+13
| | | | | | | | | | | | | | | | Android cannot sign individual artifacts so simply checking if codesign.enableCodeSigning is true is not enough Change-Id: Ie27ec2b9b7b3b7d7356324590c78b4b967c1b54e Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge branch '1.18'Ivan Komissarov2021-02-1929-20/+504
|\| | | | | | | Change-Id: I4e437865514add88558f66420718bc02fb39e41d
| * GitHub actions: use empty qbs.installPrefix for release packagesv1.18.1Ivan Komissarov2021-02-171-1/+3
| | | | | | | | | | | | Change-Id: Ifddbebe4b3126d9f705df860622abd44bf5e5b7b Reviewed-by: Richard Weickelt <richard@weickelt.de> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * do not depend on QtGui in release buildsIvan Komissarov2021-02-151-1/+3
| | | | | | | | | | Change-Id: I3be7b45e105fe2f605b4ffaf7ed059c62d790edb Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
| * qt6: fix handling qtmain in setup-qt.jsIvan Komissarov2021-02-121-0/+2
| | | | | | | | | | Change-Id: I00fa1d5e3a2fdb24a84afe713c3ea2c4543f84bd Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>