|
|
@ -6,9 +6,10 @@ menv=env # type: ignore |
|
|
src_filter = [ |
|
|
src_filter = [ |
|
|
'+<*.cpp>', |
|
|
'+<*.cpp>', |
|
|
'+<helpers/*.cpp>', |
|
|
'+<helpers/*.cpp>', |
|
|
'+<helpers/sensors>' |
|
|
'+<helpers/sensors>', |
|
|
'+<helpers/radiolib/*.cpp>', |
|
|
'+<helpers/radiolib/*.cpp>', |
|
|
'+<helpers/ui/MomentaryButton.cpp>', |
|
|
'+<helpers/ui/MomentaryButton.cpp>', |
|
|
|
|
|
'+<helpers/ui/buzzer.cpp>', |
|
|
] |
|
|
] |
|
|
|
|
|
|
|
|
# add build and include dirs according to CPPDEFINES |
|
|
# add build and include dirs according to CPPDEFINES |
|
|
@ -38,11 +39,29 @@ for item in menv.get("CPPDEFINES", []): |
|
|
menv.Append(BUILD_FLAGS=["-I src/helpers/rp2040"]) |
|
|
menv.Append(BUILD_FLAGS=["-I src/helpers/rp2040"]) |
|
|
src_filter.append("+<helpers/rp2040/*>") |
|
|
src_filter.append("+<helpers/rp2040/*>") |
|
|
|
|
|
|
|
|
|
|
|
# DISPLAY HANDLING |
|
|
|
|
|
elif isinstance(item, tuple) and item[0] == "DISPLAY_CLASS": |
|
|
|
|
|
display_class = item[1] |
|
|
|
|
|
src_filter.append(f"+<helpers/ui/{display_class}.cpp>") |
|
|
|
|
|
if (display_class == "ST7789Display") : |
|
|
|
|
|
src_filter.append(f"+<helpers/ui/OLEDDisplay.cpp>") |
|
|
|
|
|
src_filter.append(f"+<helpers/ui/OLEDDisplayFonts.cpp>") |
|
|
|
|
|
|
|
|
# VARIANTS HANDLING |
|
|
# VARIANTS HANDLING |
|
|
elif isinstance(item, tuple) and item[0] == "MC_VARIANT": |
|
|
elif isinstance(item, tuple) and item[0] == "MC_VARIANT": |
|
|
variant_name = item[1] |
|
|
variant_name = item[1] |
|
|
menv.Append(BUILD_FLAGS=[f"-I variants/{variant_name}"]) |
|
|
menv.Append(BUILD_FLAGS=[f"-I variants/{variant_name}"]) |
|
|
src_filter.append(f"+<../variants/{variant_name}>") |
|
|
src_filter.append(f"+<../variants/{variant_name}>") |
|
|
|
|
|
|
|
|
|
|
|
# INCLUDE EXAMPLE CODE IN BUILD (to provide your own support files without touching the tree) |
|
|
|
|
|
elif isinstance(item, tuple) and item[0] == "BUILD_EXAMPLE": |
|
|
|
|
|
example_name = item[1] |
|
|
|
|
|
src_filter.append(f"+<../examples/{example_name}>") |
|
|
|
|
|
|
|
|
|
|
|
# EXCLUDE A SOURCE FILE FROM AN EXAMPLE (must be placed after example name or boom) |
|
|
|
|
|
elif isinstance(item, tuple) and item[0] == "EXCLUDE_FROM_EXAMPLE": |
|
|
|
|
|
exclude_name = item[1] |
|
|
|
|
|
src_filter.append(f"-<../examples/{example_name}/{exclude_name}>") |
|
|
|
|
|
|
|
|
menv.Replace(SRC_FILTER=src_filter) |
|
|
menv.Replace(SRC_FILTER=src_filter) |
|
|
|
|
|
|
|
|
|