aboutsummaryrefslogtreecommitdiff
path: root/src/run.bash
AgeCommit message (Collapse)Author
2021-03-29[release-branch.go1.16] build: set GOPATH consistently in run.bash, run.bat, ↵Russ Cox
run.rc We used to clear GOPATH in all the build scripts. Clearing GOPATH is misleading at best, since you just end up with the default GOPATH (%USERPROFILE%\go on Windows). Unless that's your GOROOT, in which case you end up with a fatal error from the go command (#43938). run.bash changed to setting GOPATH=/dev/null, which has no clear analogue on Windows. run.rc still clears GOPATH. Change them all to set GOPATH to a non-existent directory /nonexist-gopath or c:\nonexist-gopath. For #45238. Fixes #45240. Change-Id: I51edd66d37ff6a891b0d0541d91ecba97fbbb03d Reviewed-on: https://go-review.googlesource.com/c/go/+/288818 Trust: Russ Cox <rsc@golang.org> Trust: Jason A. Donenfeld <Jason@zx2c4.com> Reviewed-by: Cherry Zhang <cherryyz@google.com> Reviewed-by: Alex Brainman <alex.brainman@gmail.com> Reviewed-by: Jason A. Donenfeld <Jason@zx2c4.com> (cherry picked from commit bb6efb96092cc8ae398c29e3b052a0051c746f88) Reviewed-on: https://go-review.googlesource.com/c/go/+/304772 Run-TryBot: Dmitri Shuralyov <dmitshur@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Alexander Rakoczy <alex@golang.org> Reviewed-by: Carlos Amedee <carlos@golang.org> Trust: Carlos Amedee <carlos@golang.org>
2020-03-27run.{bash,bat,rc}: use ../bin/go instead of the go binary in $PATHBryan C. Mills
https://golang.org/doc/contribute.html#quick_test currently suggests running 'make.bash' and 'run.bash' separately, but 'run.bash' potentially uses a 'go' command resolved from the wrong GOROOT, which in turn sets the wrong GOROOT for further commands. Updates #32674 Updates #17896 Change-Id: I4925d478d0fc7351c4f6d40830ab17d4d688348d Reviewed-on: https://go-review.googlesource.com/c/go/+/223741 Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Katie Hockman <katie@golang.org>
2019-05-06cmd/dist: allow builders to control granularity of test/ directory shardingBrad Fitzpatrick
Even with 10 shards on builders, it still takes about ~2.5 minutes per shard (and getting slower all the time as the test/ directory grows). I'm currently experimenting with massively sharding out testing on Cloud Run (each dist test & normal TestFoo func all running in parallel), and in such a setup, 2.5 minutes is an eternity. I'd like to increase that dist test's sharding from 10 to more like 1,000. Updates golang/go#31834 Change-Id: I8b02989727793b5b5b2013d67e1eb01ef4786e28 Reviewed-on: https://go-review.googlesource.com/c/go/+/175297 Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
2019-03-11all: move internal/x to vendor/golang.org/x and revendor using 'go mod vendor'Bryan C. Mills
This also updates the vendored-in versions of several packages: 'go mod vendor' selects a consistent version of each module, but we had previously vendored an ad-hoc selection of packages. Notably, x/crypto/hkdf was previously vendored in at a much newer commit than the rest of x/crypto. Bringing the rest of x/crypto up to that commit introduced an import of golang.org/x/sys/cpu, which broke the js/wasm build, requiring an upgrade of x/sys to pick up CL 165749. Updates #30228 Updates #30241 Updates #25822 Change-Id: I5b3dbc232b7e6a048a158cbd8d36137af1efb711 Reviewed-on: https://go-review.googlesource.com/c/go/+/164623 Reviewed-by: Filippo Valsorda <filippo@golang.org>
2018-11-16build: clear GO111MODULE during make.bash etcRuss Cox
The standard build assumes the variable is unset. Make it so, like we do for GOFLAGS, GOBIN, and so on. Change-Id: I4ad5695f8021b08bd1a35dd99112970a813d247c Reviewed-on: https://go-review.googlesource.com/c/149959 Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-08-01cmd/go: add $GOFLAGS environment variableRuss Cox
People sometimes want to turn on a particular go command flag by default. In Go 1.11 we have at least two different cases where users may need this. 1. Linking can be noticeably slower on underpowered systems due to DWARF, and users may want to set -ldflags=-w by default. 2. For modules, some users or CI systems will want vendoring always, so they want -getmode=vendor (soon to be -mod=vendor) by default. This CL generalizes the problem to “set default flags for the go command.” $GOFLAGS can be a space-separated list of flag settings, but each space-separated entry in the list must be a standalone flag. That is, you must do 'GOFLAGS=-ldflags=-w' not 'GOFLAGS=-ldflags -w'. The latter would mean to pass -w to go commands that understand it (if any do; if not, it's an error to mention it). For #26074. For #26318. Fixes #26585. Change-Id: I428f79c1fbfb9e41e54d199c68746405aed2319c Reviewed-on: https://go-review.googlesource.com/126656 Run-TryBot: Russ Cox <rsc@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rob Pike <r@golang.org>
2018-04-01src/run.bash: remove some trailing whitespaceZhou Peng
Change-Id: I56a4d25bdf886d0c0cc9723c197a014dfc9da3d3 Reviewed-on: https://go-review.googlesource.com/103995 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2017-03-14*.bash: always use the same string equality operatorDaniel Martí
POSIX Shell only supports = to compare variables inside '[' tests. But this is Bash, where == is an alias for =. In practice they're the same, but the current form is inconsisnent and breaks POSIX for no good reason. Change-Id: I38fa7a5a90658dc51acc2acd143049e510424ed8 Reviewed-on: https://go-review.googlesource.com/38031 Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2017-02-24run.bash: set GOPATH to $GOROOT/nil before running testsSean Christopherson
Set $GOPATH to a semantically valid, non-empty string that cannot conflict with $GOROOT to avoid false test failures that occur when $GOROOT resides under $GOPATH. Unsetting GOPATH is no longer viable as Go now defines a default $GOPATH that may conflict with $GOROOT. Fixes #19237 Change-Id: I376a2ad3b18e9c4098211b988dde7e76bc4725d2 Reviewed-on: https://go-review.googlesource.com/37396 Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
2016-05-19build: unset GOBIN during buildBrad Fitzpatrick
Fixes #14340 Change-Id: I43e1624fafc972fb868708c3857fc8acf1bfbbd7 Reviewed-on: https://go-review.googlesource.com/23255 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Rob Pike <r@golang.org>
2015-12-29cmd/dist: make test default to --no-rebuildRuss Cox
I'm tired of having to remember it on every command. Rebuilding everything is the wrong default. This CL updates the build script, but the builders may (or may not) need work, depending on whether they rebuild using the test command (I doubt it). Change-Id: I21f202a2f13e73df3f6bd54ae6a317c467b68151 Reviewed-on: https://go-review.googlesource.com/18084 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2015-05-09build: correct quoting of args in run.bashRahul Chaudhry
Change-Id: I72df4d979212d8af74a4d2763423346eb6ba14f2 Reviewed-on: https://go-review.googlesource.com/9892 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
2015-03-03build: convert run.bash, run.bat, and run.rc into a Go programBrad Fitzpatrick
This will enable test sharding over multiple VMs, to speed trybot answers. Update #10029 Change-Id: Ie277c6459bc38005e4d6af14d22effeaa0a4667e Reviewed-on: https://go-review.googlesource.com/6531 Reviewed-by: Russ Cox <rsc@golang.org> Reviewed-by: Alex Brainman <alex.brainman@gmail.com>
2015-03-02build: skip cgo -pie tests on freebsd-amd64.Rahul Chaudhry
This is a followup to http://golang.org/cl/6280. clang -pie fails to link misc/cgo/test on freebsd-amd64. Change-Id: I6f9575d6bb579f4d38d70707fb9c92e303e30e6f Reviewed-on: https://go-review.googlesource.com/6520 Run-TryBot: Minux Ma <minux@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Minux Ma <minux@golang.org>
2015-03-02build: run cgo tests with -pie if the external linker supports it.Rahul Chaudhry
PIE binaries can be built by the Go compiler in external link mode with extldflags="-pie". These binaries support ASLR (address space layout randomization) when executed on systems with appropriate kernel/dynamic linker support. This CL enables some cgo tests to run with -pie as a sanity check (in addition to the other linker flag combinations they already test). I have tested this functionality more thoroughly by building the full compiler testsuite (test/...) and standard library tests with -pie and executing them remotely on ChromeOS devices for all three linux architectures (linux_amd64, linux_386, and linux_arm). Change-Id: I3f644a72e94c3341f3360dfee58db5ec3a591e26 Reviewed-on: https://go-review.googlesource.com/6280 Reviewed-by: Ian Lance Taylor <iant@golang.org>
2015-02-23[dev.cc] cmd/go: fix expansion of 'std', add 'cmd'Russ Cox
The wildcard 'std' is defined in documentation to be all the packages in the Go standard library. It has also historically matched commands in the main repo, but as we implement core commands in Go, that becomes problematic. We need a wildcard that means just the library, and since 'std' is already documented to have that definition, make it so. Add a new wildcard 'cmd' for the commands in the main repo ($GOROOT). Commands that want both can say 'std cmd' (or 'cmd std') to get the effect of the old 'std'. Update make.bash etc to say both std and cmd most of the time. Exception: in race.bash, do not install race-enabled versions of the actual commands. This avoids trying to write binaries while using them, but more importantly it avoids enabling the race detector and its associated memory overhead for the already memory-hungry compilers. Change-Id: I26bb06cb13b636dfbe71a015ee0babeb270a0275 Reviewed-on: https://go-review.googlesource.com/5550 Run-TryBot: Russ Cox <rsc@golang.org> Reviewed-by: Rob Pike <r@golang.org>
2015-01-07cmd/cgo: remove obsolete -cdefs flagMatthew Dempsky
Now that there's no 6c compiler anymore, there's no need for cgo to generate C headers that are compatible with it. Fixes #9528 Change-Id: I43f53869719eb9a6065f1b39f66f060e604cbee0 Reviewed-on: https://go-review.googlesource.com/2482 Reviewed-by: Ian Lance Taylor <iant@golang.org>
2015-01-07cmd/cgo, runtime/cgo: support ppc64Austin Clements
This implements support for calls to and from C in the ppc64 C ABI, as well as supporting functionality such as an entry point from the dynamic linker. Change-Id: I68da6df50d5638cb1a3d3fef773fb412d7bf631a Reviewed-on: https://go-review.googlesource.com/2009 Reviewed-by: Russ Cox <rsc@golang.org>
2014-12-23build: give freebsd longer to run testsAndrew Gerrand
The freebsd-386 and freebsd-amd64 builders are timing out sometimes. This will give them some more breathing room. Change-Id: Ib65bd172cca046a52861759a4232d7b4b6514fa8 Reviewed-on: https://go-review.googlesource.com/1994 Reviewed-by: Ian Lance Taylor <iant@golang.org>
2014-12-13build: change all.bash output to be more markdown-friendlyRuss Cox
People keep pasting all.bash output into GitHub bugs, which turns the # lines into <h1> headlines. Add some more #s so that the bug reports are more readable. Not ideal but seems like the best of a few bad options. Change-Id: I4c69930ec304b2d504d7cd66221281a8577b87ae Reviewed-on: https://go-review.googlesource.com/1286 Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Andrew Gerrand <adg@golang.org>
2014-12-05runtime: generate windows callback list with go generateRuss Cox
This is the last system-dependent file written by cmd/dist. They are all now written by go generate. cmd/dist is not needed to start building package runtime for a different system anymore. Now all the generated files can be assumed generated, so delete the clumsy hacks in cmd/api. Re-enable api check in run.bash. LGTM=bradfitz R=bradfitz CC=golang-codereviews https://golang.org/cl/185040044
2014-11-20[dev.cc] all: merge default (e4ab8f908aac) into dev.ccRuss Cox
TBR=austin CC=golang-codereviews https://golang.org/cl/179040044
2014-11-19build: disable race external linking test on OS X 10.6 and earlierRuss Cox
External linking doesn't work there at all. LGTM=bradfitz R=adg, bradfitz CC=golang-codereviews https://golang.org/cl/176070043
2014-11-19runtime: remove assumption that noptrdata data bss noptrbss are ordered and ↵Russ Cox
contiguous The assumption can be violated by external linkers reordering them or inserting non-Go sections in between them. I looked briefly at trying to write out the _go_.o in external linking mode in a way that forced the ordering, but no matter what there's no way to force Go's data and Go's bss to be next to each other. If there is any data or bss from non-Go objects, it's very likely to get stuck in between them. Instead, rewrite the two places we know about that make the assumption. I grepped for noptrdata to look for more and didn't find any. The added race test (os/exec in external linking mode) fails without the changes in the runtime. It crashes with an invalid pointer dereference. Fixes #9133. LGTM=dneil R=dneil CC=dvyukov, golang-codereviews, iant https://golang.org/cl/179980043
2014-11-11[dev.cc] build: disable API check until all systems buildRuss Cox
Otherwise no system will get an 'ok' until they all do. LGTM=r, dave R=r, dave CC=austin, dvyukov, golang-codereviews, iant, khr https://golang.org/cl/170320044
2014-09-24build: fix elf buildsRuss Cox
Corrections due to new strict type rules for data+bss. Also disable misc/cgo/cdefstest since you can't compile C code anymore. TBR=iant CC=golang-codereviews https://golang.org/cl/148050044
2014-09-24src: pass GO_GCFLAGS down to go test stdBrad Fitzpatrick
Update #8725 LGTM=rsc, josharian R=rsc, josharian CC=golang-codereviews https://golang.org/cl/149000043
2014-09-24runtime: keep g->syscallsp consistent after cgo->Go callbacksHector Martin Cantero
Normally, the caller to runtime.entersyscall() must not return before calling runtime.exitsyscall(), lest g->syscallsp become a dangling pointer. runtime.cgocallbackg() violates this constraint. To work around this, save g->syscallsp and g->syscallpc around cgo->Go callbacks, then restore them after calling runtime.entersyscall(), which restores the syscall stack frame pointer saved by cgocall. This allows the GC to correctly trace a goroutine that is currently returning from a Go->cgo->Go chain. This also adds a check to proc.c that panics if g->syscallsp is clearly invalid. It is not 100% foolproof, as it will not catch a case where the stack was popped then pushed back beyond g->syscallsp, but it does catch the present cgo issue and makes existing tests fail without the bugfix. Fixes #7978. LGTM=dvyukov, rsc R=golang-codereviews, dvyukov, minux, bradfitz, iant, gobot, rsc CC=golang-codereviews, rsc https://golang.org/cl/131910043
2014-08-12run.bash: run misc/cgo/testgodefs/test.bashMatthew Dempsky
misc/cgo/testgodefs was added by revision d1cf884a594f, but not add to run.bash. LGTM=iant R=iant CC=golang-codereviews https://golang.org/cl/129760044
2014-07-08run.bash: disable tests that don't (yet) like running off the hostDavid Crawshaw
LGTM=bradfitz, minux R=bradfitz, golang-codereviews, minux CC=golang-codereviews https://golang.org/cl/110940043
2014-06-20run.bash: run race tests on freebsdDmitriy Vyukov
LGTM=dave R=golang-codereviews, dave CC=golang-codereviews https://golang.org/cl/102580043
2014-06-02build: remove goplay from run.bash and run.batAndrew Gerrand
TBR=rsc R=golang-codereviews CC=golang-codereviews https://golang.org/cl/106730043
2014-05-20cmd/ld: really import runtime/cgo for external linkIan Lance Taylor
Fixes #8032. LGTM=rsc R=rsc CC=golang-codereviews https://golang.org/cl/95580043
2014-05-20build: make nacl passRuss Cox
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
2014-04-29run.bash: skip -static cgo test if -static linking isn't possible.Shenghou Ma
Some system doesn't have libc.a available. While we're at here, also export GOROOT in run.bash, so that one doesn't need to set GOROOT to run run.bash. LGTM=iant R=iant CC=golang-codereviews https://golang.org/cl/99870043
2014-04-21runtime, cmd/ld, cmd/5l, run.bash: enable external linking on FreeBSD/ARM.Shenghou Ma
Update #7331 LGTM=dave, iant R=golang-codereviews, dave, gobot, iant CC=golang-codereviews https://golang.org/cl/89520043
2014-04-15run.bash: fix build on netbsd builders.Shenghou Ma
LGTM=bradfitz R=golang-codereviews, bradfitz, dave CC=golang-codereviews https://golang.org/cl/88000044
2014-04-15build: disable static cgo linking test on netbsdRuss Cox
We get /usr/lib/libc.a(stack_protector.o): In function `__stack_chk_fail_local': stack_protector.c:(.text+0x158): multiple definition of `__stack_chk_fail_local' /var/tmp/go-link-04838a/000001.o:/tmp/gobuilder/netbsd-386-minux-c7a9e9243878/go/src/pkg/runtime/cgo/gcc_386.S:41: first defined here I am assuming this has never worked and possibly is not intended to work. (Some systems are vehemently against static linking.) TBR=iant CC=golang-codereviews https://golang.org/cl/88130046
2014-04-15cmd/ld: use TLS relocations on ELF systems in external linking modeRuss Cox
Fixes #7719. LGTM=iant R=iant CC=golang-codereviews https://golang.org/cl/87760050
2014-04-07build: remove depdenency on GNU makeAndrew Gerrand
LGTM=bradfitz R=bradfitz CC=golang-codereviews https://golang.org/cl/84920043
2014-03-06run.bash: explain why we set GOMAXPROCS for runtime testDmitriy Vyukov
Fixes #7459. LGTM=rsc R=rsc CC=golang-codereviews https://golang.org/cl/71060044
2014-02-24build: comment possible ulimit failure in run.bashRuss Cox
Record what's going on in case someone is debugging a failure there. It's not Go's fault. Fixes #7381. LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/68200043
2014-02-19cmd/gc: fix handling of append with -race.Rémy Oudompheng
Also re-enable race tests in run.bash. Fixes #7334. LGTM=rsc R=rsc, dvyukov, iant, bradfitz, dave CC=golang-codereviews https://golang.org/cl/65740043
2014-02-15build: disable race detector test in run.bat on windowsRuss Cox
CL 64170043 disabled it in run.bash for Unix systems. I did not realize Windows systems also ran the race detector test. TBR=iant CC=golang-codereviews https://golang.org/cl/64480043
2014-02-15cmd/gc: correct liveness for fat variablesRuss Cox
The VARDEF placement must be before the initialization but after any final use. If you have something like s = ... using s ... the rhs must be evaluated, then the VARDEF, then the lhs assigned. There is a large comment in pgen.c on gvardef explaining this in more detail. This CL also includes Ian's suggestions from earlier CLs, namely commenting the use of mode in link.h and fixing the precedence of the ~r check in dcl.c. This CL enables the check that if liveness analysis decides a variable is live on entry to the function, that variable must be a function parameter (not a result, and not a local variable). If this check fails, it indicates a bug in the liveness analysis or in the generated code being analyzed. The race detector generates invalid code for append(x, y...). The code declares a temporary t and then uses cap(t) before initializing t. The new liveness check catches this bug and stops the compiler from writing out the buggy code. Consequently, this CL disables the race detector tests in run.bash until the race detector bug can be fixed (golang.org/issue/7334). Except for the race detector bug, the liveness analysis check does not detect any problems (this CL and the previous CLs fixed all the detected problems). The net test still fails with GOGC=0 but the rest of the tests now pass or time out (because GOGC=0 is so slow). TBR=iant CC=golang-codereviews https://golang.org/cl/64170043
2013-09-04cgo: enable cgo on dragonflyAulus Egnatius Varialus
Enable cgo for dragonfly/386 and dragonfly/amd64. R=golang-dev, jsing, iant, bradfitz CC=golang-dev https://golang.org/cl/13247046
2013-09-03cmd/cgo: don't let #cgo directives mess up line numberingIan Lance Taylor
Fixes #5272. R=golang-dev, r CC=golang-dev https://golang.org/cl/13498046
2013-08-14runtime.cmd/ld: Add ARM external linking and implement -shared in terms of ↵Elias Naur
external linking This CL is an aggregate of 10271047, 10499043, 9733044. Descriptions of each follow: 10499043 runtime,cmd/ld: Merge TLS symbols and teach 5l about ARM TLS This CL prepares for external linking support to ARM. The pseudo-symbols runtime.g and runtime.m are merged into a single runtime.tlsgm symbol. When external linking, the offset of a thread local variable is stored at a memory location instead of being embedded into a offset of a ldr instruction. With a single runtime.tlsgm symbol for both g and m, only one such offset is needed. The larger part of this CL moves TLS code from gcc compiled to internally compiled. The TLS code now uses the modern MRC instruction, and 5l is taught about TLS fallbacks in case the instruction is not available or appropriate. 10271047 This CL adds support for -linkmode external to 5l. For 5l itself, use addrel to allow for D_CALL relocations to be handled by the host linker. Of the cases listed in rsc's comment in issue 4069, only case 5 and 63 needed an update. One of the TODO: addrel cases was since replaced, and the rest of the cases are either covered by indirection through addpool (cases with LTO or LFROM flags) or stubs (case 74). The addpool cases are covered because addpool emits AWORD instructions, which in turn are handled by case 11. In the runtime, change the argv argument in the rt0* functions slightly to be a pointer to the argv list, instead of relying on a particular location of argv. 9733044 The -shared flag to 6l outputs a shared library, implemented in Go and callable from non-Go programs such as C. The main part of this CL change the thread local storage model. Go uses the fastest and least general mode, local exec. TLS data in shared libraries normally requires at least the local dynamic mode, however, this CL instead opts for using the initial exec mode. Initial exec mode is faster than local dynamic mode and can be used in linux since the linker has reserved a limited amount of TLS space for performance sensitive TLS code. Initial exec mode requires an extra load from the GOT table to determine the TLS offset. This penalty will not be paid if ld is not in -shared mode, since TLS accesses will be reduced to local exec. The elf sections .init_array and .rela.init_array are added to register the Go runtime entry with cgo at library load time. The "hidden" attribute is added to Cgo functions called from Go, since Go does not generate call through the GOT table, and adding non-GOT relocations for a global function is not supported by gcc. Cgo symbols don't need to be global and avoiding the GOT table is also faster. The changes to 8l are only removes code relevant to the old -shared mode where internal linking was used. This CL only address the low level linker work. It can be submitted by itself, but to be useful, the runtime changes in CL 9738047 is also needed. Design discussion at https://groups.google.com/forum/?fromgroups#!topic/golang-nuts/zmjXkGrEx6Q Fixes #5590. R=rsc CC=golang-dev https://golang.org/cl/12871044
2013-08-12runtime/race: add end-to-end testDmitriy Vyukov
Fixes #5933. R=golang-dev, bradfitz CC=golang-dev https://golang.org/cl/12699051
2013-08-09cmd/api: eliminate duplicate package import workRuss Cox
On my Mac, cuts the API checks from 15 seconds to 6 seconds. Also clean up some tag confusion: go run list-of-files ignores tags. R=bradfitz, gri CC=golang-dev https://golang.org/cl/12699048