1
0
mirror of https://github.com/golang/go synced 2024-11-19 15:34:47 -07:00

go/build: include Import objects in Script Inputs

This has the effect of making goinstall rebuild a package's
dependencies when they are newer than the current package object.

R=rsc
CC=golang-dev
https://golang.org/cl/4627051
This commit is contained in:
Andrew Gerrand 2011-06-23 10:15:46 +10:00
parent 88442358a9
commit d7df79a7e5

View File

@ -35,6 +35,18 @@ func Build(tree *Tree, pkg string, info *DirInfo) (*Script, os.Error) {
return nil, err
}
// add import object files to list of Inputs
for _, pkg := range info.Imports {
t, p, err := FindTree(pkg)
if err != nil && err != ErrNotFound {
// FindTree should always be able to suggest an import
// path and tree. The path must be malformed
// (for example, an absolute or relative path).
return nil, os.NewError("build: invalid import: " + pkg)
}
s.addInput(filepath.Join(t.PkgDir(), p+".a"))
}
// .go files to be built with gc
gofiles := b.abss(info.GoFiles...)
s.addInput(gofiles...)