Currently we have some unnecessary bloat of the BUILD flags that are shared across all ports, notably that there are differently named settings to turn things off as well as on:
- CIRCUITPY_FULL_BUILD (everything on the list)
- CIRCUITPY_SMALL_BUILD (just turns off full build only items)
- CIRCUITPY_DEFAULT_BUILD (everything not in full build)
- CIRCUITPY_MINIMAL_BUILD (turns off default build items)
- CIRCUITPY_ALWAYS_BUILD (items with no HAL component that always get built)
It'd be considerably cleaner to restrict these to a more sensible list of increasingly inclusive settings, such as ALWAYS, MINIMAL, 192kB, 256kB, and FULL, as suggested by Danh, where each port defaults to ALWAYS and selects the highest build level they support unless overridden with a lower one.
Currently we have some unnecessary bloat of the BUILD flags that are shared across all ports, notably that there are differently named settings to turn things off as well as on:
It'd be considerably cleaner to restrict these to a more sensible list of increasingly inclusive settings, such as ALWAYS, MINIMAL, 192kB, 256kB, and FULL, as suggested by Danh, where each port defaults to ALWAYS and selects the highest build level they support unless overridden with a lower one.