From ca9e652716df10c15aede73dd585a91b7325d6e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Mu=C4=87ko?= Date: Thu, 14 Jul 2022 15:44:54 +0200 Subject: [PATCH] McuSupport: Use env variable as package's primary value MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Use env variable value as primary source before values from settings and fallback value from JSON. Change-Id: I0c0a4c2cdac65a075d9f38aa1557a9d303b30a5e Reviewed-by: Yasser Grimes Reviewed-by: Reviewed-by: Dawid Śliwa Reviewed-by: hjk --- src/plugins/mcusupport/mcupackage.cpp | 8 ++++++-- src/plugins/mcusupport/test/armgcc_nxp_1050_json.h | 3 ++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/plugins/mcusupport/mcupackage.cpp b/src/plugins/mcusupport/mcupackage.cpp index b2ed2aa5e54..84c05100e09 100644 --- a/src/plugins/mcusupport/mcupackage.cpp +++ b/src/plugins/mcusupport/mcupackage.cpp @@ -75,7 +75,11 @@ McuPackage::McuPackage(const SettingsHandler::Ptr &settingsHandler, , m_downloadUrl(downloadUrl) , m_addToSystemPath(addToSystemPath) { - m_path = this->settingsHandler->getPath(settingsKey, QSettings::UserScope, m_defaultPath); + m_path = FilePath::fromString( + qEnvironmentVariable(m_environmentVariableName.toStdString().c_str())); + if (!m_path.exists()) { + m_path = this->settingsHandler->getPath(settingsKey, QSettings::UserScope, m_defaultPath); + } } QString McuPackage::label() const @@ -125,7 +129,7 @@ FilePath McuPackage::path() const FilePath McuPackage::defaultPath() const { - return m_defaultPath; + return m_defaultPath.cleanPath(); } FilePath McuPackage::detectionPath() const diff --git a/src/plugins/mcusupport/test/armgcc_nxp_1050_json.h b/src/plugins/mcusupport/test/armgcc_nxp_1050_json.h index 82398214731..c9d733637bb 100644 --- a/src/plugins/mcusupport/test/armgcc_nxp_1050_json.h +++ b/src/plugins/mcusupport/test/armgcc_nxp_1050_json.h @@ -81,7 +81,7 @@ constexpr auto armgcc_nxp_1050_json = R"({ "label": "CMake Toolchain File", "cmakeVar": "CMAKE_TOOLCHAIN_FILE", "type": "file", - "defaultValue": "/opt/qtformcu/2.2/lib/cmake/Qul/toolchain/armgcc.cmake", + "defaultValue": "$Qul_ROOT//lib/cmake/Qul/toolchain/armgcc.cmake", "visible": false, "optional": false } @@ -109,6 +109,7 @@ constexpr auto armgcc_nxp_1050_json = R"({ "id": "NXP_FREERTOS_DIR", "label": "FreeRTOS SDK for MIMXRT1050-EVK", "cmakeVar": "FREERTOS_DIR", + "envVar": "IMXRT1050_FREERTOS_DIR", "defaultValue": "$QUL_BOARD_SDK_DIR/rtos/freertos/freertos_kernel", "type": "path", "optional": false