Files
nuki_hub/updater/apply_patches.py
2025-11-23 21:15:14 +01:00

29 lines
1.0 KiB
Python

from os.path import join, isfile
Import("env")
FRAMEWORK_DIR = env.PioPlatform().get_package_dir("framework-arduinoespressif32")
patchflag_path = join(FRAMEWORK_DIR, ".hosted-patching-done")
# patch file only if we didn't do it before
if not isfile(join(FRAMEWORK_DIR, ".hosted-patching-done")):
original_file = join(FRAMEWORK_DIR, "cores", "esp32", "esp32-hal-hosted.c")
patched_file = join("resources", "esp32-hal-hosted.c.patch")
assert isfile(original_file) and isfile(patched_file)
env.Execute("patch %s %s" % (original_file, patched_file))
# env.Execute("touch " + patchflag_path)
original_file = join(FRAMEWORK_DIR, "cores", "esp32", "esp32-hal-hosted.h")
patched_file = join("resources", "esp32-hal-hosted.h.patch")
assert isfile(original_file) and isfile(patched_file)
env.Execute("patch %s %s" % (original_file, patched_file))
def _touch(path):
with open(path, "w") as fp:
fp.write("")
env.Execute(lambda *args, **kwargs: _touch(patchflag_path))