From 3c4eccbdbaab777294ebde71166eabcb96d7ba39 Mon Sep 17 00:00:00 2001 From: Denis Shienkov Date: Fri, 14 Dec 2018 15:16:54 +0300 Subject: bare-metal: Add IAR EWARM toolchain support on Windows 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 Reviewed-by: Christian Kandeler --- doc/config/macros.qdocconf | 1 + doc/reference/modules/cpp-module.qdoc | 11 +++++++++++ 2 files changed, 12 insertions(+) (limited to 'doc') diff --git a/doc/config/macros.qdocconf b/doc/config/macros.qdocconf index ade8c3a88..a8abe25e5 100644 --- a/doc/config/macros.qdocconf +++ b/doc/config/macros.qdocconf @@ -6,6 +6,7 @@ macro.nodefaultvalue = "Default: Undefined" macro.appleproperty = "This property is specific to Apple platforms." macro.unixproperty = "This property is specific to Unix platforms." macro.windowsproperty = "This property is specific to Windows." +macro.baremetalproperty = "This property is specific to bare-metal platforms." macro.funsince.HTML = "

This function was introduced in version \1.

" macro.aacute.HTML = "á" diff --git a/doc/reference/modules/cpp-module.qdoc b/doc/reference/modules/cpp-module.qdoc index 940e837ae..f69f07239 100644 --- a/doc/reference/modules/cpp-module.qdoc +++ b/doc/reference/modules/cpp-module.qdoc @@ -1662,3 +1662,14 @@ \nodefaultvalue */ + +/*! + \qmlproperty bool cpp::generateMapFile + \since Qbs 1.13 + + \baremetalproperty + + Whether to auto-generate a linker map file. + + \defaultvalue \c{true} +*/ -- cgit v1.2.3