
This adds support for building with `-tags=llvm13` and switches to LLVM 13 for tinygo binaries that are statically linked against LLVM. Some notes on this commit: * Added `-mfloat-abi=soft` to all Cortex-M targets because otherwise nrfx would complain that floating point was enabled on Cortex-M0. That's not the case, but with `-mfloat-abi=soft` the `__SOFTFP__` macro is defined which silences this warning. See: https://reviews.llvm.org/D100372 * Changed from `--sysroot=<root>` to `-nostdlib -isystem <root>` for musl because with Clang 13, even with `--sysroot` some system libraries are used which we don't want. * Changed all `-Xclang -internal-isystem -Xclang` to simply `-isystem`, for consistency with the above change. It appears to have the same effect. * Moved WebAssembly function declarations to the top of the file in task_asyncify_wasm.S because (apparently) the assembler has become more strict.
14 строки
393 Б
Go
14 строки
393 Б
Go
// +build !byollvm
|
|
// +build llvm13
|
|
|
|
package cgo
|
|
|
|
/*
|
|
#cgo linux CFLAGS: -I/usr/lib/llvm-13/include
|
|
#cgo darwin CFLAGS: -I/usr/local/opt/llvm@13/include
|
|
#cgo freebsd CFLAGS: -I/usr/local/llvm13/include
|
|
#cgo linux LDFLAGS: -L/usr/lib/llvm-13/lib -lclang
|
|
#cgo darwin LDFLAGS: -L/usr/local/opt/llvm@13/lib -lclang -lffi
|
|
#cgo freebsd LDFLAGS: -L/usr/local/llvm13/lib -lclang
|
|
*/
|
|
import "C"
|