aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qbsprojectmanager
diff options
context:
space:
mode:
authorDenis Shienkov <denis.shienkov@gmail.com>2019-03-19 22:45:36 +0300
committerDenis Shienkov <denis.shienkov@gmail.com>2019-04-15 16:35:22 +0000
commit8f8ff686dfef45bbb7590bea67ed517ecc48099d (patch)
tree47a66c3584df9dda81e487c36e6eb883497860e1 /src/plugins/qbsprojectmanager
parent31517f00bb75c4be2ed61e67399471df9bd23b30 (diff)
bare-metal: Add support for SDCC toolchain
This patch adds support for the SDCC toolchain: * http://sdcc.sourceforge.net/ Now QtC's compiler page have additional 'SDCC' selector which allows to user to choose a desired compiler. Main point is that the SDCC supports only the C-language, so the C++ selector is not available. When the compiler is added, the QtC will tries to detect the compiler ABI. Also it is implemented the compiler auto-detection; each toolchain is displayed with its detected version. Currently is supported the following architecture: * 8051 (aka MCS51) In addition, were added changes to the QBS Project Manager plugin to make it work with QBS . So, now do not need to do an additional 'hacks' into the 'qbs.toolchain' property of QtC SDCC kit. Following features are not implemented yet: * Debugger integration. * Compile output parsers. * Support for other architectures (z80, ds390 and etc) . Change-Id: I92b97a81152d94cabf569e2013fc7260b8d7b953 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'src/plugins/qbsprojectmanager')
-rw-r--r--src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp b/src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp
index 32a65b1516f..071de5fc22d 100644
--- a/src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp
+++ b/src/plugins/qbsprojectmanager/defaultpropertyprovider.cpp
@@ -135,6 +135,8 @@ static QStringList toolchainList(const ProjectExplorer::ToolChain *tc)
list << QLatin1String("iar");
else if (tc->typeId() == BareMetal::Constants::KEIL_TOOLCHAIN_TYPEID)
list << QLatin1String("keil");
+ else if (tc->typeId() == BareMetal::Constants::SDCC_TOOLCHAIN_TYPEID)
+ list << QLatin1String("sdcc");
return list;
}