delve/_scripts/test_mac.sh
Alessandro Arzilli 4a94b3eff2
Updates for go1.18beta1 (#2831)
* go.mod: update golang.org/x/tools to v0.1.8

Fixes TestGeneratedDoc on go1.18

* TeamCity: bump test matrix

Add 1.18 to test matrix. Remove 1.15 from test matrix and from support range.

* proc,tests: update for regabi on arm64 and 386

Make sure that stacktrace registers always contain the PC register of
the current frame, even though the debug_frame rules might not specify
it on architectures that use a link register.
The PC register is needed to look up loclist entries for variable
evaluation.

* goversion: bump maximum supported Go version to 1.18

* proc: disable asyncpreempt on linux/arm64

Asyncpreempt on linux/arm64 can sometimes restart a sequence of
instructions which will make breakpoint appear to be hit twice in some
cases.
2021-12-22 10:26:21 -08:00

46 lines
993 B
Bash

#!/bin/bash
set -x
set -e
GOVERSION=$1
ARCH=$2
TMPDIR=$3
if [ "$GOVERSION" = "gotip" ]; then
bootstrapver=$(curl https://go.dev/VERSION?m=text)
cd $TMPDIR
curl -sSL "https://storage.googleapis.com/golang/$bootstrapver.darwin-$ARCH.tar.gz" | tar -xz
cd -
if [ -x $TMPDIR/go-tip ]; then
cd $TMPDIR/go-tip
git pull origin
else
git clone https://go.googlesource.com/go $TMPDIR/go-tip
fi
export GOROOT_BOOTSTRAP=$TMPDIR/go
export GOROOT=$TMPDIR/go-tip
cd $TMPDIR/go-tip/src
./make.bash
cd -
else
echo Finding latest patch version for $GOVERSION
GOVERSION=$(python _scripts/latestver.py $GOVERSION)
echo Go $GOVERSION on $ARCH
cd $TMPDIR
curl -sSL "https://storage.googleapis.com/golang/$GOVERSION.darwin-$ARCH.tar.gz" | tar -xz
cd -
export GOROOT="$TMPDIR/go"
fi
mkdir -p $TMPDIR/gopath
go env
export GOPATH="$TMPDIR/gopath"
export GOARCH="$ARCH"
export PATH="$GOROOT/bin:$PATH"
go version
make test