diff options
| author | Russ Cox <rsc@golang.org> | 2014-05-20 12:10:19 -0400 |
|---|---|---|
| committer | Russ Cox <rsc@golang.org> | 2014-05-20 12:10:19 -0400 |
| commit | 0c2a727477908dc0adbfcb05baac34b4ba4fa309 (patch) | |
| tree | 8bc790864f3e4768d487e65bb05ef449dfc46e2f /src/cmd | |
| parent | f374dd30a05ed11a994d312ae4e128e731ee55a0 (diff) | |
| download | go-0c2a727477908dc0adbfcb05baac34b4ba4fa309.tar.xz | |
build: make nacl pass
Add nacl.bash, the NaCl version of all.bash.
It's a separate script because it builds a variant of package syscall
with a large zip file embedded in it, containing all the input files
needed for tests.
Disable various tests new since the last round, mostly the ones using os/exec.
Fixes #7945.
LGTM=dave
R=golang-codereviews, remyoudompheng, dave, bradfitz
CC=golang-codereviews
https://golang.org/cl/100590044
Diffstat (limited to 'src/cmd')
| -rw-r--r-- | src/cmd/addr2line/addr2line_test.go | 4 | ||||
| -rw-r--r-- | src/cmd/nm/nm_test.go | 4 | ||||
| -rw-r--r-- | src/cmd/objdump/objdump_test.go | 24 | ||||
| -rw-r--r-- | src/cmd/pack/pack_test.go | 9 |
4 files changed, 35 insertions, 6 deletions
diff --git a/src/cmd/addr2line/addr2line_test.go b/src/cmd/addr2line/addr2line_test.go index 1b7f8b5f54..b278d08ce2 100644 --- a/src/cmd/addr2line/addr2line_test.go +++ b/src/cmd/addr2line/addr2line_test.go @@ -92,6 +92,10 @@ func testAddr2Line(t *testing.T, exepath, addr string) { // This is line 93. The test depends on that. func TestAddr2Line(t *testing.T) { + if runtime.GOOS == "nacl" { + t.Skip("skipping on nacl") + } + syms := loadSyms(t) tmpDir, err := ioutil.TempDir("", "TestAddr2Line") diff --git a/src/cmd/nm/nm_test.go b/src/cmd/nm/nm_test.go index eab0732794..f4e47a42da 100644 --- a/src/cmd/nm/nm_test.go +++ b/src/cmd/nm/nm_test.go @@ -55,6 +55,10 @@ func checkSymbols(t *testing.T, nmoutput []byte) { } func TestNM(t *testing.T) { + if runtime.GOOS == "nacl" { + t.Skip("skipping on nacl") + } + tmpDir, err := ioutil.TempDir("", "TestNM") if err != nil { t.Fatal("TempDir failed: ", err) diff --git a/src/cmd/objdump/objdump_test.go b/src/cmd/objdump/objdump_test.go index 6ad74c87dc..354e5d407a 100644 --- a/src/cmd/objdump/objdump_test.go +++ b/src/cmd/objdump/objdump_test.go @@ -19,6 +19,10 @@ import ( ) func loadSyms(t *testing.T) map[string]string { + if runtime.GOOS == "nacl" { + t.Skip("skipping on nacl") + } + cmd := exec.Command("go", "tool", "nm", os.Args[0]) out, err := cmd.CombinedOutput() if err != nil { @@ -40,6 +44,10 @@ func loadSyms(t *testing.T) map[string]string { } func runObjDump(t *testing.T, exe, startaddr, endaddr string) (path, lineno string) { + if runtime.GOOS == "nacl" { + t.Skip("skipping on nacl") + } + cmd := exec.Command(exe, os.Args[0], startaddr, endaddr) out, err := cmd.CombinedOutput() if err != nil { @@ -67,7 +75,7 @@ func runObjDump(t *testing.T, exe, startaddr, endaddr string) (path, lineno stri return f[0], f[1] } -func testObjDump(t *testing.T, exe, startaddr, endaddr string) { +func testObjDump(t *testing.T, exe, startaddr, endaddr string, line int) { srcPath, srcLineNo := runObjDump(t, exe, startaddr, endaddr) fi1, err := os.Stat("objdump_test.go") if err != nil { @@ -80,13 +88,13 @@ func testObjDump(t *testing.T, exe, startaddr, endaddr string) { if !os.SameFile(fi1, fi2) { t.Fatalf("objdump_test.go and %s are not same file", srcPath) } - if srcLineNo != "89" { - t.Fatalf("line number = %v; want 89", srcLineNo) + if srcLineNo != fmt.Sprint(line) { + t.Fatalf("line number = %v; want %d", srcLineNo, line) } } -// This is line 88. The test depends on that. func TestObjDump(t *testing.T) { + _, _, line, _ := runtime.Caller(0) syms := loadSyms(t) tmp, exe := buildObjdump(t) @@ -98,11 +106,15 @@ func TestObjDump(t *testing.T) { t.Fatalf("invalid start address %v: %v", startaddr, err) } endaddr := fmt.Sprintf("%x", addr+10) - testObjDump(t, exe, startaddr, endaddr) - testObjDump(t, exe, "0x"+startaddr, "0x"+endaddr) + testObjDump(t, exe, startaddr, endaddr, line-1) + testObjDump(t, exe, "0x"+startaddr, "0x"+endaddr, line-1) } func buildObjdump(t *testing.T) (tmp, exe string) { + if runtime.GOOS == "nacl" { + t.Skip("skipping on nacl") + } + tmp, err := ioutil.TempDir("", "TestObjDump") if err != nil { t.Fatal("TempDir failed: ", err) diff --git a/src/cmd/pack/pack_test.go b/src/cmd/pack/pack_test.go index e634c86f76..486242603a 100644 --- a/src/cmd/pack/pack_test.go +++ b/src/cmd/pack/pack_test.go @@ -14,6 +14,7 @@ import ( "os/exec" "path/filepath" "regexp" + "runtime" "testing" "time" "unicode/utf8" @@ -185,6 +186,10 @@ func TestExtract(t *testing.T) { // Test that pack-created archives can be understood by the tools. func TestHello(t *testing.T) { + if runtime.GOOS == "nacl" { + t.Skip("skipping on nacl") + } + dir := tmpDir(t) defer os.RemoveAll(dir) hello := filepath.Join(dir, "hello.go") @@ -217,6 +222,10 @@ func TestHello(t *testing.T) { // Test that pack works with very long lines in PKGDEF. func TestLargeDefs(t *testing.T) { + if runtime.GOOS == "nacl" { + t.Skip("skipping on nacl") + } + dir := tmpDir(t) defer os.RemoveAll(dir) large := filepath.Join(dir, "large.go") |
