# ******************************************************************************
# ***            This file is generated and should not be edited             ***
# ******************************************************************************
#
# This file contains variables, rules, and pools with name prefixes indicating
# they were generated by the following Go packages:
#
#     bootstrap [from Go package github.com/google/blueprint/bootstrap]
#
ninja_required_version = 1.6.0

g.bootstrap.buildDir = @@BuildDir@@

g.bootstrap.BinDir = ${g.bootstrap.buildDir}/.bootstrap/bin

g.bootstrap.bootstrapCmd = @@Bootstrap@@

g.bootstrap.bootstrapManifest = @@BootstrapManifest@@

g.bootstrap.chooseStageCmd = ${g.bootstrap.buildDir}/.bootstrap/bin/choosestage

g.bootstrap.compileCmd = @@GoCompile@@

g.bootstrap.goRoot = @@GoRoot@@

g.bootstrap.goTestMainCmd = ${g.bootstrap.buildDir}/.bootstrap/bin/gotestmain

g.bootstrap.goTestRunnerCmd = ${g.bootstrap.buildDir}/.bootstrap/bin/gotestrunner

g.bootstrap.linkCmd = @@GoLink@@

g.bootstrap.srcDir = @@SrcDir@@

builddir = ${g.bootstrap.buildDir}/.minibootstrap

rule g.bootstrap.bootstrap
    command = BUILDDIR=${g.bootstrap.buildDir} ${g.bootstrap.bootstrapCmd} -i ${in}
    description = bootstrap ${in}
    generator = true

rule g.bootstrap.chooseStage
    command = ${g.bootstrap.chooseStageCmd} --current ${current} --bootstrap ${g.bootstrap.bootstrapManifest} -o ${out} ${in}
    description = choosing next stage

rule g.bootstrap.compile
    command = GOROOT='${g.bootstrap.goRoot}' ${g.bootstrap.compileCmd} -o ${out} -p ${pkgPath} -complete ${incFlags} -pack ${in}
    description = compile ${out}

rule g.bootstrap.cp
    command = cp ${in} ${out}
    description = cp ${out}

rule g.bootstrap.gotestmain
    command = ${g.bootstrap.goTestMainCmd} -o ${out} -pkg ${pkg} ${in}
    description = gotestmain ${out}

rule g.bootstrap.link
    command = GOROOT='${g.bootstrap.goRoot}' ${g.bootstrap.linkCmd} -o ${out} ${libDirFlags} ${in}
    description = link ${out}

rule g.bootstrap.test
    command = ${g.bootstrap.goTestRunnerCmd} -p ${pkgSrcDir} -f ${out} -- ${in} -test.short
    description = test ${pkg}

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Module:  blueprint
# Variant:
# Type:    bootstrap_go_package
# Factory: github.com/google/blueprint/bootstrap.newGoPackageModuleFactory.func1
# Defined: build/blueprint/Blueprints:1:1

build $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/github.com/google/blueprint.a $
        : g.bootstrap.compile ${g.bootstrap.srcDir}/build/blueprint/context.go $
        ${g.bootstrap.srcDir}/build/blueprint/live_tracker.go $
        ${g.bootstrap.srcDir}/build/blueprint/mangle.go $
        ${g.bootstrap.srcDir}/build/blueprint/module_ctx.go $
        ${g.bootstrap.srcDir}/build/blueprint/ninja_defs.go $
        ${g.bootstrap.srcDir}/build/blueprint/ninja_strings.go $
        ${g.bootstrap.srcDir}/build/blueprint/ninja_writer.go $
        ${g.bootstrap.srcDir}/build/blueprint/package_ctx.go $
        ${g.bootstrap.srcDir}/build/blueprint/scope.go $
        ${g.bootstrap.srcDir}/build/blueprint/singleton_ctx.go $
        ${g.bootstrap.srcDir}/build/blueprint/unpack.go $
        ${g.bootstrap.srcDir}/build/blueprint/context_test.go $
        ${g.bootstrap.srcDir}/build/blueprint/ninja_strings_test.go $
        ${g.bootstrap.srcDir}/build/blueprint/ninja_writer_test.go $
        ${g.bootstrap.srcDir}/build/blueprint/splice_modules_test.go $
        ${g.bootstrap.srcDir}/build/blueprint/unpack_test.go | $
        ${g.bootstrap.compileCmd} $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/pkg/github.com/google/blueprint/parser.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/pkg/github.com/google/blueprint/pathtools.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/pkg/github.com/google/blueprint/proptools.a
    incFlags = -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/pkg
    pkgPath = github.com/google/blueprint
