So far, we've pretended to be js/wasm in baremetal targets to make the
stdlib happy. Unfortunately, this has various problems because
syscall/js (a dependency of many stdlib packages) thinks it can do JS
calls, and emulating them gets quite hard with all changes to the
syscall/js packages in Go 1.12.
This commit does a few things:
* It lets baremetal targets pretend to be linux/arm instead of
js/wasm.
* It lets the loader only select particular packages from the src
overlay, instead of inserting them just before GOROOT. This makes it
possible to pick which packages to overlay for a given target.
* It adds a baremetal-only syscall package that stubs out almost all
syscalls.
11 строки
191 Б
JSON
11 строки
191 Б
JSON
{
|
|
"build-tags": ["avr", "linux", "arm"],
|
|
"goos": "linux",
|
|
"goarch": "arm",
|
|
"compiler": "avr-gcc",
|
|
"linker": "avr-gcc",
|
|
"ldflags": [
|
|
"-T", "targets/avr.ld",
|
|
"-Wl,--gc-sections"
|
|
]
|
|
}
|