From e8140bd03c154f8f9e894f5cb4be8b854c944412 Mon Sep 17 00:00:00 2001 From: Rob Pike Date: Mon, 19 Aug 2013 11:18:43 +1000 Subject: [PATCH] make.bash: exit if dist fails The shell's -e doesn't work across "eval"; need to error-check by hand. The recent spate of Darwin build failures pointed out that if the first run of cmd/dist fails, we keep going. We shouldn't. R=golang-dev, dsymonds CC=golang-dev https://golang.org/cl/13098043 --- src/make.bash | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/make.bash b/src/make.bash index 10696e76587..30388388f2d 100755 --- a/src/make.bash +++ b/src/make.bash @@ -117,7 +117,12 @@ if [ "$(uname)" == "Darwin" ]; then fi ${CC:-gcc} $mflag -O2 -Wall -Werror -o cmd/dist/dist -Icmd/dist "$DEFGOROOT" cmd/dist/*.c -eval $(./cmd/dist/dist env -p) +# -e doesn't propagate out of eval, so check success by hand. +eval $(./cmd/dist/dist env -p || echo FAIL=true) +if [ "$FAIL" = true ]; then + exit 1 +fi + echo if [ "$1" = "--dist-tool" ]; then