default $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/github.com/google/blueprint.a

build ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/test.go: $
        g.bootstrap.gotestmain $
        ${g.bootstrap.srcDir}/build/blueprint/context_test.go $
        ${g.bootstrap.srcDir}/build/blueprint/ninja_strings_test.go $
        ${g.bootstrap.srcDir}/build/blueprint/ninja_writer_test.go $
        ${g.bootstrap.srcDir}/build/blueprint/splice_modules_test.go $
        ${g.bootstrap.srcDir}/build/blueprint/unpack_test.go | $
        ${g.bootstrap.goTestMainCmd}
    pkg = github.com/google/blueprint
default ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/test.go

build ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/test.a: $
        g.bootstrap.compile $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/test.go | $
        ${g.bootstrap.compileCmd} $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/github.com/google/blueprint.a
    incFlags = -I ${g.bootstrap.buildDir}/.bootstrap/blueprint/test
    pkgPath = main
default ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/test.a

build ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/test: g.bootstrap.link $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/test.a | $
        ${g.bootstrap.linkCmd}
    libDirFlags = -L ${g.bootstrap.buildDir}/.bootstrap/blueprint/test -L ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/pkg -L ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/pkg -L ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/pkg
default ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/test

build ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/test.passed: $
        g.bootstrap.test $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/test | $
        ${g.bootstrap.goTestRunnerCmd}
    pkg = github.com/google/blueprint
    pkgSrcDir = ${g.bootstrap.srcDir}/build/blueprint
default ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/test.passed

build $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint/pkg/github.com/google/blueprint.a $
        : g.bootstrap.compile ${g.bootstrap.srcDir}/build/blueprint/context.go $
        ${g.bootstrap.srcDir}/build/blueprint/live_tracker.go $
        ${g.bootstrap.srcDir}/build/blueprint/mangle.go $
        ${g.bootstrap.srcDir}/build/blueprint/module_ctx.go $
        ${g.bootstrap.srcDir}/build/blueprint/ninja_defs.go $
        ${g.bootstrap.srcDir}/build/blueprint/ninja_strings.go $
        ${g.bootstrap.srcDir}/build/blueprint/ninja_writer.go $
        ${g.bootstrap.srcDir}/build/blueprint/package_ctx.go $
        ${g.bootstrap.srcDir}/build/blueprint/scope.go $
        ${g.bootstrap.srcDir}/build/blueprint/singleton_ctx.go $
        ${g.bootstrap.srcDir}/build/blueprint/unpack.go | $
        ${g.bootstrap.compileCmd} $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/pkg/github.com/google/blueprint/parser.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/pkg/github.com/google/blueprint/pathtools.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/pkg/github.com/google/blueprint/proptools.a $
        || ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/test.passed
    incFlags = -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/pkg
    pkgPath = github.com/google/blueprint
default $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint/pkg/github.com/google/blueprint.a

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Module:  blueprint-bootstrap
# Variant:
# Type:    bootstrap_go_package
# Factory: github.com/google/blueprint/bootstrap.newGoPackageModuleFactory.func1
# Defined: build/blueprint/Blueprints:80:1

