| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
* Move an architecture-specific code to a functions in the iar.js file.
* Remove the redundant copy-paste code.
* Align order for assembler, compiler, linker and archiver flags to
the unified form, like:
<inputs> <outputs> <defines> <includes> <flags>
Change-Id: Ibfdc536f78d1145f6e1190da33f67b0fb7063f05
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Richard Weickelt <richard@weickelt.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a basic support of the IAR Embedded Workbench
toolchain for the MSP430 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 MSP430 v7.12.4 on Windows using the simple
projects samples which come with the default IAR installer.
Change-Id: I6a31da1823fd08ba7bf41a315ac20e98f5ba77f6
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a basic support of the IAR Embedded Workbench
toolchain for the STM8 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 STM8 v3.11.1 on Windows using the simple
projects samples which come with the default IAR installer.
Change-Id: Ibc116ceb33b7df49c3241d26fa97136255ba06dd
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This property can be used to check if candidate conforms with some
conditions. For example, an architecture of a shared
library candidate should match the current qbs.architecture.
Also, this will allow to implement support for the "text based stub
libraries" (yaml files that point to a real library in a system) on
macOS - instead of checking real file architecture, it should be read
from .tbd file
Change-Id: Ie84a3e70d883dec949440358e2f08213a8501982
Reviewed-by: Qbs CI Bot <travis-bot@weickelt.de>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
|
|
|
|
|
| |
Change-Id: I6ae2dd130cbafb03e51bc6e8e8a3e262d6d45fc6
Reviewed-by: Qbs CI Bot <travis-bot@weickelt.de>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This is wrong - on Windows, INCLUDE variable already contains /include
suffix.
This also makes IncludeProbe consistent with LibraryProbe.
Change-Id: I166de8d4274842743886b0e234fff48688fd4c44
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I3a70a4a1045444bf053ebf5ac7f32dbe72c827a5
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: Id689c4e0290ba83e8755b6787601338a01af07c9
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I934a7bf3679dfda15ef245a9d14e834dc5136861
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: If9143a5af10c842bbb2b6dd08d201f8d9963012f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
.. for SDCC toolchain.
The SDCC compiler binary support multiple architectures (aka
8051, z80, and others). So, it is necessary to set a target
architecture option before getting the macros. We will take a
preferred target architecture from the qbs.architecture property.
If this property initially is undefined, then will be returned
macros for default compiler architecture (usually it is mcs51).
Change-Id: I379ffe90895b62e2786c3ffba2da47b1864da75d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I3b8a3607e1e5c252731dea783acd9c1a0867a127
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Change-Id: Id18528b1f6f6a98bec3f877e70c660180078a66c
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
- android-16 will be used for 32 bit arm ABIs
- android-21 will be used for all 64 bit ABIs and x86. x86 has broken
wstring support in android-16 to android-19.
Change-Id: I38f6e6ec3f16c172cb0b061cfc4cc9efdb8f1700
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a basic support for the SDCC compiler:
* http://sdcc.sourceforge.net/
As this compiler support multiple architectures, then it is impossible
to uniquely identify the current architecture by dumping of the
pre-defined macros (because its content depends on a target flag). In
this case the cpp.architecture will contains a default architecture
(which is dumped with an omitted target flag).
To use it with Qt Creator, it is enough to add there a desired Kit
with a custom SDCC C/C++ compiler, and then set the following in the
Kit's Qbs profile settings:
* Key: qbs.toolchainType
* Value: sdcc
To create the SDCC profile it is enougth to use the following
command:
qbs setup-toolchains --type sdcc <path/to/sdcc/compiler/binary> <profile
name>
A toolchain type can be omitted; in this case the QBS will
tries to detect the toolchain type from the specified compiler
name.
Also it is possible to auto-detect the SDCC toolchain from the
PATH environment using the following command:
qbs setup-toolchain --detect
At current time are supported only the 8051 (aka MCS51) architecture;
other architectures can be added later.
Change-Id: I8cc239d62e35472ab667e054a64a1e59c2d548bd
Reviewed-by: Richard Weickelt <richard@weickelt.de>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Task-number: QBS-1316
Change-Id: Ibf9da364610c260ead088a8990a70c7739d53c39
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
... the same way as Android.sdk.platform.
Change-Id: I974fdfd9f56f312cbd39ea155d87694622a9c0b8
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
| |
The --*-version arguments cannot be mixed with --cflags and --libs.
Change-Id: I6326fd34f4698cb91cdaa592d7843bd2fdeaa7cf
Fixes: QBS-1430
Reviewed-by: Kai Dohmen <psykai1993@googlemail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@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 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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
The naming was misleading - prefixes had the same logical meaning as
platformPaths, despite the fact completely different
PathProbe.pathSuffixes property exists.
Change-Id: Ie593b5e03d27de4f8aafed821a3b37cc1b3b0b9e
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
These are the names of env variables containing paths, not paths itself
Change-Id: I9054f4ffa3b3b005ee8ef56f6c43ac53ba4f53ac
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
These modules implement google protobuf support for QBS for c++ and
objective-c languages
[ChangeLog] Added protobuf support for C++ and Objective-C.
Fixes: QBS-563
Change-Id: I4bb7e0bdfc1e09ea26c0cd3d3739a741ff834e5d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\
| |
| |
| | |
Change-Id: I96c735aeda89e02f1fa9107ecfc10ebf4b554dbc
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This entails:
- Auto-detection: The Build Tools no longer have an entry in the
registry; use the vswhere tool instead.
- Unset the VSINSTALLDIR environment variable before calling the
vcvarsall.bat script, as this variable can confuse the msbuild.bat sub-
script if it is set.
- Look for the base include directory two levels above the directory
under which cl.exe is located.
Change-Id: Id8f7976e5f41015e59850d3ed68fa81b6ce701a2
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|/
|
|
|
| |
Change-Id: I5270e033dc41b5bd76a417099514c69cc073008b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\
| |
| |
| | |
Change-Id: Ib49f863008a9c4a3b8956686de019e2f133c244f
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QBS-1282
Change-Id: If15e1ad616c6ffcdc03f62d872c512fd52c844d3
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Users now get more friendly error messages when the SDK and/or NDK are
not installed.
Change-Id: Icfc438ed16b88aea190bf766ddc58b26b0512121
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I1af7bfa2583417245235363ccc7a7a5fe5f25304
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QBS-1247
Change-Id: I604ba374378197a6a76cc0367f2511422c345791
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This allows the toolchain prefix to be extracted from the probe itself,
which is preparation for refactoring which determines the prefix
automatically if it is left unspecified.
Right now it's obviously always going to be empty string,
or equal to _toolchainPrefix. A subsequent commit will make use of it.
Change-Id: I0f44c4a9d401e75ba48f3e499a23940954a8b619
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
This helps to block inappropriate host compilers when cross compiling.
Change-Id: Ied22fce094fdb726babea4e94a7ef1d78afc9a98
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I4a447d3c18e79523441d3f7103827db55b46a851
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
ImageMagick has support for these formats but is not suitable because it
does not have the ability to set cursor hotspots.
This patch is preparation towards QBS-73.
[ChangeLog] Introduced the ico module for creating .ico and .cur files
Change-Id: I9a917b3ee5983bc59fba1a5740540299d8d9708f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|/
|
|
|
| |
Change-Id: I344e76e405690eb27fdecc719f111d5bed8a44aa
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: Ia9ce8fbe4120d4dac562083b7181dce98128db48
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
...because detecting the JDK's location and version in one probe makes
it impossible to set java.jdkPath in a profile.
Change-Id: Ifc2c87f05021551ef4eb3b3d42785f116cd3c551
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
|
|
|
|
|
|
| |
The imports are in the .js file these days.
Change-Id: I58a1f3eb96217179e47236e57270e2a09b0cc9ac
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
|
|
|
|
|
|
|
|
| |
Make sure we continue after the r11 check fails.
Fix the file extension of RELEASE.TXT.
Fix the regular expression that failed for "r10e-rc4 (64-bit)".
Change-Id: I77806350b6951ca49dfb84b5cb4369e788eeaae9
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
Return the right environment from the MsvcProbe.
This amends commit d0404591.
Change-Id: Iaedb862a07cd9f0c2966ed21714ee7df30927d17
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
This provides users with access to the full list of macros defined by
the MSVC, GCC, Clang, or MinGW compiler in use.
Change-Id: I6e7f6841bbc18aed13958724b268283d97b17320
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now it can actually be useful, in order to select a specific endianness
when building for architectures that are bi-endian. For example, MIPS
and PowerPC.
This patch makes it possible to build for ppc64le, which is the only
variant of the PowerPC architecture that seems to be relevant today.
ppc32 and all big-endian variants seem to have fallen out of use.
Change-Id: Id1b9f9b397990136ab9aa899829345d426465824
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The compiler version is needed in the GccProbe itself (to determine
which compiler flags are available to use) so it cannot be done in a
single probe. This change will be taken advantage of in a subsequent
patch.
This patch also fixes a silent failure that caused the wrong compiler
flags to be used in the GccProbe due to the compiler version being
undefined at the point where feature checks based on the compiler
version were being made... specifically, that the -target flag was
assumed to be unavailable due to the missing compiler version.
Change-Id: I13626c37f3fd21b5b8b6632714ba9dd9373b7838
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I9302a631450a43c25b5cf9bac6b5299f2b728683
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\
| |
| |
| | |
Change-Id: I2fcb2113a24c8807467aa03aa3e7590d53761706
|