diff --git a/.github/workflows/cross-compile.sh b/.github/workflows/cross-compile.sh index b9a205df9..c554e347c 100755 --- a/.github/workflows/cross-compile.sh +++ b/.github/workflows/cross-compile.sh @@ -7,9 +7,12 @@ GOVERSION=$(go version | cut -d " " -f 3 | cut -b 3-6) for dist in $(go tool dist list); do goos=$(echo $dist | cut -d "/" -f1) goarch=$(echo $dist | cut -d "/" -f2) - if [[ "$goos" == "android" ]]; then continue; fi # cross-compiling for android is a pain... - if [[ "$goos" == "darwin" && $goarch == "arm64" ]]; then continue; fi # ... darwin/arm64 neither - if [[ $GOVERSION == "1.14" && $goos == "darwin" && $goarch == "arm" ]]; then continue; fi # Go 1.14 lacks syscall.IPV6_RECVTCLASS + # cross-compiling for android is a pain... + if [[ "$goos" == "android" ]]; then continue; fi + # Go 1.14 lacks syscall.IPV6_RECVTCLASS + if [[ $GOVERSION == "1.14" && $goos == "darwin" && $goarch == "arm" ]]; then continue; fi + # darwin/arm64 requires Cgo for Go < 1.16 + if [[ $GOVERSION != "1.16" && "$goos" == "darwin" && $goarch == "arm64" ]]; then continue; fi # iOS builds require Cgo, see https://github.com/golang/go/issues/43343 # Cgo would then need a C cross compilation setup. Not worth the hassle. if [[ "$goos" == "ios" ]]; then continue; fi