build $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-bootstrap/pkg/github.com/google/blueprint/bootstrap.a $
        : g.bootstrap.compile $
        ${g.bootstrap.srcDir}/build/blueprint/bootstrap/bootstrap.go $
        ${g.bootstrap.srcDir}/build/blueprint/bootstrap/cleanup.go $
        ${g.bootstrap.srcDir}/build/blueprint/bootstrap/command.go $
        ${g.bootstrap.srcDir}/build/blueprint/bootstrap/config.go $
        ${g.bootstrap.srcDir}/build/blueprint/bootstrap/doc.go $
        ${g.bootstrap.srcDir}/build/blueprint/bootstrap/writedocs.go | $
        ${g.bootstrap.compileCmd} $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/pkg/github.com/google/blueprint/parser.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/pkg/github.com/google/blueprint/pathtools.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/pkg/github.com/google/blueprint/proptools.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint/pkg/github.com/google/blueprint.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-deptools/pkg/github.com/google/blueprint/deptools.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-bootstrap-bpdoc/pkg/github.com/google/blueprint/bootstrap/bpdoc.a
    incFlags = -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-deptools/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-bootstrap-bpdoc/pkg
    pkgPath = github.com/google/blueprint/bootstrap
default $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-bootstrap/pkg/github.com/google/blueprint/bootstrap.a

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Module:  blueprint-bootstrap-bpdoc
# Variant:
# Type:    bootstrap_go_package
# Factory: github.com/google/blueprint/bootstrap.newGoPackageModuleFactory.func1
# Defined: build/blueprint/Blueprints:99:1

build $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-bootstrap-bpdoc/pkg/github.com/google/blueprint/bootstrap/bpdoc.a $
        : g.bootstrap.compile $
        ${g.bootstrap.srcDir}/build/blueprint/bootstrap/bpdoc/bpdoc.go | $
        ${g.bootstrap.compileCmd} $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/pkg/github.com/google/blueprint/parser.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/pkg/github.com/google/blueprint/pathtools.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/pkg/github.com/google/blueprint/proptools.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint/pkg/github.com/google/blueprint.a
    incFlags = -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint/pkg
    pkgPath = github.com/google/blueprint/bootstrap/bpdoc
default $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-bootstrap-bpdoc/pkg/github.com/google/blueprint/bootstrap/bpdoc.a

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Module:  blueprint-deptools
# Variant:
# Type:    bootstrap_go_package
# Factory: github.com/google/blueprint/bootstrap.newGoPackageModuleFactory.func1
# Defined: build/blueprint/Blueprints:46:1

build $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-deptools/pkg/github.com/google/blueprint/deptools.a $
        : g.bootstrap.compile $
        ${g.bootstrap.srcDir}/build/blueprint/deptools/depfile.go | $
        ${g.bootstrap.compileCmd}
    pkgPath = github.com/google/blueprint/deptools
default $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-deptools/pkg/github.com/google/blueprint/deptools.a

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Module:  blueprint-parser
# Variant:
# Type:    bootstrap_go_package
# Factory: github.com/google/blueprint/bootstrap.newGoPackageModuleFactory.func1
# Defined: build/blueprint/Blueprints:31:1

build $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/github.com/google/blueprint/parser.a $
        : g.bootstrap.compile $
        ${g.bootstrap.srcDir}/build/blueprint/parser/modify.go $
        ${g.bootstrap.srcDir}/build/blueprint/parser/parser.go $
        ${g.bootstrap.srcDir}/build/blueprint/parser/printer.go $
        ${g.bootstrap.srcDir}/build/blueprint/parser/sort.go $
        ${g.bootstrap.srcDir}/build/blueprint/parser/parser_test.go $
        ${g.bootstrap.srcDir}/build/blueprint/parser/printer_test.go | $
        ${g.bootstrap.compileCmd}
    pkgPath = github.com/google/blueprint/parser
default $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/github.com/google/blueprint/parser.a

build ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/test.go: $
        g.bootstrap.gotestmain $
        ${g.bootstrap.srcDir}/build/blueprint/parser/parser_test.go $
        ${g.bootstrap.srcDir}/build/blueprint/parser/printer_test.go | $
        ${g.bootstrap.goTestMainCmd}
    pkg = github.com/google/blueprint/parser
default ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/test.go

build ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/test.a: $
        g.bootstrap.compile $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/test.go | $
        ${g.bootstrap.compileCmd} $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/github.com/google/blueprint/parser.a
    incFlags = -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test
    pkgPath = main
default ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/test.a

build ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/test: $
        g.bootstrap.link $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/test.a | $
        ${g.bootstrap.linkCmd}
    libDirFlags = -L ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test
default ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/test

build ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/test.passed: $
        g.bootstrap.test $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/test | $
        ${g.bootstrap.goTestRunnerCmd}
    pkg = github.com/google/blueprint/parser
    pkgSrcDir = ${g.bootstrap.srcDir}/build/blueprint/parser
default ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/test.passed

build $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/pkg/github.com/google/blueprint/parser.a $
        : g.bootstrap.compile $
        ${g.bootstrap.srcDir}/build/blueprint/parser/modify.go $
        ${g.bootstrap.srcDir}/build/blueprint/parser/parser.go $
        ${g.bootstrap.srcDir}/build/blueprint/parser/printer.go $
        ${g.bootstrap.srcDir}/build/blueprint/parser/sort.go | $
        ${g.bootstrap.compileCmd} || $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/test.passed
    pkgPath = github.com/google/blueprint/parser
default $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/pkg/github.com/google/blueprint/parser.a

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Module:  blueprint-pathtools
# Variant:
# Type:    bootstrap_go_package
# Factory: github.com/google/blueprint/bootstrap.newGoPackageModuleFactory.func1
# Defined: build/blueprint/Blueprints:52:1

build $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/github.com/google/blueprint/pathtools.a $
        : g.bootstrap.compile $
        ${g.bootstrap.srcDir}/build/blueprint/pathtools/lists.go $
        ${g.bootstrap.srcDir}/build/blueprint/pathtools/glob.go $
        ${g.bootstrap.srcDir}/build/blueprint/pathtools/glob_test.go | $
        ${g.bootstrap.compileCmd}
    pkgPath = github.com/google/blueprint/pathtools
default $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/github.com/google/blueprint/pathtools.a

build ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/test.go: $
        g.bootstrap.gotestmain $
        ${g.bootstrap.srcDir}/build/blueprint/pathtools/glob_test.go | $
        ${g.bootstrap.goTestMainCmd}
    pkg = github.com/google/blueprint/pathtools
default ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/test.go

build ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/test.a: $
        g.bootstrap.compile $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/test.go | $
        ${g.bootstrap.compileCmd} $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/github.com/google/blueprint/pathtools.a
    incFlags = -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test
    pkgPath = main
default ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/test.a

build ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/test: $
        g.bootstrap.link $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/test.a | $
        ${g.bootstrap.linkCmd}
    libDirFlags = -L ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test
default ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/test

build ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/test.passed: $
        g.bootstrap.test $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/test | $
        ${g.bootstrap.goTestRunnerCmd}
    pkg = github.com/google/blueprint/pathtools
    pkgSrcDir = ${g.bootstrap.srcDir}/build/blueprint/pathtools
default $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/test.passed

build $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/pkg/github.com/google/blueprint/pathtools.a $
        : g.bootstrap.compile $
        ${g.bootstrap.srcDir}/build/blueprint/pathtools/lists.go $
        ${g.bootstrap.srcDir}/build/blueprint/pathtools/glob.go | $
        ${g.bootstrap.compileCmd} || $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/test.passed
    pkgPath = github.com/google/blueprint/pathtools
default $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/pkg/github.com/google/blueprint/pathtools.a

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Module:  blueprint-proptools
# Variant:
# Type:    bootstrap_go_package
# Factory: github.com/google/blueprint/bootstrap.newGoPackageModuleFactory.func1
# Defined: build/blueprint/Blueprints:64:1

build $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/github.com/google/blueprint/proptools.a $
        : g.bootstrap.compile $
        ${g.bootstrap.srcDir}/build/blueprint/proptools/clone.go $
        ${g.bootstrap.srcDir}/build/blueprint/proptools/extend.go $
        ${g.bootstrap.srcDir}/build/blueprint/proptools/proptools.go $
        ${g.bootstrap.srcDir}/build/blueprint/proptools/typeequal.go $
        ${g.bootstrap.srcDir}/build/blueprint/proptools/clone_test.go $
        ${g.bootstrap.srcDir}/build/blueprint/proptools/extend_test.go $
        ${g.bootstrap.srcDir}/build/blueprint/proptools/typeequal_test.go | $
        ${g.bootstrap.compileCmd}
    pkgPath = github.com/google/blueprint/proptools
