Skip to content

Commit b03a5f6

Browse files
committed
cmd/go: fixes
* Install tools into tool dir always (Fixes issue 3049. Fixes issue 2868. Fixes issue 2925.) * Make packages depend on compiler, linker (Fixes issue 3036.) * Do not recompile packages across roots (Fixes issue 3149.) * Allow use of binary-only packages (Fixes issue 2775.) * Avoid duplicate cgo dependencies (Fixes issue 3001.) * Show less in go get -x. (Fixes issue 2926.) * Do not force repo root for existing checkout (Fixes issue 2969.) * Show full syntax error list always (Fixes issue 2811.) * Clean arguments before processing (Fixes issue 3034.) * Add flags for compiler, linker arguments (Fixes issue 2996.) * Pass flags in make.bash (Fixes issue 3091.) * Unify build flags, defined in one place. * Clean up error messages (Fixes issue 3075. Fixes issue 2923.) * Support local import paths (Fixes issue 3118.) * Allow top-level package outside $GOPATH (Fixes issue 3009.) In addition to these fixes, all commands now take a list of go files as a way to specify a single package, just as go build and go run always have. This means you can: go list -json x.go go fix x.go go vet x.go go test x_test.go Preliminary tests in test.bash. Mainly testing things that the ordinary build does not. I don't mind if the script doesn't run on Windows. I expect that gccgo support is now broken, and I hope that people will feel free to file issues and/or send CLs to fix it. :-) R=golang-dev, dsymonds, r, rogpeppe CC=golang-dev https://golang.org/cl/5708054
1 parent ebe1664 commit b03a5f6

24 files changed

+1043
-594
lines changed

src/cmd/go/build.go

Lines changed: 269 additions & 173 deletions
Large diffs are not rendered by default.

src/cmd/go/clean.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import (
1313
)
1414

1515
var cmdClean = &Command{
16-
UsageLine: "clean [-i] [-r] [-n] [-x] [importpath...]",
16+
UsageLine: "clean [-i] [-r] [-n] [-x] [packages]",
1717
Short: "remove object files",
1818
Long: `
1919
Clean removes object files from package source directories.
@@ -50,6 +50,8 @@ The -r flag causes clean to be applied recursively to all the
5050
dependencies of the packages named by the import paths.
5151
5252
The -x flag causes clean to print remove commands as it executes them.
53+
54+
For more about specifying packages, see 'go help packages'.
5355
`,
5456
}
5557

0 commit comments

Comments
 (0)