go.tools/playground/socket: add support for Native Client on arm

LGTM=minux
R=adg, minux
CC=golang-codereviews
https://golang.org/cl/110900043
This commit is contained in:
Robert Daniel Kortschak 2014-07-08 22:40:37 -04:00 committed by Shenghou Ma
parent 5a340a31b7
commit ea9b1bd08b

View File

@ -341,7 +341,7 @@ func (p *process) naclCmd(bin string) (*exec.Cmd, error) {
if err != nil { if err != nil {
return nil, err return nil, err
} }
var ldr string var args []string
env := []string{ env := []string{
"NACLENV_GOOS=" + runtime.GOOS, "NACLENV_GOOS=" + runtime.GOOS,
"NACLENV_GOROOT=/go", "NACLENV_GOROOT=/go",
@ -349,16 +349,19 @@ func (p *process) naclCmd(bin string) (*exec.Cmd, error) {
} }
switch runtime.GOARCH { switch runtime.GOARCH {
case "amd64": case "amd64":
env = append(env, "NACLENV_GOARCH=amd64") env = append(env, "NACLENV_GOARCH=amd64p32")
ldr = "sel_ldr_x86_64" args = []string{"sel_ldr_x86_64"}
case "386": case "386":
env = append(env, "NACLENV_GOARCH=386") env = append(env, "NACLENV_GOARCH=386")
ldr = "sel_ldr_x86_32" args = []string{"sel_ldr_x86_32"}
case "arm":
env = append(env, "NACLENV_GOARCH=arm")
args = []string{"nacl_helper_bootstrap_arm", "sel_ldr_arm", "--reserved_at_zero=0xXXXXXXXXXXXXXXXX"}
default: default:
return nil, errors.New("native client does not support GOARCH=" + runtime.GOARCH) return nil, errors.New("native client does not support GOARCH=" + runtime.GOARCH)
} }
cmd := p.cmd("", ldr, "-l", "/dev/null", "-S", "-e", bin) cmd := p.cmd("", append(args, "-l", "/dev/null", "-S", "-e", bin)...)
cmd.Env = append(cmd.Env, env...) cmd.Env = append(cmd.Env, env...)
return cmd, nil return cmd, nil