aboutsummaryrefslogtreecommitdiff
path: root/src/make.bash
diff options
context:
space:
mode:
authorRob Pike <r@golang.org>2013-08-19 11:18:43 +1000
committerRob Pike <r@golang.org>2013-08-19 11:18:43 +1000
commite8140bd03c154f8f9e894f5cb4be8b854c944412 (patch)
treefa4403b8e517ff9488a6e55c7cb2c9b0bf5c643b /src/make.bash
parent24f302a69d80f2e89db81fad600165b2f857c193 (diff)
downloadgo-e8140bd03c154f8f9e894f5cb4be8b854c944412.tar.gz
go-e8140bd03c154f8f9e894f5cb4be8b854c944412.zip
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
Diffstat (limited to 'src/make.bash')
-rwxr-xr-xsrc/make.bash7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/make.bash b/src/make.bash
index 10696e7658..30388388f2 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