default $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/github.com/google/blueprint/proptools.a

build ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/test.go: $
        g.bootstrap.gotestmain $
        ${g.bootstrap.srcDir}/build/blueprint/proptools/clone_test.go $
        ${g.bootstrap.srcDir}/build/blueprint/proptools/extend_test.go $
        ${g.bootstrap.srcDir}/build/blueprint/proptools/typeequal_test.go | $
        ${g.bootstrap.goTestMainCmd}
    pkg = github.com/google/blueprint/proptools
default ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/test.go

build ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/test.a: $
        g.bootstrap.compile $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/test.go | $
        ${g.bootstrap.compileCmd} $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/github.com/google/blueprint/proptools.a
    incFlags = -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test
    pkgPath = main
default ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/test.a

build ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/test: $
        g.bootstrap.link $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/test.a | $
        ${g.bootstrap.linkCmd}
    libDirFlags = -L ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test
default ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/test

build ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/test.passed: $
        g.bootstrap.test $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/test | $
        ${g.bootstrap.goTestRunnerCmd}
    pkg = github.com/google/blueprint/proptools
    pkgSrcDir = ${g.bootstrap.srcDir}/build/blueprint/proptools
default $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/test.passed

build $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/pkg/github.com/google/blueprint/proptools.a $
        : g.bootstrap.compile $
        ${g.bootstrap.srcDir}/build/blueprint/proptools/clone.go $
        ${g.bootstrap.srcDir}/build/blueprint/proptools/extend.go $
        ${g.bootstrap.srcDir}/build/blueprint/proptools/proptools.go $
        ${g.bootstrap.srcDir}/build/blueprint/proptools/typeequal.go | $
        ${g.bootstrap.compileCmd} || $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/test.passed
    pkgPath = github.com/google/blueprint/proptools
default $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/pkg/github.com/google/blueprint/proptools.a

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Module:  choosestage
# Variant:
# Type:    bootstrap_core_go_binary
# Factory: github.com/google/blueprint/bootstrap.newGoBinaryModuleFactory.func1
# Defined: build/blueprint/Blueprints:142:1

build ${g.bootstrap.buildDir}/.bootstrap/choosestage/obj/choosestage.a: $
        g.bootstrap.compile $
        ${g.bootstrap.srcDir}/build/blueprint/choosestage/choosestage.go | $
        ${g.bootstrap.compileCmd}
    pkgPath = choosestage
default ${g.bootstrap.buildDir}/.bootstrap/choosestage/obj/choosestage.a

build ${g.bootstrap.buildDir}/.bootstrap/choosestage/obj/a.out: $
        g.bootstrap.link $
        ${g.bootstrap.buildDir}/.bootstrap/choosestage/obj/choosestage.a | $
        ${g.bootstrap.linkCmd}
default ${g.bootstrap.buildDir}/.bootstrap/choosestage/obj/a.out

build ${g.bootstrap.BinDir}/choosestage: g.bootstrap.cp $
        ${g.bootstrap.buildDir}/.bootstrap/choosestage/obj/a.out
default ${g.bootstrap.BinDir}/choosestage

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Module:  gotestmain
# Variant:
# Type:    bootstrap_core_go_binary
# Factory: github.com/google/blueprint/bootstrap.newGoBinaryModuleFactory.func1
# Defined: build/blueprint/Blueprints:132:1

build ${g.bootstrap.buildDir}/.bootstrap/gotestmain/obj/gotestmain.a: $
        g.bootstrap.compile $
        ${g.bootstrap.srcDir}/build/blueprint/gotestmain/gotestmain.go | $
        ${g.bootstrap.compileCmd}
    pkgPath = gotestmain
