cmd/racebuild: add support for race detector builds on linux/riscv64 Updates golang/go#64345 Change-Id: Ia255558deeb88acd30af551b494dab78992f860d Reviewed-on: https://go-review.googlesource.com/c/build/+/698075 Reviewed-by: Cherry Mui <cherryyz@google.com> Reviewed-by: Meng Zhuo <mengzhuo1203@gmail.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Joel Sing <joel@sing.id.au> Reviewed-by: Carlos Amedee <carlos@golang.org>
diff --git a/cmd/racebuild/racebuild.go b/cmd/racebuild/racebuild.go index 7e13e89..05d9d9c 100644 --- a/cmd/racebuild/racebuild.go +++ b/cmd/racebuild/racebuild.go
@@ -419,6 +419,36 @@ (cd go/src && ./race.bash) `, }, + { + OS: "linux", + Arch: "riscv64", + Type: "gotip-linux-riscv64", + // Needs git, g++, unzip, golang-bin on the builder. + Script: `#!/usr/bin/env bash +set -e +uname -a +cat /etc/os-release +git clone https://go.googlesource.com/go +pushd go +ls -al +git checkout $GOREV +if [ "$GOGITOP" != "" ]; then + git fetch https://go.googlesource.com/go "$GOSRCREF" + git $GOGITOP FETCH_HEAD +fi +popd +curl -L -o llvm.zip https://github.com/llvm/llvm-project/archive/${REV}.zip +unzip -q llvm.zip llvm-project-${REV}/compiler-rt/* +(cd llvm-project-${REV}/compiler-rt/lib/tsan/go && ./buildgo.sh) +cp llvm-project-${REV}/compiler-rt/lib/tsan/go/race_linux_riscv64.syso go/src/runtime/race +# work around gomote gettar issue #64195 +mkdir outdir +cp llvm-project-${REV}/compiler-rt/lib/tsan/go/race_linux_riscv64.syso outdir/race_linux_riscv64.syso +# free some disk space +rm -r llvm.zip llvm-project-${REV} +(cd go/src && ./race.bash) + `, + }, } func init() {