McuSupport: Tag "board" and Kit with vendor name

Needed for an upcoming hack, but also later when we "zero-config"
the boards.

Change-Id: I240cc252ebba458cab71db24740266756d0e8b37
Reviewed-by: Aurindam Jana <aurindam.jana@qt.io>
This commit is contained in:
Alessandro Portale
2019-11-04 18:01:54 +01:00
committed by Aurindam Jana
parent ebc2628116
commit af6ec7943e
3 changed files with 24 additions and 11 deletions

View File

@@ -34,6 +34,7 @@ const char DEVICE_ID[] = "McuSupport.Device";
const char MCUSUPPORT_QT_VERSION[] = "Qt4ProjectManager.QtVersion.McuSupport"; const char MCUSUPPORT_QT_VERSION[] = "Qt4ProjectManager.QtVersion.McuSupport";
const char RUNCONFIGURATION[] = "McuSupport.RunConfiguration"; const char RUNCONFIGURATION[] = "McuSupport.RunConfiguration";
const char SETTINGS_ID[] = "CC.McuSupport.Configuration"; const char SETTINGS_ID[] = "CC.McuSupport.Configuration";
const char KIT_BOARD_VENDOR_KEY[] = "McuSupport.BoardVendor";
const char KIT_BOARD_MODEL_KEY[] = "McuSupport.BoardModel"; const char KIT_BOARD_MODEL_KEY[] = "McuSupport.BoardModel";
const char ENVVAR_ARMGCC_DIR[] = "ARMGCC_DIR"; const char ENVVAR_ARMGCC_DIR[] = "ARMGCC_DIR";

View File

@@ -198,9 +198,11 @@ void PackageOptions::updateStatus()
m_statusLabel->setText(statusText); m_statusLabel->setText(statusText);
} }
BoardOptions::BoardOptions(const QString &model, const QString &toolChainFileName, BoardOptions::BoardOptions(const QString &vendor, const QString &model,
const QString &qulPlatform, const QVector<PackageOptions*> &packages) const QString &toolChainFileName, const QString &qulPlatform,
: m_model(model) const QVector<PackageOptions*> &packages)
: m_vendor(vendor)
, m_model(model)
, m_toolChainFile(toolChainFileName) , m_toolChainFile(toolChainFileName)
, m_qulPlatform(qulPlatform) , m_qulPlatform(qulPlatform)
, m_packages(packages) , m_packages(packages)
@@ -227,6 +229,11 @@ QVector<PackageOptions *> BoardOptions::packages() const
return m_packages; return m_packages;
} }
QString BoardOptions::vendor() const
{
return m_vendor;
}
static PackageOptions *createQulPackage() static PackageOptions *createQulPackage()
{ {
auto result = new PackageOptions( auto result = new PackageOptions(
@@ -353,13 +360,16 @@ McuSupportOptions::McuSupportOptions(QObject *parent)
packages = {armGccPackage, stm32CubeFwF7SdkPackage, stm32CubeProgrammerPackage, packages = {armGccPackage, stm32CubeFwF7SdkPackage, stm32CubeProgrammerPackage,
evkbImxrt1050SdkPackage, seggerJLinkPackage, qulPackage}; evkbImxrt1050SdkPackage, seggerJLinkPackage, qulPackage};
boards.append(new BoardOptions( const QString vendorStm = "STM";
const QString vendorNxp = "NXP";
const QString vendorQt = "Qt";
boards.append(new BoardOptions(vendorStm,
"stm32f7508", "CMake/stm32f7508-discovery.cmake", "", stmPackages)); "stm32f7508", "CMake/stm32f7508-discovery.cmake", "", stmPackages));
boards.append(new BoardOptions( boards.append(new BoardOptions(vendorStm,
"stm32f769i", "CMake/stm32f769i-discovery.cmake", "", stmPackages)); "stm32f769i", "CMake/stm32f769i-discovery.cmake", "", stmPackages));
boards.append(new BoardOptions( boards.append(new BoardOptions(vendorNxp,
"evkbimxrt1050", "CMake/evkbimxrt1050-toolchain.cmake", "", nxpPackages)); "evkbimxrt1050", "CMake/evkbimxrt1050-toolchain.cmake", "", nxpPackages));
boards.append(new BoardOptions( boards.append(new BoardOptions(vendorQt,
"Desktop", "", "Qt", desktopPackages)); "Desktop", "", "Qt", desktopPackages));
for (auto package : packages) for (auto package : packages)
@@ -420,6 +430,7 @@ static void setKitProperties(ProjectExplorer::Kit *k, const BoardOptions* board)
using namespace ProjectExplorer; using namespace ProjectExplorer;
k->setUnexpandedDisplayName("QtMCU - " + board->model()); k->setUnexpandedDisplayName("QtMCU - " + board->model());
k->setValue(Constants::KIT_BOARD_VENDOR_KEY, board->vendor());
k->setValue(Constants::KIT_BOARD_MODEL_KEY, board->model()); k->setValue(Constants::KIT_BOARD_MODEL_KEY, board->model());
k->setAutoDetected(false); k->setAutoDetected(false);
if (!isDesktop(board)) { if (!isDesktop(board)) {

View File

@@ -101,16 +101,17 @@ class BoardOptions : public QObject
Q_OBJECT Q_OBJECT
public: public:
BoardOptions(const QString &model, const QString &toolChainFile, const QString &qulPlatform, BoardOptions(const QString &vendor, const QString &model, const QString &toolChainFile,
const QVector<PackageOptions *> &packages); const QString &qulPlatform, const QVector<PackageOptions *> &packages);
QString vendor() const;
QString model() const; QString model() const;
QString toolChainFile() const; QString toolChainFile() const;
QString qulPlatform() const; QString qulPlatform() const;
QVector<PackageOptions *> packages() const; QVector<PackageOptions *> packages() const;
private: private:
const QString m_vendor;
const QString m_model; const QString m_model;
const QString m_toolChainFile; const QString m_toolChainFile;
const QString m_qulPlatform; const QString m_qulPlatform;