testsuite: fix gotest for absolute srcdir
authorIan Lance Taylor <ian@gcc.gnu.org>
Mon, 8 Aug 2016 20:34:05 +0000 (20:34 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Mon, 8 Aug 2016 20:34:05 +0000 (20:34 +0000)
    The recent changes to Makefile.am mean that if you configure with an
    absolute path as srcdir then gotest will be invoked with absolute paths
    for the files.  That case never worked.  This patch fixes it.

    Reviewed-on: https://go-review.googlesource.com/25587

From-SVN: r239256

gcc/go/gofrontend/MERGE
libgo/testsuite/gotest

index 6ec9f7b551a8644f7e192776cbc5f958fb3601aa..3e8321af5db867c57e68cebb449f87a85ca762ad 100644 (file)
@@ -1,4 +1,4 @@
-5e4c16d4fea39835e16f17c3d2b2e85f5c81d815
+2c88d4871558f0451a0ad152a7052dcfaecb254f
 
 The first line of this file holds the git revision number of the last
 merge done from the gofrontend repository.
index 77722c2dd0f2fa95f14600d3c44d362440b93cec..5fc888bddecf561e9c589d6a5b0cc3a1b334737d 100755 (executable)
@@ -217,18 +217,27 @@ x)
                ;;
        *)
                for f in $pkgfiles; do
-                   if test -f $basedir/$f; then
-                       b=`basename $f`
-                       rm -f $b
-                       cp $basedir/$f $b
-                   elif test -f ../../$f; then
-                       b=`basename $f`
-                       rm -f $b
-                       cp ../../$f $b
-                   else
-                       echo "file $f not found" 1>&2
-                       exit 1
-                   fi
+                    case $f in
+                    /*)
+                        b=`basename $f`
+                        rm -f $b
+                        cp $f $b
+                        ;;
+                    *)
+                       if test -f $basedir/$f; then
+                         b=`basename $f`
+                         rm -f $b
+                         cp $basedir/$f $b
+                       elif test -f ../../$f; then
+                         b=`basename $f`
+                         rm -f $b
+                         cp ../../$f $b
+                       else
+                         echo "file $f not found" 1>&2
+                         exit 1
+                       fi
+                        ;;
+                    esac
                done
                for f in `cd $srcdir; ls *_test.go`; do
                    rm -f $f
@@ -252,18 +261,27 @@ x)
                ;;
        *)
                for f in $pkgfiles; do
-                   if test -f $basedir/$f; then
-                       b=`basename $f`
-                       rm -f $b
-                       cp $basedir/$f $b
-                   elif test -f ../../$f; then
-                       b=`basename $f`
-                       rm -f $b
-                       cp ../../$f $b
-                   else
-                       echo "file $f not found" 1>&2
-                       exit 1
-                   fi
+                    case $f in
+                    /*)
+                        b=`basename $f`
+                        rm -f $b
+                        cp $f $b
+                        ;;
+                    *)
+                       if test -f $basedir/$f; then
+                         b=`basename $f`
+                         rm -f $b
+                         cp $basedir/$f $b
+                       elif test -f ../../$f; then
+                         b=`basename $f`
+                         rm -f $b
+                         cp ../../$f $b
+                       else
+                         echo "file $f not found" 1>&2
+                         exit 1
+                       fi
+                        ;;
+                    esac
                done
                ;;
        esac