From 86747ff36bb162764fd8c2f741a1674d16b0b3cd Mon Sep 17 00:00:00 2001 From: Denis Shienkov Date: Tue, 23 Jul 2019 15:45:29 +0300 Subject: baremetal: Share common generators code Common code which are used for the 'iarew' and 'keiluv' generators was moved to the corelib/generators library. Besides, this code also can be used in future for the XML-based generators. Change-Id: I79a21e3e078d563600d7f365785731fe9e847045 Reviewed-by: Christian Kandeler --- src/plugins/generator/iarew/iarewversioninfo.cpp | 46 +++++------------------- 1 file changed, 9 insertions(+), 37 deletions(-) (limited to 'src/plugins/generator/iarew/iarewversioninfo.cpp') diff --git a/src/plugins/generator/iarew/iarewversioninfo.cpp b/src/plugins/generator/iarew/iarewversioninfo.cpp index f0293b998..7191948ad 100644 --- a/src/plugins/generator/iarew/iarewversioninfo.cpp +++ b/src/plugins/generator/iarew/iarewversioninfo.cpp @@ -39,65 +39,37 @@ #include "iarewversioninfo.h" -#include - #include -#include namespace qbs { -IarewVersionInfo::IarewVersionInfo(const Version &version, - const std::set &archs) - : m_version(version), m_archs(archs) +IarewVersionInfo::IarewVersionInfo( + const Version &version, + const std::set &archs) + : gen::VersionInfo(version, archs) { } std::set IarewVersionInfo::knownVersions() { static const std::set known = { - {Version(8), {IarewUtils::Architecture::ArmArchitecture}}, - {Version(7), {IarewUtils::Architecture::AvrArchitecture}}, - {Version(10), {IarewUtils::Architecture::Mcs51Architecture}}, + {Version(8), {gen::utils::Architecture::Arm}}, + {Version(7), {gen::utils::Architecture::Avr}}, + {Version(10), {gen::utils::Architecture::Mcs51}}, }; return known; } -bool IarewVersionInfo::operator<(const IarewVersionInfo &other) const -{ - return m_version < other.m_version; -} - -bool IarewVersionInfo::operator==(const IarewVersionInfo &other) const -{ - return m_version == other.m_version - && m_archs == other.m_archs; -} - -Version IarewVersionInfo::version() const -{ - return m_version; -} - int IarewVersionInfo::marketingVersion() const { - const auto mv = m_version.majorVersion(); + const auto mv = gen::VersionInfo::marketingVersion(); for (const IarewVersionInfo &known : knownVersions()) { if (known.version().majorVersion() == mv) return mv; } qWarning() << QStringLiteral("Unrecognized IAR EW version: ") - << m_version.toString(); + << version().toString(); return 0; } -bool IarewVersionInfo::containsArchitecture(IarewUtils::Architecture arch) const -{ - return m_archs.find(arch) != m_archs.cend(); -} - -quint32 qHash(const IarewVersionInfo &info) -{ - return qHash(info.version().toString()); -} - } // namespace qbs -- cgit v1.2.3