diff --git a/.github/workflows/examples.yml b/.github/workflows/examples.yml index d3b78af3e..f7f260fed 100644 --- a/.github/workflows/examples.yml +++ b/.github/workflows/examples.yml @@ -49,7 +49,7 @@ jobs: - name: git clone Tasmota and add to examples if: "matrix.example == 'examples/tasmota' && matrix.os != 'windows-2022'" run: | - git clone https://github.com/arendst/Tasmota.git examples/tasmota + git clone -b development --recursive --depth 1 --shallow-submodule https://github.com/arendst/Tasmota.git examples/tasmota cp examples/tasmota_platformio_override.ini examples/tasmota/platformio_override.ini - name: Build examples if: "matrix.example != 'examples/tasmota' || matrix.os != 'windows-2022'" diff --git a/builder/frameworks/arduino.py b/builder/frameworks/arduino.py index 94cd2f982..d984480bf 100644 --- a/builder/frameworks/arduino.py +++ b/builder/frameworks/arduino.py @@ -31,6 +31,7 @@ from platformio.package.version import pepver_to_semver env = DefaultEnvironment() +platform = env.PioPlatform() extra_flags = ''.join([element.replace("-D", " ") for element in env.BoardConfig().get("build.extra_flags", "")]) build_flags = ''.join([element.replace("-D", " ") for element in env.GetProjectOption("build_flags")]) @@ -38,19 +39,14 @@ SConscript("_embed_files.py", exports="env") if ("CORE32SOLO1" in extra_flags or "FRAMEWORK_ARDUINO_SOLO1" in build_flags) and ("arduino" in env.subst("$PIOFRAMEWORK") and "espidf" not in env.subst("$PIOFRAMEWORK")): - SConscript( - join(DefaultEnvironment().PioPlatform().get_package_dir( - "framework-arduino-solo1"), "tools", "platformio-build.py")) - + FRAMEWORK_DIR = platform.get_package_dir("framework-arduino-solo1") elif ("CORE32ITEAD" in extra_flags or "FRAMEWORK_ARDUINO_ITEAD" in build_flags) and ("arduino" in env.subst("$PIOFRAMEWORK") and "espidf" not in env.subst("$PIOFRAMEWORK")): - SConscript( - join(DefaultEnvironment().PioPlatform().get_package_dir( - "framework-arduino-ITEAD"), "tools", "platformio-build.py")) - + FRAMEWORK_DIR = platform.get_package_dir("framework-arduino-ITEAD") elif "arduino" in env.subst("$PIOFRAMEWORK") and "CORE32SOLO1" not in extra_flags and "FRAMEWORK_ARDUINO_SOLO1" not in build_flags and "CORE32ITEAD" not in extra_flags and "FRAMEWORK_ARDUINO_ITEAD" not in build_flags and "espidf" not in env.subst("$PIOFRAMEWORK"): - SConscript( - join(DefaultEnvironment().PioPlatform().get_package_dir( - "framework-arduinoespressif32"), "tools", "platformio-build.py")) + FRAMEWORK_DIR = platform.get_package_dir("framework-arduinoespressif32") + +if "espidf" not in env.subst("$PIOFRAMEWORK"): + SConscript(join(FRAMEWORK_DIR, "tools", "platformio-build.py")) def install_python_deps(): def _get_installed_pip_packages(): diff --git a/builder/frameworks/espidf.py b/builder/frameworks/espidf.py index 0042acd81..793997015 100644 --- a/builder/frameworks/espidf.py +++ b/builder/frameworks/espidf.py @@ -744,8 +744,8 @@ def compile_source_files( obj_path = os.path.join(obj_path, os.path.basename(src_path)) preserve_source_file_extension = board.get( - "build.esp-idf.preserve_source_file_extension", True - ) + "build.esp-idf.preserve_source_file_extension", "yes" + ) == "yes" objects.append( build_envs[compile_group_idx].StaticObject( diff --git a/examples/tasmota_platformio_override.ini b/examples/tasmota_platformio_override.ini index c31712c3e..1b094a826 100644 --- a/examples/tasmota_platformio_override.ini +++ b/examples/tasmota_platformio_override.ini @@ -1,6 +1,6 @@ [platformio] default_envs = - tasmota32 + tasmota32-webcam tasmota32solo1 tasmota32-nspanel tasmota32c2