From: Akshat Kumar Date: Mon, 11 Mar 2013 20:34:57 +0000 (-0700) Subject: lib9, cmd/dist, cmd/ld: Plan 9: fix build X-Git-Tag: go1.1rc2~585 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=76374412c36ccbac91c86a033b37732661787246;p=gostls13.git lib9, cmd/dist, cmd/ld: Plan 9: fix build lib9: fix runcmd, removeall, and tempdir functions cmd/dist: Include run_plan9.c and tempdir_plan9.c from lib9 for build, and in general consider file names containing "plan9" for building. cmd/ld: provide function args for the new functions from lib9. R=rsc, rminnich, ality, bradfitz CC=golang-dev https://golang.org/cl/7666043 --- diff --git a/src/cmd/dist/build.c b/src/cmd/dist/build.c index 5150ac3f29..bac7439e61 100644 --- a/src/cmd/dist/build.c +++ b/src/cmd/dist/build.c @@ -1070,7 +1070,8 @@ shouldbuild(char *file, char *dir) name = lastelem(file); if(streq(name, "goos.c") || streq(name, "flag.c")) return 1; - return 0; + if(!contains(name, "plan9")) + return 0; } if(streq(dir, "libbio")) return 0; diff --git a/src/cmd/ld/lib.c b/src/cmd/ld/lib.c index b895e5088e..cbd947dc82 100644 --- a/src/cmd/ld/lib.c +++ b/src/cmd/ld/lib.c @@ -556,6 +556,11 @@ hostobjs(void) } } +// provided by lib9 +int runcmd(char**); +char* mktempdir(void); +void removeall(char*); + static void rmtemp(void) { diff --git a/src/lib9/run_plan9.c b/src/lib9/run_plan9.c index 7feb48d981..2b043cc2c7 100644 --- a/src/lib9/run_plan9.c +++ b/src/lib9/run_plan9.c @@ -15,9 +15,9 @@ runcmd(char **argv) case -1: return -1; case 0: - execvp(argv[0], argv); + exec(argv[0], argv); fprint(2, "exec %s: %r", argv[0]); - _exit(1); + exits("exec"); } w = wait(); diff --git a/src/lib9/tempdir_plan9.c b/src/lib9/tempdir_plan9.c index 9c14d6dd0e..092d00d167 100644 --- a/src/lib9/tempdir_plan9.c +++ b/src/lib9/tempdir_plan9.c @@ -9,7 +9,7 @@ char* mktempdir(void) { char *p; - int i; + int fd, i; p = smprint("/tmp/go-link-XXXXXX"); for(i=0; i<1000; i++) { @@ -27,7 +27,7 @@ mktempdir(void) void removeall(char *p) { - int fd, n; + int fd, n, i; Dir *d; char *q;