forked from qt-creator/qt-creator
McuSupport: Sync JSON files with QtMCUs repo and related fixes
This synchronizes JSON files used by unit tests with files in QtMCUs repo. To do that some changes in code were needed. QtMCUs package is no longer created for each JSON file. Because of its nature it's created once and passed to each target. Unit tests now have verifyPackage function to avoid duplication of checks. In test creating target QtMCUs package is checked beside toolchain ones. Change-Id: I5dea470daf184b45facfaaa793c359310ac22fc1 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Yasser Grimes <yasser.grimes@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
@@ -25,7 +25,7 @@ public:
|
||||
virtual ~McuAbstractTargetFactory() = default;
|
||||
|
||||
virtual QPair<Targets, Packages> createTargets(const McuTargetDescription &,
|
||||
const Utils::FilePath &qtForMcuPath)
|
||||
const McuPackagePtr &qtForMCUsPackage)
|
||||
= 0;
|
||||
using AdditionalPackages
|
||||
= QPair<QHash<QString, McuToolChainPackagePtr>, QHash<QString, McuPackagePtr>>;
|
||||
|
||||
@@ -490,8 +490,7 @@ void createAutomaticKits(const SettingsHandler::Ptr &settingsHandler)
|
||||
return;
|
||||
}
|
||||
|
||||
FilePath dir = qtForMCUsPackage->path();
|
||||
McuSdkRepository repo{targetsAndPackages(dir, settingsHandler)};
|
||||
McuSdkRepository repo{targetsAndPackages(qtForMCUsPackage, settingsHandler)};
|
||||
|
||||
bool needsUpgrade = false;
|
||||
for (const auto &target : qAsConst(repo.mcuTargets)) {
|
||||
@@ -529,8 +528,7 @@ void upgradeKitsByCreatingNewPackage(const SettingsHandler::Ptr &settingsHandler
|
||||
|
||||
McuPackagePtr qtForMCUsPackage{createQtForMCUsPackage(settingsHandler)};
|
||||
|
||||
auto dir = qtForMCUsPackage->path();
|
||||
McuSdkRepository repo{targetsAndPackages(dir, settingsHandler)};
|
||||
McuSdkRepository repo{targetsAndPackages(qtForMCUsPackage, settingsHandler)};
|
||||
|
||||
for (const auto &target : qAsConst(repo.mcuTargets)) {
|
||||
if (!matchingKits(target.get(), qtForMCUsPackage).empty())
|
||||
@@ -571,8 +569,7 @@ void updatePathsInExistingKits(const SettingsHandler::Ptr &settingsHandler)
|
||||
{
|
||||
McuPackagePtr qtForMCUsPackage{createQtForMCUsPackage(settingsHandler)};
|
||||
|
||||
FilePath dir = qtForMCUsPackage->path();
|
||||
McuSdkRepository repo{targetsAndPackages(dir, settingsHandler)};
|
||||
McuSdkRepository repo{targetsAndPackages(qtForMCUsPackage, settingsHandler)};
|
||||
for (const auto &target : qAsConst(repo.mcuTargets)) {
|
||||
if (target->isValid()) {
|
||||
for (auto *kit : kitsWithMismatchedDependencies(target.get())) {
|
||||
@@ -657,8 +654,7 @@ void fixExistingKits(const SettingsHandler::Ptr &settingsHandler)
|
||||
McuPackagePtr qtForMCUsPackage{createQtForMCUsPackage(settingsHandler)};
|
||||
qtForMCUsPackage->updateStatus();
|
||||
if (qtForMCUsPackage->isValidStatus()) {
|
||||
FilePath dir = qtForMCUsPackage->path();
|
||||
McuSdkRepository repo{targetsAndPackages(dir, settingsHandler)};
|
||||
McuSdkRepository repo{targetsAndPackages(qtForMCUsPackage, settingsHandler)};
|
||||
for (const auto &target : qAsConst(repo.mcuTargets))
|
||||
for (auto kit : existingKits(target.get())) {
|
||||
if (McuDependenciesKitAspect::dependencies(kit).isEmpty()) {
|
||||
|
||||
@@ -118,7 +118,6 @@ FilePath McuPackage::detectionPath() const
|
||||
void McuPackage::setPath(const FilePath &newPath)
|
||||
{
|
||||
m_path = newPath;
|
||||
m_defaultPath = newPath;
|
||||
updateStatus();
|
||||
}
|
||||
|
||||
|
||||
@@ -96,11 +96,11 @@ bool McuSupportOptions::isLegacyVersion(const QVersionNumber &version)
|
||||
return version < newVersion;
|
||||
}
|
||||
|
||||
void McuSupportOptions::setQulDir(const FilePath &dir)
|
||||
void McuSupportOptions::setQulDir(const FilePath &)
|
||||
{
|
||||
qtForMCUsSdkPackage->updateStatus();
|
||||
if (qtForMCUsSdkPackage->isValidStatus())
|
||||
sdkRepository = targetsAndPackages(dir, settingsHandler);
|
||||
sdkRepository = targetsAndPackages(qtForMCUsSdkPackage, settingsHandler);
|
||||
else
|
||||
sdkRepository = McuSdkRepository{};
|
||||
for (const auto &package : qAsConst(sdkRepository.packages))
|
||||
|
||||
@@ -48,7 +48,7 @@ McuPackagePtr createQtForMCUsPackage(const SettingsHandler::Ptr &settingsHandler
|
||||
{
|
||||
return McuPackagePtr{
|
||||
new McuPackage(settingsHandler,
|
||||
McuPackage::tr("Qt for MCUs SDK"),
|
||||
{},
|
||||
FileUtils::homePath(), // defaultPath
|
||||
FilePath(Legacy::Constants::QT_FOR_MCUS_SDK_PACKAGE_VALIDATION_PATH)
|
||||
.withExecutableSuffix(), // detectionPath
|
||||
@@ -573,19 +573,20 @@ static McuAbstractTargetFactory::Ptr createFactory(bool isLegacy,
|
||||
|
||||
McuSdkRepository targetsFromDescriptions(const QList<McuTargetDescription> &descriptions,
|
||||
const SettingsHandler::Ptr &settingsHandler,
|
||||
const FilePath &qtForMCUSdkPath,
|
||||
const McuPackagePtr &qtForMCUsPackage,
|
||||
bool isLegacy)
|
||||
{
|
||||
Targets mcuTargets;
|
||||
Packages mcuPackages;
|
||||
|
||||
const FilePath &qtForMCUSdkPath{qtForMCUsPackage->path()};
|
||||
McuAbstractTargetFactory::Ptr targetFactory = createFactory(isLegacy,
|
||||
settingsHandler,
|
||||
qtForMCUSdkPath);
|
||||
for (const McuTargetDescription &desc : descriptions) {
|
||||
auto [targets, packages] = targetFactory->createTargets(desc, qtForMCUSdkPath);
|
||||
auto [targets, packages] = targetFactory->createTargets(desc, qtForMCUsPackage);
|
||||
mcuTargets.append(targets);
|
||||
mcuPackages.unite(packages);
|
||||
mcuPackages.insert(qtForMCUsPackage);
|
||||
}
|
||||
|
||||
if (isLegacy) {
|
||||
@@ -741,9 +742,10 @@ bool checkDeprecatedSdkError(const FilePath &qulDir, QString &message)
|
||||
return false;
|
||||
}
|
||||
|
||||
McuSdkRepository targetsAndPackages(const FilePath &qtForMCUSdkPath,
|
||||
McuSdkRepository targetsAndPackages(const McuPackagePtr &qtForMCUsPackage,
|
||||
const SettingsHandler::Ptr &settingsHandler)
|
||||
{
|
||||
const FilePath &qtForMCUSdkPath{qtForMCUsPackage->path()};
|
||||
QList<McuTargetDescription> descriptions;
|
||||
bool isLegacy{false};
|
||||
|
||||
@@ -800,7 +802,7 @@ McuSdkRepository targetsAndPackages(const FilePath &qtForMCUSdkPath,
|
||||
}
|
||||
McuSdkRepository repo = targetsFromDescriptions(descriptions,
|
||||
settingsHandler,
|
||||
qtForMCUSdkPath,
|
||||
qtForMCUsPackage,
|
||||
isLegacy);
|
||||
|
||||
// Keep targets sorted lexicographically
|
||||
|
||||
@@ -25,12 +25,13 @@ McuPackagePtr createQtForMCUsPackage(const SettingsHandler::Ptr &);
|
||||
|
||||
bool checkDeprecatedSdkError(const Utils::FilePath &qulDir, QString &message);
|
||||
|
||||
McuSdkRepository targetsAndPackages(const Utils::FilePath &qulDir, const SettingsHandler::Ptr &);
|
||||
McuSdkRepository targetsAndPackages(const McuPackagePtr &qtForMCUsPackage,
|
||||
const SettingsHandler::Ptr &);
|
||||
|
||||
McuTargetDescription parseDescriptionJson(const QByteArray &);
|
||||
McuSdkRepository targetsFromDescriptions(const QList<McuTargetDescription> &,
|
||||
const SettingsHandler::Ptr &,
|
||||
const Utils::FilePath &qtForMCUSdkPath,
|
||||
const McuPackagePtr &qtForMCUsPackage,
|
||||
bool isLegacy);
|
||||
|
||||
Utils::FilePath kitsPath(const Utils::FilePath &dir);
|
||||
|
||||
@@ -46,6 +46,14 @@ McuPackageVersionDetector *createVersionDetection(const VersionDetection &versio
|
||||
versionDetection.isFile);
|
||||
}
|
||||
|
||||
static void removeEmptyPackages(Packages &packages)
|
||||
{
|
||||
for (const McuPackagePtr &pkg : packages) {
|
||||
if (pkg->cmakeVariableName().isEmpty() && pkg->path().isEmpty())
|
||||
packages.remove(pkg);
|
||||
}
|
||||
}
|
||||
|
||||
static void expandVariables(Packages &packages)
|
||||
{
|
||||
Utils::MacroExpander macroExpander;
|
||||
@@ -63,7 +71,7 @@ McuTargetFactory::McuTargetFactory(const SettingsHandler::Ptr &settingsHandler)
|
||||
{}
|
||||
|
||||
QPair<Targets, Packages> McuTargetFactory::createTargets(const McuTargetDescription &desc,
|
||||
const Utils::FilePath & /*qtForMCUSdkPath*/)
|
||||
const McuPackagePtr &qtForMCUsPackage)
|
||||
{
|
||||
Targets mcuTargets;
|
||||
Packages packages;
|
||||
@@ -80,8 +88,10 @@ QPair<Targets, Packages> McuTargetFactory::createTargets(const McuTargetDescript
|
||||
Packages targetPackages = createPackages(desc);
|
||||
McuToolChainPackagePtr toolchainPtr{toolchain};
|
||||
targetPackages.insert({toolchainPtr});
|
||||
targetPackages.insert({qtForMCUsPackage});
|
||||
targetPackages.unite({toolchainFile});
|
||||
|
||||
removeEmptyPackages(targetPackages);
|
||||
expandVariables(targetPackages);
|
||||
|
||||
packages.unite(targetPackages);
|
||||
@@ -143,8 +153,8 @@ McuToolChainPackage *McuTargetFactory::createToolchain(
|
||||
{"msvc", McuToolChainPackage::ToolChainType::MSVC},
|
||||
{"gcc", McuToolChainPackage::ToolChainType::GCC},
|
||||
{"armgcc", McuToolChainPackage::ToolChainType::ArmGcc},
|
||||
{"ghs", McuToolChainPackage::ToolChainType::GHS},
|
||||
{"ghsarm", McuToolChainPackage::ToolChainType::GHSArm},
|
||||
{"greenhills", McuToolChainPackage::ToolChainType::GHS},
|
||||
{"arm-greenhills", McuToolChainPackage::ToolChainType::GHSArm},
|
||||
};
|
||||
|
||||
const PackageDescription compilerDescription{toolchain.compiler};
|
||||
|
||||
@@ -18,7 +18,7 @@ class McuTargetFactory : public McuAbstractTargetFactory
|
||||
public:
|
||||
explicit McuTargetFactory(const SettingsHandler::Ptr &);
|
||||
QPair<Targets, Packages> createTargets(const McuTargetDescription &,
|
||||
const Utils::FilePath &qtForMCUSdkPath) override;
|
||||
const McuPackagePtr &qtForMCUsPackage) override;
|
||||
Packages createPackages(const McuTargetDescription &);
|
||||
McuToolChainPackage *createToolchain(const McuTargetDescription::Toolchain &);
|
||||
McuPackagePtr createPackage(const PackageDescription &);
|
||||
|
||||
@@ -24,8 +24,9 @@ McuTargetFactory::McuTargetFactory(const QHash<QString, ToolchainCompilerCreator
|
||||
{}
|
||||
|
||||
QPair<Targets, Packages> McuTargetFactory::createTargets(const McuTargetDescription &desc,
|
||||
const Utils::FilePath &qtForMcuPath)
|
||||
const McuPackagePtr &qtForMCUsPackage)
|
||||
{
|
||||
const Utils::FilePath &qtForMcuPath{qtForMCUsPackage->path()};
|
||||
QHash<QString, McuPackagePtr> boardSdkPkgs;
|
||||
QHash<QString, McuPackagePtr> freeRTOSPkgs;
|
||||
Targets mcuTargets;
|
||||
|
||||
@@ -28,7 +28,7 @@ public:
|
||||
const SettingsHandler::Ptr &);
|
||||
|
||||
QPair<Targets, Packages> createTargets(const McuTargetDescription &,
|
||||
const Utils::FilePath &qtForMCUSdkPath) override;
|
||||
const McuPackagePtr &qtForMCUsPackage) override;
|
||||
AdditionalPackages getAdditionalPackages() const override;
|
||||
|
||||
McuToolChainPackagePtr getToolchainCompiler(const McuTargetDescription::Toolchain &) const;
|
||||
|
||||
@@ -0,0 +1,80 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_ek_ra6m3g_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "EK-RA6M3G-BAREMETAL",
|
||||
"vendor": "RENESAS",
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"cmakeVar": "JLINK_PATH",
|
||||
"setting": "JLinkPath",
|
||||
"envVar": "JLINK_PATH",
|
||||
"label": "Path to SEGGER J-Link",
|
||||
"type": "path",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/SEGGER/JLink",
|
||||
"unix": "/opt/SEGGER/JLink"
|
||||
},
|
||||
"optional": true
|
||||
},
|
||||
{
|
||||
"cmakeVar": "EK_RA6M3G_E2_PROJECT_PATH",
|
||||
"defaultValue": "%{Env:HOME}/e2_studio/workspace/",
|
||||
"id": "EK_RA6M3G_E2_PROJECT_PATH",
|
||||
"label": "Path to project for Renesas e2 Studio",
|
||||
"optional": true,
|
||||
"setting": "RenesasE2ProjectPath",
|
||||
"type": "path"
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EK_RA6M3G_FSP_PATH",
|
||||
"id": "EK_RA6M3G_FSP_PATH",
|
||||
"label": "Flexible Software Package for Renesas RA MCU Family",
|
||||
"optional": false,
|
||||
"type": "path",
|
||||
"versions": [
|
||||
"3.8.0"
|
||||
]
|
||||
}
|
||||
}
|
||||
)";
|
||||
81
src/plugins/mcusupport/test/armgcc_ek_ra6m3g_freertos_json.h
Normal file
81
src/plugins/mcusupport/test/armgcc_ek_ra6m3g_freertos_json.h
Normal file
@@ -0,0 +1,81 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_ek_ra6m3g_freertos_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "EK-RA6M3G-FREERTOS",
|
||||
"vendor": "RENESAS",
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"cmakeVar": "JLINK_PATH",
|
||||
"setting": "JLinkPath",
|
||||
"envVar": "JLINK_PATH",
|
||||
"label": "Path to SEGGER J-Link",
|
||||
"type": "path",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/SEGGER/JLink",
|
||||
"unix": "/opt/SEGGER/JLink"
|
||||
},
|
||||
"optional": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EK_RA6M3G_FSP_PATH",
|
||||
"id": "EK_RA6M3G_FSP_PATH",
|
||||
"label": "Flexible Software Package for Renesas RA MCU Family",
|
||||
"optional": false,
|
||||
"type": "path",
|
||||
"versions": [
|
||||
"3.8.0"
|
||||
]
|
||||
},
|
||||
"freeRTOS": {
|
||||
"envVar": "EK_RA6M3G_FREERTOS_DIR",
|
||||
"id": "EK_RA6M3G_FREERTOS_DIR",
|
||||
"label": "FreeRTOS SDK for EK-RA6M3G",
|
||||
"cmakeVar": "FREERTOS_DIR",
|
||||
"defaultValue": "%{Qul_ROOT}/platform/boards/renesas/ek-ra6m3g-common/3rdparty/freertos",
|
||||
"validation": "tasks.c",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
56
src/plugins/mcusupport/test/armgcc_example_baremetal_json.h
Normal file
56
src/plugins/mcusupport/test/armgcc_example_baremetal_json.h
Normal file
@@ -0,0 +1,56 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_example_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"id": "EXAMPLE-BAREMETAL",
|
||||
"vendor": "Vendor Name"
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"versions": [
|
||||
"1.16.0"
|
||||
],
|
||||
"id": "EXAMPLE_SDK_DIR",
|
||||
"label": "Board SDK",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,80 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_mimxrt1050_evk_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "MIMXRT1050-EVK-BAREMETAL",
|
||||
"vendor": "NXP",
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"label": "MCUXpresso IDE",
|
||||
"type": "path",
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"envVar": "MCUXpressoIDE_PATH",
|
||||
"setting": "MCUXpressoIDE",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*",
|
||||
"unix": "/usr/local/mcuxpressoide/"
|
||||
},
|
||||
"versionDetection": {
|
||||
"filePattern": "ide/binaries/crt_emu_cm_redlink"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EVKB_IMXRT1050_SDK_PATH",
|
||||
"label": "Board SDK for MIMXRT1050-EVK",
|
||||
"optional": false,
|
||||
"setting": "EVKB_IMXRT1050_SDK_PATH",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "*_manifest_*.xml",
|
||||
"regex": ".*",
|
||||
"xmlAttribute": "version",
|
||||
"xmlElement": "ksdk"
|
||||
},
|
||||
"versions": [
|
||||
"2.12.0"
|
||||
]
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,90 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_mimxrt1050_evk_freertos_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "MIMXRT1050-EVK-FREERTOS",
|
||||
"vendor": "NXP",
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"label": "MCUXpresso IDE",
|
||||
"type": "path",
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"envVar": "MCUXpressoIDE_PATH",
|
||||
"setting": "MCUXpressoIDE",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*",
|
||||
"unix": "/usr/local/mcuxpressoide/"
|
||||
},
|
||||
"versionDetection": {
|
||||
"filePattern": "ide/binaries/crt_emu_cm_redlink"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EVKB_IMXRT1050_SDK_PATH",
|
||||
"label": "Board SDK for MIMXRT1050-EVK",
|
||||
"optional": false,
|
||||
"setting": "EVKB_IMXRT1050_SDK_PATH",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "*_manifest_*.xml",
|
||||
"regex": ".*",
|
||||
"xmlAttribute": "version",
|
||||
"xmlElement": "ksdk"
|
||||
},
|
||||
"versions": [
|
||||
"2.12.0"
|
||||
]
|
||||
},
|
||||
"freeRTOS": {
|
||||
"cmakeVar": "FREERTOS_DIR",
|
||||
"defaultValue": "%{QUL_BOARD_SDK_DIR}/rtos/freertos/freertos_kernel",
|
||||
"validation": "tasks.c",
|
||||
"envVar": "IMXRT1050_FREERTOS_DIR",
|
||||
"label": "FreeRTOS SDK for MIMXRT1050-EVK",
|
||||
"optional": false,
|
||||
"setting": "FreeRTOSSourcePackage_IMXRT1050",
|
||||
"type": "path"
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,70 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_mimxrt1060_evk_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "MIMXRT1060-EVK-BAREMETAL",
|
||||
"vendor": "NXP",
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "MCU_XPRESSO_PATH",
|
||||
"label": "MCUXpresso IDE",
|
||||
"type": "path",
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*",
|
||||
"unix": "/usr/local/mcuxpressoide/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "EVK_MIMXRT1060_SDK_PATH",
|
||||
"versions": [
|
||||
"2.12.0"
|
||||
],
|
||||
"id": "NXP_SDK_DIR",
|
||||
"label": "Board SDK MIMXRT1060-EVK",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,80 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_mimxrt1064_evk_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "MIMXRT1064-EVK-BAREMETAL",
|
||||
"vendor": "NXP",
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"label": "MCUXpresso IDE",
|
||||
"type": "path",
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"envVar": "MCUXpressoIDE_PATH",
|
||||
"setting": "MCUXpressoIDE",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*",
|
||||
"unix": "/usr/local/mcuxpressoide/"
|
||||
},
|
||||
"versionDetection": {
|
||||
"filePattern": "ide/binaries/crt_emu_cm_redlink"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EVK_MIMXRT1064_SDK_PATH",
|
||||
"label": "Board SDK for MIMXRT1064-EVK",
|
||||
"optional": false,
|
||||
"setting": "EVK_MIMXRT1064_SDK_PATH",
|
||||
"type": "path",
|
||||
"versions": [
|
||||
"2.12.0"
|
||||
],
|
||||
"versionDetection": {
|
||||
"filePattern": "*_manifest_*.xml",
|
||||
"regex": ".*",
|
||||
"xmlAttribute": "version",
|
||||
"xmlElement": "ksdk"
|
||||
}
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,90 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_mimxrt1064_evk_freertos_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "MIMXRT1064-EVK-FREERTOS",
|
||||
"vendor": "NXP",
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"label": "MCUXpresso IDE",
|
||||
"type": "path",
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"envVar": "MCUXpressoIDE_PATH",
|
||||
"setting": "MCUXpressoIDE",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*",
|
||||
"unix": "/usr/local/mcuxpressoide/"
|
||||
},
|
||||
"versionDetection": {
|
||||
"filePattern": "ide/binaries/crt_emu_cm_redlink"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EVK_MIMXRT1064_SDK_PATH",
|
||||
"label": "Board SDK for MIMXRT1064-EVK",
|
||||
"optional": false,
|
||||
"setting": "EVK_MIMXRT1064_SDK_PATH",
|
||||
"type": "path",
|
||||
"versions": [
|
||||
"2.12.0"
|
||||
],
|
||||
"versionDetection": {
|
||||
"filePattern": "*_manifest_*.xml",
|
||||
"regex": ".*",
|
||||
"xmlAttribute": "version",
|
||||
"xmlElement": "ksdk"
|
||||
}
|
||||
},
|
||||
"freeRTOS": {
|
||||
"cmakeVar": "FREERTOS_DIR",
|
||||
"defaultValue": "%{QUL_BOARD_SDK_DIR}/rtos/freertos/freertos_kernel",
|
||||
"validation": "tasks.c",
|
||||
"envVar": "IMXRT1064_FREERTOS_DIR",
|
||||
"label": "FreeRTOS SDK for MIMXRT1064-EVK",
|
||||
"optional": false,
|
||||
"setting": "FreeRTOSSourcePackage_IMXRT1064",
|
||||
"type": "path"
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,88 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_mimxrt1170_evk_freertos_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "MIMXRT1170-EVK-FREERTOS",
|
||||
"vendor": "NXP",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"label": "MCUXpresso IDE",
|
||||
"type": "path",
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"envVar": "MCUXpressoIDE_PATH",
|
||||
"setting": "MCUXpressoIDE",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*",
|
||||
"unix": "/usr/local/mcuxpressoide/"
|
||||
},
|
||||
"versionDetection": {
|
||||
"filePattern": "ide/binaries/crt_emu_cm_redlink"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EVK_MIMXRT1170_SDK_PATH",
|
||||
"versions": [
|
||||
"2.12.0"
|
||||
],
|
||||
"label": "Board SDK for MIMXRT1170-EVK",
|
||||
"type": "path",
|
||||
"setting": "EVK_MIMXRT1170_SDK_PATH",
|
||||
"versionDetection": {
|
||||
"filePattern": "*_manifest_*.xml",
|
||||
"regex": ".*",
|
||||
"xmlAttribute": "version",
|
||||
"xmlElement": "ksdk"
|
||||
}
|
||||
},
|
||||
"freeRTOS": {
|
||||
"cmakeVar": "FREERTOS_DIR",
|
||||
"envVar": "EVK_MIMXRT1170_FREERTOS_PATH",
|
||||
"label": "FreeRTOS SDK for MIMXRT1170-EVK",
|
||||
"defaultValue": "%{QUL_BOARD_SDK_DIR}/rtos/freertos/freertos_kernel",
|
||||
"validation": "tasks.c",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -1,90 +0,0 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_nxp_1050_json = R"({
|
||||
"qulVersion": "2.0.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "MIMXRT1050-EVK-FREERTOS",
|
||||
"vendor": "NXP",
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"label": "Qt for MCUs SDK",
|
||||
"type": "path",
|
||||
"cmakeVar": "Qul_ROOT",
|
||||
"envVar": "Qul_DIR",
|
||||
"setting": "QtForMCUsSdk",
|
||||
"optional": false
|
||||
},
|
||||
{
|
||||
"id": "MCU_XPRESSO_PATH",
|
||||
"label": "MCUXpresso IDE",
|
||||
"type": "path",
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*",
|
||||
"unix": "/usr/local/mcuxpressoide/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"9.3.1",
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection" : {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"label": "CMake Toolchain File",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EVKB_IMXRT1050_SDK_PATH",
|
||||
"label": "Board SDK for MIMXRT1050-EVK",
|
||||
"optional": false,
|
||||
"setting": "EVKB_IMXRT1050_SDK_PATH",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "*_manifest_*.xml",
|
||||
"regex": ".*",
|
||||
"xmlAttribute": "version",
|
||||
"xmlElement": "ksdk"
|
||||
},
|
||||
"versions": ["2.11.0"]
|
||||
},
|
||||
"freeRTOS": {
|
||||
"cmakeVar": "FREERTOS_DIR",
|
||||
"defaultValue": "%{QUL_BOARD_SDK_DIR}/rtos/freertos/freertos_kernel",
|
||||
"validation": "tasks.c",
|
||||
"envVar": "IMXRT1050_FREERTOS_DIR",
|
||||
"label": "FreeRTOS SDK for MIMXRT1050-EVK",
|
||||
"optional": false,
|
||||
"setting": "FreeRTOSSourcePackage_IMXRT1050",
|
||||
"type": "path"
|
||||
}
|
||||
})";
|
||||
@@ -1,75 +0,0 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_nxp_1064_json = R"(
|
||||
{
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EVK_MIMXRT1064_SDK_PATH",
|
||||
"label": "Board SDK for MIMXRT1064-EVK",
|
||||
"optional": false,
|
||||
"setting": "EVK_MIMXRT1064_SDK_PATH",
|
||||
"type": "path",
|
||||
"versions": ["2.11.1"]
|
||||
},
|
||||
"compatVersion": "1",
|
||||
"freeRTOS": {
|
||||
"cmakeVar": "FREERTOS_DIR",
|
||||
"defaultValue": "%{QUL_BOARD_SDK_DIR}/rtos/freertos/freertos_kernel",
|
||||
"validation": "tasks.c",
|
||||
"envVar": "IMXRT1064_FREERTOS_DIR",
|
||||
"label": "FreeRTOS SDK for MIMXRT1064-EVK",
|
||||
"optional": false,
|
||||
"setting": "FreeRTOSSourcePackage_IMXRT1064",
|
||||
"type": "path"
|
||||
},
|
||||
"platform": {
|
||||
"cmakeCacheEntries": [
|
||||
{
|
||||
"camekVar": "Qul_ROOT",
|
||||
"envVar": "Qul_DIR",
|
||||
"label": "Qt for MCUs SDK",
|
||||
"optional": false,
|
||||
"type": "path"
|
||||
},
|
||||
{
|
||||
"camekVar": "MCUXPRESSO_IDE_PATH",
|
||||
"defaultValue": {
|
||||
"unix": "/usr/local/mcuxpressoide/",
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*"
|
||||
},
|
||||
"id": "MCU_XPRESSO_PATH",
|
||||
"label": "MCUXpresso IDE",
|
||||
"optional": false,
|
||||
"type": "path"
|
||||
}
|
||||
],
|
||||
"colorDepths": [16],
|
||||
"environmentEntries": [],
|
||||
"id": "MIMXRT1064-EVK-FREERTOS",
|
||||
"pathEntries": [],
|
||||
"vendor": "NXP"
|
||||
},
|
||||
"qulVersion": "2.3.0",
|
||||
"toolchain": {
|
||||
"compiler": {
|
||||
"camekVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"optional": false,
|
||||
"type": "path"
|
||||
},
|
||||
"file": {
|
||||
"camekVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"label": "CMake Toolchain File",
|
||||
"optional": false,
|
||||
"type": "file",
|
||||
"visible": false
|
||||
},
|
||||
"id": "armgcc",
|
||||
"versions": ["9.3.1"]
|
||||
}
|
||||
})";
|
||||
@@ -1,92 +0,0 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_nxp_mimxrt1170_evk_freertos_json = R"({
|
||||
"qulVersion": "2.1.5",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "MIMXRT1170-EVK-FREERTOS",
|
||||
"vendor": "NXP",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"pathEntries": [],
|
||||
"environmentEntries": [],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "Qul_DIR",
|
||||
"description": "Qt for MCUs SDK",
|
||||
"type": "path",
|
||||
"cmakeVar": "Qul_ROOT",
|
||||
"optional": false
|
||||
},
|
||||
{
|
||||
"id": "MCU_XPRESSO_PATH",
|
||||
"description": "MCUXpresso IDE",
|
||||
"type": "path",
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*",
|
||||
"unix": "/usr/local/mcuxpressoide/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"9.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"description": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"label": "CMake Toolchain File",
|
||||
"description": "CMake Toolchain File",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "EVK_MIMXRT1170_SDK_PATH",
|
||||
"versions": [
|
||||
"2.10.1"
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "NXP_SDK_DIR",
|
||||
"description": "Board SDK for MIMXRT1170-EVK",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"freeRTOS": {
|
||||
"envVar": "EVK_MIMXRT1170_FREERTOS_PATH",
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "NXP_FREERTOS_DIR",
|
||||
"description": "FreeRTOS SDK for MIMXRT1170-EVK",
|
||||
"cmakeVar": "FREERTOS_DIR",
|
||||
"defaultValue": "%{QUL_BOARD_SDK_DIR}/rtos/freertos/freertos_kernel",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
}
|
||||
})";
|
||||
@@ -0,0 +1,76 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_stm32f469i_discovery_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "STM32F469I-DISCOVERY-BAREMETAL",
|
||||
"vendor": "ST",
|
||||
"colorDepths": [
|
||||
24
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "STM32CubeProgrammer_PATH",
|
||||
"label": "STM32CubeProgrammer",
|
||||
"type": "path",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/",
|
||||
"unix": "%{Env:HOME}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "STM32Cube_FW_F4_SDK_PATH",
|
||||
"setting": "STM32Cube_FW_F4_SDK_PATH",
|
||||
"versions": [
|
||||
"1.27.0"
|
||||
],
|
||||
"versionDetection": {
|
||||
"filePattern": "package.xml",
|
||||
"xmlElement": "PackDescription",
|
||||
"xmlAttribute": "Release",
|
||||
"regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
},
|
||||
"id": "ST_SDK_DIR",
|
||||
"label": "Board SDK for STM32F469I-Discovery",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,76 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_stm32f769i_discovery_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "STM32F769I-DISCOVERY-BAREMETAL",
|
||||
"vendor": "ST",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "STM32CubeProgrammer_PATH",
|
||||
"label": "STM32CubeProgrammer",
|
||||
"type": "path",
|
||||
"setting": "Stm32CubeProgrammer",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/",
|
||||
"unix": "%{Env:HOME}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "STM32Cube_FW_F7_SDK_PATH",
|
||||
"setting": "STM32Cube_FW_F7_SDK_PATH",
|
||||
"versions": [
|
||||
"1.17.0"
|
||||
],
|
||||
"versionDetection": {
|
||||
"filePattern": "package.xml",
|
||||
"xmlElement": "PackDescription",
|
||||
"xmlAttribute": "Release",
|
||||
"regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
},
|
||||
"label": "Board SDK for STM32F769I-Discovery",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,86 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_stm32f769i_discovery_freertos_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "STM32F769I-DISCOVERY-FREERTOS",
|
||||
"vendor": "ST",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "STM32CubeProgrammer_PATH",
|
||||
"label": "STM32CubeProgrammer",
|
||||
"type": "path",
|
||||
"setting": "Stm32CubeProgrammer",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/",
|
||||
"unix": "%{Env:HOME}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "STM32Cube_FW_F7_SDK_PATH",
|
||||
"setting": "STM32Cube_FW_F7_SDK_PATH",
|
||||
"versions": [
|
||||
"1.17.0"
|
||||
],
|
||||
"versionDetection": {
|
||||
"filePattern": "package.xml",
|
||||
"xmlElement": "PackDescription",
|
||||
"xmlAttribute": "Release",
|
||||
"regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
},
|
||||
"label": "Board SDK for STM32F769I-Discovery",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
},
|
||||
"freeRTOS": {
|
||||
"envVar": "STM32F7_FREERTOS_DIR",
|
||||
"label": "FreeRTOS SDK for STM32F769I-Discovery",
|
||||
"cmakeVar": "FREERTOS_DIR",
|
||||
"defaultValue": "%{QUL_BOARD_SDK_DIR}/Middlewares/Third_Party/FreeRTOS/Source",
|
||||
"validation": "tasks.c",
|
||||
"type": "path",
|
||||
"setting": "FreeRTOSSourcePackage_STM32F7",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -1,94 +0,0 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_stm32f769i_freertos_json = R"({
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "STM32F769I-DISCOVERY-FREERTOS",
|
||||
"vendor": "ST",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"pathEntries": [
|
||||
{
|
||||
"id": "STM32CubeProgrammer_PATH",
|
||||
"label": "STM32CubeProgrammer",
|
||||
"type": "path",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/",
|
||||
"unix": "%{Env:HOME}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
],
|
||||
"environmentEntries": [],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "Qul_DIR",
|
||||
"label": "Qt for MCUs SDK",
|
||||
"type": "path",
|
||||
"setting": "QtForMCUsSdk",
|
||||
"cmakeVar": "Qul_ROOT",
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"9.3.1",
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection" : {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"label": "CMake Toolchain File",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "STM32Cube_FW_F7_SDK_PATH",
|
||||
"setting": "STM32Cube_FW_F7_SDK_PATH",
|
||||
"versions": [ "1.16.0" ],
|
||||
"versionDetection" : {
|
||||
"filePattern": "package.xml",
|
||||
"xmlElement": "PackDescription",
|
||||
"xmlAttribute": "Release",
|
||||
"regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
},
|
||||
"label": "Board SDK for STM32F769I-Discovery",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
},
|
||||
"freeRTOS": {
|
||||
"envVar": "STM32F7_FREERTOS_DIR",
|
||||
"label": "FreeRTOS SDK for STM32F769I-Discovery",
|
||||
"cmakeVar": "FREERTOS_DIR",
|
||||
"defaultValue": "%{QUL_BOARD_SDK_DIR}/Middlewares/Third_Party/FreeRTOS/Source",
|
||||
"validation": "tasks.c",
|
||||
"type": "path",
|
||||
"setting": "FreeRTOSSourcePackage_STM32F7",
|
||||
"optional": false
|
||||
}
|
||||
})";
|
||||
@@ -0,0 +1,77 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_stm32h750b_discovery_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "STM32H750B-DISCOVERY-BAREMETAL",
|
||||
"vendor": "ST",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "STM32CubeProgrammer_PATH",
|
||||
"label": "STM32CubeProgrammer",
|
||||
"type": "path",
|
||||
"setting": "Stm32CubeProgrammer",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/",
|
||||
"unix": "%{Env:HOME}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "STM32Cube_FW_H7_SDK_PATH",
|
||||
"setting": "STM32Cube_FW_H7_SDK_PATH",
|
||||
"versions": [
|
||||
"1.10.0"
|
||||
],
|
||||
"versionDetection": {
|
||||
"filePattern": "package.xml",
|
||||
"xmlElement": "PackDescription",
|
||||
"xmlAttribute": "Release",
|
||||
"regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
},
|
||||
"id": "ST_SDK_DIR",
|
||||
"label": "Board SDK for STM32H750B-Discovery",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -1,86 +0,0 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto armgcc_stm32h750b_metal_json = R"({
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "STM32H750B-DISCOVERY-BAREMETAL",
|
||||
"vendor": "ST",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"pathEntries": [
|
||||
{
|
||||
"id": "STM32CubeProgrammer_PATH",
|
||||
"label": "STM32CubeProgrammer",
|
||||
"type": "path",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/",
|
||||
"unix": "%{Env:HOME}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
],
|
||||
"environmentEntries": [],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "Qul_DIR",
|
||||
"label": "Qt for MCUs SDK",
|
||||
"type": "path",
|
||||
"setting": "QtForMCUsSdk",
|
||||
"cmakeVar": "Qul_ROOT",
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "armgcc",
|
||||
"versions": [
|
||||
"9.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "ARMGCC_DIR",
|
||||
"label": "GNU Arm Embedded Toolchain",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"envVar": "ARMGCC_DIR",
|
||||
"setting": "GNUArmEmbeddedToolchain",
|
||||
"type": "path",
|
||||
"optional": false,
|
||||
"versionDetection" : {
|
||||
"filePattern": "bin/arm-none-eabi-g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
},
|
||||
"file" : {
|
||||
"id": "ARMGCC_CMAKE_TOOLCHAIN_FILE",
|
||||
"label": "CMake Toolchain File",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}//lib/cmake/Qul/toolchain/armgcc.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "STM32Cube_FW_H7_SDK_PATH",
|
||||
"setting": "STM32Cube_FW_H7_SDK_PATH",
|
||||
"versions": [
|
||||
"1.5.0"
|
||||
],
|
||||
"versionDetection" : {
|
||||
"filePattern": "package.xml",
|
||||
"xmlElement": "PackDescription",
|
||||
"xmlAttribute": "Release",
|
||||
"regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
},
|
||||
"id": "ST_SDK_DIR",
|
||||
"label": "Board SDK for STM32H750B-Discovery",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
})";
|
||||
122
src/plugins/mcusupport/test/errors_json.h
Normal file
122
src/plugins/mcusupport/test/errors_json.h
Normal file
@@ -0,0 +1,122 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto errors_json = R"(
|
||||
{
|
||||
"compatVersion": "1",
|
||||
"qulVersion": "2.0.0",
|
||||
"boardSdk": {
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "NXP_SDK_DIR",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"label": "This package has no label",
|
||||
"optional": false,
|
||||
"type": "path",
|
||||
"versions": ["2.10.0"]
|
||||
}
|
||||
{
|
||||
"id": "NXP_SDK_DIR",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"label": "",
|
||||
"label": "This package has empty label",
|
||||
"optional": false,
|
||||
"type": "path",
|
||||
"versions": ["2.10.0"]
|
||||
}
|
||||
],
|
||||
"envVar": "EVK_MIMXRT1064_SDK_PATH",
|
||||
"versions": ["2.10.0"]
|
||||
}
|
||||
}
|
||||
)";
|
||||
|
||||
constexpr auto unpaired_square_bracket_json = R"(
|
||||
{
|
||||
"compatVersion": "1",
|
||||
"qulVersion": "2.0.0",
|
||||
"toolchain": {
|
||||
"id": "greenhills",
|
||||
"versions": [
|
||||
"2018.1.5"
|
||||
],
|
||||
"compiler": {
|
||||
"label": "Green Hills Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"setting": "GHSToolchain",
|
||||
"label": "IAR ARM Compiler",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
},
|
||||
"file": {
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/ghs.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
}
|
||||
)";
|
||||
|
||||
constexpr auto mulitple_toolchain_versions = R"(
|
||||
{
|
||||
"compatVersion": "1",
|
||||
"qulVersion": "2.0.0",
|
||||
"platform": {
|
||||
"id": "id",
|
||||
"vendor": "ST",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"label": "Qt for MCUs SDK",
|
||||
"type": "path",
|
||||
"setting": "QtForMCUsSdk",
|
||||
"cmakeVar": "Qul_ROOT",
|
||||
"envVar": "Qul_DIR",
|
||||
"optional": false,
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/qmltocpp"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "STM32CubeProgrammer_PATH",
|
||||
"label": "STM32CubeProgrammer",
|
||||
"type": "path",
|
||||
"setting": "Stm32CubeProgrammer",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/",
|
||||
"unix": "%{Env:HOME}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "greenhills",
|
||||
"versions": [
|
||||
"2018.1.5",
|
||||
"123"
|
||||
],
|
||||
"compiler": {
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"setting": "GHSToolchain",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
},
|
||||
"file": {
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/ghs.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -3,43 +3,33 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto gcc_desktop_json = R"({
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "Qt",
|
||||
"platformName": "Desktop",
|
||||
"vendor": "Qt",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"pathEntries": [
|
||||
],
|
||||
"environmentEntries": [
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"envVar": "Qul_DIR",
|
||||
"label": "Qt for MCUs SDK",
|
||||
"type": "path",
|
||||
"cmakeVar": "Qul_ROOT",
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "gcc",
|
||||
"versions": [
|
||||
"9.4.0",
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"defaultValue": "/usr",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/g++",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
constexpr auto gcc_desktop_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "Qt",
|
||||
"platformName": "Desktop",
|
||||
"vendor": "Qt",
|
||||
"colorDepths": [
|
||||
32
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "gcc",
|
||||
"versions": [
|
||||
"9.4.0",
|
||||
"10.3.1"
|
||||
],
|
||||
"compiler": {
|
||||
"label": "GNU Toolchain",
|
||||
"defaultValue": "/usr",
|
||||
"versionDetection": {
|
||||
"executableArgs": "--version",
|
||||
"filePattern": "bin/g++",
|
||||
"regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
})";
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -3,63 +3,68 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto ghs_rh850_d1m1a_baremetal_json = R"({
|
||||
"qulVersion": "2.1.5",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "RH850-D1M1A-BAREMETAL",
|
||||
"vendor": "RENESAS",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"pathEntries": [],
|
||||
"environmentEntries": [],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "Qul_DIR",
|
||||
"description": "Qt for MCUs SDK",
|
||||
"type": "path",
|
||||
"cmakeVar": "Qul_ROOT",
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "greenhills",
|
||||
"versions": [
|
||||
"2018.1.5"
|
||||
],
|
||||
"compiler": {
|
||||
"description": "Green Hills Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"setting": "GHSToolchain",
|
||||
"label": "Green Hills Compiler",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
constexpr auto ghs_rh850_d1m1a_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "RH850-D1M1A-BAREMETAL",
|
||||
"vendor": "RENESAS",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "FlashProgrammer_path",
|
||||
"setting": "FlashProgrammerPath",
|
||||
"label": "Path to Renesas Flash Programmer",
|
||||
"type": "path",
|
||||
"cmakeVar": "RENESAS_FLASH_PROGRAMMER_PATH",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/Renesas Electronics/Programming Tools/Renesas Flash Programmer V3.09",
|
||||
"unix": "%{Env:HOME}"
|
||||
},
|
||||
"envVar": "RenesasFlashProgrammer_PATH",
|
||||
"optional": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"file": {
|
||||
"description": "CMake Toolchain File",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "/opt/qtformcu/2.2/lib/cmake/Qul/toolchain/ghs.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "RGL_DIR",
|
||||
"setting": "RGL_DIR",
|
||||
"versions": [ "2.0.0a" ],
|
||||
"id": "RGL_DIR",
|
||||
"description": "Renesas Graphics Library",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"defaultValue": "/Renesas_Electronics/D1x_RGL/rgl_ghs_D1Mx_obj_V.2.0.0a",
|
||||
"versionDetection": {
|
||||
"filePattern" : "rgl_*_obj_*",
|
||||
"regex" : "\\d+\\.\\d+\\.\\w+",
|
||||
"isFile" : false
|
||||
"toolchain": {
|
||||
"id": "greenhills",
|
||||
"versions": [
|
||||
"2018.1.5"
|
||||
],
|
||||
"compiler": {
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"setting": "GHSToolchain",
|
||||
"label": "Green Hills Compiler",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
},
|
||||
"file": {
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/ghs.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
})";
|
||||
"boardSdk": {
|
||||
"envVar": "RGL_DIR",
|
||||
"setting": "RGL_DIR",
|
||||
"versions": [
|
||||
"2.0.0a"
|
||||
],
|
||||
"label": "Renesas Graphics Library",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"defaultValue": "/Renesas_Electronics/D1x_RGL/rgl_ghs_D1Mx_obj_V.2.0.0a",
|
||||
"versionDetection": {
|
||||
"filePattern": "rgl_*_obj_*",
|
||||
"regex": "\\d+\\.\\d+\\.\\w+",
|
||||
"isFile": false
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
|
||||
59
src/plugins/mcusupport/test/ghs_tviic2d4m_baremetal_json.h
Normal file
59
src/plugins/mcusupport/test/ghs_tviic2d4m_baremetal_json.h
Normal file
@@ -0,0 +1,59 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto ghs_tviic2d4m_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "TVIIC2D4M-BAREMETAL",
|
||||
"vendor": "CYPRESS",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "INFINEON_AUTO_FLASH_UTILITY_DIR",
|
||||
"label": "Cypress Auto Flash Utility",
|
||||
"type": "path",
|
||||
"cmakeVar": "INFINEON_AUTO_FLASH_UTILITY_DIR",
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "arm-greenhills",
|
||||
"versions": [
|
||||
"201954"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "GHS_ARM_DIR",
|
||||
"label": "Green Hills Compiler for ARM",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
},
|
||||
"file": {
|
||||
"id": "GHS_ARM_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/ghs-arm.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "TVII_GRAPHICS_DRIVER_DIR",
|
||||
"versions": [
|
||||
"V1e.1.0"
|
||||
],
|
||||
"id": "TVII_GRAPHICS_DRIVER_DIR",
|
||||
"label": "Graphics Driver for Traveo II Cluster Series",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
59
src/plugins/mcusupport/test/ghs_tviic2d6m_baremetal_json.h
Normal file
59
src/plugins/mcusupport/test/ghs_tviic2d6m_baremetal_json.h
Normal file
@@ -0,0 +1,59 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto ghs_tviic2d6m_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "TVIIC2D6M-BAREMETAL",
|
||||
"vendor": "CYPRESS",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "INFINEON_AUTO_FLASH_UTILITY_DIR",
|
||||
"label": "Cypress Auto Flash Utility",
|
||||
"type": "path",
|
||||
"cmakeVar": "INFINEON_AUTO_FLASH_UTILITY_DIR",
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "arm-greenhills",
|
||||
"versions": [
|
||||
"201954"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "GHS_ARM_DIR",
|
||||
"label": "Green Hills Compiler for ARM",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
},
|
||||
"file": {
|
||||
"id": "GHS_ARM_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/ghs-arm.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "TVII_GRAPHICS_DRIVER_DIR",
|
||||
"versions": [
|
||||
"V1e.1.0"
|
||||
],
|
||||
"id": "TVII_GRAPHICS_DRIVER_DIR",
|
||||
"label": "Graphics Driver for Traveo II Cluster Series",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
65
src/plugins/mcusupport/test/iar_ek_ra6m3g_baremetal_json.h
Normal file
65
src/plugins/mcusupport/test/iar_ek_ra6m3g_baremetal_json.h
Normal file
@@ -0,0 +1,65 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_ek_ra6m3g_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "TVIIC2D6M-BAREMETAL",
|
||||
"vendor": "CYPRESS",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "INFINEON_AUTO_FLASH_UTILITY_DIR",
|
||||
"label": "Cypress Auto Flash Utility",
|
||||
"type": "path",
|
||||
"cmakeVar": "INFINEON_AUTO_FLASH_UTILITY_DIR",
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"8.22.3"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "TVII_GRAPHICS_DRIVER_DIR",
|
||||
"versions": [
|
||||
"V1e.1.0"
|
||||
],
|
||||
"id": "TVII_GRAPHICS_DRIVER_DIR",
|
||||
"label": "Graphics Driver for Traveo II Cluster Series",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
80
src/plugins/mcusupport/test/iar_ek_ra6m3g_freertos_json.h
Normal file
80
src/plugins/mcusupport/test/iar_ek_ra6m3g_freertos_json.h
Normal file
@@ -0,0 +1,80 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_ek_ra6m3g_freertos_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "EK-RA6M3G-FREERTOS",
|
||||
"vendor": "RENESAS",
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"cmakeVar": "JLINK_PATH",
|
||||
"setting": "JLinkPath",
|
||||
"envVar": "JLINK_PATH",
|
||||
"label": "Path to SEGGER J-Link",
|
||||
"type": "path",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/SEGGER/JLink",
|
||||
"unix": "/opt/SEGGER/JLink"
|
||||
},
|
||||
"optional": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"9.20.4"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EK_RA6M3G_FSP_PATH",
|
||||
"id": "EK_RA6M3G_FSP_PATH",
|
||||
"label": "Flexible Software Package for Renesas RA MCU Family",
|
||||
"optional": false,
|
||||
"type": "path",
|
||||
"versions": [
|
||||
"3.8.0"
|
||||
]
|
||||
},
|
||||
"freeRTOS": {
|
||||
"envVar": "EK_RA6M3G_FREERTOS_DIR",
|
||||
"id": "EK_RA6M3G_FREERTOS_DIR",
|
||||
"label": "FreeRTOS SDK for EK-RA6M3G",
|
||||
"cmakeVar": "FREERTOS_DIR",
|
||||
"defaultValue": "%{Qul_ROOT}/platform/boards/renesas/ek-ra6m3g-common/3rdparty/freertos",
|
||||
"validation": "tasks.c",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
55
src/plugins/mcusupport/test/iar_example_baremetal_json.h
Normal file
55
src/plugins/mcusupport/test/iar_example_baremetal_json.h
Normal file
@@ -0,0 +1,55 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_example_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "EXAMPLE-BAREMETAL",
|
||||
"vendor": "Vendor Name",
|
||||
"colorDepths": [
|
||||
16
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"9.20.4"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"versions": [
|
||||
"1.16.0"
|
||||
],
|
||||
"id": "EXAMPLE_SDK_DIR",
|
||||
"label": "Board SDK",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,79 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_mimxrt1050_evk_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "MIMXRT1050-EVK-BAREMETAL",
|
||||
"vendor": "NXP",
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"label": "MCUXpresso IDE",
|
||||
"type": "path",
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"envVar": "MCUXpressoIDE_PATH",
|
||||
"setting": "MCUXpressoIDE",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*",
|
||||
"unix": "/usr/local/mcuxpressoide/"
|
||||
},
|
||||
"versionDetection": {
|
||||
"filePattern": "ide/binaries/crt_emu_cm_redlink"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"9.20.4"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EVKB_IMXRT1050_SDK_PATH",
|
||||
"label": "Board SDK for MIMXRT1050-EVK",
|
||||
"optional": false,
|
||||
"setting": "EVKB_IMXRT1050_SDK_PATH",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "*_manifest_*.xml",
|
||||
"regex": ".*",
|
||||
"xmlAttribute": "version",
|
||||
"xmlElement": "ksdk"
|
||||
},
|
||||
"versions": [
|
||||
"2.12.0"
|
||||
]
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,89 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_mimxrt1050_evk_freertos_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "MIMXRT1050-EVK-FREERTOS",
|
||||
"vendor": "NXP",
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"label": "MCUXpresso IDE",
|
||||
"type": "path",
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"envVar": "MCUXpressoIDE_PATH",
|
||||
"setting": "MCUXpressoIDE",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*",
|
||||
"unix": "/usr/local/mcuxpressoide/"
|
||||
},
|
||||
"versionDetection": {
|
||||
"filePattern": "ide/binaries/crt_emu_cm_redlink"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"9.20.4"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EVKB_IMXRT1050_SDK_PATH",
|
||||
"label": "Board SDK for MIMXRT1050-EVK",
|
||||
"optional": false,
|
||||
"setting": "EVKB_IMXRT1050_SDK_PATH",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "*_manifest_*.xml",
|
||||
"regex": ".*",
|
||||
"xmlAttribute": "version",
|
||||
"xmlElement": "ksdk"
|
||||
},
|
||||
"versions": [
|
||||
"2.12.0"
|
||||
]
|
||||
},
|
||||
"freeRTOS": {
|
||||
"cmakeVar": "FREERTOS_DIR",
|
||||
"defaultValue": "%{QUL_BOARD_SDK_DIR}/rtos/freertos/freertos_kernel",
|
||||
"validation": "tasks.c",
|
||||
"envVar": "IMXRT1050_FREERTOS_DIR",
|
||||
"label": "FreeRTOS SDK for MIMXRT1050-EVK",
|
||||
"optional": false,
|
||||
"setting": "FreeRTOSSourcePackage_IMXRT1050",
|
||||
"type": "path"
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,79 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_mimxrt1060_evk_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "MIMXRT1060-EVK-BAREMETAL",
|
||||
"vendor": "NXP",
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"label": "MCUXpresso IDE",
|
||||
"type": "path",
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"envVar": "MCUXpressoIDE_PATH",
|
||||
"setting": "MCUXpressoIDE",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*",
|
||||
"unix": "/usr/local/mcuxpressoide/"
|
||||
},
|
||||
"versionDetection": {
|
||||
"filePattern": "ide/binaries/crt_emu_cm_redlink"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"9.20.4"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EVK_MIMXRT1060_SDK_PATH",
|
||||
"label": "Board SDK for MIMXRT1060-EVK",
|
||||
"optional": false,
|
||||
"setting": "EVK_MIMXRT1060_SDK_PATH",
|
||||
"type": "path",
|
||||
"versions": [
|
||||
"2.12.0"
|
||||
],
|
||||
"versionDetection": {
|
||||
"filePattern": "*_manifest_*.xml",
|
||||
"regex": ".*",
|
||||
"xmlAttribute": "version",
|
||||
"xmlElement": "ksdk"
|
||||
}
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,79 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_mimxrt1064_evk_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "MIMXRT1064-EVK-BAREMETAL",
|
||||
"vendor": "NXP",
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"label": "MCUXpresso IDE",
|
||||
"type": "path",
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"envVar": "MCUXpressoIDE_PATH",
|
||||
"setting": "MCUXpressoIDE",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*",
|
||||
"unix": "/usr/local/mcuxpressoide/"
|
||||
},
|
||||
"versionDetection": {
|
||||
"filePattern": "ide/binaries/crt_emu_cm_redlink"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"9.20.4"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EVK_MIMXRT1064_SDK_PATH",
|
||||
"label": "Board SDK for MIMXRT1064-EVK",
|
||||
"optional": false,
|
||||
"setting": "EVK_MIMXRT1064_SDK_PATH",
|
||||
"type": "path",
|
||||
"versions": [
|
||||
"2.12.0"
|
||||
],
|
||||
"versionDetection": {
|
||||
"filePattern": "*_manifest_*.xml",
|
||||
"regex": ".*",
|
||||
"xmlAttribute": "version",
|
||||
"xmlElement": "ksdk"
|
||||
}
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -3,79 +3,87 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_nxp_1064_json = R"({
|
||||
constexpr auto iar_mimxrt1064_evk_freertos_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"qulVersion": "2.0.0",
|
||||
"platform": {
|
||||
"id": "MIMXRT1064-EVK-FREERTOS",
|
||||
"vendor": "NXP",
|
||||
"colorDepths": [
|
||||
16
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"label": "MCUXpresso IDE",
|
||||
"type": "path",
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"envVar": "MCUXpressoIDE_PATH",
|
||||
"setting": "MCUXpressoIDE",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*",
|
||||
"unix": "/usr/local/mcuxpressoide/"
|
||||
},
|
||||
"versionDetection": {
|
||||
"filePattern": "ide/binaries/crt_emu_cm_redlink"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"9.20.4"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EVK_MIMXRT1064_SDK_PATH",
|
||||
"id": "NXP_SDK_DIR",
|
||||
"label": "Board SDK for MIMXRT1064-EVK",
|
||||
"optional": false,
|
||||
"setting": "EVK_MIMXRT1064_SDK_PATH",
|
||||
"type": "path",
|
||||
"versions": [
|
||||
"2.12.0"
|
||||
],
|
||||
"versionDetection": {
|
||||
"filePattern": "*_manifest_*.xml",
|
||||
"regex": ".*",
|
||||
"xmlAttribute": "version",
|
||||
"xmlElement": "ksdk"
|
||||
},
|
||||
"versions": ["2.11.0"]
|
||||
}
|
||||
},
|
||||
"freeRTOS": {
|
||||
"cmakeVar": "FREERTOS_DIR",
|
||||
"defaultValue": "%{QUL_BOARD_SDK_DIR}/rtos/freertos/freertos_kernel",
|
||||
"validation": "tasks.c",
|
||||
"envVar": "IMXRT1064_FREERTOS_DIR",
|
||||
"id": "NXP_FREERTOS_DIR",
|
||||
"label": "FreeRTOS SDK for MIMXRT1064-EVK",
|
||||
"optional": false,
|
||||
"setting": "FreeRTOSSourcePackage_IMXRT1064",
|
||||
"type": "path"
|
||||
},
|
||||
"platform": {
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"cmakeVar": "Qul_ROOT",
|
||||
"label": "Qt for MCUs SDK",
|
||||
"id": "Qul_DIR",
|
||||
"optional": false,
|
||||
"type": "path"
|
||||
},
|
||||
{
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"defaultValue": {
|
||||
"unix": "/usr/local/mcuxpressoide/",
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*"
|
||||
}
|
||||
}
|
||||
],
|
||||
"colorDepths": [16],
|
||||
"environmentEntries": [],
|
||||
"id": "MIMXRT1064-EVK-FREERTOS",
|
||||
"pathEntries": [],
|
||||
"vendor": "NXP"
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": ["8.50.9"],
|
||||
"compiler": {
|
||||
"id": "IAR_DIR",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"optional": false,
|
||||
"type": "path"
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"label": "CMake Toolchain File",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "/opt/qtformcu/2.2//lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
})";
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,87 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_mimxrt1170_evk_freertos_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "MIMXRT1170-EVK-FREERTOS",
|
||||
"vendor": "NXP",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"label": "MCUXpresso IDE",
|
||||
"type": "path",
|
||||
"cmakeVar": "MCUXPRESSO_IDE_PATH",
|
||||
"envVar": "MCUXpressoIDE_PATH",
|
||||
"setting": "MCUXpressoIDE",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:ROOT}/nxp/MCUXpressoIDE*",
|
||||
"unix": "/usr/local/mcuxpressoide/"
|
||||
},
|
||||
"versionDetection": {
|
||||
"filePattern": "ide/binaries/crt_emu_cm_redlink"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"9.20.4"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"envVar": "EVK_MIMXRT1170_SDK_PATH",
|
||||
"versions": [
|
||||
"2.12.0"
|
||||
],
|
||||
"label": "Board SDK for MIMXRT1170-EVK",
|
||||
"type": "path",
|
||||
"setting": "EVK_MIMXRT1170_SDK_PATH",
|
||||
"versionDetection": {
|
||||
"filePattern": "*_manifest_*.xml",
|
||||
"regex": ".*",
|
||||
"xmlAttribute": "version",
|
||||
"xmlElement": "ksdk"
|
||||
}
|
||||
},
|
||||
"freeRTOS": {
|
||||
"cmakeVar": "FREERTOS_DIR",
|
||||
"envVar": "EVK_MIMXRT1170_FREERTOS_PATH",
|
||||
"label": "FreeRTOS SDK for MIMXRT1170-EVK",
|
||||
"defaultValue": "%{QUL_BOARD_SDK_DIR}/rtos/freertos/freertos_kernel",
|
||||
"validation": "tasks.c",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,75 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_stm32f469i_discovery_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "STM32F469I-DISCOVERY-BAREMETAL",
|
||||
"vendor": "ST",
|
||||
"colorDepths": [
|
||||
24
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "STM32CubeProgrammer_PATH",
|
||||
"label": "STM32CubeProgrammer",
|
||||
"type": "path",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/",
|
||||
"unix": "%{Env:HOME}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"9.20.4"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "STM32Cube_FW_F4_SDK_PATH",
|
||||
"setting": "STM32Cube_FW_F4_SDK_PATH",
|
||||
"versions": [
|
||||
"1.27.0"
|
||||
],
|
||||
"versionDetection": {
|
||||
"filePattern": "package.xml",
|
||||
"xmlElement": "PackDescription",
|
||||
"xmlAttribute": "Release",
|
||||
"regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
},
|
||||
"id": "ST_SDK_DIR",
|
||||
"label": "Board SDK for STM32F469I-Discovery",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -1,82 +0,0 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_stm32f469i_metal_json = R"({
|
||||
"qulVersion": "@CMAKE_PROJECT_VERSION@",
|
||||
"compatVersion": "@COMPATIBILITY_VERSION@",
|
||||
"platform": {
|
||||
"id": "STM32F469I-DISCOVERY-BAREMETAL",
|
||||
"vendor": "ST",
|
||||
"colorDepths": [
|
||||
24
|
||||
],
|
||||
"pathEntries": [
|
||||
{
|
||||
"id": "STM32CubeProgrammer_PATH",
|
||||
"label": "STM32CubeProgrammer",
|
||||
"type": "path",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/",
|
||||
"unix": "%{Env:HOME}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
],
|
||||
"environmentEntries": [],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "Qul_DIR",
|
||||
"label": "Qt for MCUs SDK",
|
||||
"type": "path",
|
||||
"cmakeVar": "Qul_ROOT",
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"8.50.9"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection" : {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"label": "CMake Toolchain File",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "/opt/qtformcu/2.2//lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "STM32Cube_FW_F4_SDK_PATH",
|
||||
"setting": "STM32Cube_FW_F4_SDK_PATH",
|
||||
"versions": [ "1.25.0" ],
|
||||
"versionDetection" : {
|
||||
"filePattern": "package.xml",
|
||||
"xmlElement": "PackDescription",
|
||||
"xmlAttribute": "Release",
|
||||
"regex": "\b(\d+\.\d+\.\d+)\b"
|
||||
},
|
||||
"id": "ST_SDK_DIR",
|
||||
"label": "Board SDK for STM32F469I-Discovery",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
})";
|
||||
@@ -0,0 +1,75 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_stm32f769i_discovery_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "STM32F769I-DISCOVERY-BAREMETAL",
|
||||
"vendor": "ST",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "STM32CubeProgrammer_PATH",
|
||||
"label": "STM32CubeProgrammer",
|
||||
"type": "path",
|
||||
"setting": "Stm32CubeProgrammer",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/",
|
||||
"unix": "%{Env:HOME}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"9.20.4"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "STM32Cube_FW_F7_SDK_PATH",
|
||||
"setting": "STM32Cube_FW_F7_SDK_PATH",
|
||||
"versions": [
|
||||
"1.17.0"
|
||||
],
|
||||
"versionDetection": {
|
||||
"filePattern": "package.xml",
|
||||
"xmlElement": "PackDescription",
|
||||
"xmlAttribute": "Release",
|
||||
"regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
},
|
||||
"label": "Board SDK for STM32F769I-Discovery",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,85 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_stm32f769i_discovery_freertos_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "STM32F769I-DISCOVERY-FREERTOS",
|
||||
"vendor": "ST",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "STM32CubeProgrammer_PATH",
|
||||
"label": "STM32CubeProgrammer",
|
||||
"type": "path",
|
||||
"setting": "Stm32CubeProgrammer",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/",
|
||||
"unix": "%{Env:HOME}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"9.20.4"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "STM32Cube_FW_F7_SDK_PATH",
|
||||
"setting": "STM32Cube_FW_F7_SDK_PATH",
|
||||
"versions": [
|
||||
"1.17.0"
|
||||
],
|
||||
"versionDetection": {
|
||||
"filePattern": "package.xml",
|
||||
"xmlElement": "PackDescription",
|
||||
"xmlAttribute": "Release",
|
||||
"regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
},
|
||||
"label": "Board SDK for STM32F769I-Discovery",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
},
|
||||
"freeRTOS": {
|
||||
"envVar": "STM32F7_FREERTOS_DIR",
|
||||
"label": "FreeRTOS SDK for STM32F769I-Discovery",
|
||||
"cmakeVar": "FREERTOS_DIR",
|
||||
"defaultValue": "%{QUL_BOARD_SDK_DIR}/Middlewares/Third_Party/FreeRTOS/Source",
|
||||
"validation": "tasks.c",
|
||||
"type": "path",
|
||||
"setting": "FreeRTOSSourcePackage_STM32F7",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -0,0 +1,76 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_stm32h750b_discovery_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "STM32H750B-DISCOVERY-BAREMETAL",
|
||||
"vendor": "ST",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "STM32CubeProgrammer_PATH",
|
||||
"label": "STM32CubeProgrammer",
|
||||
"type": "path",
|
||||
"setting": "Stm32CubeProgrammer",
|
||||
"defaultValue": {
|
||||
"windows": "%{Env:PROGRAMSANDFILES}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/",
|
||||
"unix": "%{Env:HOME}/STMicroelectronics/STM32Cube/STM32CubeProgrammer/"
|
||||
},
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"9.20.4"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "STM32Cube_FW_H7_SDK_PATH",
|
||||
"setting": "STM32Cube_FW_H7_SDK_PATH",
|
||||
"versions": [
|
||||
"1.10.0"
|
||||
],
|
||||
"versionDetection": {
|
||||
"filePattern": "package.xml",
|
||||
"xmlElement": "PackDescription",
|
||||
"xmlAttribute": "Release",
|
||||
"regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b"
|
||||
},
|
||||
"id": "ST_SDK_DIR",
|
||||
"label": "Board SDK for STM32H750B-Discovery",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
65
src/plugins/mcusupport/test/iar_tviic2d6m_baremetal_json.h
Normal file
65
src/plugins/mcusupport/test/iar_tviic2d6m_baremetal_json.h
Normal file
@@ -0,0 +1,65 @@
|
||||
// Copyright (C) 2022 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto iar_tviic2d6m_baremetal_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "TVIIC2D6M-BAREMETAL",
|
||||
"vendor": "CYPRESS",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"id": "INFINEON_AUTO_FLASH_UTILITY_DIR",
|
||||
"label": "Cypress Auto Flash Utility",
|
||||
"type": "path",
|
||||
"cmakeVar": "INFINEON_AUTO_FLASH_UTILITY_DIR",
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "iar",
|
||||
"versions": [
|
||||
"8.22.3"
|
||||
],
|
||||
"compiler": {
|
||||
"id": "IARToolchain",
|
||||
"setting": "IARToolchain",
|
||||
"envVar": "IAR_ARM_COMPILER_DIR",
|
||||
"label": "IAR ARM Compiler",
|
||||
"cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR",
|
||||
"type": "path",
|
||||
"versionDetection": {
|
||||
"filePattern": "bin/iccarm",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
},
|
||||
"file": {
|
||||
"id": "IAR_CMAKE_TOOLCHAIN_FILE",
|
||||
"cmakeVar": "CMAKE_TOOLCHAIN_FILE",
|
||||
"type": "file",
|
||||
"defaultValue": "%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake",
|
||||
"visible": false,
|
||||
"optional": false
|
||||
}
|
||||
},
|
||||
"boardSdk": {
|
||||
"envVar": "TVII_GRAPHICS_DRIVER_DIR",
|
||||
"versions": [
|
||||
"V1e.1.0"
|
||||
],
|
||||
"id": "TVII_GRAPHICS_DRIVER_DIR",
|
||||
"label": "Graphics Driver for Traveo II Cluster Series",
|
||||
"cmakeVar": "QUL_BOARD_SDK_DIR",
|
||||
"type": "path",
|
||||
"optional": false
|
||||
}
|
||||
}
|
||||
)";
|
||||
@@ -3,43 +3,41 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
constexpr auto msvc_desktop_json = R"({
|
||||
"qulVersion": "@CMAKE_PROJECT_VERSION@",
|
||||
"compatVersion": "@COMPATIBILITY_VERSION@",
|
||||
"platform": {
|
||||
"id": "Qt",
|
||||
"platformName": "Desktop",
|
||||
"vendor": "Qt",
|
||||
"colorDepths": [
|
||||
32
|
||||
],
|
||||
"pathEntries": [
|
||||
],
|
||||
"environmentEntries": [
|
||||
],
|
||||
"cmakeEntries": [
|
||||
{
|
||||
"envVar": "Qul_DIR",
|
||||
"label": "Qt for MCUs SDK",
|
||||
"type": "path",
|
||||
"cmakeVar": "Qul_ROOT",
|
||||
"optional": false
|
||||
}
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "msvc",
|
||||
"versions": [
|
||||
"19.20","19.21","19.22","19.23","19.24",
|
||||
"19.25","19.26","19.27","19.28","19.29"
|
||||
],
|
||||
"compiler": {
|
||||
"defaultValue": "%{Env:MSVC_COMPILER_DIR}",
|
||||
"versionDetection" : {
|
||||
"filePattern": "cl.exe",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\b(\\d+\\.\\d+)\\.\\d+\\b"
|
||||
constexpr auto msvc_desktop_json = R"(
|
||||
{
|
||||
"qulVersion": "2.3.0",
|
||||
"compatVersion": "1",
|
||||
"platform": {
|
||||
"id": "Qt",
|
||||
"platformName": "Desktop",
|
||||
"vendor": "Qt",
|
||||
"colorDepths": [
|
||||
32
|
||||
]
|
||||
},
|
||||
"toolchain": {
|
||||
"id": "msvc",
|
||||
"versions": [
|
||||
"19.20",
|
||||
"19.21",
|
||||
"19.22",
|
||||
"19.23",
|
||||
"19.24",
|
||||
"19.25",
|
||||
"19.26",
|
||||
"19.27",
|
||||
"19.28",
|
||||
"19.29"
|
||||
],
|
||||
"compiler": {
|
||||
"label": "MSVC Toolchain",
|
||||
"defaultValue": "%{Env:MSVC_COMPILER_DIR}",
|
||||
"versionDetection": {
|
||||
"filePattern": "cl.exe",
|
||||
"executableArgs": "--version",
|
||||
"regex": "\\b(\\d+\\.\\d+)\\.\\d+\\b"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
})";
|
||||
}
|
||||
)";
|
||||
|
||||
@@ -3,15 +3,18 @@
|
||||
|
||||
#include "unittest.h"
|
||||
|
||||
#include "armgcc_nxp_1050_json.h"
|
||||
#include "armgcc_nxp_1064_json.h"
|
||||
#include "armgcc_nxp_mimxrt1170_evk_freertos_json.h"
|
||||
#include "armgcc_stm32f769i_freertos_json.h"
|
||||
#include "armgcc_stm32h750b_metal_json.h"
|
||||
#include "armgcc_ek_ra6m3g_baremetal_json.h"
|
||||
#include "armgcc_mimxrt1050_evk_freertos_json.h"
|
||||
#include "armgcc_mimxrt1064_evk_freertos_json.h"
|
||||
#include "armgcc_mimxrt1170_evk_freertos_json.h"
|
||||
#include "armgcc_stm32f769i_discovery_freertos_json.h"
|
||||
#include "armgcc_stm32h750b_discovery_baremetal_json.h"
|
||||
#include "errors_json.h"
|
||||
#include "gcc_desktop_json.h"
|
||||
#include "ghs_rh850_d1m1a_baremetal_json.h"
|
||||
#include "iar_nxp_1064_json.h"
|
||||
#include "iar_stm32f469i_metal_json.h"
|
||||
#include "iar_mimxrt1064_evk_freertos_json.h"
|
||||
#include "iar_mimxrt1170_evk_freertos_json.h"
|
||||
#include "iar_stm32f469i_discovery_baremetal_json.h"
|
||||
#include "msvc_desktop_json.h"
|
||||
|
||||
#include "mcuhelpers.h"
|
||||
@@ -51,6 +54,7 @@
|
||||
namespace McuSupport::Internal::Test {
|
||||
|
||||
using namespace Utils;
|
||||
|
||||
using Legacy::Constants::BOARD_SDK_CMAKE_VAR;
|
||||
using Legacy::Constants::QT_FOR_MCUS_SDK_PACKAGE_VALIDATION_PATH;
|
||||
using Legacy::Constants::QUL_CMAKE_VAR;
|
||||
@@ -62,7 +66,6 @@ using Legacy::Constants::TOOLCHAIN_FILE_CMAKE_VARIABLE;
|
||||
|
||||
using CMakeProjectManager::CMakeConfigItem;
|
||||
using CMakeProjectManager::CMakeConfigurationKitAspect;
|
||||
using ProjectExplorer::EnvironmentKitAspect;
|
||||
using ProjectExplorer::Kit;
|
||||
using ProjectExplorer::KitManager;
|
||||
using ProjectExplorer::ToolChain;
|
||||
@@ -80,15 +83,11 @@ const char armGccDirectorySetting[]{"GNUArmEmbeddedToolchain"};
|
||||
const char armGccEnvVar[]{"ARMGCC_DIR"};
|
||||
const char armGccLabel[]{"GNU Arm Embedded Toolchain"};
|
||||
const char armGccSuffix[]{"bin/arm-none-eabi-g++"};
|
||||
const char armGccToolchainFilePath[]{"/opt/toolchain/armgcc.cmake"};
|
||||
const char armGccToolchainFileDefaultPath[]{
|
||||
"/opt/qtformcu/2.2/lib/cmake/Qul/toolchain/armgcc.cmake"};
|
||||
const char armGccToolchainFilePathWithVariable[]{
|
||||
"%{Qul_ROOT}/lib/cmake/Qul/toolchain/armgcc.cmake"};
|
||||
const char armGccVersion[]{"9.3.1"};
|
||||
const char armGccNewVersion[]{"10.3.1"};
|
||||
const char armGccToolchainFilePath[]{"/opt/qtformcu/2.2/lib/cmake/Qul/toolchain/armgcc.cmake"};
|
||||
const char armGccToolchainFileUnexpandedPath[]{"%{Qul_ROOT}/lib/cmake/Qul/toolchain/armgcc.cmake"};
|
||||
const char armGccVersion[]{"10.3.1"};
|
||||
const char msvcVersion[]{"14.29"};
|
||||
const char boardSdkVersion[]{"2.11.0"};
|
||||
const char boardSdkVersion[]{"2.12.0"};
|
||||
const QString boardSdkCmakeVar{Legacy::Constants::BOARD_SDK_CMAKE_VAR};
|
||||
const char boardSdkDir[]{"/opt/Qul/2.3.0/boardDir/"};
|
||||
const char cmakeToolchainLabel[]{"CMake Toolchain File"};
|
||||
@@ -101,9 +100,8 @@ const char freeRtosDetectionPath[]{"tasks.c"};
|
||||
const char freeRtosNxpPathSuffix[]{"rtos/freertos/freertos_kernel"};
|
||||
const char freeRtosStmPathSuffix[]{"/Middlewares/Third_Party/FreeRTOS/Source"};
|
||||
const char freeRtosSetting[]{"Freertos"};
|
||||
const char greenhillToolchainFilePath[]{"/opt/toolchain/ghs.cmake"};
|
||||
const char greenhillToolchainFileDefaultPath[]{
|
||||
"/opt/qtformcu/2.2/lib/cmake/Qul/toolchain/ghs.cmake"};
|
||||
const char greenhillToolchainFilePath[]{"/opt/qtformcu/2.2/lib/cmake/Qul/toolchain/ghs.cmake"};
|
||||
const char greenhillToolchainFileUnexpandedPath[]{"%{Qul_ROOT}/lib/cmake/Qul/toolchain/ghs.cmake"};
|
||||
const char greenhillCompilerDir[]{"/abs/ghs"};
|
||||
const char greenhillSetting[]{"GHSToolchain"};
|
||||
const QStringList greenhillVersions{{"2018.1.5"}};
|
||||
@@ -111,10 +109,10 @@ const char iarDir[]{"/opt/iar/compiler"};
|
||||
const char iarEnvVar[]{"IAR_ARM_COMPILER_DIR"};
|
||||
const char iarLabel[]{"IAR ARM Compiler"};
|
||||
const char iarSetting[]{"IARToolchain"};
|
||||
const char iarToolchainFilePath[]{"/opt/toolchain/iar.cmake"};
|
||||
const char iarToolchainFileDefaultPath[]{"/opt/qtformcu/2.2/lib/cmake/Qul/toolchain/iar.cmake"};
|
||||
const char iarToolchainFilePath[]{"/opt/qtformcu/2.2/lib/cmake/Qul/toolchain/iar.cmake"};
|
||||
const char iarToolchainFileUnexpandedPath[]{"%{Qul_ROOT}/lib/cmake/Qul/toolchain/iar.cmake"};
|
||||
const char iarVersionDetectionRegex[]{R"(\bV(\d+\.\d+\.\d+)\.\d+\b)"};
|
||||
const QStringList iarVersions{{"8.50.9"}};
|
||||
const QStringList iarVersions{{"9.20.4"}};
|
||||
const char iar[]{"iar"};
|
||||
const char id[]{"target_id"};
|
||||
const char name[]{"target_name"};
|
||||
@@ -136,17 +134,17 @@ const QString settingsPrefix = QLatin1String(Constants::SETTINGS_GROUP) + '/'
|
||||
const QString unsupportedToolchainFilePath = QString{qtForMcuSdkPath}
|
||||
+ "/lib/cmake/Qul/toolchain/unsupported.cmake";
|
||||
|
||||
const QStringList jsonFiles{QString::fromUtf8(armgcc_nxp_1050_json),
|
||||
QString::fromUtf8(iar_nxp_1064_json)};
|
||||
const QStringList jsonFiles{QString::fromUtf8(armgcc_mimxrt1050_evk_freertos_json),
|
||||
QString::fromUtf8(iar_mimxrt1064_evk_freertos_json)};
|
||||
|
||||
const bool runLegacy{true};
|
||||
const int colorDepth{32};
|
||||
|
||||
const PackageDescription
|
||||
qtForMCUsSDKDescription{Legacy::Constants::QUL_LABEL,
|
||||
qtForMCUsSDKDescription{QUL_LABEL,
|
||||
QUL_ENV_VAR,
|
||||
QUL_CMAKE_VAR,
|
||||
Legacy::Constants::QUL_LABEL,
|
||||
{},
|
||||
Constants::SETTINGS_KEY_PACKAGE_QT_FOR_MCUS_SDK,
|
||||
qtForMcuSdkPath,
|
||||
Legacy::Constants::QT_FOR_MCUS_SDK_PACKAGE_VALIDATION_PATH,
|
||||
@@ -234,6 +232,7 @@ void verifyMsvcToolchain(const McuToolChainPackagePtr &msvcPackage, const QStrin
|
||||
|
||||
void verifyTargetToolchains(const Targets &targets,
|
||||
const QString &toolchainFilePath,
|
||||
const QString &toolchainFileDefaultPath,
|
||||
const QString &compilerPath,
|
||||
const QString &compilerSetting,
|
||||
const QStringList &versions)
|
||||
@@ -246,7 +245,7 @@ void verifyTargetToolchains(const Targets &targets,
|
||||
QCOMPARE(toolchainFile->cmakeVariableName(), Legacy::Constants::TOOLCHAIN_FILE_CMAKE_VARIABLE);
|
||||
QCOMPARE(toolchainFile->settingsKey(), empty);
|
||||
QCOMPARE(toolchainFile->path().toString(), toolchainFilePath);
|
||||
QCOMPARE(toolchainFile->defaultPath().toString(), toolchainFilePath);
|
||||
QCOMPARE(toolchainFile->defaultPath().toString(), toolchainFileDefaultPath);
|
||||
|
||||
const auto toolchainCompiler{target->toolChainPackage()};
|
||||
QVERIFY(toolchainCompiler);
|
||||
@@ -283,7 +282,27 @@ void verifyFreeRtosPackage(const McuPackagePtr &freeRtos,
|
||||
QCOMPARE(freeRtos->settingsKey(), expectedSettingsKey);
|
||||
QCOMPARE(freeRtos->path().cleanPath().toString(), freeRtosPath);
|
||||
QCOMPARE(freeRtos->detectionPath().cleanPath().toString(), freeRtosDetectionPath);
|
||||
QVERIFY(freeRtos->path().toString().startsWith(boardSdkDir.cleanPath().toString()));
|
||||
QVERIFY(freeRtos->path().toUserOutput().startsWith(boardSdkDir.cleanPath().toUserOutput()));
|
||||
}
|
||||
|
||||
void verifyPackage(const McuPackagePtr &package,
|
||||
const QString &path,
|
||||
const QString &defaultPath,
|
||||
const QString &setting,
|
||||
const QString &cmakeVar,
|
||||
const QString &envVar,
|
||||
const QString &label,
|
||||
const QString &detectionPath,
|
||||
const QStringList &versions)
|
||||
{
|
||||
QVERIFY(package);
|
||||
QCOMPARE(package->defaultPath().toString(), defaultPath);
|
||||
QCOMPARE(package->path().toString(), path);
|
||||
QCOMPARE(package->cmakeVariableName(), cmakeVar);
|
||||
QCOMPARE(package->environmentVariableName(), envVar);
|
||||
QCOMPARE(package->label(), label);
|
||||
QCOMPARE(package->settingsKey(), setting);
|
||||
QCOMPARE(package->versions(), versions);
|
||||
}
|
||||
|
||||
McuSupportTest::McuSupportTest()
|
||||
@@ -354,12 +373,15 @@ void McuSupportTest::initTestCase()
|
||||
EXPECT_CALL(*freeRtosPackage, isAddToSystemPath()).WillRepeatedly(Return(true));
|
||||
EXPECT_CALL(*freeRtosPackage, detectionPath()).WillRepeatedly(Return(FilePath{}));
|
||||
|
||||
EXPECT_CALL(*sdkPackage, environmentVariableName()).WillRepeatedly(Return(QString{QUL_ENV_VAR}));
|
||||
EXPECT_CALL(*sdkPackage, cmakeVariableName()).WillRepeatedly(Return(QString{QUL_CMAKE_VAR}));
|
||||
EXPECT_CALL(*sdkPackage, isValidStatus()).WillRepeatedly(Return(true));
|
||||
EXPECT_CALL(*sdkPackage, path()).WillRepeatedly(Return(FilePath::fromUserInput(qtForMcuSdkPath)));
|
||||
EXPECT_CALL(*sdkPackage, isAddToSystemPath()).WillRepeatedly(Return(true));
|
||||
EXPECT_CALL(*sdkPackage, detectionPath()).WillRepeatedly(Return(FilePath{}));
|
||||
ON_CALL(*sdkPackage, label()).WillByDefault(Return(QString{QUL_LABEL}));
|
||||
ON_CALL(*sdkPackage, settingsKey())
|
||||
.WillByDefault(Return(QString{Constants::SETTINGS_KEY_PACKAGE_QT_FOR_MCUS_SDK}));
|
||||
ON_CALL(*sdkPackage, environmentVariableName()).WillByDefault(Return(QString{QUL_ENV_VAR}));
|
||||
ON_CALL(*sdkPackage, cmakeVariableName()).WillByDefault(Return(QString{QUL_CMAKE_VAR}));
|
||||
ON_CALL(*sdkPackage, isValidStatus()).WillByDefault(Return(true));
|
||||
ON_CALL(*sdkPackage, path()).WillByDefault(Return(FilePath::fromUserInput(qtForMcuSdkPath)));
|
||||
ON_CALL(*sdkPackage, isAddToSystemPath()).WillByDefault(Return(true));
|
||||
ON_CALL(*sdkPackage, detectionPath()).WillByDefault(Return(FilePath{}));
|
||||
|
||||
EXPECT_CALL(*armGccToolchainFilePackage, environmentVariableName())
|
||||
.WillRepeatedly(Return(QString{QString{}}));
|
||||
@@ -391,14 +413,14 @@ void McuSupportTest::cleanup()
|
||||
|
||||
void McuSupportTest::test_parseBasicInfoFromJson()
|
||||
{
|
||||
const auto description = parseDescriptionJson(iar_nxp_1064_json);
|
||||
const auto description = parseDescriptionJson(iar_mimxrt1064_evk_freertos_json);
|
||||
|
||||
QVERIFY(!description.freeRTOS.envVar.isEmpty());
|
||||
}
|
||||
|
||||
void McuSupportTest::test_parseCmakeEntries()
|
||||
{
|
||||
const auto description{parseDescriptionJson(iar_nxp_1064_json)};
|
||||
const auto description{parseDescriptionJson(iar_mimxrt1064_evk_freertos_json)};
|
||||
|
||||
auto &freeRtos = description.freeRTOS.package;
|
||||
QCOMPARE(freeRtos.envVar, nxp1064FreeRtosEnvVar);
|
||||
@@ -413,22 +435,25 @@ void McuSupportTest::test_parseToolchainFromJSON_data()
|
||||
QTest::addColumn<QString>("id");
|
||||
|
||||
//TODO(me): Add ghs nxp 1064 nxp 1070.
|
||||
QTest::newRow("armgcc_nxp_1050_json") << armgcc_nxp_1050_json << armGccEnvVar << armGccLabel
|
||||
<< armGccToolchainFilePathWithVariable << armGcc;
|
||||
QTest::newRow("armgcc_stm32f769i_freertos_json")
|
||||
<< armgcc_stm32f769i_freertos_json << armGccEnvVar << armGccLabel
|
||||
<< armGccToolchainFilePathWithVariable << armGcc;
|
||||
QTest::newRow("armgcc_mimxrt1050_evk_freertos_json")
|
||||
<< armgcc_mimxrt1050_evk_freertos_json << armGccEnvVar << armGccLabel
|
||||
<< armGccToolchainFileUnexpandedPath << armGcc;
|
||||
QTest::newRow("armgcc_mimxrt1064_evk_freertos_json")
|
||||
<< armgcc_mimxrt1064_evk_freertos_json << armGccEnvVar << armGccLabel
|
||||
<< armGccToolchainFileUnexpandedPath << armGcc;
|
||||
QTest::newRow("armgcc_mimxrt1170_evk_freertos_json")
|
||||
<< armgcc_mimxrt1170_evk_freertos_json << armGccEnvVar << armGccLabel
|
||||
<< armGccToolchainFileUnexpandedPath << armGcc;
|
||||
QTest::newRow("armgcc_stm32f769i_discovery_freertos_json")
|
||||
<< armgcc_stm32f769i_discovery_freertos_json << armGccEnvVar << armGccLabel
|
||||
<< armGccToolchainFileUnexpandedPath << armGcc;
|
||||
QTest::newRow("armgcc_stm32h750b_discovery_baremetal_json")
|
||||
<< armgcc_stm32h750b_discovery_baremetal_json << armGccEnvVar << armGccLabel
|
||||
<< armGccToolchainFileUnexpandedPath << armGcc;
|
||||
|
||||
QTest::newRow("armgcc_stm32h750b_metal_json")
|
||||
<< armgcc_stm32h750b_metal_json << armGccEnvVar << armGccLabel
|
||||
<< armGccToolchainFilePathWithVariable << armGcc;
|
||||
|
||||
QTest::newRow("armgcc_nxp_mimxrt1170_evk_freertos_json")
|
||||
<< armgcc_nxp_mimxrt1170_evk_freertos_json << armGccEnvVar << armGccLabel
|
||||
<< armGccToolchainFilePathWithVariable << armGcc;
|
||||
|
||||
QTest::newRow("iar_stm32f469i_metal_json")
|
||||
<< iar_stm32f469i_metal_json << iarEnvVar << iarLabel << iarToolchainFileDefaultPath << iar;
|
||||
QTest::newRow("iar_stm32f469i_discovery_baremetal_json")
|
||||
<< iar_stm32f469i_discovery_baremetal_json << iarEnvVar << iarLabel
|
||||
<< iarToolchainFileUnexpandedPath << iar;
|
||||
}
|
||||
|
||||
void McuSupportTest::test_parseToolchainFromJSON()
|
||||
@@ -447,7 +472,7 @@ void McuSupportTest::test_parseToolchainFromJSON()
|
||||
QCOMPARE(compilerPackage.envVar, environmentVariable);
|
||||
|
||||
const PackageDescription &toolchainFilePackage{description.toolchain.file};
|
||||
QCOMPARE(toolchainFilePackage.label, cmakeToolchainLabel);
|
||||
QCOMPARE(toolchainFilePackage.label, QString{});
|
||||
QCOMPARE(toolchainFilePackage.envVar, QString{});
|
||||
QCOMPARE(toolchainFilePackage.cmakeVar, Legacy::Constants::TOOLCHAIN_FILE_CMAKE_VARIABLE);
|
||||
QCOMPARE(toolchainFilePackage.defaultPath.cleanPath().toString(), toolchainFileDefaultPath);
|
||||
@@ -462,7 +487,7 @@ void McuSupportTest::test_legacy_createIarToolchain()
|
||||
|
||||
void McuSupportTest::test_createIarToolchain()
|
||||
{
|
||||
const auto description = parseDescriptionJson(iar_stm32f469i_metal_json);
|
||||
const auto description = parseDescriptionJson(iar_stm32f469i_discovery_baremetal_json);
|
||||
|
||||
McuToolChainPackagePtr iarToolchainPackage{targetFactory.createToolchain(description.toolchain)};
|
||||
verifyIarToolchain(iarToolchainPackage);
|
||||
@@ -471,8 +496,8 @@ void McuSupportTest::test_createIarToolchain()
|
||||
void McuSupportTest::test_legacy_createDesktopGccToolchain()
|
||||
{
|
||||
McuToolChainPackagePtr gccPackage = Legacy::createGccToolChainPackage(settingsMockPtr,
|
||||
{armGccNewVersion});
|
||||
verifyGccToolchain(gccPackage, {armGccNewVersion});
|
||||
{armGccVersion});
|
||||
verifyGccToolchain(gccPackage, {armGccVersion});
|
||||
}
|
||||
|
||||
void McuSupportTest::test_createDesktopGccToolchain()
|
||||
@@ -510,14 +535,13 @@ void McuSupportTest::test_legacy_createArmGccToolchain()
|
||||
|
||||
void McuSupportTest::test_createArmGccToolchain_data()
|
||||
{
|
||||
QStringList versions{armGccVersion, armGccNewVersion};
|
||||
|
||||
QTest::addColumn<QString>("json");
|
||||
QTest::newRow("armgcc_nxp_1050_json") << armgcc_nxp_1050_json;
|
||||
QTest::newRow("armgcc_stm32f769i_freertos_json") << armgcc_stm32f769i_freertos_json;
|
||||
QTest::newRow("armgcc_stm32h750b_metal_json") << armgcc_stm32h750b_metal_json;
|
||||
QTest::newRow("armgcc_nxp_mimxrt1170_evk_freertos_json")
|
||||
<< armgcc_nxp_mimxrt1170_evk_freertos_json;
|
||||
QTest::newRow("armgcc_mimxrt1050_evk_freertos_json") << armgcc_mimxrt1050_evk_freertos_json;
|
||||
QTest::newRow("armgcc_stm32f769i_discovery_freertos_json")
|
||||
<< armgcc_stm32f769i_discovery_freertos_json;
|
||||
QTest::newRow("armgcc_stm32h750b_discovery_baremetal_json")
|
||||
<< armgcc_stm32h750b_discovery_baremetal_json;
|
||||
QTest::newRow("armgcc_mimxrt1170_evk_freertos_json") << armgcc_mimxrt1170_evk_freertos_json;
|
||||
}
|
||||
|
||||
void McuSupportTest::test_createArmGccToolchain()
|
||||
@@ -534,11 +558,13 @@ void McuSupportTest::test_mapParsedToolchainIdToCorrespondingType_data()
|
||||
QTest::addColumn<McuTargetDescription>("description");
|
||||
QTest::addColumn<McuToolChainPackage::ToolChainType>("toolchainType");
|
||||
|
||||
QTest::newRow("armgcc_stm32h750b") << parseDescriptionJson(armgcc_stm32h750b_metal_json)
|
||||
<< McuToolChainPackage::ToolChainType::ArmGcc;
|
||||
QTest::newRow("iar_nxp1064") << parseDescriptionJson(iar_nxp_1064_json)
|
||||
<< McuToolChainPackage::ToolChainType::IAR;
|
||||
QTest::newRow("iar_stm32f469i") << parseDescriptionJson(iar_stm32f469i_metal_json)
|
||||
QTest::newRow("armgcc_stm32h750b_discovery_baremetal_json")
|
||||
<< parseDescriptionJson(armgcc_stm32h750b_discovery_baremetal_json)
|
||||
<< McuToolChainPackage::ToolChainType::ArmGcc;
|
||||
QTest::newRow("iar_mimxrt1064_evk_freertos_json")
|
||||
<< parseDescriptionJson(iar_mimxrt1064_evk_freertos_json)
|
||||
<< McuToolChainPackage::ToolChainType::IAR;
|
||||
QTest::newRow("iar_stm32f469i") << parseDescriptionJson(iar_stm32f469i_discovery_baremetal_json)
|
||||
<< McuToolChainPackage::ToolChainType::IAR;
|
||||
}
|
||||
|
||||
@@ -563,31 +589,31 @@ void McuSupportTest::test_legacy_createPackagesWithCorrespondingSettings_data()
|
||||
{"RenesasFlashProgrammer"},
|
||||
{"Stm32CubeProgrammer"}};
|
||||
|
||||
QTest::newRow("nxp1064") << iar_nxp_1064_json
|
||||
<< QSet<QString>{{"EVK_MIMXRT1064_SDK_PATH"},
|
||||
{QString{
|
||||
Legacy::Constants::SETTINGS_KEY_FREERTOS_PREFIX}
|
||||
.append("IMXRT1064")},
|
||||
"IARToolchain"}
|
||||
.unite(commonSettings);
|
||||
QTest::newRow("stm32f469i") << iar_stm32f469i_metal_json
|
||||
QTest::newRow("iar_mimxrt1064_evk_freertos_json")
|
||||
<< iar_mimxrt1064_evk_freertos_json
|
||||
<< QSet<QString>{{"EVK_MIMXRT1064_SDK_PATH"},
|
||||
{QString{Legacy::Constants::SETTINGS_KEY_FREERTOS_PREFIX}.append(
|
||||
"IMXRT1064")},
|
||||
"IARToolchain"}
|
||||
.unite(commonSettings);
|
||||
QTest::newRow("stm32f469i") << iar_stm32f469i_discovery_baremetal_json
|
||||
<< QSet<QString>{{"STM32Cube_FW_F4_SDK_PATH"}, "IARToolchain"}.unite(
|
||||
commonSettings);
|
||||
QTest::newRow("nxp1050") << armgcc_nxp_1050_json
|
||||
QTest::newRow("nxp1050") << armgcc_mimxrt1050_evk_freertos_json
|
||||
<< QSet<QString>{{"EVKB_IMXRT1050_SDK_PATH"},
|
||||
{QString{
|
||||
Legacy::Constants::SETTINGS_KEY_FREERTOS_PREFIX}
|
||||
.append("IMXRT1050")},
|
||||
"GNUArmEmbeddedToolchain"}
|
||||
.unite(commonSettings);
|
||||
QTest::newRow("stm32h750b") << armgcc_stm32h750b_metal_json
|
||||
<< QSet<QString>{{"STM32Cube_FW_H7_SDK_PATH"},
|
||||
"GNUArmEmbeddedToolchain"}
|
||||
.unite(commonSettings);
|
||||
QTest::newRow("stm32f769i") << armgcc_stm32f769i_freertos_json
|
||||
<< QSet<QString>{{"STM32Cube_FW_F7_SDK_PATH"},
|
||||
"GNUArmEmbeddedToolchain"}
|
||||
.unite(commonSettings);
|
||||
QTest::newRow("armgcc_stm32h750b_discovery_baremetal_json")
|
||||
<< armgcc_stm32h750b_discovery_baremetal_json
|
||||
<< QSet<QString>{{"STM32Cube_FW_H7_SDK_PATH"}, "GNUArmEmbeddedToolchain"}.unite(
|
||||
commonSettings);
|
||||
QTest::newRow("armgcc_stm32f769i_discovery_freertos_json")
|
||||
<< armgcc_stm32f769i_discovery_freertos_json
|
||||
<< QSet<QString>{{"STM32Cube_FW_F7_SDK_PATH"}, "GNUArmEmbeddedToolchain"}.unite(
|
||||
commonSettings);
|
||||
|
||||
QTest::newRow("ghs_rh850_d1m1a_baremetal_json")
|
||||
<< ghs_rh850_d1m1a_baremetal_json << QSet<QString>{"GHSToolchain"}.unite(commonSettings);
|
||||
@@ -598,7 +624,7 @@ void McuSupportTest::test_legacy_createPackagesWithCorrespondingSettings()
|
||||
QFETCH(QString, json);
|
||||
const McuTargetDescription description = parseDescriptionJson(json.toLocal8Bit());
|
||||
const auto [targets, packages]{
|
||||
targetsFromDescriptions({description}, settingsMockPtr, qtForMcuSdkPath, runLegacy)};
|
||||
targetsFromDescriptions({description}, settingsMockPtr, sdkPackagePtr, runLegacy)};
|
||||
Q_UNUSED(targets);
|
||||
|
||||
QSet<QString> settings = transform<QSet<QString>>(packages, [](const auto &package) {
|
||||
@@ -622,14 +648,15 @@ void McuSupportTest::test_createTargets()
|
||||
true};
|
||||
targetDescription.toolchain.id = armGcc;
|
||||
|
||||
const auto [targets, packages]{targetFactory.createTargets(targetDescription, qtForMcuSdkPath)};
|
||||
const auto [targets, packages]{targetFactory.createTargets(targetDescription, sdkPackagePtr)};
|
||||
QCOMPARE(targets.size(), 1);
|
||||
const McuTargetPtr target{targets.at(0)};
|
||||
|
||||
QCOMPARE(target->colorDepth(), colorDepth);
|
||||
|
||||
const auto &tgtPackages{target->packages()};
|
||||
QCOMPARE(tgtPackages.size(), 5);
|
||||
QCOMPARE(tgtPackages.size(), 5); // qtForMCUs, toolchain file + compiler,
|
||||
// freertos, board sdk
|
||||
|
||||
// target should contain freertos package
|
||||
QVERIFY(anyOf(tgtPackages, [](const McuPackagePtr &pkg) {
|
||||
@@ -682,8 +709,8 @@ void McuSupportTest::test_removeRtosSuffixFromEnvironmentVariable_data()
|
||||
QTest::addColumn<QString>("freeRtosEnvVar");
|
||||
QTest::addColumn<QString>("expectedEnvVarWithoutSuffix");
|
||||
|
||||
QTest::newRow("armgcc_nxp_1050_json") << nxp1050FreeRtosEnvVar << nxp1050;
|
||||
QTest::newRow("iar_nxp_1064_json") << nxp1064FreeRtosEnvVar << nxp1064;
|
||||
QTest::newRow("armgcc_mimxrt1050_evk_freertos_json") << nxp1050FreeRtosEnvVar << nxp1050;
|
||||
QTest::newRow("iar_mimxrt1064_evk_freertos_json") << nxp1064FreeRtosEnvVar << nxp1064;
|
||||
QTest::newRow("nxp1170") << nxp1170FreeRtosEnvVar << nxp1170;
|
||||
QTest::newRow("stm32f7") << stm32f7FreeRtosEnvVar << stm32f7;
|
||||
}
|
||||
@@ -816,32 +843,48 @@ void McuSupportTest::test_legacy_createTargetWithToolchainPackages_data()
|
||||
{
|
||||
QTest::addColumn<QString>("json");
|
||||
QTest::addColumn<QString>("toolchainFilePath");
|
||||
QTest::addColumn<QString>("toolchainFileDefaultPath");
|
||||
QTest::addColumn<QString>("compilerPath");
|
||||
QTest::addColumn<QString>("compilerSetting");
|
||||
QTest::addColumn<QStringList>("versions");
|
||||
|
||||
QTest::newRow("nxp1050") << armgcc_nxp_1050_json << armGccToolchainFileDefaultPath << armGccDir
|
||||
<< armGccDirectorySetting
|
||||
<< QStringList{armGccVersion, armGccNewVersion};
|
||||
QTest::newRow("stm32h750b") << armgcc_stm32h750b_metal_json << armGccToolchainFileDefaultPath
|
||||
<< armGccDir << armGccDirectorySetting
|
||||
<< QStringList{armGccVersion};
|
||||
QTest::newRow("stm32f769i") << armgcc_stm32f769i_freertos_json << armGccToolchainFileDefaultPath
|
||||
<< armGccDir << armGccDirectorySetting
|
||||
<< QStringList{armGccVersion, armGccNewVersion};
|
||||
QTest::newRow("stm32f469i") << iar_stm32f469i_metal_json << iarToolchainFileDefaultPath
|
||||
<< iarDir << iarSetting << iarVersions;
|
||||
QTest::newRow("iar_nxp_1064_json")
|
||||
<< iar_nxp_1064_json << iarToolchainFileDefaultPath << iarDir << iarSetting << iarVersions;
|
||||
QTest::newRow("armgcc_mimxrt1050_evk_freertos_json")
|
||||
<< armgcc_mimxrt1050_evk_freertos_json << armGccToolchainFilePath
|
||||
<< armGccToolchainFileUnexpandedPath << armGccDir << armGccDirectorySetting
|
||||
<< QStringList{armGccVersion};
|
||||
QTest::newRow("armgcc_mimxrt1064_evk_freertos_json")
|
||||
<< armgcc_mimxrt1064_evk_freertos_json << armGccToolchainFilePath
|
||||
<< armGccToolchainFileUnexpandedPath << armGccDir << armGccDirectorySetting
|
||||
<< QStringList{armGccVersion};
|
||||
QTest::newRow("armgcc_mimxrt1170_evk_freertos_json")
|
||||
<< armgcc_mimxrt1170_evk_freertos_json << armGccToolchainFilePath
|
||||
<< armGccToolchainFileUnexpandedPath << armGccDir << armGccDirectorySetting
|
||||
<< QStringList{armGccVersion};
|
||||
QTest::newRow("armgcc_stm32h750b_discovery_baremetal_json")
|
||||
<< armgcc_stm32h750b_discovery_baremetal_json << armGccToolchainFilePath
|
||||
<< armGccToolchainFileUnexpandedPath << armGccDir << armGccDirectorySetting
|
||||
<< QStringList{armGccVersion};
|
||||
QTest::newRow("armgcc_stm32f769i_discovery_freertos_json")
|
||||
<< armgcc_stm32f769i_discovery_freertos_json << armGccToolchainFilePath
|
||||
<< armGccToolchainFileUnexpandedPath << armGccDir << armGccDirectorySetting
|
||||
<< QStringList{armGccVersion};
|
||||
QTest::newRow("iar_stm32f469i_discovery_baremetal_json")
|
||||
<< iar_stm32f469i_discovery_baremetal_json << iarToolchainFilePath
|
||||
<< iarToolchainFileUnexpandedPath << iarDir << iarSetting << iarVersions;
|
||||
QTest::newRow("iar_mimxrt1064_evk_freertos_json")
|
||||
<< iar_mimxrt1064_evk_freertos_json << iarToolchainFilePath
|
||||
<< iarToolchainFileUnexpandedPath << iarDir << iarSetting << iarVersions;
|
||||
QTest::newRow("ghs_rh850_d1m1a_baremetal_json")
|
||||
<< ghs_rh850_d1m1a_baremetal_json << greenhillToolchainFileDefaultPath
|
||||
<< greenhillCompilerDir << greenhillSetting << greenhillVersions;
|
||||
<< ghs_rh850_d1m1a_baremetal_json << greenhillToolchainFilePath
|
||||
<< greenhillToolchainFileUnexpandedPath << greenhillCompilerDir << greenhillSetting
|
||||
<< greenhillVersions;
|
||||
}
|
||||
|
||||
void McuSupportTest::test_legacy_createTargetWithToolchainPackages()
|
||||
{
|
||||
QFETCH(QString, json);
|
||||
QFETCH(QString, toolchainFilePath);
|
||||
QFETCH(QString, toolchainFileDefaultPath);
|
||||
QFETCH(QString, compilerPath);
|
||||
QFETCH(QString, compilerSetting);
|
||||
QFETCH(QStringList, versions);
|
||||
@@ -855,10 +898,15 @@ void McuSupportTest::test_legacy_createTargetWithToolchainPackages()
|
||||
.WillRepeatedly(Return(FilePath::fromUserInput(compilerPath)));
|
||||
|
||||
const auto [targets, packages]{
|
||||
targetsFromDescriptions({description}, settingsMockPtr, qtForMcuSdkPath, runLegacy)};
|
||||
targetsFromDescriptions({description}, settingsMockPtr, sdkPackagePtr, runLegacy)};
|
||||
Q_UNUSED(packages);
|
||||
|
||||
verifyTargetToolchains(targets, toolchainFilePath, compilerPath, compilerSetting, versions);
|
||||
verifyTargetToolchains(targets,
|
||||
toolchainFilePath,
|
||||
toolchainFilePath,
|
||||
compilerPath,
|
||||
compilerSetting,
|
||||
versions);
|
||||
}
|
||||
|
||||
void McuSupportTest::test_createTargetWithToolchainPackages_data()
|
||||
@@ -870,6 +918,7 @@ void McuSupportTest::test_createTargetWithToolchainPackages()
|
||||
{
|
||||
QFETCH(QString, json);
|
||||
QFETCH(QString, toolchainFilePath);
|
||||
QFETCH(QString, toolchainFileDefaultPath);
|
||||
QFETCH(QString, compilerPath);
|
||||
QFETCH(QString, compilerSetting);
|
||||
QFETCH(QStringList, versions);
|
||||
@@ -883,10 +932,29 @@ void McuSupportTest::test_createTargetWithToolchainPackages()
|
||||
|
||||
const McuTargetDescription description = parseDescriptionJson(json.toLocal8Bit());
|
||||
const auto [targets, packages]{
|
||||
targetsFromDescriptions({description}, settingsMockPtr, qtForMcuSdkPath, !runLegacy)};
|
||||
targetsFromDescriptions({description}, settingsMockPtr, sdkPackagePtr, !runLegacy)};
|
||||
Q_UNUSED(packages);
|
||||
|
||||
verifyTargetToolchains(targets, toolchainFilePath, compilerPath, compilerSetting, versions);
|
||||
const auto qtForMCUsSDK = findOrDefault(packages, [](const McuPackagePtr &pkg) {
|
||||
return (pkg->cmakeVariableName() == QUL_CMAKE_VAR);
|
||||
});
|
||||
|
||||
verifyPackage(qtForMCUsSDK,
|
||||
qtForMcuSdkPath,
|
||||
{}, // qtForMcuSdkPath
|
||||
Constants::SETTINGS_KEY_PACKAGE_QT_FOR_MCUS_SDK,
|
||||
QUL_CMAKE_VAR,
|
||||
QUL_ENV_VAR,
|
||||
QUL_LABEL,
|
||||
Legacy::Constants::QT_FOR_MCUS_SDK_PACKAGE_VALIDATION_PATH,
|
||||
{});
|
||||
|
||||
verifyTargetToolchains(targets,
|
||||
toolchainFilePath,
|
||||
toolchainFileDefaultPath, // default path is unexpanded.
|
||||
compilerPath,
|
||||
compilerSetting,
|
||||
versions);
|
||||
}
|
||||
|
||||
void McuSupportTest::test_addToolchainFileInfoToKit()
|
||||
@@ -909,20 +977,25 @@ void McuSupportTest::test_legacy_createBoardSdk_data()
|
||||
QTest::addColumn<QString>("environmentVariable");
|
||||
QTest::addColumn<QStringList>("versions");
|
||||
|
||||
QTest::newRow("armgcc_nxp_1050_json")
|
||||
<< armgcc_nxp_1050_json << boardSdkCmakeVar << "EVKB_IMXRT1050_SDK_PATH"
|
||||
QTest::newRow("armgcc_mimxrt1050_evk_freertos_json")
|
||||
<< armgcc_mimxrt1050_evk_freertos_json << boardSdkCmakeVar << "EVKB_IMXRT1050_SDK_PATH"
|
||||
<< QStringList{boardSdkVersion};
|
||||
|
||||
QTest::newRow("armgcc_nxp_1064_json") << armgcc_nxp_1064_json << boardSdkCmakeVar
|
||||
<< "EVK_MIMXRT1064_SDK_PATH" << QStringList{"2.11.1"};
|
||||
QTest::newRow("stm32h750b") << armgcc_stm32h750b_metal_json << boardSdkCmakeVar
|
||||
<< "STM32Cube_FW_H7_SDK_PATH" << QStringList{"1.5.0"};
|
||||
QTest::newRow("stm32f769i") << armgcc_stm32f769i_freertos_json << boardSdkCmakeVar
|
||||
<< "STM32Cube_FW_F7_SDK_PATH" << QStringList{"1.16.0"};
|
||||
QTest::newRow("stm32f469i") << iar_stm32f469i_metal_json << boardSdkCmakeVar
|
||||
<< "STM32Cube_FW_F4_SDK_PATH" << QStringList{"1.25.0"};
|
||||
QTest::newRow("nxp1064") << iar_nxp_1064_json << boardSdkCmakeVar << "EVK_MIMXRT1064_SDK_PATH"
|
||||
<< QStringList{boardSdkVersion};
|
||||
QTest::newRow("armgcc_mimxrt1064_evk_freertos_json")
|
||||
<< armgcc_mimxrt1064_evk_freertos_json << boardSdkCmakeVar << "EVK_MIMXRT1064_SDK_PATH"
|
||||
<< QStringList{boardSdkVersion};
|
||||
QTest::newRow("armgcc_stm32h750b_discovery_baremetal_json")
|
||||
<< armgcc_stm32h750b_discovery_baremetal_json << boardSdkCmakeVar
|
||||
<< "STM32Cube_FW_H7_SDK_PATH" << QStringList{"1.10.0"};
|
||||
QTest::newRow("armgcc_stm32f769i_discovery_freertos_json")
|
||||
<< armgcc_stm32f769i_discovery_freertos_json << boardSdkCmakeVar
|
||||
<< "STM32Cube_FW_F7_SDK_PATH" << QStringList{"1.17.0"};
|
||||
QTest::newRow("iar_stm32f469i_discovery_baremetal_json")
|
||||
<< iar_stm32f469i_discovery_baremetal_json << boardSdkCmakeVar << "STM32Cube_FW_F4_SDK_PATH"
|
||||
<< QStringList{"1.27.0"};
|
||||
QTest::newRow("iar_mimxrt1064_evk_freertos_json")
|
||||
<< iar_mimxrt1064_evk_freertos_json << boardSdkCmakeVar << "EVK_MIMXRT1064_SDK_PATH"
|
||||
<< QStringList{boardSdkVersion};
|
||||
QTest::newRow("ghs_rh850_d1m1a_baremetal_json")
|
||||
<< ghs_rh850_d1m1a_baremetal_json << boardSdkCmakeVar << "RGL_DIR" << QStringList{"2.0.0a"};
|
||||
}
|
||||
@@ -967,23 +1040,23 @@ void McuSupportTest::test_legacy_createFreeRtosPackage_data()
|
||||
QTest::addColumn<FilePath>("expectedPath");
|
||||
QTest::addColumn<FilePath>("expectedDetectionPath");
|
||||
|
||||
QTest::newRow("armgcc_nxp_1050_json")
|
||||
<< armgcc_nxp_1050_json << QStringList{boardSdkVersion}
|
||||
QTest::newRow("armgcc_mimxrt1050_evk_freertos_json")
|
||||
<< armgcc_mimxrt1050_evk_freertos_json << QStringList{boardSdkVersion}
|
||||
<< QString{Legacy::Constants::SETTINGS_KEY_FREERTOS_PREFIX}.append(nxp1050)
|
||||
<< FilePath::fromUserInput(boardSdkDir) / freeRtosNxpPathSuffix
|
||||
<< FilePath::fromUserInput(freeRtosDetectionPath);
|
||||
QTest::newRow("armgcc_nxp_1064_json")
|
||||
<< armgcc_nxp_1064_json << QStringList{boardSdkVersion}
|
||||
QTest::newRow("armgcc_mimxrt1064_evk_freertos_json")
|
||||
<< armgcc_mimxrt1064_evk_freertos_json << QStringList{boardSdkVersion}
|
||||
<< QString{Legacy::Constants::SETTINGS_KEY_FREERTOS_PREFIX}.append(nxp1064)
|
||||
<< FilePath::fromUserInput(boardSdkDir) / freeRtosNxpPathSuffix
|
||||
<< FilePath::fromUserInput(freeRtosDetectionPath);
|
||||
QTest::newRow("iar_nxp_1064_json")
|
||||
<< iar_nxp_1064_json << QStringList{boardSdkVersion}
|
||||
QTest::newRow("iar_mimxrt1064_evk_freertos_json")
|
||||
<< iar_mimxrt1064_evk_freertos_json << QStringList{boardSdkVersion}
|
||||
<< QString{Legacy::Constants::SETTINGS_KEY_FREERTOS_PREFIX}.append(nxp1064)
|
||||
<< FilePath::fromUserInput(boardSdkDir) / freeRtosNxpPathSuffix
|
||||
<< FilePath::fromUserInput(freeRtosDetectionPath);
|
||||
QTest::newRow("armgcc_stm32f769i_freertos_json")
|
||||
<< armgcc_stm32f769i_freertos_json << QStringList{"1.16.0"}
|
||||
QTest::newRow("armgcc_stm32f769i_discovery_freertos_json")
|
||||
<< armgcc_stm32f769i_discovery_freertos_json << QStringList{"1.16.0"}
|
||||
<< QString{Legacy::Constants::SETTINGS_KEY_FREERTOS_PREFIX}.append(stm32f7)
|
||||
<< FilePath::fromUserInput(boardSdkDir) / freeRtosStmPathSuffix
|
||||
<< FilePath::fromUserInput(freeRtosDetectionPath);
|
||||
@@ -1031,7 +1104,7 @@ void McuSupportTest::test_createFreeRtosPackage()
|
||||
EXPECT_CALL(*settingsMockPtr, getPath(targetDescription.boardSdk.envVar, _, _))
|
||||
.WillRepeatedly(Return(FilePath::fromString(boardSdkDir)));
|
||||
|
||||
auto [targets, packages] = targetFactory.createTargets(targetDescription, qtForMcuSdkPath);
|
||||
auto [targets, packages] = targetFactory.createTargets(targetDescription, sdkPackagePtr);
|
||||
|
||||
auto freeRtos = findOrDefault(packages, [](const McuPackagePtr &pkg) {
|
||||
return (pkg->cmakeVariableName() == freeRtosCMakeVar);
|
||||
@@ -1049,8 +1122,10 @@ void McuSupportTest::test_legacy_doNOTcreateFreeRtosPackageForMetalVariants_data
|
||||
|
||||
{
|
||||
QTest::addColumn<QString>("json");
|
||||
QTest::newRow("iar_stm32f469i_metal_json") << iar_stm32f469i_metal_json;
|
||||
QTest::newRow("armgcc_stm32h750b_metal_json") << armgcc_stm32h750b_metal_json;
|
||||
QTest::newRow("iar_stm32f469i_discovery_baremetal_json")
|
||||
<< iar_stm32f469i_discovery_baremetal_json;
|
||||
QTest::newRow("armgcc_stm32h750b_discovery_baremetal_json")
|
||||
<< armgcc_stm32h750b_discovery_baremetal_json;
|
||||
QTest::newRow("ghs_rh850_d1m1a_baremetal_json") << ghs_rh850_d1m1a_baremetal_json;
|
||||
QTest::newRow("gcc_desktop_json") << gcc_desktop_json;
|
||||
}
|
||||
@@ -1062,7 +1137,7 @@ void McuSupportTest::test_legacy_doNOTcreateFreeRtosPackageForMetalVariants()
|
||||
McuTargetDescription targetDescription{parseDescriptionJson(json.toLocal8Bit())};
|
||||
QCOMPARE(targetDescription.freeRTOS.package.cmakeVar, "");
|
||||
|
||||
auto [targets, packages] = targetFactory.createTargets(targetDescription, qtForMcuSdkPath);
|
||||
auto [targets, packages] = targetFactory.createTargets(targetDescription, sdkPackagePtr);
|
||||
|
||||
auto freeRtos = findOrDefault(packages, [](const McuPackagePtr &pkg) {
|
||||
return (pkg->cmakeVariableName() == freeRtosCMakeVar);
|
||||
@@ -1088,7 +1163,7 @@ void McuSupportTest::test_legacy_createQtMCUsPackage()
|
||||
|
||||
void McuSupportTest::test_legacy_supportMultipleToolchainVersions()
|
||||
{
|
||||
const auto description = parseDescriptionJson(armgcc_stm32f769i_freertos_json);
|
||||
const auto description = parseDescriptionJson(mulitple_toolchain_versions);
|
||||
|
||||
QVERIFY(!description.toolchain.versions.empty());
|
||||
QCOMPARE(description.toolchain.versions.size(), 2);
|
||||
@@ -1102,16 +1177,19 @@ void McuSupportTest::test_passExecutableVersionDetectorToToolchainPackage_data()
|
||||
QTest::addColumn<QString>("versionDetectionPath");
|
||||
QTest::addColumn<QString>("versionDetectionArgs");
|
||||
QTest::addColumn<QString>("versionRegex");
|
||||
QTest::newRow("armgcc_nxp_1050_json")
|
||||
<< armgcc_nxp_1050_json << armGccSuffix << version << armGccVersionDetectionRegex;
|
||||
QTest::newRow("armgcc_stm32h750b_metal_json")
|
||||
<< armgcc_stm32h750b_metal_json << armGccSuffix << version << armGccVersionDetectionRegex;
|
||||
QTest::newRow("armgcc_stm32f769i_freertos_json")
|
||||
<< armgcc_stm32f769i_freertos_json << armGccSuffix << version
|
||||
QTest::newRow("armgcc_mimxrt1050_evk_freertos_json")
|
||||
<< armgcc_mimxrt1050_evk_freertos_json << armGccSuffix << version
|
||||
<< armGccVersionDetectionRegex;
|
||||
QTest::newRow("armgcc_stm32h750b_discovery_baremetal_json")
|
||||
<< armgcc_stm32h750b_discovery_baremetal_json << armGccSuffix << version
|
||||
<< armGccVersionDetectionRegex;
|
||||
QTest::newRow("armgcc_stm32f769i_discovery_freertos_json")
|
||||
<< armgcc_stm32f769i_discovery_freertos_json << armGccSuffix << version
|
||||
<< armGccVersionDetectionRegex;
|
||||
|
||||
QTest::newRow("iar_stm32f469i_metal_json") << iar_stm32f469i_metal_json << QString{"bin/iccarm"}
|
||||
<< version << iarVersionDetectionRegex;
|
||||
QTest::newRow("iar_stm32f469i_discovery_baremetal_json")
|
||||
<< iar_stm32f469i_discovery_baremetal_json << QString{"bin/iccarm"} << version
|
||||
<< iarVersionDetectionRegex;
|
||||
}
|
||||
|
||||
void McuSupportTest::test_passExecutableVersionDetectorToToolchainPackage()
|
||||
@@ -1162,23 +1240,25 @@ void McuSupportTest::test_legacy_passXMLVersionDetectorToNxpAndStmBoardSdkPackag
|
||||
QTest::addColumn<QString>("xmlAttribute");
|
||||
QTest::addColumn<QString>("filePattern");
|
||||
|
||||
QTest::newRow("armgcc_nxp_1050_json") << armgcc_nxp_1050_json << "ksdk"
|
||||
<< "version"
|
||||
<< "*_manifest_*.xml";
|
||||
QTest::newRow("armgcc_stm32h750b_metal_json")
|
||||
<< armgcc_stm32h750b_metal_json << "PackDescription"
|
||||
QTest::newRow("armgcc_mimxrt1050_evk_freertos_json")
|
||||
<< armgcc_mimxrt1050_evk_freertos_json << "ksdk"
|
||||
<< "version"
|
||||
<< "*_manifest_*.xml";
|
||||
QTest::newRow("armgcc_stm32h750b_discovery_baremetal_json")
|
||||
<< armgcc_stm32h750b_discovery_baremetal_json << "PackDescription"
|
||||
<< "Release"
|
||||
<< "package.xml";
|
||||
QTest::newRow("armgcc_stm32f769i_freertos_json")
|
||||
<< armgcc_stm32f769i_freertos_json << "PackDescription"
|
||||
QTest::newRow("armgcc_stm32f769i_discovery_freertos_json")
|
||||
<< armgcc_stm32f769i_discovery_freertos_json << "PackDescription"
|
||||
<< "Release"
|
||||
<< "package.xml";
|
||||
QTest::newRow("iar_stm32f469i_metal_json") << iar_stm32f469i_metal_json << "PackDescription"
|
||||
<< "Release"
|
||||
<< "package.xml";
|
||||
QTest::newRow("iar_nxp_1064_json") << iar_nxp_1064_json << "ksdk"
|
||||
<< "version"
|
||||
<< "*_manifest_*.xml";
|
||||
QTest::newRow("iar_stm32f469i_discovery_baremetal_json")
|
||||
<< iar_stm32f469i_discovery_baremetal_json << "PackDescription"
|
||||
<< "Release"
|
||||
<< "package.xml";
|
||||
QTest::newRow("iar_mimxrt1064_evk_freertos_json") << iar_mimxrt1064_evk_freertos_json << "ksdk"
|
||||
<< "version"
|
||||
<< "*_manifest_*.xml";
|
||||
}
|
||||
|
||||
void McuSupportTest::test_legacy_passXMLVersionDetectorToNxpAndStmBoardSdkPackage()
|
||||
@@ -1244,11 +1324,14 @@ void McuSupportTest::test_resolveEnvironmentVariablesInDefaultPath()
|
||||
QCOMPARE(qtcEnvironmentVariable(QUL_ENV_VAR), qtForMcuSdkPath);
|
||||
|
||||
const QString qulEnvVariable = QString("%{Env:") + QUL_ENV_VAR + "}";
|
||||
toochainFileDescription.defaultPath = FilePath::fromUserInput(
|
||||
qulEnvVariable + "/lib/cmake/Qul/toolchain/iar.cmake");
|
||||
const QString toolchainFileDefaultPath = qulEnvVariable + "/lib/cmake/Qul/toolchain/iar.cmake";
|
||||
const QString toolchainFilePath = QString{qtForMcuSdkPath}
|
||||
+ "/lib/cmake/Qul/toolchain/iar.cmake";
|
||||
|
||||
toochainFileDescription.defaultPath = FilePath::fromUserInput(toolchainFileDefaultPath);
|
||||
targetDescription.toolchain.file = toochainFileDescription;
|
||||
|
||||
auto [targets, packages] = targetFactory.createTargets(targetDescription, qtForMcuSdkPath);
|
||||
auto [targets, packages] = targetFactory.createTargets(targetDescription, sdkPackagePtr);
|
||||
auto qtForMCUPkg = findOrDefault(packages, [](const McuPackagePtr &pkg) {
|
||||
return pkg->environmentVariableName() == QUL_ENV_VAR;
|
||||
});
|
||||
@@ -1263,10 +1346,9 @@ void McuSupportTest::test_resolveEnvironmentVariablesInDefaultPath()
|
||||
QVERIFY(toolchainFilePkg);
|
||||
QVERIFY(targets.size() == 1);
|
||||
|
||||
QString expectedPkgPath = QString{qtForMcuSdkPath} + "/lib/cmake/Qul/toolchain/iar.cmake";
|
||||
QCOMPARE(toolchainFilePkg->path().toString(), expectedPkgPath);
|
||||
QCOMPARE(toolchainFilePkg->path().toString(), toolchainFilePath);
|
||||
QVERIFY(toolchainFilePkg->path().toString().startsWith(qtForMcuSdkPath));
|
||||
QCOMPARE(toolchainFilePkg->defaultPath().toString(), expectedPkgPath);
|
||||
QCOMPARE(toolchainFilePkg->defaultPath().toString(), toolchainFileDefaultPath);
|
||||
|
||||
Utils::Environment::modifySystemEnvironment(
|
||||
{{QUL_ENV_VAR, qtForMcuSdkPath, EnvironmentItem::Unset}});
|
||||
@@ -1276,11 +1358,14 @@ void McuSupportTest::test_resolveEnvironmentVariablesInDefaultPath()
|
||||
void McuSupportTest::test_resolveCmakeVariablesInDefaultPath()
|
||||
{
|
||||
const QString qulCmakeVariable = QString("%{") + QUL_CMAKE_VAR + "}";
|
||||
toochainFileDescription.defaultPath = FilePath::fromUserInput(
|
||||
qulCmakeVariable + "/lib/cmake/Qul/toolchain/iar.cmake");
|
||||
const QString toolchainFileDefaultPath = qulCmakeVariable
|
||||
+ "/lib/cmake/Qul/toolchain/iar.cmake";
|
||||
const QString toolchainFilePath = QString{qtForMcuSdkPath}
|
||||
+ "/lib/cmake/Qul/toolchain/iar.cmake";
|
||||
toochainFileDescription.defaultPath = FilePath::fromUserInput(toolchainFileDefaultPath);
|
||||
targetDescription.toolchain.file = toochainFileDescription;
|
||||
|
||||
auto [targets, packages] = targetFactory.createTargets(targetDescription, qtForMcuSdkPath);
|
||||
auto [targets, packages] = targetFactory.createTargets(targetDescription, sdkPackagePtr);
|
||||
auto qtForMCUPkg = findOrDefault(packages, [](const McuPackagePtr &pkg) {
|
||||
return pkg->cmakeVariableName() == QUL_CMAKE_VAR;
|
||||
});
|
||||
@@ -1295,10 +1380,9 @@ void McuSupportTest::test_resolveCmakeVariablesInDefaultPath()
|
||||
QVERIFY(toolchainFilePkg);
|
||||
QVERIFY(targets.size() == 1);
|
||||
|
||||
QString expectedPkgPath = QString{qtForMcuSdkPath} + "/lib/cmake/Qul/toolchain/iar.cmake";
|
||||
QCOMPARE(toolchainFilePkg->path().toString(), expectedPkgPath);
|
||||
QCOMPARE(toolchainFilePkg->path().toString(), toolchainFilePath);
|
||||
QVERIFY(toolchainFilePkg->path().toString().startsWith(qtForMcuSdkPath));
|
||||
QCOMPARE(toolchainFilePkg->defaultPath().toString(), expectedPkgPath);
|
||||
QCOMPARE(toolchainFilePkg->defaultPath().toString(), toolchainFileDefaultPath);
|
||||
}
|
||||
|
||||
void McuSupportTest::test_legacy_createThirdPartyPackage_data()
|
||||
|
||||
Reference in New Issue
Block a user