mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-07-26 06:38:42 +00:00
410bb9c103
* feat: add inheritable-only field to hide processor-level targets from listing Processor-level targets like esp32, rp2040, etc. have flash-method set so they leak through the existing heuristic filter in GetTargetSpecs and appear in `tinygo targets` output. Add an "inheritable-only" JSON field that is checked on raw JSON before inheritance resolution, preventing these non-board targets from being listed while keeping them loadable for direct builds and inheritance. Ref: tinygo-org/tinygo#5178 * fix: prevent inheritable-only from propagating to child targets The InheritableOnly bool field was propagating from parent to child targets through overrideProperties, which would hide board targets from GetTargetSpecs. Fix by preserving/restoring the field across resolveInherits. Also simplify GetTargetSpecs by removing the raw JSON pre-check workaround and remove nonexistent esp32c6 from tests. * prevent build commands to use inheritable only targets
20 lines
558 B
JSON
20 lines
558 B
JSON
{
|
|
"inherits": ["xtensa"],
|
|
"inheritable-only": true,
|
|
"cpu": "esp8266",
|
|
"features": "+debug,+density,+exception,+extendedl32r,+highpriinterrupts,+interrupt,+mul32,+nsa,+prid,+regprotect,+rvector,+timerint",
|
|
"build-tags": ["esp8266", "esp"],
|
|
"scheduler": "tasks",
|
|
"linker": "ld.lld",
|
|
"default-stack-size": 2048,
|
|
"rtlib": "compiler-rt",
|
|
"libc": "picolibc",
|
|
"linkerscript": "targets/esp8266.ld",
|
|
"extra-files": [
|
|
"src/device/esp/esp8266.S",
|
|
"src/internal/task/task_stack_esp8266.S"
|
|
],
|
|
"binary-format": "esp8266",
|
|
"flash-method": "esp32flash"
|
|
}
|