aboutsummaryrefslogtreecommitdiffstats
path: root/share/qbs/modules/cpp/iar.qbs
diff options
context:
space:
mode:
authorDenis Shienkov <denis.shienkov@gmail.com>2019-01-23 12:14:44 +0300
committerDenis Shienkov <denis.shienkov@gmail.com>2019-01-23 16:52:14 +0000
commitc60b8ba4d4a61f5f2ca60b45e021bbdd43b73fce (patch)
tree0429bc884d82ac5b8cf98abefef56d8985b540fe /share/qbs/modules/cpp/iar.qbs
parent133901f4658caaa2bce042e33e38914682fa4043 (diff)
bare-metal: Add IAR AVR toolchain support
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>
Diffstat (limited to 'share/qbs/modules/cpp/iar.qbs')
-rw-r--r--share/qbs/modules/cpp/iar.qbs16
1 files changed, 16 insertions, 0 deletions
diff --git a/share/qbs/modules/cpp/iar.qbs b/share/qbs/modules/cpp/iar.qbs
index df5218838..f7536fd07 100644
--- a/share/qbs/modules/cpp/iar.qbs
+++ b/share/qbs/modules/cpp/iar.qbs
@@ -82,6 +82,8 @@ CppModule {
return "iccarm" + compilerExtension;
case "mcs51":
return "icc8051" + compilerExtension;
+ case "avr":
+ return "iccavr" + compilerExtension;
}
}
compilerPath: FileInfo.joinPaths(toolchainInstallPath, compilerName)
@@ -92,6 +94,8 @@ CppModule {
return "iasmarm" + compilerExtension;
case "mcs51":
return "a8051" + compilerExtension;
+ case "avr":
+ return "aavr" + compilerExtension;
}
}
assemblerPath: FileInfo.joinPaths(toolchainInstallPath, assemblerName)
@@ -102,6 +106,8 @@ CppModule {
return "ilinkarm" + compilerExtension;
case "mcs51":
return "xlink" + compilerExtension;
+ case "avr":
+ return "xlink" + compilerExtension;
}
}
linkerPath: FileInfo.joinPaths(toolchainInstallPath, linkerName)
@@ -112,6 +118,8 @@ CppModule {
return "iarchive" + compilerExtension;
case "mcs51":
return "xlib" + compilerExtension;
+ case "avr":
+ return "xlib" + compilerExtension;
}
}
property string archiverPath: FileInfo.joinPaths(toolchainInstallPath, archiverName)
@@ -124,6 +132,8 @@ CppModule {
return ".a";
case "mcs51":
return ".r51";
+ case "avr":
+ return ".r90";
}
}
@@ -133,6 +143,8 @@ CppModule {
return ".out";
case "mcs51":
return qbs.debugInformation ? ".d51" : ".a51";
+ case "avr":
+ return qbs.debugInformation ? ".d90" : ".a90";
}
}
@@ -142,6 +154,8 @@ CppModule {
return ".o";
case "mcs51":
return ".r51";
+ case "avr":
+ return ".r90";
}
}
@@ -151,6 +165,8 @@ CppModule {
return "elf";
case "mcs51":
return "ubrof";
+ case "avr":
+ return "ubrof";
}
}