default ${g.bootstrap.buildDir}/.bootstrap/gotestmain/obj/gotestmain.a

build ${g.bootstrap.buildDir}/.bootstrap/gotestmain/obj/a.out: $
        g.bootstrap.link $
        ${g.bootstrap.buildDir}/.bootstrap/gotestmain/obj/gotestmain.a | $
        ${g.bootstrap.linkCmd}
default ${g.bootstrap.buildDir}/.bootstrap/gotestmain/obj/a.out

build ${g.bootstrap.BinDir}/gotestmain: g.bootstrap.cp $
        ${g.bootstrap.buildDir}/.bootstrap/gotestmain/obj/a.out
default ${g.bootstrap.BinDir}/gotestmain

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Module:  gotestrunner
# Variant:
# Type:    bootstrap_core_go_binary
# Factory: github.com/google/blueprint/bootstrap.newGoBinaryModuleFactory.func1
# Defined: build/blueprint/Blueprints:137:1

build ${g.bootstrap.buildDir}/.bootstrap/gotestrunner/obj/gotestrunner.a: $
        g.bootstrap.compile $
        ${g.bootstrap.srcDir}/build/blueprint/gotestrunner/gotestrunner.go | $
        ${g.bootstrap.compileCmd}
    pkgPath = gotestrunner
default ${g.bootstrap.buildDir}/.bootstrap/gotestrunner/obj/gotestrunner.a

build ${g.bootstrap.buildDir}/.bootstrap/gotestrunner/obj/a.out: $
        g.bootstrap.link $
        ${g.bootstrap.buildDir}/.bootstrap/gotestrunner/obj/gotestrunner.a | $
        ${g.bootstrap.linkCmd}
default ${g.bootstrap.buildDir}/.bootstrap/gotestrunner/obj/a.out

build ${g.bootstrap.BinDir}/gotestrunner: g.bootstrap.cp $
        ${g.bootstrap.buildDir}/.bootstrap/gotestrunner/obj/a.out
default ${g.bootstrap.BinDir}/gotestrunner

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Module:  minibp
# Variant:
# Type:    bootstrap_core_go_binary
# Factory: github.com/google/blueprint/bootstrap.newGoBinaryModuleFactory.func1
# Defined: build/blueprint/Blueprints:111:1

build ${g.bootstrap.buildDir}/.bootstrap/minibp/obj/minibp.a: $
        g.bootstrap.compile $
        ${g.bootstrap.srcDir}/build/blueprint/bootstrap/minibp/main.go | $
        ${g.bootstrap.compileCmd} $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/pkg/github.com/google/blueprint/parser.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/pkg/github.com/google/blueprint/pathtools.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/pkg/github.com/google/blueprint/proptools.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint/pkg/github.com/google/blueprint.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-deptools/pkg/github.com/google/blueprint/deptools.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-bootstrap-bpdoc/pkg/github.com/google/blueprint/bootstrap/bpdoc.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-bootstrap/pkg/github.com/google/blueprint/bootstrap.a
    incFlags = -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-deptools/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-bootstrap-bpdoc/pkg -I ${g.bootstrap.buildDir}/.bootstrap/blueprint-bootstrap/pkg
    pkgPath = minibp
default ${g.bootstrap.buildDir}/.bootstrap/minibp/obj/minibp.a

build ${g.bootstrap.buildDir}/.bootstrap/minibp/obj/a.out: g.bootstrap.link $
        ${g.bootstrap.buildDir}/.bootstrap/minibp/obj/minibp.a | $
        ${g.bootstrap.linkCmd}
    libDirFlags = -L ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/pkg -L ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/pkg -L ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/pkg -L ${g.bootstrap.buildDir}/.bootstrap/blueprint/pkg -L ${g.bootstrap.buildDir}/.bootstrap/blueprint-deptools/pkg -L ${g.bootstrap.buildDir}/.bootstrap/blueprint-bootstrap-bpdoc/pkg -L ${g.bootstrap.buildDir}/.bootstrap/blueprint-bootstrap/pkg
