From 79b835059f6a2f39b74dde92144909a52617ee5f Mon Sep 17 00:00:00 2001 From: per1234 Date: Wed, 29 May 2024 04:26:51 -0700 Subject: [PATCH] feat(tools):Use Windows native path separator in ESP_SR model copy command pattern (#9649) * fix(platform): Use Win path separator in ESP_SR copy command pattern Although Windows generally supports the use of the POSIX compliant slash path separator in addition to the Windows native backslash separator, in the specific use case where a path is present in a native command executed via an argument to `cmd /c` in a platform command pattern, it is mandatory to use backslash path separators. Previously, a slash path separator was used in the `tools.esp32-arduino-libs.path` and `compiler.sdk.path` platform properties, which were referenced in a `copy` command in the `cmd /c` argument part of the platform's `recipe.hooks.objcopy.postobjcopy.2.pattern.windows` command pattern. This caused compilation to fail with a "The syntax of the command is incorrect." error under the following conditions: - The compilation is performed on a Windows machine - The compiled sketch uses the ESP_SR library This is fixed by adding Windows override variants of the properties, with backslash path separators. * fix(release): Remove windows path to libs when releasing --------- Co-authored-by: me-no-dev --- .github/scripts/on-release.sh | 1 + platform.txt | 2 ++ 2 files changed, 3 insertions(+) diff --git a/.github/scripts/on-release.sh b/.github/scripts/on-release.sh index 9f250cd6f..d4da0460b 100755 --- a/.github/scripts/on-release.sh +++ b/.github/scripts/on-release.sh @@ -221,6 +221,7 @@ RVTC_NEW_NAME="esp-rv32" echo "Generating platform.txt..." cat "$GITHUB_WORKSPACE/platform.txt" | \ sed "s/version=.*/version=$RELEASE_TAG/g" | \ +sed 's/tools\.esp32-arduino-libs\.path\.windows=.*//g' | \ sed 's/{runtime\.platform\.path}.tools.esp32-arduino-libs/\{runtime.tools.esp32-arduino-libs.path\}/g' | \ sed 's/{runtime\.platform\.path}.tools.xtensa-esp-elf-gdb/\{runtime.tools.xtensa-esp-elf-gdb.path\}/g' | \ sed 's/{runtime\.platform\.path}.tools.xtensa-esp32-elf/\{runtime.tools.xtensa-esp32-elf-gcc.path\}/g' | \ diff --git a/platform.txt b/platform.txt index 4e379e865..4bd88fecd 100644 --- a/platform.txt +++ b/platform.txt @@ -2,6 +2,7 @@ name=ESP32 Arduino version=3.0.0 tools.esp32-arduino-libs.path={runtime.platform.path}/tools/esp32-arduino-libs +tools.esp32-arduino-libs.path.windows={runtime.platform.path}\tools\esp32-arduino-libs tools.xtensa-esp32-elf-gcc.path={runtime.platform.path}/tools/xtensa-esp32-elf tools.xtensa-esp32s2-elf-gcc.path={runtime.platform.path}/tools/xtensa-esp32s2-elf tools.xtensa-esp32s3-elf-gcc.path={runtime.platform.path}/tools/xtensa-esp32s3-elf @@ -30,6 +31,7 @@ compiler.path={tools.{build.tarch}-{build.target}-elf-gcc.path}/bin/ compiler.prefix={build.tarch}-{build.target}-elf- compiler.sdk.path={tools.esp32-arduino-libs.path}/{build.mcu} +compiler.sdk.path.windows={tools.esp32-arduino-libs.path}\{build.mcu} # EXPERIMENTAL feature: optimization flags # - this is alpha and may be subject to change without notice