diff options
Diffstat (limited to 'libgo/testsuite/gotest')
-rwxr-xr-x | libgo/testsuite/gotest | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/libgo/testsuite/gotest b/libgo/testsuite/gotest index 3511c52..aac67bf 100755 --- a/libgo/testsuite/gotest +++ b/libgo/testsuite/gotest @@ -32,6 +32,7 @@ loop=true keep=false prefix= dejagnu=no +GOARCH="" timeout=240 testname="" trace=false @@ -86,6 +87,15 @@ while $loop; do dejagnu=`echo $1 | sed -e 's/^--dejagnu=//'` shift ;; + x--goarch) + GOARCH=$2 + shift + shift + ;; + x--goarch=*) + GOARCH=`echo $1 | sed -e 's/^--goarch=//'` + shift + ;; x--timeout) timeout=$2 shift @@ -326,13 +336,18 @@ localname() { } { + text="T" + case "$GOARCH" in + ppc*) text="D" ;; + esac + # test functions are named TestFoo # the grep -v eliminates methods and other special names # that have multiple dots. pattern='Test([^a-z].*)?' # The -p option tells GNU nm not to sort. # The -v option tells Solaris nm to sort by value. - tests=$($NM -p -v _gotest_.o $xofile | egrep ' T .*\.'$pattern'$' | grep -v '\..*\..*\.' | fgrep -v '$' | sed 's/.* //' | sed 's/.*\.\(.*\.\)/\1/') + tests=$($NM -p -v _gotest_.o $xofile | egrep " $text .*\."$pattern'$' | grep -v '\..*\..*\.' | fgrep -v '$' | sed 's/.* //' | sed 's/.*\.\(.*\.\)/\1/') if [ "x$tests" = x ]; then echo 'gotest: warning: no tests matching '$pattern in _gotest_.o $xofile 1>&2 exit 2 |