wasm: specify wasi-libc in code, not in the JSON target file
This brings a bit more consistency to libc configuration. It seems better to me to set the header flags all in the same place, instead of some in Go code and some in JSON target files (depending on the target).
Этот коммит содержится в:
родитель
de6f831983
коммит
39ff13fd1a
3 изменённых файлов: 11 добавлений и 7 удалений
|
@ -204,7 +204,8 @@ func (c *Config) CFlags() []string {
|
|||
for _, flag := range c.Target.CFlags {
|
||||
cflags = append(cflags, strings.ReplaceAll(flag, "{root}", goenv.Get("TINYGOROOT")))
|
||||
}
|
||||
if c.Target.Libc == "picolibc" {
|
||||
switch c.Target.Libc {
|
||||
case "picolibc":
|
||||
root := goenv.Get("TINYGOROOT")
|
||||
picolibcDir := filepath.Join(root, "lib", "picolibc", "newlib", "libc")
|
||||
cflags = append(cflags,
|
||||
|
@ -213,6 +214,15 @@ func (c *Config) CFlags() []string {
|
|||
"-Xclang", "-internal-isystem", "-Xclang", filepath.Join(picolibcDir, "tinystdio"),
|
||||
)
|
||||
cflags = append(cflags, "-I"+filepath.Join(root, "lib/picolibc-include"))
|
||||
case "wasi-libc":
|
||||
root := goenv.Get("TINYGOROOT")
|
||||
cflags = append(cflags, "--sysroot="+root+"/lib/wasi-libc/sysroot")
|
||||
case "":
|
||||
// No libc specified, nothing to add.
|
||||
default:
|
||||
// Incorrect configuration. This could be handled in a better way, but
|
||||
// usually this will be found by developers (not by TinyGo users).
|
||||
panic("unknown libc: " + c.Target.Libc)
|
||||
}
|
||||
// Always emit debug information. It is optionally stripped at link time.
|
||||
cflags = append(cflags, "-g")
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
"goarch": "arm",
|
||||
"linker": "wasm-ld",
|
||||
"libc": "wasi-libc",
|
||||
"cflags": [
|
||||
"--sysroot={root}/lib/wasi-libc/sysroot"
|
||||
],
|
||||
"ldflags": [
|
||||
"--allow-undefined",
|
||||
"--stack-first",
|
||||
|
|
|
@ -6,9 +6,6 @@
|
|||
"goarch": "wasm",
|
||||
"linker": "wasm-ld",
|
||||
"libc": "wasi-libc",
|
||||
"cflags": [
|
||||
"--sysroot={root}/lib/wasi-libc/sysroot"
|
||||
],
|
||||
"ldflags": [
|
||||
"--allow-undefined",
|
||||
"--stack-first",
|
||||
|
|
Загрузка…
Создание таблицы
Сослаться в новой задаче