Sfoglia il codice sorgente

hack/make: Don't add -buildmode=pie with -race

Make it possible to add `-race` to the BUILDFLAGS without making the
build fail with error:
"-buildmode=pie not supported when -race is enabled"

Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
Paweł Gronowski 2 anni fa
parent
commit
bbe6e9e8d1
1 ha cambiato i file con 9 aggiunte e 6 eliminazioni
  1. 9 6
      hack/make/.binary

+ 9 - 6
hack/make/.binary

@@ -74,12 +74,15 @@ source "${MAKEDIR}/.go-autogen"
 	# -buildmode=pie is not supported on Windows arm64 and Linux mips*, ppc64be
 	# https://github.com/golang/go/blob/go1.19.4/src/cmd/internal/sys/supported.go#L125-L132
 	if ! [ "$DOCKER_STATIC" = "1" ]; then
-		case "$(go env GOOS)/$(go env GOARCH)" in
-			windows/arm64 | linux/mips* | linux/ppc64) ;;
-			*)
-				BUILDFLAGS+=("-buildmode=pie")
-				;;
-		esac
+		# -buildmode=pie not supported when -race is enabled
+		if [[ " $BUILDFLAGS " != *" -race "* ]]; then
+			case "$(go env GOOS)/$(go env GOARCH)" in
+				windows/arm64 | linux/mips* | linux/ppc64) ;;
+				*)
+					BUILDFLAGS+=("-buildmode=pie")
+					;;
+			esac
+		fi
 	fi
 
 	# only necessary for non-sandboxed invocation where TARGETPLATFORM is empty