diff --git a/src/core/package.go b/src/core/package.go index 3786586e93..dac2270147 100644 --- a/src/core/package.go +++ b/src/core/package.go @@ -67,14 +67,6 @@ func (pkg *Package) TargetOrDie(name string) *BuildTarget { return t } -// SourceRoot returns the root directory of source files for this package. -// This is equivalent to .Name for in-repo packages but differs for those in subrepos. -func (pkg *Package) SourceRoot() string { - if pkg.Subrepo != nil { - return pkg.Subrepo.Dir(pkg.Name) - } - return pkg.Name -} // AddTarget adds a new target to this package with the given name. // It doesn't check for duplicates. diff --git a/src/parse/asp/builtins.go b/src/parse/asp/builtins.go index b31e43c5db..f33b715710 100644 --- a/src/parse/asp/builtins.go +++ b/src/parse/asp/builtins.go @@ -607,10 +607,14 @@ func glob(s *scope, args []pyObject) pyObject { allowEmpty := args[4].IsTruthy() exclude = append(exclude, s.state.Config.Parse.BuildFileName...) if s.globber == nil { - s.globber = fs.NewGlobber(fs.HostFS, s.state.Config.Parse.BuildFileName) + if s.pkg.Subrepo != nil { + s.globber = fs.NewGlobber(s.pkg.Subrepo.FS, s.state.Config.Parse.BuildFileName) + } else { + s.globber = fs.NewGlobber(fs.HostFS, s.state.Config.Parse.BuildFileName) + } } - glob := s.globber.Glob(s.pkg.SourceRoot(), include, exclude, hidden, includeSymlinks) + glob := s.globber.Glob(s.pkg.Name, include, exclude, hidden, includeSymlinks) if !allowEmpty && len(glob) == 0 { // Strip build file name from exclude list for error message exclude = exclude[:len(exclude)-len(s.state.Config.Parse.BuildFileName)]