diff options
author | Russ Cox <rsc@golang.org> | 2014-11-18 12:07:50 -0500 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2014-11-18 12:07:50 -0500 |
commit | 034ade9ba71b180de226866c5b95e71cc9e6effb (patch) | |
tree | c1914a5943bed7c96b371d7329aefc1cb725b06f /src/cmd | |
parent | 684c00066a8b11bfa39b02449864841025a793d7 (diff) | |
download | go-034ade9ba71b180de226866c5b95e71cc9e6effb.tar.gz |
[dev.cc] runtime: generate GOOS- and GOARCH-specific files with go generate
Eventually I'd like almost everything cmd/dist generates
to be done with 'go generate' and checked in, to simplify
the bootstrap process. The only thing cmd/dist really needs
to do is write things like the current experiment info and
the current version.
This is a first step toward that. It replaces the _NaCl etc
constants with generated ones goos_nacl, goos_darwin,
goarch_386, and so on.
LGTM=dave, austin
R=austin, dave, bradfitz
CC=golang-codereviews, iant, r
https://codereview.appspot.com/174290043
Diffstat (limited to 'src/cmd')
-rw-r--r-- | src/cmd/dist/build.c | 7 | ||||
-rw-r--r-- | src/cmd/dist/buildruntime.c | 60 |
2 files changed, 3 insertions, 64 deletions
diff --git a/src/cmd/dist/build.c b/src/cmd/dist/build.c index e4f307bee..bfb3d15b8 100644 --- a/src/cmd/dist/build.c +++ b/src/cmd/dist/build.c @@ -615,8 +615,6 @@ static struct { {"anames9.c", mkanames}, {"zdefaultcc.go", mkzdefaultcc}, {"zsys_", mkzsys}, - {"zgoarch_", mkzgoarch}, - {"zgoos_", mkzgoos}, {"zversion.go", mkzversion}, {"zaexperiment.h", mkzexperiment}, @@ -1419,12 +1417,13 @@ clean(void) xremove(bpathf(&b, "%s/%s", bstr(&path), cleantab[i]+4)); } - // remove src/runtime/z* unconditionally + // remove src/runtime/z* unconditionally, + // except leave zgoos and zgoarch, now maintained with go generate. vreset(&dir); bpathf(&path, "%s/src/runtime", goroot); xreaddir(&dir, bstr(&path)); for(j=0; j<dir.len; j++) { - if(hasprefix(dir.p[j], "z")) + if(hasprefix(dir.p[j], "z") && !hasprefix(dir.p[j], "zg")) xremove(bpathf(&b, "%s/%s", bstr(&path), dir.p[j])); } diff --git a/src/cmd/dist/buildruntime.c b/src/cmd/dist/buildruntime.c index e561937fb..38e99e116 100644 --- a/src/cmd/dist/buildruntime.c +++ b/src/cmd/dist/buildruntime.c @@ -67,66 +67,6 @@ mkzexperiment(char *dir, char *file) bfree(&exp); } -// mkzgoarch writes zgoarch_$GOARCH.go: -// -// package runtime -// const theGoarch = <goarch> -// -void -mkzgoarch(char *dir, char *file) -{ - Buf b, out; - - USED(dir); - - binit(&b); - binit(&out); - - bwritestr(&out, bprintf(&b, - "// auto generated by go tool dist\n" - "\n" - "package runtime\n" - "\n" - "const theGoarch = `%s`\n", goarch)); - - writefile(&out, file, 0); - - bfree(&b); - bfree(&out); -} - -// mkzgoos writes zgoos_$GOOS.go: -// -// package runtime -// const theGoos = <goos> -// -void -mkzgoos(char *dir, char *file) -{ - Buf b, out; - - USED(dir); - - binit(&b); - binit(&out); - - bwritestr(&out, "// auto generated by go tool dist\n\n"); - - if(streq(goos, "linux")) { - bwritestr(&out, "// +build !android\n\n"); - } - - bwritestr(&out, bprintf(&b, - "package runtime\n" - "\n" - "const theGoos = `%s`\n", goos)); - - writefile(&out, file, 0); - - bfree(&b); - bfree(&out); -} - #define MAXWINCB 2000 /* maximum number of windows callbacks allowed */ // mkzsys writes zsys_$GOOS_$GOARCH.s, |