Add comprehensive target configuration parsing and inheritance system: - Create internal/targets package with config structures - Support JSON configuration loading with inheritance resolution - Implement multi-level inheritance (e.g., rp2040 → cortex-m0plus → cortex-m) - Add 206 target configurations from TinyGo for embedded platforms - Support core fields: name, llvm-target, cpu, features, build-tags, goos, goarch, cflags, ldflags - Provide high-level resolver interface for target lookup - Include comprehensive unit tests with 100% target parsing coverage This foundation enables future -target parameter support for cross-compilation to diverse embedded platforms beyond current GOOS/GOARCH limitations. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
23 lines
727 B
JSON
23 lines
727 B
JSON
{
|
|
"inherits": ["cortex-m33"],
|
|
"build-tags": ["rp2350", "rp"],
|
|
"flash-1200-bps-reset": "true",
|
|
"flash-method": "msd",
|
|
"serial": "usb",
|
|
"msd-volume-name": ["RP2350"],
|
|
"msd-firmware-name": "firmware.uf2",
|
|
"binary-format": "uf2",
|
|
"uf2-family-id": "0xe48bff59","comment":"See page 393 of RP2350 datasheet: RP2350 Arm Secure image (i.e. one intended to be booted directly by the bootrom)",
|
|
"extra-files": [
|
|
"src/device/rp/rp2350.s",
|
|
"targets/rp2350_embedded_block.s"
|
|
],
|
|
"ldflags": [
|
|
"--defsym=__flash_size=2M"
|
|
],
|
|
"linkerscript": "targets/rp2350.ld",
|
|
"openocd-interface": "picoprobe",
|
|
"openocd-transport": "swd",
|
|
"openocd-target": "rp2350"
|
|
}
|