REDAC HybridController
Firmware for LUCIDAC/REDAC Teensy
|
Variables | |
list | interesting_fields = ["BOARD", "BUILD_TYPE"] |
dict | build_system = { k: env.Dictionary(k) for k in interesting_fields } |
build_flags = env.Dictionary('BUILD_FLAGS') | |
lib_dir = pathlib.Path("./").resolve() | |
rel_src_dir = lib_dir / pathlib.Path("src/build") | |
warn = lambda msg("build_distributor.py: WARN ", msg) | |
firmware_version = subprocess.getoutput("which git >/dev/null && git describe --tags || echo no-git-avail").strip() | |
firmware_version_useful = bool(re.match(r"v\d+\.\d+(-\d+.*)?", firmware_version)) | |
str | not_available = "N/A" |
unix_timestamp = subprocess.getoutput("which git >/dev/null && git log -1 --format=%ct || echo failure").strip() | |
firmware_version_date = datetime.datetime.fromtimestamp(int(unix_timestamp)).isoformat() | |
str | rename_keys = '': {prefix+k+suffix:v for k,v in dct.items()} |
distdb | |
nl | |
quote | |
s | esc = lambda s.replace(quote, '\\"') |
str | distdb_as_variables = "\n".join(f"const char {k}[] PROGMEM = {quote}{esc(v)}{quote};" for k,v in distdb.items()) |
str | distdb_variable_lookup = "\n".join(f" if(strcmp_P(key, (PGM_P)F({quote}{k}{quote}) )) return {k};" for k,v in distdb.items()) |
str | distdb_as_defines = "\n".join(f"#define {k} {quote}{esc(v)}{quote}" for k,v in distdb.items()) |
s | distdb_as_json_string_esc = esc(json.dumps(distdb)); |
str | distdb_as_json_defines = "\n".join(f" target[{quote}{k}{quote}] = {k};" for k,v in distdb.items()) |
dict | code_files = {} |
Variable Documentation
◆ build_flags
list build_distributor.build_flags = env.Dictionary('BUILD_FLAGS') |
Definition at line 27 of file build_distributor.py.
◆ build_system
dict build_distributor.build_system = { k: env.Dictionary(k) for k in interesting_fields } |
Definition at line 26 of file build_distributor.py.
◆ code_files
dict build_distributor.code_files = {} |
Definition at line 103 of file build_distributor.py.
◆ distdb
build_distributor.distdb |
Definition at line 73 of file build_distributor.py.
◆ distdb_as_defines
str build_distributor.distdb_as_defines = "\n".join(f"#define {k} {quote}{esc(v)}{quote}" for k,v in distdb.items()) |
Definition at line 99 of file build_distributor.py.
◆ distdb_as_json_defines
str build_distributor.distdb_as_json_defines = "\n".join(f" target[{quote}{k}{quote}] = {k};" for k,v in distdb.items()) |
Definition at line 101 of file build_distributor.py.
◆ distdb_as_json_string_esc
Definition at line 100 of file build_distributor.py.
◆ distdb_as_variables
str build_distributor.distdb_as_variables = "\n".join(f"const char {k}[] PROGMEM = {quote}{esc(v)}{quote};" for k,v in distdb.items()) |
Definition at line 97 of file build_distributor.py.
◆ distdb_variable_lookup
str build_distributor.distdb_variable_lookup = "\n".join(f" if(strcmp_P(key, (PGM_P)F({quote}{k}{quote}) )) return {k};" for k,v in distdb.items()) |
Definition at line 98 of file build_distributor.py.
◆ esc
s build_distributor.esc = lambda s.replace(quote, '\\"') |
Definition at line 95 of file build_distributor.py.
◆ firmware_version
build_distributor.firmware_version = subprocess.getoutput("which git >/dev/null && git describe --tags || echo no-git-avail").strip() |
Definition at line 51 of file build_distributor.py.
◆ firmware_version_date
str build_distributor.firmware_version_date = datetime.datetime.fromtimestamp(int(unix_timestamp)).isoformat() |
Definition at line 60 of file build_distributor.py.
◆ firmware_version_useful
build_distributor.firmware_version_useful = bool(re.match(r"v\d+\.\d+(-\d+.*)?", firmware_version)) |
Definition at line 52 of file build_distributor.py.
◆ interesting_fields
list build_distributor.interesting_fields = ["BOARD", "BUILD_TYPE"] |
Definition at line 25 of file build_distributor.py.
◆ lib_dir
build_distributor.lib_dir = pathlib.Path("./").resolve() |
Definition at line 41 of file build_distributor.py.
◆ nl
build_distributor.nl |
Definition at line 94 of file build_distributor.py.
◆ not_available
str build_distributor.not_available = "N/A" |
Definition at line 53 of file build_distributor.py.
◆ quote
build_distributor.quote |
Definition at line 94 of file build_distributor.py.
◆ rel_src_dir
build_distributor.rel_src_dir = lib_dir / pathlib.Path("src/build") |
Definition at line 42 of file build_distributor.py.
◆ rename_keys
str build_distributor.rename_keys = '': {prefix+k+suffix:v for k,v in dct.items()} |
Definition at line 66 of file build_distributor.py.
◆ unix_timestamp
build_distributor.unix_timestamp = subprocess.getoutput("which git >/dev/null && git log -1 --format=%ct || echo failure").strip() |
Definition at line 59 of file build_distributor.py.
◆ warn
print build_distributor.warn = lambda msg("build_distributor.py: WARN ", msg) |
Definition at line 46 of file build_distributor.py.