Rename BuildDir and NinjaBuildDir.

These are just out/ and out/soong/ and the old names were quite
confusing.

Test: Presubmits.
Merged-In: Idd9ce3c38a259faabcc56f0cd3fdac8b289123b1
Merged-In: I334ab40c668d2a94536f3e63d5f1fa0b401388ac
Change-Id: Ib7c568c6a97701f2240c5e3f0f2ce67397819ac0
This commit is contained in:
Lukacs T. Berki 2021-08-26 15:08:09 +02:00
parent 51b625928d
commit 5c4abb15e3
6 changed files with 52 additions and 52 deletions

View file

@ -106,7 +106,7 @@ var (
bootstrap = pctx.StaticRule("bootstrap",
blueprint.RuleParams{
Command: "BUILDDIR=$buildDir $bootstrapCmd -i $in",
Command: "BUILDDIR=$soongOutDir $bootstrapCmd -i $in",
CommandDeps: []string{"$bootstrapCmd"},
Description: "bootstrap $in",
Generator: true,
@ -131,8 +131,8 @@ var (
`cd / && ` +
`env -i "$$BUILDER" ` +
` --top "$$TOP" ` +
` --out "$buildDir" ` +
` -n "$ninjaBuildDir" ` +
` --out "$soongOutDir" ` +
` -n "$outDir" ` +
` -d "$out.d" ` +
` $extra`,
CommandDeps: []string{"$builder"},
@ -160,7 +160,7 @@ var (
return toolDir(config), nil
})
bootstrapDir = filepath.Join("$buildDir", bootstrapSubDir)
bootstrapDir = filepath.Join("$soongOutDir", bootstrapSubDir)
)
type GoBinaryTool interface {
@ -171,14 +171,14 @@ type GoBinaryTool interface {
}
func bootstrapBinDir(config interface{}) string {
return filepath.Join(config.(BootstrapConfig).BuildDir(), bootstrapSubDir, "bin")
return filepath.Join(config.(BootstrapConfig).SoongOutDir(), bootstrapSubDir, "bin")
}
func toolDir(config interface{}) string {
if c, ok := config.(ConfigBlueprintToolLocation); ok {
return filepath.Join(c.BlueprintToolLocation())
}
return filepath.Join(config.(BootstrapConfig).BuildDir(), "bin")
return filepath.Join(config.(BootstrapConfig).SoongOutDir(), "bin")
}
func pluginDeps(ctx blueprint.BottomUpMutatorContext) {
@ -334,7 +334,7 @@ func (g *goPackage) GenerateBuildActions(ctx blueprint.ModuleContext) {
ctx.VisitDepsDepthFirstIf(isGoPluginFor(name),
func(module blueprint.Module) { hasPlugins = true })
if hasPlugins {
pluginSrc = filepath.Join(moduleGenSrcDir(ctx, g.config), "plugin.go")
pluginSrc = filepath.Join(moduleGenSrcDir(ctx), "plugin.go")
genSrcs = append(genSrcs, pluginSrc)
}
@ -448,14 +448,14 @@ func (g *goBinary) GenerateBuildActions(ctx blueprint.ModuleContext) {
if g.properties.Tool_dir {
g.installPath = filepath.Join(toolDir(ctx.Config()), name)
} else {
buildDir := ctx.Config().(BootstrapConfig).BuildDir()
g.installPath = filepath.Join(buildDir, bootstrapSubDir, "bin", name)
soongOutDir := ctx.Config().(BootstrapConfig).SoongOutDir()
g.installPath = filepath.Join(soongOutDir, bootstrapSubDir, "bin", name)
}
ctx.VisitDepsDepthFirstIf(isGoPluginFor(name),
func(module blueprint.Module) { hasPlugins = true })
if hasPlugins {
pluginSrc = filepath.Join(moduleGenSrcDir(ctx, g.config), "plugin.go")
pluginSrc = filepath.Join(moduleGenSrcDir(ctx), "plugin.go")
genSrcs = append(genSrcs, pluginSrc)
}
@ -730,7 +730,7 @@ func (s *singleton) GenerateBuildActions(ctx blueprint.SingletonContext) {
}
primaryBuilderFile := filepath.Join("$BinDir", primaryBuilderName)
ctx.SetNinjaBuildDir(pctx, "${ninjaBuildDir}")
ctx.SetOutDir(pctx, "${outDir}")
for _, subninja := range s.config.subninjas {
ctx.AddSubninja(subninja)
@ -781,16 +781,16 @@ func (s *singleton) GenerateBuildActions(ctx blueprint.SingletonContext) {
// directory is where the final package .a files are output and where dependant
// modules search for this package via -I arguments.
func packageRoot(ctx blueprint.ModuleContext) string {
buildDir := ctx.Config().(BootstrapConfig).BuildDir()
return filepath.Join(buildDir, bootstrapSubDir, ctx.ModuleName(), "pkg")
soongOutDir := ctx.Config().(BootstrapConfig).SoongOutDir()
return filepath.Join(soongOutDir, bootstrapSubDir, ctx.ModuleName(), "pkg")
}
// testRoot returns the module-specific package root directory path used for
// building tests. The .a files generated here will include everything from
// packageRoot, plus the test-only code.
func testRoot(ctx blueprint.ModuleContext) string {
buildDir := ctx.Config().(BootstrapConfig).BuildDir()
return filepath.Join(buildDir, bootstrapSubDir, ctx.ModuleName(), "test")
soongOutDir := ctx.Config().(BootstrapConfig).SoongOutDir()
return filepath.Join(soongOutDir, bootstrapSubDir, ctx.ModuleName(), "test")
}
// moduleSrcDir returns the path of the directory that all source file paths are
@ -801,12 +801,12 @@ func moduleSrcDir(ctx blueprint.ModuleContext) string {
// moduleObjDir returns the module-specific object directory path.
func moduleObjDir(ctx blueprint.ModuleContext) string {
buildDir := ctx.Config().(BootstrapConfig).BuildDir()
return filepath.Join(buildDir, bootstrapSubDir, ctx.ModuleName(), "obj")
soongOutDir := ctx.Config().(BootstrapConfig).SoongOutDir()
return filepath.Join(soongOutDir, bootstrapSubDir, ctx.ModuleName(), "obj")
}
// moduleGenSrcDir returns the module-specific generated sources path.
func moduleGenSrcDir(ctx blueprint.ModuleContext, config *Config) string {
buildDir := ctx.Config().(BootstrapConfig).BuildDir()
return filepath.Join(buildDir, bootstrapSubDir, ctx.ModuleName(), "gen")
func moduleGenSrcDir(ctx blueprint.ModuleContext) string {
soongOutDir := ctx.Config().(BootstrapConfig).SoongOutDir()
return filepath.Join(soongOutDir, bootstrapSubDir, ctx.ModuleName(), "gen")
}

View file

@ -38,7 +38,7 @@ func removeAbandonedFilesUnder(ctx *blueprint.Context,
return nil
}
ninjaBuildDir, err := ctx.NinjaBuildDir()
outDir, err := ctx.OutDir()
if err != nil {
return err
}
@ -51,7 +51,7 @@ func removeAbandonedFilesUnder(ctx *blueprint.Context,
replacer := strings.NewReplacer(
"@@SrcDir@@", srcDir,
"@@BuildDir@@", buildDir)
ninjaBuildDir = replacer.Replace(ninjaBuildDir)
outDir = replacer.Replace(outDir)
targets := make(map[string]bool)
for target := range targetRules {
replacedTarget := replacer.Replace(target)
@ -62,7 +62,7 @@ func removeAbandonedFilesUnder(ctx *blueprint.Context,
targets[filepath.Clean(replacedTarget)] = true
}
filePaths, err := parseNinjaLog(ninjaBuildDir, under)
filePaths, err := parseNinjaLog(outDir, under)
if err != nil {
return err
}
@ -80,8 +80,8 @@ func removeAbandonedFilesUnder(ctx *blueprint.Context,
return nil
}
func parseNinjaLog(ninjaBuildDir string, under []string) ([]string, error) {
logFilePath := filepath.Join(ninjaBuildDir, logFileName)
func parseNinjaLog(outDir string, under []string) ([]string, error) {
logFilePath := filepath.Join(outDir, logFileName)
logFile, err := os.Open(logFilePath)
if err != nil {
if os.IsNotExist(err) {

View file

@ -121,14 +121,14 @@ func RunBlueprint(args Args, ctx *blueprint.Context, config interface{}) []strin
fatalf("could not enumerate files: %v\n", err.Error())
}
buildDir := config.(BootstrapConfig).BuildDir()
soongOutDir := config.(BootstrapConfig).SoongOutDir()
stage := StageMain
if args.GeneratingPrimaryBuilder {
stage = StagePrimary
}
mainNinjaFile := filepath.Join("$buildDir", "build.ninja")
mainNinjaFile := filepath.Join("$soongOutDir", "build.ninja")
var invocations []PrimaryBuilderInvocation
@ -235,8 +235,8 @@ func RunBlueprint(args Args, ctx *blueprint.Context, config interface{}) []strin
}
if c, ok := config.(ConfigRemoveAbandonedFilesUnder); ok {
under, except := c.RemoveAbandonedFilesUnder(buildDir)
err := removeAbandonedFilesUnder(ctx, srcDir, buildDir, under, except)
under, except := c.RemoveAbandonedFilesUnder(soongOutDir)
err := removeAbandonedFilesUnder(ctx, srcDir, soongOutDir, under, except)
if err != nil {
fatalf("error removing abandoned files: %s", err)
}

View file

@ -41,11 +41,11 @@ var (
srcDirVariable = bootstrapVariable("srcDir", func(c BootstrapConfig) string {
return "."
})
buildDirVariable = bootstrapVariable("buildDir", func(c BootstrapConfig) string {
return c.BuildDir()
soongOutDirVariable = bootstrapVariable("soongOutDir", func(c BootstrapConfig) string {
return c.SoongOutDir()
})
ninjaBuildDirVariable = bootstrapVariable("ninjaBuildDir", func(c BootstrapConfig) string {
return c.NinjaBuildDir()
outDirVariable = bootstrapVariable("outDir", func(c BootstrapConfig) string {
return c.OutDir()
})
goRootVariable = bootstrapVariable("goRoot", func(c BootstrapConfig) string {
goroot := runtime.GOROOT()
@ -77,11 +77,11 @@ var (
type BootstrapConfig interface {
// The directory where files emitted during bootstrapping are located.
// Usually NinjaBuildDir() + "/soong".
BuildDir() string
// Usually OutDir() + "/soong".
SoongOutDir() string
// The output directory for the build.
NinjaBuildDir() string
OutDir() string
// Whether to compile Go code in such a way that it can be debugged
DebugCompilation() bool

View file

@ -102,7 +102,7 @@ type Context struct {
globalRules map[Rule]*ruleDef
// set during PrepareBuildActions
ninjaBuildDir ninjaString // The builddir special Ninja variable
outDir ninjaString // The builddir special Ninja variable
requiredNinjaMajor int // For the ninja_required_version variable
requiredNinjaMinor int // For the ninja_required_version variable
requiredNinjaMicro int // For the ninja_required_version variable
@ -388,7 +388,7 @@ func newContext() *Context {
globs: make(map[globKey]pathtools.GlobResult),
fs: pathtools.OsFs,
finishedMutators: make(map[*mutatorInfo]bool),
ninjaBuildDir: nil,
outDir: nil,
requiredNinjaMajor: 1,
requiredNinjaMinor: 7,
requiredNinjaMicro: 0,
@ -2392,8 +2392,8 @@ func (c *Context) PrepareBuildActions(config interface{}) (deps []string, errs [
deps = append(deps, depsModules...)
deps = append(deps, depsSingletons...)
if c.ninjaBuildDir != nil {
err := c.liveGlobals.addNinjaStringDeps(c.ninjaBuildDir)
if c.outDir != nil {
err := c.liveGlobals.addNinjaStringDeps(c.outDir)
if err != nil {
errs = []error{err}
return
@ -3205,9 +3205,9 @@ func (c *Context) requireNinjaVersion(major, minor, micro int) {
}
}
func (c *Context) setNinjaBuildDir(value ninjaString) {
if c.ninjaBuildDir == nil {
c.ninjaBuildDir = value
func (c *Context) setOutDir(value ninjaString) {
if c.outDir == nil {
c.outDir = value
}
}
@ -3399,9 +3399,9 @@ func (c *Context) AllTargets() (map[string]string, error) {
return targets, nil
}
func (c *Context) NinjaBuildDir() (string, error) {
if c.ninjaBuildDir != nil {
return c.ninjaBuildDir.Eval(c.globalVariables)
func (c *Context) OutDir() (string, error) {
if c.outDir != nil {
return c.outDir.Eval(c.globalVariables)
} else {
return "", nil
}
@ -3751,8 +3751,8 @@ func (c *Context) writeSubninjas(nw *ninjaWriter) error {
}
func (c *Context) writeBuildDir(nw *ninjaWriter) error {
if c.ninjaBuildDir != nil {
err := nw.Assign("builddir", c.ninjaBuildDir.Value(c.pkgNames))
if c.outDir != nil {
err := nw.Assign("builddir", c.outDir.Value(c.pkgNames))
if err != nil {
return err
}

View file

@ -82,10 +82,10 @@ type SingletonContext interface {
// RequireNinjaVersion sets the generated ninja manifest to require at least the specified version of ninja.
RequireNinjaVersion(major, minor, micro int)
// SetNinjaBuildDir sets the value of the top-level "builddir" Ninja variable
// SetOutDir sets the value of the top-level "builddir" Ninja variable
// that controls where Ninja stores its build log files. This value can be
// set at most one time for a single build, later calls are ignored.
SetNinjaBuildDir(pctx PackageContext, value string)
SetOutDir(pctx PackageContext, value string)
// AddSubninja adds a ninja file to include with subninja. This should likely
// only ever be used inside bootstrap to handle glob rules.
@ -289,7 +289,7 @@ func (s *singletonContext) RequireNinjaVersion(major, minor, micro int) {
s.context.requireNinjaVersion(major, minor, micro)
}
func (s *singletonContext) SetNinjaBuildDir(pctx PackageContext, value string) {
func (s *singletonContext) SetOutDir(pctx PackageContext, value string) {
s.scope.ReparentTo(pctx)
ninjaValue, err := parseNinjaString(s.scope, value)
@ -297,7 +297,7 @@ func (s *singletonContext) SetNinjaBuildDir(pctx PackageContext, value string) {
panic(err)
}
s.context.setNinjaBuildDir(ninjaValue)
s.context.setOutDir(ninjaValue)
}
func (s *singletonContext) AddSubninja(file string) {