mirror of
https://github.com/thooge/esp32-nmea2000-obp60.git
synced 2026-02-24 20:53:07 +01:00
Add feature to optionally apply patches to gateway code
This commit is contained in:
@@ -1,12 +1,21 @@
|
||||
# PlatformIO extra script for obp60task
|
||||
|
||||
import subprocess
|
||||
|
||||
patching = False
|
||||
|
||||
epdtype = "unknown"
|
||||
pcbvers = "unknown"
|
||||
for x in env["BUILD_FLAGS"]:
|
||||
if x.startswith("-D HARDWARE_"):
|
||||
if not x.startswith('-D'):
|
||||
continue
|
||||
opt = x[2:].strip()
|
||||
if opt.startswith("HARDWARE_"):
|
||||
pcbvers = x.split('_')[1]
|
||||
if x.startswith("-D DISPLAY_"):
|
||||
elif opt.startswith("DISPLAY_"):
|
||||
epdtype = x.split('_')[1]
|
||||
elif opt == 'ENABLE_PATCHES':
|
||||
patching = True
|
||||
|
||||
propfilename = os.path.join(env["PROJECT_LIBDEPS_DIR"], env["PIOENV"], "GxEPD2/library.properties")
|
||||
properties = {}
|
||||
@@ -28,3 +37,20 @@ except:
|
||||
env["CPPDEFINES"].extend([("BOARD", env["BOARD"]), ("EPDTYPE", epdtype), ("PCBVERS", pcbvers), ("GXEPD2VERS", gxepd2vers)])
|
||||
|
||||
print("added hardware info to CPPDEFINES")
|
||||
|
||||
if patching:
|
||||
# apply patches to gateway code
|
||||
print("applying gateway patches")
|
||||
patchdir = os.path.join(os.path.dirname(script), "patches")
|
||||
if not os.path.isdir(patchdir):
|
||||
print("patchdir not found, no patches applied")
|
||||
else:
|
||||
patchfiles = [f for f in os.listdir(patchdir)]
|
||||
for p in patchfiles:
|
||||
patch = os.path.join(patchdir, p)
|
||||
print(f"applying {patch}")
|
||||
res = subprocess.run(["git", "apply", patch], capture_output=True, text=True)
|
||||
if res.returncode != 0:
|
||||
print(res.stderr)
|
||||
else:
|
||||
print("no patches found")
|
||||
|
||||
Reference in New Issue
Block a user