]> Cypherpunks repositories - gostls13.git/commitdiff
build: handle spaces in $USER
authorRuss Cox <rsc@golang.org>
Thu, 28 Jul 2011 17:04:52 +0000 (13:04 -0400)
committerRuss Cox <rsc@golang.org>
Thu, 28 Jul 2011 17:04:52 +0000 (13:04 -0400)
Fixes #2107.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/4830042

src/cmd/gotry/gotry
src/quietgcc.bash
test/run

index 52c5d2d5867529bd2dc74ebaf9c1afa454c64d21..3cc7a9864de0d5bc430b67075246242e232a5e81 100755 (executable)
@@ -111,7 +111,8 @@ function getFunctions() {
 functions=$(getFunctions)
 
 # Write file to compile
-rm -f /tmp/$USER.try.go
+file="/tmp/$USER.try"
+rm -f "file.go"
 (
 cat <<'!'
 package main
@@ -159,9 +160,9 @@ var _ os.Error
 func toSlice(a ...interface{}) []interface{} { return a }
 !
 
-)>/tmp/$USER.try.go
+)>"$file.go"
 
-$GC -o /tmp/$USER.try.$O /tmp/$USER.try.go &&
-$GL -o /tmp/$USER.try /tmp/$USER.try.$O &&
-/tmp/$USER.try "_$@"
-rm -f /tmp/$USER.try /tmp/$USER.try.go /tmp/$USER.try.$O
+$GC -o "$file.$O" "$file.go" &&
+$GL -o "$file" "$file.$O" &&
+"$file" "_$@"
+rm -f "$file" "$file.go" "$file.$O"
index c99305edad93ab71a7ef3e0a098bf22b7a84b3c3..759f6b407cb3114e62f3adcdac8d142a2ff55595 100755 (executable)
@@ -32,13 +32,13 @@ case "$(uname -m -p)-$GOHOSTARCH" in
 esac
 
 # Run gcc, save error status, redisplay output without noise, exit with gcc status.
-tmp=${TMPDIR:-/tmp}/quietgcc.$$.$USER.out
+tmp="${TMPDIR:-/tmp}/quietgcc.$$.$USER.out"
 $gcc -Wall -Wno-sign-compare -Wno-missing-braces \
        -Wno-parentheses -Wno-unknown-pragmas -Wno-switch -Wno-comment \
        -Werror \
-       "$@" >$tmp 2>&1
+       "$@" >"$tmp" 2>&1
 status=$?
-egrep -v "$ignore" $tmp | uniq | tee $tmp.1
+egrep -v "$ignore" "$tmp" | uniq | tee "$tmp.1"
 
-rm -f $tmp $tmp.1
+rm -f "$tmp" "$tmp.1"
 exit $status
index bb6119836a282e80786b5c6512007db45f35d615..bc31d2f714099d41df4635e8948d81afd8669a14 100755 (executable)
--- a/test/run
+++ b/test/run
@@ -33,9 +33,9 @@ failed=0
 
 PATH=/bin:/usr/bin:/usr/local/bin:${GOBIN:-$GOROOT/bin}:`pwd`
 
-RUNFILE=/tmp/gorun-$$-$USER
-TMP1FILE=/tmp/gotest1-$$-$USER
-TMP2FILE=/tmp/gotest2-$$-$USER
+RUNFILE="/tmp/gorun-$$-$USER"
+TMP1FILE="/tmp/gotest1-$$-$USER"
+TMP2FILE="/tmp/gotest2-$$-$USER"
 
 # don't run the machine out of memory: limit individual processes to 4GB.
 # on thresher, 3GB suffices to run the tests; with 2GB, peano fails.
@@ -64,20 +64,20 @@ do
                fi
                export F=$(basename $i .go)
                export D=$dir
-               sed '/^\/\//!q' $i | sed 's@//@@; $d' |sed 's|./\$A.out|$E &|g' >$RUNFILE
-               if ! { time -p bash -c "bash $RUNFILE >$TMP1FILE 2>&1" ; } 2>$TMP2FILE
+               sed '/^\/\//!q' $i | sed 's@//@@; $d' |sed 's|./\$A.out|$E &|g' >"$RUNFILE"
+               if ! { time -p bash -c "bash '$RUNFILE' >'$TMP1FILE' 2>&1" ; } 2>"$TMP2FILE"
                then
                        echo
                        echo "===========" $i
-                       cat $TMP1FILE
+                       cat "$TMP1FILE"
                        echo >&2 fail: $i
                        echo "# $i      # fail" >>pass.out
-               elif test -s $TMP1FILE
+               elif test -s "$TMP1FILE"
                then
                        echo
                        echo "===========" $i
-                       cat $TMP1FILE
-                       if grep -q '^BUG' $TMP1FILE
+                       cat "$TMP1FILE"
+                       if grep -q '^BUG' "$TMP1FILE"
                        then
                                if [ $dir != bugs ]
                                then
@@ -93,13 +93,13 @@ do
                else
                        echo $i >>pass.out
                fi
-               echo $(awk 'NR==1{print $2}' $TMP2FILE) $D/$F >>times.out
+               echo $(awk 'NR==1{print $2}' "$TMP2FILE") $D/$F >>times.out
                rm -f $F.$A $A.out
        ) done
 done | # clean up some stack noise
        egrep -v '^(r[0-9a-z]+|[cfg]s)  +0x'  |
        sed '/tmp.*Bus error/s/.*Bus/Bus/; /tmp.*Trace.BPT/s/.*Trace/Trace/
-               s!'$RUNFILE'!$RUNFILE!g
+               s!'"$RUNFILE"'!$RUNFILE!g
                s/^PC=0x[0-9a-f]*/pc: xxx/
                s/^pc: 0x[0-9a-f]*/pc: xxx/
                s/PC=0x[0-9a-f]*/PC=xxx/
@@ -110,7 +110,7 @@ done | # clean up some stack noise
                /Segmentation fault/d
                /^qemu: uncaught target signal 11 (Segmentation fault) - exiting/d' > run.out
 
-rm -f $RUNFILE $TMP1FILE $TMP2FILE *.$A *.a $A.out
+rm -f "$RUNFILE" "$TMP1FILE" "$TMP2FILE" *.$A *.a $A.out
 diffmsg=""
 if ! diff $golden run.out
 then