diff options
author | hjk <[email protected]> | 2023-11-17 09:21:04 +0100 |
---|---|---|
committer | hjk <[email protected]> | 2023-11-17 12:59:40 +0000 |
commit | fc1325d6c92cb7a84f8b75c2b13cdc79872cfd2e (patch) | |
tree | 96f61966e0b04c2c5f7aea48d0ae34937801398d /src/plugins/baremetal/keiltoolchain.cpp | |
parent | 4101260f41d0b6190ff6b3d2c2182f298b1717de (diff) |
BareMetal: Use new setup approach for toolchain factories
Change-Id: Ic91ccab925f054d80fbfa8bc018b3e86d207b186
Reviewed-by: Jarek Kobus <[email protected]>
Diffstat (limited to 'src/plugins/baremetal/keiltoolchain.cpp')
-rw-r--r-- | src/plugins/baremetal/keiltoolchain.cpp | 33 |
1 files changed, 25 insertions, 8 deletions
diff --git a/src/plugins/baremetal/keiltoolchain.cpp b/src/plugins/baremetal/keiltoolchain.cpp index d39dc9f03b0..f6a097f0a41 100644 --- a/src/plugins/baremetal/keiltoolchain.cpp +++ b/src/plugins/baremetal/keiltoolchain.cpp @@ -538,14 +538,31 @@ QStringList KeilToolChain::extraCodeModelFlags() const // KeilToolchainFactory -KeilToolChainFactory::KeilToolChainFactory() -{ - setDisplayName(Tr::tr("KEIL")); - setSupportedToolChainType(Constants::KEIL_TOOLCHAIN_TYPEID); - setSupportedLanguages({ProjectExplorer::Constants::C_LANGUAGE_ID, - ProjectExplorer::Constants::CXX_LANGUAGE_ID}); - setToolchainConstructor([] { return new KeilToolChain; }); - setUserCreatable(true); +class KeilToolChainFactory final : public ToolChainFactory +{ +public: + KeilToolChainFactory() + { + setDisplayName(Tr::tr("KEIL")); + setSupportedToolChainType(Constants::KEIL_TOOLCHAIN_TYPEID); + setSupportedLanguages({ProjectExplorer::Constants::C_LANGUAGE_ID, + ProjectExplorer::Constants::CXX_LANGUAGE_ID}); + setToolchainConstructor([] { return new KeilToolChain; }); + setUserCreatable(true); + } + + Toolchains autoDetect(const ToolchainDetector &detector) const final; + +private: + Toolchains autoDetectToolchains(const Candidates &candidates, + const Toolchains &alreadyKnown) const; + Toolchains autoDetectToolchain( + const Candidate &candidate, Utils::Id language) const; +}; + +void setupKeilToolChain() +{ + static KeilToolChainFactory theKeilToolChainFactory; } // Parse the 'tools.ini' file to fetch a toolchain version. |