| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
Change-Id: Ia8eb378f322c0127729b2531fb3406134623b324
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
The androiddeployqt tool now requires an entry for the C++ standard
library in the JSON file, even though that is not needed in auxiliary
mode.
Fixes: QBS-1429
Change-Id: I50e3963d8eda6a67387f79d63df1db6e08955ced
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
| |
Change-Id: I906810c52ebb02dfce2022feaf76b23fa050f8b4
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
In some Linux distributions, qmake is a soft link to qtchooser, which
only behaves like qmake if invoked via that name.
Change-Id: I6705a81f6a4dfdda5fd3f1e16a63318a4b772084
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
| |
Another JavaScript typo.
Change-Id: I805136417134d03ec25c32cd75a749df32279e71
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
| |
We relied on an exception getting thrown for failed process, but a non-
zero exit code is not technically an error, so we have to check for it
explicitly.
Change-Id: Ibf13ee3022f7ca3753d63be8251c047077dbe240
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
| |
... to be more consistent with other probes.
Change-Id: I99f8b6d27a0e38f5b473da94a2c3e63a76e491d5
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a basic support of the KEIL toolchain for the
ARM processors family.
The KEIL toolchain support only the Windows environment:
* http://www.keil.com/support/docs/1456.htm
To use it with Qt Creator, it is enough to add there a desired Kit
with a custom KEIL C/C++ compiler, and then set the following in the
Kit's Qbs profile settings:
* Key: qbs.toolchainType
* Value: keil
Tested with the KEIL uVision v5.23 on Windows using the
STM32 NUCLEO-F767ZI development board.
Change-Id: I93a30f38f9b0e31bf4d1e379a3bdc785e8474ecb
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
This is relevant now that Qt puts full paths into prl files, rather than
just file names.
Change-Id: I3535653eb8e20493a48d78fb2ac0619a96ed64c6
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
| |
Amends c4e60ed828.
Change-Id: Ied6753def5d5576b35709f6775e2b4148a005b93
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
| |
Task-number: QBS-1187
Change-Id: Iad5eafd5bc08c907b1a1dd83c78d745ad856d17a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
Change-Id: Ifb4cc67d1e461953aa3440fc1d59a4d00fb6c8ac
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
|
|
|
|
|
|
| |
Task-number: QBS-1187
Change-Id: Ic504a8391c0e238e5fe946cb70041e3463a0f4db
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
|
|
|
|
|
|
|
|
| |
- Fix include path for NDK >= r13.
- Link against libc++abi.a when using the "c++_shared" STL variant.
Fixes: QBS-1423
Change-Id: I70a9fcf54c7042ba4639276139254df8eefa662b
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a basic support of the KEIL toolchain for the
8051 processors family.
The KEIL toolchain support only the Windows environment:
* http://www.keil.com/support/docs/1456.htm
To use it with Qt Creator, it is enough to add there a desired Kit
with a custom KEIL C/C++ compiler, and then set the following in the
Kit's Qbs profile settings:
* Key: qbs.toolchainType
* Value: keil
Tested with the KEIL uVision v5.23 on Windows using the Cypress FX2
development kit examples.
Change-Id: I2cf59b307762ab95c69bc22eb8989af9b68cd555
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I98570fb463bf856a6b6ab2b39fa2bca27b8c0500
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
It's redundant (we also specify this when linking), and it can cause
warnings with clang.
Fixes: QBS-1424
Change-Id: I71a9331ac0385c53266ef702d192b4a95d1055ba
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
| |
Change-Id: Ia09223e5b3f07b9ef69ff0e9d462d5ddf5aa3b7d
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
| |
The installer directory names do not contain the architecture in that
case.
Change-Id: I072df4260eefff7dd15d90770c73e1187e7f72cc
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
| |
Change-Id: I1fb773d9aaa527f4bead263626c604a47d9f4568
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I025c9f7bc082b6566b7e4fe658d22a6024549e76
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Creation of qbs modules for Qt is now done on demand during project
resolving. The qmake executable(s) are looked up via PATH or taken from
the Qt.qmakeFilePaths provider property. As a result, Qt projects can
now be built without a profile.
The qtprofilesetup library is gone; its code is now in the module
provider. I kept the C++ -> JavaScript conversion as straightforward as
possible and mostly resisted the temptation to "optimize".
The setup-qt tool still exists and mainly sets Qt.qmakeFilePaths.
[ChangeLog] It is no longer required to call setup-qt before building Qt
projects.
Change-Id: I5b7e4711ec47b996911c499f29d8129d90e4731e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
| |
Task-number: QBS-1187
Change-Id: Id53b6dbd33a4999d409c713035acb460831eff65
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
Task-number: QBS-1187
Change-Id: I6a97d9f7f70462996a352f7acef8e69f690a37bf
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
... even if it did not succeed. Otherwise, other products will try
again, even though we know it won't succeed.
Change-Id: I6c4f14df33ecbc9b38ec8cae7e1c2d6bfc99816a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
- We must not remember our temporary files.
- We need to use a different reference time stamp for the created
modules.
- Collecting the results of File.exists() & friends can lead to false
positives, so we disable it for now.
Change-Id: Id64685b510606f1991e83eb825c36a1b3ec4a4e1
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The documentation for the build configuration parameter was a bit confusing. It
was also not explained that parameter assignments before the first occurrence of
config are global. This patch explains config in more detail and relates it to
qbs.configurationName and qbs.buildVariant.
Task-number: QBS-1425
Change-Id: I478f7228aaa0696149f937599b89f785a65c6717
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
When implementing a module, it is good to know what possibilities exist to access properties.
The documentation was a bit vague here. This commit lists all of them and gives some examples.
Task-number: QBS-1420
Change-Id: Ia791371204f67ff946e9c73a170760027129e41d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The documentation was missing essential inforation about the concept of profiles.
This is especially important for beginners. Although profiles would deserve a
page of its own, I decided to extend the configuring page because a lot of
useful information was already there.
Task-number: QBS-1386
Change-Id: Ia9c33eb3babcfe902b55583b15db9c4a9ecf87a4
Reviewed-by: Richard Weickelt <richard@weickelt.de>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Change-Id: I441acf3b494756b0c123383a68f50bed37c6e6cb
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
This is helpful for declaring a QObject-derived class via a macro, in
which case the moc scanner will not help.
Fixes: QBS-1410
Change-Id: I19ee30eac670228686b5528888159220cf39abd3
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
| |
The user manual defines a strict navigation flow. The "Target Platforms"
document was added only recently, but it wasn't properly integrated.
Change-Id: I69edb60fddba0f012d25dce5a91ed746d54abe87
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
The check for the "not-present" condition was not thorough enough: If a
module was successfully loaded, but its validate script failed, then
we'd still check property assignments if they happened from within a
higher-level module instance.
Change-Id: I9d7281eb5603deaa04db008ab9fc340847d83151
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a basic support of the IAR Embedded Workbench
toolchain for the AVR processors family.
To use it with Qt Creator, it is enough to add there a desired Kit
with a custom IAR C/C++ compiler, and then set the following in the
Kit's Qbs profile settings:
* Key: qbs.toolchainType
* Value: iar
Tested with EW for AVR v7.20.1 on Windows using the simple
projects samples which are comes with the default IAR installer.
Change-Id: I4ba65e0a753f8703764551c62d630849ff86d91f
Reviewed-by: Richard Weickelt <richard@weickelt.de>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a basic support of the IAR Embedded Workbench
toolchain for the 8051 processors family.
To use it with Qt Creator, it is enough to add there a desired Kit
with a custom IAR C/C++ compiler, and then set the following in the
Kit's Qbs profile settings:
* Key: qbs.toolchainType
* Value: iar
Tested with EW for 8051 v10.10.1 on Windows using the simple
projects samples which are comes with the default IAR installer.
Change-Id: I5ef1cc047c27a7fce4a6841331a67e8dd0f0453e
Reviewed-by: Richard Weickelt <richard@weickelt.de>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a dependency is not found, we now search for a matching module
provider that can generate one for us.
We also provide a generic fall-back provider which uses pkg-config to
locate the dependency (but could be extended to incorporate other
methods in the future). This is the most important part of this change
for practical purposes, as it makes hundreds of popular libraries
available for use in qbs projects without users having to write any
boilerplate code.
In a future patch, a module provider could also be used to implement the
functionality of the qtprofilesetup library, relieving users of the need
to create a profile for building Qt applications.
[ChangeLog] The Depends item now falls back to pkg-config to locate
dependencies whose names do not correspond to a qbs module.
Fixes: QBS-1107
Change-Id: Ifd4f05c237cf58cd9fe707c3da648d3dbb33e82b
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This option says to the compiler to ends with the exit code '1'
instead of '0', when the compilation warnings are detected.
In this case e.g. the QtC interpret the warnings as the errors,
that is wrong. So, we need to remove this compiler option at all.
Change-Id: I8b25ae37220527afe3408cbe0743a897364cbf40
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Richard Weickelt <richard@weickelt.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds the possibility to link the application with
an external or dependent libraries. IAR supports linking
only with the static libraries for the bare-metal devices.
Now it is possible to use the cpp.staticLibraries and
cpp.libraryPaths properties, also to use the product's
library dependencies via Depends { name: "mylib" }.
Change-Id: I5129473dc0353970d060a8c714b2f4b51d1ab4cc
Reviewed-by: Richard Weickelt <richard@weickelt.de>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a basic support of the IAR Embedded Workbench
toolchain for the ARM processors on Windows host.
To use it with Qt Creator, it is enough to add there a desired Kit
with a custom IAR C/C++ compiler, and then set the following in the
Kit's Qbs profile settings:
* Key: qbs.toolchainType
* Value: iar
To specify the target CPU/FPU you need to set the cpp.driverFlags
property, like this:
cpp.driverFlags: [
"--cpu", "Cortex-M4",
"--fpu", "VFPv4_sp"
]
Then these flags will be automatically passed to both compiler
and assembler.
To specify the linker flags you need to set the cpp.driverLinkerFlags
property instead of cpp.linkerFlags property, like this:
cpp.driverLinkerFlags: ["--vfe"]
To add the linker script files you need to set the 'linkerscript'
tag, e.g. in the following way:
Group {
name: "Linker scripts"
fileTags: ["linkerscript"]
files: ["stm32f407xx_flash.icf"]
}
Other properties can be used as usual, according to the EWARM
compiler documentation.
Tested with EWARM v8.20.2, v6.50.3 on Windows using:
* STM NUCLEO-F767ZI
* STM 32F4DISCOVERY
target boards.
Change-Id: I3c42eb94051352cb3b7eb5b0768a1dc8bdacabce
Reviewed-by: Richard Weickelt <richard@weickelt.de>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
Configuration names must be prefixed with "config:" these days.
Change-Id: I6e858caacc3e2ddad20fd5ba980848fafeb01928
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Linkerscripts may contain INCLUDE and SEARCH_DIR commands that allows
it to include other linkerscripts in a similary way as headers are
included in C++. This commit adds a scanner that adds these additional
dependencies.
[ChangeLog] Added recursive dependency scanning of GNU ld
linkerscripts that contain INCLUDE and SEARCH_DIR commands.
Change-Id: I7549e27aad4fe7ade2a6a26eba14f66880261077
Reviewed-by: Ola Røer Thorsen <ola@silentwings.no>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
We used to look only at artifacts when scanning recursively.
Change-Id: I39f968c05dd3e6af362bf3bb98380814b01de172
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
| |
Windows resource files can have #include statements. This was either
overlooked from the beginning or we broke it at some point.
Change-Id: I3483e8caf352f557768429cf3c4f9b3293fec38d
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
For the C++ scanner, the search paths depend on module properties, not
on the actual input file. This assumption does not generally hold for
Scanner items, which was not taken into account when this feature was
originally introduced. As a result, the first input to get scanned by a
Scanner item erroneously provided the search paths for all others.
Change-Id: I0159d826dac1f5605494d54cfe96fe468044ca34
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
| |
Amends 893b4dc56c.
Change-Id: If4e5216bf24c97773c3c58983e3d4caccaac70ff
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
|
|
|
|
|
|
|
| |
Fixes: QBS-1421
Change-Id: I1f6d749eba38c9a4caa60341f19ee5e89e89d28a
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
When built with Qt >= 5.12, we pass a canonical output directory to
macOS' actool, but amazingly, it somehow manages to list the file paths
it created there in the non-canonical version. So we need to re-
canonicalize these paths.
Fixes: QBS-1417
Change-Id: I2cfcf7cdef0a16a1e69e0320651eabf4f3355307
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|\
| |
| |
| | |
Change-Id: Id535625f198f10a920f32e198d39b38d46b35668
|
| |
| |
| |
| |
| |
| |
| |
| | |
The assumption in the code that a value is always a JSSourceValue is not
(anymore?) true.
Change-Id: Ie1056913d4817776f5ce483f4fb0f60144cda9c6
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
... with regards to handling dots in the profile name.
We don't allow dots to appear in profile names. setup-qt auto-replaces
them with hyphens, while setup-toolchains and setup-android did not. Now
they all do.
Fixes: QBS-1413
Change-Id: I567e07e64a5e18fe50ead700d3584d60da276dae
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|