default ${g.bootstrap.buildDir}/.bootstrap/minibp/obj/a.out

build ${g.bootstrap.BinDir}/minibp: g.bootstrap.cp $
        ${g.bootstrap.buildDir}/.bootstrap/minibp/obj/a.out
default ${g.bootstrap.BinDir}/minibp

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Singleton: bootstrap
# Factory:   github.com/google/blueprint/bootstrap.newSingletonFactory.func1

rule s.bootstrap.primarybp
    command = ${g.bootstrap.BinDir}/minibp --build-primary ${runTests} -m ${g.bootstrap.bootstrapManifest} --timestamp ${timestamp} --timestampdep ${timestampdep} -b ${g.bootstrap.buildDir} -d ${outfile}.d -o ${outfile} ${in}
    depfile = ${outfile}.d
    description = minibp ${outfile}

rule s.bootstrap.minibp
    command = ${g.bootstrap.BinDir}/minibp ${runTests} -m ${g.bootstrap.bootstrapManifest} -b ${g.bootstrap.buildDir} -d ${out}.d -o ${out} ${in}
    depfile = ${out}.d
    description = minibp ${out}
    generator = true

build ${g.bootstrap.buildDir}/.bootstrap/primary.ninja.in $
        ${g.bootstrap.buildDir}/.bootstrap/primary.ninja.in.timestamp: $
        s.bootstrap.primarybp ${g.bootstrap.srcDir}/Android.bp | $
        ${g.bootstrap.BinDir}/choosestage ${g.bootstrap.BinDir}/gotestmain $
        ${g.bootstrap.BinDir}/gotestrunner ${g.bootstrap.BinDir}/minibp $
        ${g.bootstrap.srcDir}/Android.bp $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint/test/github.com/google/blueprint.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-parser/test/github.com/google/blueprint/parser.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-pathtools/test/github.com/google/blueprint/pathtools.a $
        ${g.bootstrap.buildDir}/.bootstrap/blueprint-proptools/test/github.com/google/blueprint/proptools.a
    outfile = ${g.bootstrap.buildDir}/.bootstrap/primary.ninja.in
    runTests = -t
    timestamp = ${g.bootstrap.buildDir}/.bootstrap/primary.ninja.in.timestamp
    timestampdep = ${g.bootstrap.buildDir}/.bootstrap/primary.ninja.in.timestamp.d
default ${g.bootstrap.buildDir}/.bootstrap/primary.ninja.in $
        ${g.bootstrap.buildDir}/.bootstrap/primary.ninja.in.timestamp

build ${g.bootstrap.buildDir}/.bootstrap/bootstrap.ninja.in: $
        s.bootstrap.minibp ${g.bootstrap.srcDir}/Android.bp | $
        ${g.bootstrap.bootstrapManifest} ${g.bootstrap.BinDir}/minibp
    runTests = -t
default ${g.bootstrap.buildDir}/.bootstrap/bootstrap.ninja.in

build ${g.bootstrap.buildDir}/.bootstrap/notAFile: phony
default ${g.bootstrap.buildDir}/.bootstrap/notAFile

build ${g.bootstrap.buildDir}/.bootstrap/build.ninja.in: $
        g.bootstrap.chooseStage $
        ${g.bootstrap.buildDir}/.bootstrap/bootstrap.ninja.in $
        ${g.bootstrap.buildDir}/.bootstrap/primary.ninja.in | $
        ${g.bootstrap.chooseStageCmd} ${g.bootstrap.bootstrapManifest} $
        ${g.bootstrap.buildDir}/.bootstrap/notAFile
    current = ${g.bootstrap.buildDir}/.bootstrap/bootstrap.ninja.in
default ${g.bootstrap.buildDir}/.bootstrap/build.ninja.in

build ${g.bootstrap.buildDir}/build.ninja: g.bootstrap.bootstrap $
        ${g.bootstrap.buildDir}/.bootstrap/build.ninja.in | $
        ${g.bootstrap.bootstrapCmd}
default ${g.bootstrap.buildDir}/build.ninja