diff options
author | Felix Lange <fjl@users.noreply.github.com> | 2017-03-29 18:20:57 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-03-29 18:20:57 +0800 |
commit | 1cf2ee4597e3e1902088fd84663d4ce4eff8946a (patch) | |
tree | 3f7ee3576ca1b596be5474a9b94e852d04d51c06 /build/ci.go | |
parent | baf20010e72e31a34e0e2f7c58ccb8135e388b83 (diff) | |
download | dexon-1cf2ee4597e3e1902088fd84663d4ce4eff8946a.tar.gz dexon-1cf2ee4597e3e1902088fd84663d4ce4eff8946a.tar.zst dexon-1cf2ee4597e3e1902088fd84663d4ce4eff8946a.zip |
build: work around cgo linker issue on macOS 10.12.4 (#13849)
Fixes #3792 by stripping debug symbols.
Diffstat (limited to 'build/ci.go')
-rw-r--r-- | build/ci.go | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/build/ci.go b/build/ci.go index 622417580..9a6f1e196 100644 --- a/build/ci.go +++ b/build/ci.go @@ -217,9 +217,16 @@ func doInstall(cmdline []string) { } func buildFlags(env build.Environment) (flags []string) { - // Set gitCommit constant via link-time assignment. + var ld []string if env.Commit != "" { - flags = append(flags, "-ldflags", "-X main.gitCommit="+env.Commit) + ld = append(ld, "-X", "main.gitCommit="+env.Commit) + } + if runtime.GOOS == "darwin" { + ld = append(ld, "-s") + } + + if len(ld) > 0 { + flags = append(flags, "-ldflags", strings.Join(ld, " ")) } return flags } @@ -266,6 +273,7 @@ func doTest(cmdline []string) { coverage = flag.Bool("coverage", false, "Whether to record code coverage") ) flag.CommandLine.Parse(cmdline) + env := build.Env() packages := []string{"./..."} if len(flag.CommandLine.Args()) > 0 { @@ -279,7 +287,7 @@ func doTest(cmdline []string) { spellcheck(packages) } // Run the actual tests. - gotest := goTool("test") + gotest := goTool("test", buildFlags(env)...) // Test a single package at a time. CI builders are slow // and some tests run into timeouts under load. gotest.Args = append(gotest.Args, "-p", "1") |