]> Cypherpunks repositories - gostls13.git/commitdiff
misc/dist: include race detector packages in binary distributions
authorAndrew Gerrand <adg@golang.org>
Wed, 3 Apr 2013 21:06:29 +0000 (08:06 +1100)
committerAndrew Gerrand <adg@golang.org>
Wed, 3 Apr 2013 21:06:29 +0000 (08:06 +1100)
Fixes #4596.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/8327045

misc/dist/bindist.go

index 2d633bef97227479e94f226a5affcc62811001c5..1f5cfc817e1b331a006f11b377685d58e91f637e 100644 (file)
@@ -29,13 +29,14 @@ import (
 )
 
 var (
-       tag      = flag.String("tag", "release", "mercurial tag to check out")
-       repo     = flag.String("repo", "https://code.google.com/p/go", "repo URL")
-       tourPath = flag.String("tour", "code.google.com/p/go-tour", "Go tour repo import path")
-       verbose  = flag.Bool("v", false, "verbose output")
-       upload   = flag.Bool("upload", true, "upload resulting files to Google Code")
-       wxsFile  = flag.String("wxs", "", "path to custom installer.wxs")
-       addLabel = flag.String("label", "", "additional label to apply to file when uploading")
+       tag         = flag.String("tag", "release", "mercurial tag to check out")
+       repo        = flag.String("repo", "https://code.google.com/p/go", "repo URL")
+       tourPath    = flag.String("tour", "code.google.com/p/go-tour", "Go tour repo import path")
+       verbose     = flag.Bool("v", false, "verbose output")
+       upload      = flag.Bool("upload", true, "upload resulting files to Google Code")
+       wxsFile     = flag.String("wxs", "", "path to custom installer.wxs")
+       addLabel    = flag.String("label", "", "additional label to apply to file when uploading")
+       includeRace = flag.Bool("race", true, "build race detector packages")
 
        username, password string // for Google Code upload
 )
@@ -187,6 +188,16 @@ func (b *Build) Do() error {
        if err != nil {
                return err
        }
+       if !b.Source && *includeRace {
+               goCmd := filepath.Join(b.root, "bin", "go")
+               if b.OS == "windows" {
+                       goCmd += ".exe"
+               }
+               _, err = b.run(src, goCmd, "install", "-race", "std")
+               if err != nil {
+                       return err
+               }
+       }
 
        if err := b.tour(); err != nil {
                return err
@@ -388,7 +399,7 @@ func (b *Build) tour() error {
        // Copy gotour binary to tool directory as "tour"; invoked as "go tool tour".
        gotour := "gotour"
        if runtime.GOOS == "windows" {
-               gotour = "gotour.exe"
+               gotour += ".exe"
        }
        return cp(
                filepath.Join(b.root, "pkg", "tool", b.OS+"_"+b.Arch, "tour"),