diff --git a/src/plugins/mcusupport/mcusupportsdk.cpp b/src/plugins/mcusupport/mcusupportsdk.cpp index 76f24206797..dd06240d507 100644 --- a/src/plugins/mcusupport/mcusupportsdk.cpp +++ b/src/plugins/mcusupport/mcusupportsdk.cpp @@ -608,19 +608,7 @@ static FilePaths targetDescriptionFiles(const FilePath &dir) return kitsPath(dir).dirEntries(Utils::FileFilter({"*.json"}, QDir::Files)); } -VersionDetection parseVersionDetection(const QJsonObject &packageEntry) -{ - const QJsonObject versioning = packageEntry.value("versionDetection").toObject(); - return { - versioning["regex"].toString(), - versioning["filePattern"].toString(), - versioning["executableArgs"].toString(), - versioning["xmlElement"].toString(), - versioning["xmlAttribute"].toString(), - }; -} - -QString getOsSpecificValue(const QJsonValue &entry) +static QString getOsSpecificValue(const QJsonValue &entry) { if (entry.isObject()) { //The json entry has os-specific values @@ -630,6 +618,19 @@ QString getOsSpecificValue(const QJsonValue &entry) return entry.toString(); } +static VersionDetection parseVersionDetection(const QJsonObject &packageEntry) +{ + const QJsonObject versioning = packageEntry.value("versionDetection").toObject(); + return { + versioning["regex"].toString(), + getOsSpecificValue(versioning["filePattern"]), + versioning["executableArgs"].toString(), + versioning["xmlElement"].toString(), + versioning["xmlAttribute"].toString(), + }; +} + + static PackageDescription parsePackage(const QJsonObject &cmakeEntry) { const QVariantList versionsVariantList = cmakeEntry["versions"].toArray().toVariantList(); diff --git a/src/plugins/mcusupport/test/armgcc_ek_ra6m3g_baremetal_json.h b/src/plugins/mcusupport/test/armgcc_ek_ra6m3g_baremetal_json.h index fb6a57640a7..6d096d21a09 100644 --- a/src/plugins/mcusupport/test/armgcc_ek_ra6m3g_baremetal_json.h +++ b/src/plugins/mcusupport/test/armgcc_ek_ra6m3g_baremetal_json.h @@ -43,7 +43,10 @@ constexpr auto armgcc_ek_ra6m3g_baremetal_json = R"( "type": "path", "optional": false, "versionDetection": { - "filePattern": "bin/arm-none-eabi-g++", + "filePattern": { + "windows": "bin/arm-none-eabi-g++.exe", + "linux": "bin/arm-none-eabi-g++" + }, "executableArgs": "--version", "regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b" }, diff --git a/src/plugins/mcusupport/test/armgcc_ek_ra6m3g_freertos_json.h b/src/plugins/mcusupport/test/armgcc_ek_ra6m3g_freertos_json.h index 283b79ab21d..531031cbf94 100644 --- a/src/plugins/mcusupport/test/armgcc_ek_ra6m3g_freertos_json.h +++ b/src/plugins/mcusupport/test/armgcc_ek_ra6m3g_freertos_json.h @@ -43,7 +43,10 @@ constexpr auto armgcc_ek_ra6m3g_freertos_json = R"( "type": "path", "optional": false, "versionDetection": { - "filePattern": "bin/arm-none-eabi-g++", + "filePattern": { + "windows": "bin/arm-none-eabi-g++.exe", + "linux": "bin/arm-none-eabi-g++" + }, "executableArgs": "--version", "regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b" }, diff --git a/src/plugins/mcusupport/test/armgcc_example_baremetal_json.h b/src/plugins/mcusupport/test/armgcc_example_baremetal_json.h index e4f10bd54b3..c3e2e7187eb 100644 --- a/src/plugins/mcusupport/test/armgcc_example_baremetal_json.h +++ b/src/plugins/mcusupport/test/armgcc_example_baremetal_json.h @@ -28,7 +28,10 @@ constexpr auto armgcc_example_baremetal_json = R"( "type": "path", "optional": false, "versionDetection": { - "filePattern": "bin/arm-none-eabi-g++", + "filePattern": { + "windows": "bin/arm-none-eabi-g++.exe", + "linux": "bin/arm-none-eabi-g++" + }, "executableArgs": "--version", "regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b" }, diff --git a/src/plugins/mcusupport/test/armgcc_mimxrt1050_evk_baremetal_json.h b/src/plugins/mcusupport/test/armgcc_mimxrt1050_evk_baremetal_json.h index 01ac942a0a5..6b55055beba 100644 --- a/src/plugins/mcusupport/test/armgcc_mimxrt1050_evk_baremetal_json.h +++ b/src/plugins/mcusupport/test/armgcc_mimxrt1050_evk_baremetal_json.h @@ -47,7 +47,10 @@ constexpr auto armgcc_mimxrt1050_evk_baremetal_json = R"( "type": "path", "optional": false, "versionDetection": { - "filePattern": "bin/arm-none-eabi-g++", + "filePattern": { + "windows": "bin/arm-none-eabi-g++.exe", + "linux": "bin/arm-none-eabi-g++" + }, "executableArgs": "--version", "regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b" }, diff --git a/src/plugins/mcusupport/test/armgcc_mimxrt1050_evk_freertos_json.h b/src/plugins/mcusupport/test/armgcc_mimxrt1050_evk_freertos_json.h index 25e696a14d0..4a7da4ccf93 100644 --- a/src/plugins/mcusupport/test/armgcc_mimxrt1050_evk_freertos_json.h +++ b/src/plugins/mcusupport/test/armgcc_mimxrt1050_evk_freertos_json.h @@ -47,7 +47,10 @@ constexpr auto armgcc_mimxrt1050_evk_freertos_json = R"( "type": "path", "optional": false, "versionDetection": { - "filePattern": "bin/arm-none-eabi-g++", + "filePattern": { + "windows": "bin/arm-none-eabi-g++.exe", + "linux": "bin/arm-none-eabi-g++" + }, "executableArgs": "--version", "regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b" }, diff --git a/src/plugins/mcusupport/test/armgcc_mimxrt1060_evk_baremetal_json.h b/src/plugins/mcusupport/test/armgcc_mimxrt1060_evk_baremetal_json.h index e7a7311b1c9..8f0b9e54e24 100644 --- a/src/plugins/mcusupport/test/armgcc_mimxrt1060_evk_baremetal_json.h +++ b/src/plugins/mcusupport/test/armgcc_mimxrt1060_evk_baremetal_json.h @@ -47,7 +47,10 @@ constexpr auto armgcc_mimxrt1060_evk_baremetal_json = R"( "type": "path", "optional": false, "versionDetection": { - "filePattern": "bin/arm-none-eabi-g++", + "filePattern": { + "windows": "bin/arm-none-eabi-g++.exe", + "linux": "bin/arm-none-eabi-g++" + }, "executableArgs": "--version", "regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b" }, diff --git a/src/plugins/mcusupport/test/armgcc_mimxrt1064_evk_baremetal_json.h b/src/plugins/mcusupport/test/armgcc_mimxrt1064_evk_baremetal_json.h index b2d4b7ec406..cdf67a5f6ca 100644 --- a/src/plugins/mcusupport/test/armgcc_mimxrt1064_evk_baremetal_json.h +++ b/src/plugins/mcusupport/test/armgcc_mimxrt1064_evk_baremetal_json.h @@ -47,7 +47,10 @@ constexpr auto armgcc_mimxrt1064_evk_baremetal_json = R"( "type": "path", "optional": false, "versionDetection": { - "filePattern": "bin/arm-none-eabi-g++", + "filePattern": { + "windows": "bin/arm-none-eabi-g++.exe", + "linux": "bin/arm-none-eabi-g++" + }, "executableArgs": "--version", "regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b" }, diff --git a/src/plugins/mcusupport/test/armgcc_mimxrt1064_evk_freertos_json.h b/src/plugins/mcusupport/test/armgcc_mimxrt1064_evk_freertos_json.h index 264ad9c065e..592a84228d1 100644 --- a/src/plugins/mcusupport/test/armgcc_mimxrt1064_evk_freertos_json.h +++ b/src/plugins/mcusupport/test/armgcc_mimxrt1064_evk_freertos_json.h @@ -47,7 +47,10 @@ constexpr auto armgcc_mimxrt1064_evk_freertos_json = R"( "type": "path", "optional": false, "versionDetection": { - "filePattern": "bin/arm-none-eabi-g++", + "filePattern": { + "windows": "bin/arm-none-eabi-g++.exe", + "linux": "bin/arm-none-eabi-g++" + }, "executableArgs": "--version", "regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b" }, diff --git a/src/plugins/mcusupport/test/armgcc_mimxrt1170_evk_freertos_json.h b/src/plugins/mcusupport/test/armgcc_mimxrt1170_evk_freertos_json.h index 8c348011231..b7eb801cd60 100644 --- a/src/plugins/mcusupport/test/armgcc_mimxrt1170_evk_freertos_json.h +++ b/src/plugins/mcusupport/test/armgcc_mimxrt1170_evk_freertos_json.h @@ -47,7 +47,10 @@ constexpr auto armgcc_mimxrt1170_evk_freertos_json = R"( "type": "path", "optional": false, "versionDetection": { - "filePattern": "bin/arm-none-eabi-g++", + "filePattern": { + "windows": "bin/arm-none-eabi-g++.exe", + "linux": "bin/arm-none-eabi-g++" + }, "executableArgs": "--version", "regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b" }, diff --git a/src/plugins/mcusupport/test/armgcc_stm32f469i_discovery_baremetal_json.h b/src/plugins/mcusupport/test/armgcc_stm32f469i_discovery_baremetal_json.h index 452ae4e953c..3b1ef8172f7 100644 --- a/src/plugins/mcusupport/test/armgcc_stm32f469i_discovery_baremetal_json.h +++ b/src/plugins/mcusupport/test/armgcc_stm32f469i_discovery_baremetal_json.h @@ -46,7 +46,10 @@ constexpr auto armgcc_stm32f469i_discovery_baremetal_json = R"( "type": "path", "optional": false, "versionDetection": { - "filePattern": "bin/arm-none-eabi-g++", + "filePattern": { + "windows": "bin/arm-none-eabi-g++.exe", + "linux": "bin/arm-none-eabi-g++" + }, "executableArgs": "--version", "regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b" }, diff --git a/src/plugins/mcusupport/test/armgcc_stm32f769i_discovery_baremetal_json.h b/src/plugins/mcusupport/test/armgcc_stm32f769i_discovery_baremetal_json.h index 9fdb309da14..62171d73334 100644 --- a/src/plugins/mcusupport/test/armgcc_stm32f769i_discovery_baremetal_json.h +++ b/src/plugins/mcusupport/test/armgcc_stm32f769i_discovery_baremetal_json.h @@ -46,7 +46,10 @@ constexpr auto armgcc_stm32f769i_discovery_baremetal_json = R"( "type": "path", "optional": false, "versionDetection": { - "filePattern": "bin/arm-none-eabi-g++", + "filePattern": { + "windows": "bin/arm-none-eabi-g++.exe", + "linux": "bin/arm-none-eabi-g++" + }, "executableArgs": "--version", "regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b" }, diff --git a/src/plugins/mcusupport/test/armgcc_stm32f769i_discovery_freertos_json.h b/src/plugins/mcusupport/test/armgcc_stm32f769i_discovery_freertos_json.h index 249db9497d5..d6e28c6c429 100644 --- a/src/plugins/mcusupport/test/armgcc_stm32f769i_discovery_freertos_json.h +++ b/src/plugins/mcusupport/test/armgcc_stm32f769i_discovery_freertos_json.h @@ -46,7 +46,10 @@ constexpr auto armgcc_stm32f769i_discovery_freertos_json = R"( "type": "path", "optional": false, "versionDetection": { - "filePattern": "bin/arm-none-eabi-g++", + "filePattern": { + "windows": "bin/arm-none-eabi-g++.exe", + "linux": "bin/arm-none-eabi-g++" + }, "executableArgs": "--version", "regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b" }, diff --git a/src/plugins/mcusupport/test/armgcc_stm32h750b_discovery_baremetal_json.h b/src/plugins/mcusupport/test/armgcc_stm32h750b_discovery_baremetal_json.h index 3b5adc3e989..a2819c8cf8a 100644 --- a/src/plugins/mcusupport/test/armgcc_stm32h750b_discovery_baremetal_json.h +++ b/src/plugins/mcusupport/test/armgcc_stm32h750b_discovery_baremetal_json.h @@ -46,7 +46,10 @@ constexpr auto armgcc_stm32h750b_discovery_baremetal_json = R"( "type": "path", "optional": false, "versionDetection": { - "filePattern": "bin/arm-none-eabi-g++", + "filePattern": { + "windows": "bin/arm-none-eabi-g++.exe", + "linux": "bin/arm-none-eabi-g++" + }, "executableArgs": "--version", "regex": "\\b(\\d+\\.\\d+\\.\\d+)\\b" }, diff --git a/src/plugins/mcusupport/test/ghs_rh850_d1m1a_baremetal_json.h b/src/plugins/mcusupport/test/ghs_rh850_d1m1a_baremetal_json.h index 132cf0319e8..e6e32b208e5 100644 --- a/src/plugins/mcusupport/test/ghs_rh850_d1m1a_baremetal_json.h +++ b/src/plugins/mcusupport/test/ghs_rh850_d1m1a_baremetal_json.h @@ -47,7 +47,10 @@ constexpr auto ghs_rh850_d1m1a_baremetal_json = R"( "type": "path", "optional": false, "versionDetection": { - "filePattern": "gversion", + "filePattern": { + "windows": "gversion.exe", + "linux": "gversion" + }, "executableArgs": "-help", "regex": "\\bv(\\d+\\.\\d+\\.\\d+)\\b" }, diff --git a/src/plugins/mcusupport/test/iar_ek_ra6m3g_baremetal_json.h b/src/plugins/mcusupport/test/iar_ek_ra6m3g_baremetal_json.h index 0c38725d138..05f26f7cfcf 100644 --- a/src/plugins/mcusupport/test/iar_ek_ra6m3g_baremetal_json.h +++ b/src/plugins/mcusupport/test/iar_ek_ra6m3g_baremetal_json.h @@ -42,7 +42,10 @@ constexpr auto iar_ek_ra6m3g_baremetal_json = R"( "cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR", "type": "path", "versionDetection": { - "filePattern": "bin/iccarm", + "filePattern": { + "windows": "bin/iccarm.exe", + "linux": "bin/iccarm" + }, "executableArgs": "--version", "regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b" }, diff --git a/src/plugins/mcusupport/test/iar_ek_ra6m3g_freertos_json.h b/src/plugins/mcusupport/test/iar_ek_ra6m3g_freertos_json.h index d5eda9eab7d..12c827436ab 100644 --- a/src/plugins/mcusupport/test/iar_ek_ra6m3g_freertos_json.h +++ b/src/plugins/mcusupport/test/iar_ek_ra6m3g_freertos_json.h @@ -42,7 +42,10 @@ constexpr auto iar_ek_ra6m3g_freertos_json = R"( "cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR", "type": "path", "versionDetection": { - "filePattern": "bin/iccarm", + "filePattern": { + "windows": "bin/iccarm.exe", + "linux": "bin/iccarm" + }, "executableArgs": "--version", "regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b" }, diff --git a/src/plugins/mcusupport/test/iar_example_baremetal_json.h b/src/plugins/mcusupport/test/iar_example_baremetal_json.h index 66e6abde63c..d5e0d9ad2f5 100644 --- a/src/plugins/mcusupport/test/iar_example_baremetal_json.h +++ b/src/plugins/mcusupport/test/iar_example_baremetal_json.h @@ -27,7 +27,10 @@ constexpr auto iar_example_baremetal_json = R"( "cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR", "type": "path", "versionDetection": { - "filePattern": "bin/iccarm", + "filePattern": { + "windows": "bin/iccarm.exe", + "linux": "bin/iccarm" + }, "executableArgs": "--version", "regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b" }, diff --git a/src/plugins/mcusupport/test/iar_mimxrt1050_evk_baremetal_json.h b/src/plugins/mcusupport/test/iar_mimxrt1050_evk_baremetal_json.h index 5fe5a089842..795eac73054 100644 --- a/src/plugins/mcusupport/test/iar_mimxrt1050_evk_baremetal_json.h +++ b/src/plugins/mcusupport/test/iar_mimxrt1050_evk_baremetal_json.h @@ -46,7 +46,10 @@ constexpr auto iar_mimxrt1050_evk_baremetal_json = R"( "cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR", "type": "path", "versionDetection": { - "filePattern": "bin/iccarm", + "filePattern": { + "windows": "bin/iccarm.exe", + "linux": "bin/iccarm" + }, "executableArgs": "--version", "regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b" }, diff --git a/src/plugins/mcusupport/test/iar_mimxrt1050_evk_freertos_json.h b/src/plugins/mcusupport/test/iar_mimxrt1050_evk_freertos_json.h index 93d23e305a2..7ab260d8563 100644 --- a/src/plugins/mcusupport/test/iar_mimxrt1050_evk_freertos_json.h +++ b/src/plugins/mcusupport/test/iar_mimxrt1050_evk_freertos_json.h @@ -46,7 +46,10 @@ constexpr auto iar_mimxrt1050_evk_freertos_json = R"( "cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR", "type": "path", "versionDetection": { - "filePattern": "bin/iccarm", + "filePattern": { + "windows": "bin/iccarm.exe", + "linux": "bin/iccarm" + }, "executableArgs": "--version", "regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b" }, diff --git a/src/plugins/mcusupport/test/iar_mimxrt1060_evk_baremetal_json.h b/src/plugins/mcusupport/test/iar_mimxrt1060_evk_baremetal_json.h index 6600150f5d6..21e5922228b 100644 --- a/src/plugins/mcusupport/test/iar_mimxrt1060_evk_baremetal_json.h +++ b/src/plugins/mcusupport/test/iar_mimxrt1060_evk_baremetal_json.h @@ -46,7 +46,10 @@ constexpr auto iar_mimxrt1060_evk_baremetal_json = R"( "cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR", "type": "path", "versionDetection": { - "filePattern": "bin/iccarm", + "filePattern": { + "windows": "bin/iccarm.exe", + "linux": "bin/iccarm" + }, "executableArgs": "--version", "regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b" }, diff --git a/src/plugins/mcusupport/test/iar_mimxrt1064_evk_baremetal_json.h b/src/plugins/mcusupport/test/iar_mimxrt1064_evk_baremetal_json.h index 83d3c23b1a9..628c209f71e 100644 --- a/src/plugins/mcusupport/test/iar_mimxrt1064_evk_baremetal_json.h +++ b/src/plugins/mcusupport/test/iar_mimxrt1064_evk_baremetal_json.h @@ -46,7 +46,10 @@ constexpr auto iar_mimxrt1064_evk_baremetal_json = R"( "cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR", "type": "path", "versionDetection": { - "filePattern": "bin/iccarm", + "filePattern": { + "windows": "bin/iccarm.exe", + "linux": "bin/iccarm" + }, "executableArgs": "--version", "regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b" }, diff --git a/src/plugins/mcusupport/test/iar_mimxrt1064_evk_freertos_json.h b/src/plugins/mcusupport/test/iar_mimxrt1064_evk_freertos_json.h index 2f71e359048..e3cdad5b212 100644 --- a/src/plugins/mcusupport/test/iar_mimxrt1064_evk_freertos_json.h +++ b/src/plugins/mcusupport/test/iar_mimxrt1064_evk_freertos_json.h @@ -46,7 +46,10 @@ constexpr auto iar_mimxrt1064_evk_freertos_json = R"( "cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR", "type": "path", "versionDetection": { - "filePattern": "bin/iccarm", + "filePattern": { + "windows": "bin/iccarm.exe", + "linux": "bin/iccarm" + }, "executableArgs": "--version", "regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b" }, diff --git a/src/plugins/mcusupport/test/iar_mimxrt1170_evk_freertos_json.h b/src/plugins/mcusupport/test/iar_mimxrt1170_evk_freertos_json.h index 4843a668198..f783ea67bd5 100644 --- a/src/plugins/mcusupport/test/iar_mimxrt1170_evk_freertos_json.h +++ b/src/plugins/mcusupport/test/iar_mimxrt1170_evk_freertos_json.h @@ -46,7 +46,10 @@ constexpr auto iar_mimxrt1170_evk_freertos_json = R"( "cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR", "type": "path", "versionDetection": { - "filePattern": "bin/iccarm", + "filePattern": { + "windows": "bin/iccarm.exe", + "linux": "bin/iccarm" + }, "executableArgs": "--version", "regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b" }, diff --git a/src/plugins/mcusupport/test/iar_stm32f469i_discovery_baremetal_json.h b/src/plugins/mcusupport/test/iar_stm32f469i_discovery_baremetal_json.h index 793097d5f6a..af961af20d6 100644 --- a/src/plugins/mcusupport/test/iar_stm32f469i_discovery_baremetal_json.h +++ b/src/plugins/mcusupport/test/iar_stm32f469i_discovery_baremetal_json.h @@ -45,7 +45,10 @@ constexpr auto iar_stm32f469i_discovery_baremetal_json = R"( "cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR", "type": "path", "versionDetection": { - "filePattern": "bin/iccarm", + "filePattern": { + "windows": "bin/iccarm.exe", + "linux": "bin/iccarm" + }, "executableArgs": "--version", "regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b" }, diff --git a/src/plugins/mcusupport/test/iar_stm32f769i_discovery_baremetal_json.h b/src/plugins/mcusupport/test/iar_stm32f769i_discovery_baremetal_json.h index 47df7469ab5..4b7c3fb8223 100644 --- a/src/plugins/mcusupport/test/iar_stm32f769i_discovery_baremetal_json.h +++ b/src/plugins/mcusupport/test/iar_stm32f769i_discovery_baremetal_json.h @@ -45,7 +45,10 @@ constexpr auto iar_stm32f769i_discovery_baremetal_json = R"( "cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR", "type": "path", "versionDetection": { - "filePattern": "bin/iccarm", + "filePattern": { + "windows": "bin/iccarm.exe", + "linux": "bin/iccarm" + }, "executableArgs": "--version", "regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b" }, diff --git a/src/plugins/mcusupport/test/iar_stm32f769i_discovery_freertos_json.h b/src/plugins/mcusupport/test/iar_stm32f769i_discovery_freertos_json.h index 71181fdca5b..198d008be81 100644 --- a/src/plugins/mcusupport/test/iar_stm32f769i_discovery_freertos_json.h +++ b/src/plugins/mcusupport/test/iar_stm32f769i_discovery_freertos_json.h @@ -45,7 +45,10 @@ constexpr auto iar_stm32f769i_discovery_freertos_json = R"( "cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR", "type": "path", "versionDetection": { - "filePattern": "bin/iccarm", + "filePattern": { + "windows": "bin/iccarm.exe", + "linux": "bin/iccarm" + }, "executableArgs": "--version", "regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b" }, diff --git a/src/plugins/mcusupport/test/iar_stm32h750b_discovery_baremetal_json.h b/src/plugins/mcusupport/test/iar_stm32h750b_discovery_baremetal_json.h index 9c657ab8cc6..cec5412f71e 100644 --- a/src/plugins/mcusupport/test/iar_stm32h750b_discovery_baremetal_json.h +++ b/src/plugins/mcusupport/test/iar_stm32h750b_discovery_baremetal_json.h @@ -45,7 +45,10 @@ constexpr auto iar_stm32h750b_discovery_baremetal_json = R"( "cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR", "type": "path", "versionDetection": { - "filePattern": "bin/iccarm", + "filePattern": { + "windows": "bin/iccarm.exe", + "linux": "bin/iccarm" + }, "executableArgs": "--version", "regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b" }, diff --git a/src/plugins/mcusupport/test/iar_tviic2d6m_baremetal_json.h b/src/plugins/mcusupport/test/iar_tviic2d6m_baremetal_json.h index 29c391e8db3..a5770bdef18 100644 --- a/src/plugins/mcusupport/test/iar_tviic2d6m_baremetal_json.h +++ b/src/plugins/mcusupport/test/iar_tviic2d6m_baremetal_json.h @@ -38,7 +38,10 @@ constexpr auto iar_tviic2d6m_baremetal_json = R"( "cmakeVar": "QUL_TARGET_TOOLCHAIN_DIR", "type": "path", "versionDetection": { - "filePattern": "bin/iccarm", + "filePattern": { + "windows": "bin/iccarm.exe", + "linux": "bin/iccarm" + }, "executableArgs": "--version", "regex": "\\bV(\\d+\\.\\d+\\.\\d+)\\.\\d+\\b" }, diff --git a/src/plugins/mcusupport/test/unittest.cpp b/src/plugins/mcusupport/test/unittest.cpp index ca28f925bb6..887ad6e4cf8 100644 --- a/src/plugins/mcusupport/test/unittest.cpp +++ b/src/plugins/mcusupport/test/unittest.cpp @@ -80,7 +80,7 @@ const char armGccDir[]{"/opt/armgcc"}; 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 QString armGccSuffix{HostOsInfo::withExecutableSuffix("bin/arm-none-eabi-g++")}; 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"}; @@ -1245,7 +1245,7 @@ void McuSupportTest::test_passExecutableVersionDetectorToToolchainPackage_data() << armGccVersionDetectionRegex; QTest::newRow("iar_stm32f469i_discovery_baremetal_json") - << iar_stm32f469i_discovery_baremetal_json << QString{"bin/iccarm"} << version + << iar_stm32f469i_discovery_baremetal_json << HostOsInfo::withExecutableSuffix("bin/iccarm") << version << iarVersionDetectionRegex; }