]> Cypherpunks repositories - gostls13.git/commitdiff
go/build: exclude cgo test from arm
authorAndrew Gerrand <adg@golang.org>
Sun, 5 Jun 2011 23:25:30 +0000 (09:25 +1000)
committerAndrew Gerrand <adg@golang.org>
Sun, 5 Jun 2011 23:25:30 +0000 (09:25 +1000)
go/build: include command output in error values
go/build: add syslist.go to .hgignore

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

.hgignore
src/pkg/go/build/build.go
src/pkg/go/build/build_test.go

index dd4fb5a045d2f2ee413b4c838c99d9bcb7cfcc37..f920966eb2b6c66a9634af4e33f747eb33a6ca39 100644 (file)
--- a/.hgignore
+++ b/.hgignore
@@ -42,6 +42,7 @@ src/cmd/gc/yerr.h
 src/cmd/goinstall/syslist.go
 src/pkg/Make.deps
 src/pkg/exp/ogle/ogle
+src/pkg/go/build/syslist.go
 src/pkg/os/signal/unix.go
 src/pkg/runtime/*/asm.h
 src/pkg/runtime/goc2c
index 2d17952768f8dc6201344d0d0d18bfd866da4572..3cb8efe4794076e320ea6840a7e1a5a5c864c876 100644 (file)
@@ -6,6 +6,7 @@
 package build
 
 import (
+       "bytes"
        "exec"
        "fmt"
        "os"
@@ -79,8 +80,11 @@ func (c *Cmd) String() string {
 }
 
 func (c *Cmd) Run(dir string) os.Error {
+       out := new(bytes.Buffer)
        cmd := exec.Command(c.Args[0], c.Args[1:]...)
        cmd.Dir = dir
+       cmd.Stdout = out
+       cmd.Stderr = out
        if c.Stdout != "" {
                f, err := os.Create(filepath.Join(dir, c.Stdout))
                if err != nil {
@@ -90,7 +94,7 @@ func (c *Cmd) Run(dir string) os.Error {
                cmd.Stdout = f
        }
        if err := cmd.Run(); err != nil {
-               return fmt.Errorf("command %q: %v", c, err)
+               return fmt.Errorf("command %q: %v\n%v", c, err, out)
        }
        return nil
 }
index 790cdac3da77450991f4b7470a124b41c6f4df97..c543eddbda79a2fd49e2963f3b55bf99be0b2c76 100644 (file)
@@ -8,6 +8,7 @@ import (
        "os"
        "path/filepath"
        "runtime"
+       "strings"
        "testing"
 )
 
@@ -24,6 +25,10 @@ func TestBuild(t *testing.T) {
                t.Fatal(err)
        }
        for _, d := range buildDirs {
+               if runtime.GOARCH == "arm" && strings.Contains(d, "/cgo") {
+                       // no cgo for arm, yet.
+                       continue
+               }
                dir := filepath.Join(runtime.GOROOT(), "src", d)
                testBuild(t, dir, out)
        }