From b1f35bf905ed6120788c897b33f21075303454a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Mu=C4=87ko?= Date: Tue, 15 Feb 2022 10:56:05 +0100 Subject: [PATCH] McuSupport: Extract target description to separate file Change-Id: Ia79d64b5b5a752bdacb404b49e8ac78c2d32ee4e Reviewed-by: hjk --- src/plugins/mcusupport/CMakeLists.txt | 1 + src/plugins/mcusupport/mcusupport.qbs | 1 + src/plugins/mcusupport/mcusupportsdk.cpp | 2 +- src/plugins/mcusupport/mcusupportsdk.h | 35 +--------- src/plugins/mcusupport/mcutargetdescription.h | 67 +++++++++++++++++++ src/plugins/mcusupport/test/unittest.cpp | 1 + 6 files changed, 73 insertions(+), 34 deletions(-) create mode 100644 src/plugins/mcusupport/mcutargetdescription.h diff --git a/src/plugins/mcusupport/CMakeLists.txt b/src/plugins/mcusupport/CMakeLists.txt index a42fd4f6003..c82bf2b1f45 100644 --- a/src/plugins/mcusupport/CMakeLists.txt +++ b/src/plugins/mcusupport/CMakeLists.txt @@ -15,6 +15,7 @@ add_qtc_plugin(McuSupport mcusupportrunconfiguration.cpp mcusupportrunconfiguration.h mcusupportversiondetection.cpp mcusupportversiondetection.h mcusupportcmakemapper.cpp mcusupportcmakemapper.h + mcutargetdescription.h ) add_subdirectory(test) diff --git a/src/plugins/mcusupport/mcusupport.qbs b/src/plugins/mcusupport/mcusupport.qbs index ef2c4aa6bb4..1710166a975 100644 --- a/src/plugins/mcusupport/mcusupport.qbs +++ b/src/plugins/mcusupport/mcusupport.qbs @@ -37,6 +37,7 @@ QtcPlugin { "mcusupportversiondetection.h", "mcusupportcmakemapper.h", "mcusupportcmakemapper.cpp", + "mcutargetdescription.h", "mcukitinformation.cpp", "mcukitinformation.h" ] diff --git a/src/plugins/mcusupport/mcusupportsdk.cpp b/src/plugins/mcusupport/mcusupportsdk.cpp index 9a5c441bcf2..8ba6fcb0ec0 100644 --- a/src/plugins/mcusupport/mcusupportsdk.cpp +++ b/src/plugins/mcusupport/mcusupportsdk.cpp @@ -28,6 +28,7 @@ #include "mcusupportoptions.h" #include "mcusupportsdk.h" #include "mcusupportversiondetection.h" +#include "mcutargetdescription.h" #include #include @@ -335,7 +336,6 @@ static McuPackage *createRenesasProgrammerPackage() envVar); return result; } - static McuPackageVersionDetector *generatePackageVersionDetector(QString envVar) { if (envVar.startsWith("EVK")) diff --git a/src/plugins/mcusupport/mcusupportsdk.h b/src/plugins/mcusupport/mcusupportsdk.h index 9592616c927..486f0d49eaa 100644 --- a/src/plugins/mcusupport/mcusupportsdk.h +++ b/src/plugins/mcusupport/mcusupportsdk.h @@ -33,7 +33,7 @@ namespace McuSupport { namespace Internal { -#define MAX_COMPATIBILITY_VERSION 1 +constexpr int MAX_COMPATIBILITY_VERSION {1}; class McuSdkRepository; class McuAbstractPackage; @@ -42,38 +42,7 @@ class McuTarget; namespace Sdk { -struct McuTargetDescription -{ - enum class TargetType { MCU, Desktop }; - - QString qulVersion; - QString compatVersion; - struct - { - QString id; - QString name; - QString vendor; - QVector colorDepths; - TargetType type; - } platform; - struct - { - QString id; - QStringList versions; - } toolchain; - struct - { - QString name; - QString defaultPath; - QString envVar; - QStringList versions; - } boardSdk; - struct - { - QString envVar; - QString boardSdkSubDir; - } freeRTOS; -}; +struct McuTargetDescription; McuPackage *createQtForMCUsPackage(); diff --git a/src/plugins/mcusupport/mcutargetdescription.h b/src/plugins/mcusupport/mcutargetdescription.h new file mode 100644 index 00000000000..ab0699574ad --- /dev/null +++ b/src/plugins/mcusupport/mcutargetdescription.h @@ -0,0 +1,67 @@ +/**************************************************************************** +** +** Copyright (C) 2022 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt Creator. +** +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. +** +****************************************************************************/ + +#pragma once + +#include +#include +#include + +namespace McuSupport::Internal::Sdk { + +struct McuTargetDescription +{ + enum class TargetType { MCU, Desktop }; + + QString qulVersion; + QString compatVersion; + struct + { + QString id; + QString name; + QString vendor; + QVector colorDepths; + TargetType type; + } platform; + struct + { + QString id; + QStringList versions; + } toolchain; + struct + { + QString name; + QString defaultPath; + QString envVar; + QStringList versions; + } boardSdk; + struct + { + QString envVar; + QString boardSdkSubDir; + } freeRTOS; +}; + +} // namespace McuSupport::Internal::Sdk diff --git a/src/plugins/mcusupport/test/unittest.cpp b/src/plugins/mcusupport/test/unittest.cpp index 1d74f1d2e98..45b5cdc76d3 100644 --- a/src/plugins/mcusupport/test/unittest.cpp +++ b/src/plugins/mcusupport/test/unittest.cpp @@ -23,6 +23,7 @@ ** ****************************************************************************/ +#include "mcutargetdescription.h" #include "nxp_1064_json.h" #include "unittest.h" #include "utils/filepath.h"