aboutsummaryrefslogtreecommitdiffstats
path: root/build.ninja.in
diff options
context:
space:
mode:
authorDan Willemsen <dwillemsen@google.com>2015-06-23 19:46:20 -0700
committerDan Willemsen <dwillemsen@google.com>2015-06-26 11:51:03 -0700
commite5e20331465457b7708b6590b0c977889d0e7688 (patch)
tree283ad2d55c8fba58f77c3ab6e0e2f0c1e388f4fd /build.ninja.in
parent88b4c29fb318cc0f455d6ebc3fb7865b00353a04 (diff)
downloadbuild_soong-e5e20331465457b7708b6590b0c977889d0e7688.tar.gz
build_soong-e5e20331465457b7708b6590b0c977889d0e7688.tar.bz2
build_soong-e5e20331465457b7708b6590b0c977889d0e7688.zip
Build and run tests during bootstrap
Change-Id: If40489d74136af4d15d4ff26210a50975a462497
Diffstat (limited to 'build.ninja.in')
-rw-r--r--build.ninja.in339
1 files changed, 291 insertions, 48 deletions
diff --git a/build.ninja.in b/build.ninja.in
index 2af6e08e..330db7b7 100644
--- a/build.ninja.in
+++ b/build.ninja.in
@@ -25,6 +25,8 @@ g.bootstrap.goChar = @@GoChar@@
g.bootstrap.gcCmd = ${g.bootstrap.goToolDir}/${g.bootstrap.goChar}g
+g.bootstrap.goTestMainCmd = .bootstrap/bin/gotestmain
+
g.bootstrap.linkCmd = ${g.bootstrap.goToolDir}/${g.bootstrap.goChar}l
g.bootstrap.srcDir = @@SrcDir@@
@@ -44,16 +46,24 @@ rule g.bootstrap.gc
command = GOROOT='${g.bootstrap.goRoot}' ${g.bootstrap.gcCmd} -o ${out} -p ${pkgPath} -complete ${incFlags} -pack ${in}
description = ${g.bootstrap.goChar}g ${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 = ${g.bootstrap.goChar}l ${out}
+rule g.bootstrap.test
+ command = (cd ${pkgSrcDir} && $$OLDPWD/${in} -test.short) && touch ${out}
+ description = test ${pkg}
+
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Module: androidbp
# Variant:
# Type: bootstrap_go_binary
-# Factory: github.com/google/blueprint/bootstrap.newGoBinaryModule
-# Defined: build/soong/Android.bp:185:1
+# Factory: github.com/google/blueprint/bootstrap.func·003
+# Defined: build/soong/Android.bp:191:1
build .bootstrap/androidbp/obj/androidbp.a: g.bootstrap.gc $
${g.bootstrap.srcDir}/build/soong/androidbp/cmd/androidbp.go $
@@ -76,8 +86,8 @@ default .bootstrap/bin/androidbp
# Module: androidmk
# Variant:
# Type: bootstrap_go_binary
-# Factory: github.com/google/blueprint/bootstrap.newGoBinaryModule
-# Defined: build/soong/Android.bp:161:1
+# Factory: github.com/google/blueprint/bootstrap.func·003
+# Defined: build/soong/Android.bp:164:1
build .bootstrap/androidmk/obj/androidmk.a: g.bootstrap.gc $
${g.bootstrap.srcDir}/build/soong/androidmk/cmd/androidmk/android.go $
@@ -102,8 +112,43 @@ default .bootstrap/bin/androidmk
# Module: androidmk-parser
# Variant:
# Type: bootstrap_go_package
-# Factory: github.com/google/blueprint/bootstrap.newGoPackageModule
-# Defined: build/soong/Android.bp:174:1
+# Factory: github.com/google/blueprint/bootstrap.func·002
+# Defined: build/soong/Android.bp:177:1
+
+build .bootstrap/androidmk-parser/test/android/soong/androidmk/parser.a: $
+ g.bootstrap.gc $
+ ${g.bootstrap.srcDir}/build/soong/androidmk/parser/make_strings.go $
+ ${g.bootstrap.srcDir}/build/soong/androidmk/parser/makething.go $
+ ${g.bootstrap.srcDir}/build/soong/androidmk/parser/parser.go $
+ ${g.bootstrap.srcDir}/build/soong/androidmk/parser/scope.go $
+ ${g.bootstrap.srcDir}/build/soong/androidmk/parser/make_strings_test.go $
+ | ${g.bootstrap.gcCmd}
+ pkgPath = android/soong/androidmk/parser
+default .bootstrap/androidmk-parser/test/android/soong/androidmk/parser.a
+
+build .bootstrap/androidmk-parser/test/test.go: g.bootstrap.gotestmain $
+ ${g.bootstrap.srcDir}/build/soong/androidmk/parser/make_strings_test.go $
+ | ${g.bootstrap.goTestMainCmd}
+ pkg = android/soong/androidmk/parser
+default .bootstrap/androidmk-parser/test/test.go
+
+build .bootstrap/androidmk-parser/test/test.a: g.bootstrap.gc $
+ .bootstrap/androidmk-parser/test/test.go | $
+ .bootstrap/androidmk-parser/test/android/soong/androidmk/parser.a
+ incFlags = -I .bootstrap/androidmk-parser/test
+ pkgPath = main
+default .bootstrap/androidmk-parser/test/test.a
+
+build .bootstrap/androidmk-parser/test/test: g.bootstrap.link $
+ .bootstrap/androidmk-parser/test/test.a | ${g.bootstrap.linkCmd}
+ libDirFlags = -L .bootstrap/androidmk-parser/test
+default .bootstrap/androidmk-parser/test/test
+
+build .bootstrap/androidmk-parser/test/test.passed: g.bootstrap.test $
+ .bootstrap/androidmk-parser/test/test
+ pkg = android/soong/androidmk/parser
+ pkgSrcDir = ${g.bootstrap.srcDir}/build/soong/androidmk/parser
+default .bootstrap/androidmk-parser/test/test.passed
build .bootstrap/androidmk-parser/pkg/android/soong/androidmk/parser.a: $
g.bootstrap.gc $
@@ -111,7 +156,7 @@ build .bootstrap/androidmk-parser/pkg/android/soong/androidmk/parser.a: $
${g.bootstrap.srcDir}/build/soong/androidmk/parser/makething.go $
${g.bootstrap.srcDir}/build/soong/androidmk/parser/parser.go $
${g.bootstrap.srcDir}/build/soong/androidmk/parser/scope.go | $
- ${g.bootstrap.gcCmd}
+ ${g.bootstrap.gcCmd} || .bootstrap/androidmk-parser/test/test.passed
pkgPath = android/soong/androidmk/parser
default .bootstrap/androidmk-parser/pkg/android/soong/androidmk/parser.a
@@ -119,9 +164,62 @@ default .bootstrap/androidmk-parser/pkg/android/soong/androidmk/parser.a
# Module: blueprint
# Variant:
# Type: bootstrap_go_package
-# Factory: github.com/google/blueprint/bootstrap.newGoPackageModule
+# Factory: github.com/google/blueprint/bootstrap.func·002
# Defined: build/blueprint/Blueprints:1:1
+build .bootstrap/blueprint/test/github.com/google/blueprint.a: g.bootstrap.gc $
+ ${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.gcCmd} $
+ .bootstrap/blueprint-parser/pkg/github.com/google/blueprint/parser.a $
+ .bootstrap/blueprint-pathtools/pkg/github.com/google/blueprint/pathtools.a $
+ .bootstrap/blueprint-proptools/pkg/github.com/google/blueprint/proptools.a
+ incFlags = -I .bootstrap/blueprint-parser/pkg -I .bootstrap/blueprint-pathtools/pkg -I .bootstrap/blueprint-proptools/pkg
+ pkgPath = github.com/google/blueprint
+default .bootstrap/blueprint/test/github.com/google/blueprint.a
+
+build .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 .bootstrap/blueprint/test/test.go
+
+build .bootstrap/blueprint/test/test.a: g.bootstrap.gc $
+ .bootstrap/blueprint/test/test.go | $
+ .bootstrap/blueprint/test/github.com/google/blueprint.a
+ incFlags = -I .bootstrap/blueprint/test
+ pkgPath = main
+default .bootstrap/blueprint/test/test.a
+
+build .bootstrap/blueprint/test/test: g.bootstrap.link $
+ .bootstrap/blueprint/test/test.a | ${g.bootstrap.linkCmd}
+ libDirFlags = -L .bootstrap/blueprint/test -L .bootstrap/blueprint-parser/pkg -L .bootstrap/blueprint-pathtools/pkg -L .bootstrap/blueprint-proptools/pkg
+default .bootstrap/blueprint/test/test
+
+build .bootstrap/blueprint/test/test.passed: g.bootstrap.test $
+ .bootstrap/blueprint/test/test
+ pkg = github.com/google/blueprint
+ pkgSrcDir = ${g.bootstrap.srcDir}/build/blueprint
+default .bootstrap/blueprint/test/test.passed
+
build .bootstrap/blueprint/pkg/github.com/google/blueprint.a: g.bootstrap.gc $
${g.bootstrap.srcDir}/build/blueprint/context.go $
${g.bootstrap.srcDir}/build/blueprint/live_tracker.go $
@@ -136,7 +234,8 @@ build .bootstrap/blueprint/pkg/github.com/google/blueprint.a: g.bootstrap.gc $
${g.bootstrap.srcDir}/build/blueprint/unpack.go | ${g.bootstrap.gcCmd} $
.bootstrap/blueprint-parser/pkg/github.com/google/blueprint/parser.a $
.bootstrap/blueprint-pathtools/pkg/github.com/google/blueprint/pathtools.a $
- .bootstrap/blueprint-proptools/pkg/github.com/google/blueprint/proptools.a
+ .bootstrap/blueprint-proptools/pkg/github.com/google/blueprint/proptools.a $
+ || .bootstrap/blueprint/test/test.passed
incFlags = -I .bootstrap/blueprint-parser/pkg -I .bootstrap/blueprint-pathtools/pkg -I .bootstrap/blueprint-proptools/pkg
pkgPath = github.com/google/blueprint
default .bootstrap/blueprint/pkg/github.com/google/blueprint.a
@@ -145,8 +244,8 @@ default .bootstrap/blueprint/pkg/github.com/google/blueprint.a
# Module: blueprint-bootstrap
# Variant:
# Type: bootstrap_go_package
-# Factory: github.com/google/blueprint/bootstrap.newGoPackageModule
-# Defined: build/blueprint/Blueprints:56:1
+# Factory: github.com/google/blueprint/bootstrap.func·002
+# Defined: build/blueprint/Blueprints:70:1
build $
.bootstrap/blueprint-bootstrap/pkg/github.com/google/blueprint/bootstrap.a $
@@ -171,8 +270,8 @@ default $
# Module: blueprint-deptools
# Variant:
# Type: bootstrap_go_package
-# Factory: github.com/google/blueprint/bootstrap.newGoPackageModule
-# Defined: build/blueprint/Blueprints:35:1
+# Factory: github.com/google/blueprint/bootstrap.func·002
+# Defined: build/blueprint/Blueprints:46:1
build .bootstrap/blueprint-deptools/pkg/github.com/google/blueprint/deptools.a $
: g.bootstrap.gc $
@@ -186,15 +285,51 @@ default $
# Module: blueprint-parser
# Variant:
# Type: bootstrap_go_package
-# Factory: github.com/google/blueprint/bootstrap.newGoPackageModule
-# Defined: build/blueprint/Blueprints:24:1
+# Factory: github.com/google/blueprint/bootstrap.func·002
+# Defined: build/blueprint/Blueprints:31:1
+
+build .bootstrap/blueprint-parser/test/github.com/google/blueprint/parser.a: $
+ g.bootstrap.gc ${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.gcCmd}
+ pkgPath = github.com/google/blueprint/parser
+default .bootstrap/blueprint-parser/test/github.com/google/blueprint/parser.a
+
+build .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 .bootstrap/blueprint-parser/test/test.go
+
+build .bootstrap/blueprint-parser/test/test.a: g.bootstrap.gc $
+ .bootstrap/blueprint-parser/test/test.go | $
+ .bootstrap/blueprint-parser/test/github.com/google/blueprint/parser.a
+ incFlags = -I .bootstrap/blueprint-parser/test
+ pkgPath = main
+default .bootstrap/blueprint-parser/test/test.a
+
+build .bootstrap/blueprint-parser/test/test: g.bootstrap.link $
+ .bootstrap/blueprint-parser/test/test.a | ${g.bootstrap.linkCmd}
+ libDirFlags = -L .bootstrap/blueprint-parser/test
+default .bootstrap/blueprint-parser/test/test
+
+build .bootstrap/blueprint-parser/test/test.passed: g.bootstrap.test $
+ .bootstrap/blueprint-parser/test/test
+ pkg = github.com/google/blueprint/parser
+ pkgSrcDir = ${g.bootstrap.srcDir}/build/blueprint/parser
+default .bootstrap/blueprint-parser/test/test.passed
build .bootstrap/blueprint-parser/pkg/github.com/google/blueprint/parser.a: $
g.bootstrap.gc ${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.gcCmd}
+ ${g.bootstrap.gcCmd} || .bootstrap/blueprint-parser/test/test.passed
pkgPath = github.com/google/blueprint/parser
default .bootstrap/blueprint-parser/pkg/github.com/google/blueprint/parser.a
@@ -202,15 +337,51 @@ default .bootstrap/blueprint-parser/pkg/github.com/google/blueprint/parser.a
# Module: blueprint-pathtools
# Variant:
# Type: bootstrap_go_package
-# Factory: github.com/google/blueprint/bootstrap.newGoPackageModule
-# Defined: build/blueprint/Blueprints:41:1
+# Factory: github.com/google/blueprint/bootstrap.func·002
+# Defined: build/blueprint/Blueprints:52:1
+
+build $
+ .bootstrap/blueprint-pathtools/test/github.com/google/blueprint/pathtools.a $
+ : g.bootstrap.gc $
+ ${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.gcCmd}
+ pkgPath = github.com/google/blueprint/pathtools
+default $
+ .bootstrap/blueprint-pathtools/test/github.com/google/blueprint/pathtools.a
+
+build .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 .bootstrap/blueprint-pathtools/test/test.go
+
+build .bootstrap/blueprint-pathtools/test/test.a: g.bootstrap.gc $
+ .bootstrap/blueprint-pathtools/test/test.go | $
+ .bootstrap/blueprint-pathtools/test/github.com/google/blueprint/pathtools.a
+ incFlags = -I .bootstrap/blueprint-pathtools/test
+ pkgPath = main
+default .bootstrap/blueprint-pathtools/test/test.a
+
+build .bootstrap/blueprint-pathtools/test/test: g.bootstrap.link $
+ .bootstrap/blueprint-pathtools/test/test.a | ${g.bootstrap.linkCmd}
+ libDirFlags = -L .bootstrap/blueprint-pathtools/test
+default .bootstrap/blueprint-pathtools/test/test
+
+build .bootstrap/blueprint-pathtools/test/test.passed: g.bootstrap.test $
+ .bootstrap/blueprint-pathtools/test/test
+ pkg = github.com/google/blueprint/pathtools
+ pkgSrcDir = ${g.bootstrap.srcDir}/build/blueprint/pathtools
+default .bootstrap/blueprint-pathtools/test/test.passed
build $
.bootstrap/blueprint-pathtools/pkg/github.com/google/blueprint/pathtools.a $
: g.bootstrap.gc $
${g.bootstrap.srcDir}/build/blueprint/pathtools/lists.go $
${g.bootstrap.srcDir}/build/blueprint/pathtools/glob.go | $
- ${g.bootstrap.gcCmd}
+ ${g.bootstrap.gcCmd} || $
+ .bootstrap/blueprint-pathtools/test/test.passed
pkgPath = github.com/google/blueprint/pathtools
default $
.bootstrap/blueprint-pathtools/pkg/github.com/google/blueprint/pathtools.a
@@ -219,8 +390,8 @@ default $
# Module: blueprint-proptools
# Variant:
# Type: bootstrap_go_package
-# Factory: github.com/google/blueprint/bootstrap.newGoPackageModule
-# Defined: build/blueprint/Blueprints:50:1
+# Factory: github.com/google/blueprint/bootstrap.func·002
+# Defined: build/blueprint/Blueprints:64:1
build $
.bootstrap/blueprint-proptools/pkg/github.com/google/blueprint/proptools.a $
@@ -235,8 +406,8 @@ default $
# Module: bpfmt
# Variant:
# Type: bootstrap_go_binary
-# Factory: github.com/google/blueprint/bootstrap.newGoBinaryModule
-# Defined: build/blueprint/Blueprints:82:1
+# Factory: github.com/google/blueprint/bootstrap.func·003
+# Defined: build/blueprint/Blueprints:96:1
build .bootstrap/bpfmt/obj/bpfmt.a: g.bootstrap.gc $
${g.bootstrap.srcDir}/build/blueprint/bpfmt/bpfmt.go | $
@@ -258,8 +429,8 @@ default .bootstrap/bin/bpfmt
# Module: bpmodify
# Variant:
# Type: bootstrap_go_binary
-# Factory: github.com/google/blueprint/bootstrap.newGoBinaryModule
-# Defined: build/blueprint/Blueprints:88:1
+# Factory: github.com/google/blueprint/bootstrap.func·003
+# Defined: build/blueprint/Blueprints:102:1
build .bootstrap/bpmodify/obj/bpmodify.a: g.bootstrap.gc $
${g.bootstrap.srcDir}/build/blueprint/bpmodify/bpmodify.go | $
@@ -278,11 +449,31 @@ build .bootstrap/bin/bpmodify: g.bootstrap.cp .bootstrap/bpmodify/obj/a.out
default .bootstrap/bin/bpmodify
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
+# Module: gotestmain
+# Variant:
+# Type: bootstrap_go_binary
+# Factory: github.com/google/blueprint/bootstrap.func·003
+# Defined: build/blueprint/Blueprints:108:1
+
+build .bootstrap/gotestmain/obj/gotestmain.a: g.bootstrap.gc $
+ ${g.bootstrap.srcDir}/build/blueprint/gotestmain/gotestmain.go | $
+ ${g.bootstrap.gcCmd}
+ pkgPath = gotestmain
+default .bootstrap/gotestmain/obj/gotestmain.a
+
+build .bootstrap/gotestmain/obj/a.out: g.bootstrap.link $
+ .bootstrap/gotestmain/obj/gotestmain.a | ${g.bootstrap.linkCmd}
+default .bootstrap/gotestmain/obj/a.out
+build .bootstrap/bin/gotestmain: g.bootstrap.cp $
+ .bootstrap/gotestmain/obj/a.out
+default .bootstrap/bin/gotestmain
+
+# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Module: minibp
# Variant:
# Type: bootstrap_go_binary
-# Factory: github.com/google/blueprint/bootstrap.newGoBinaryModule
-# Defined: build/blueprint/Blueprints:73:1
+# Factory: github.com/google/blueprint/bootstrap.func·003
+# Defined: build/blueprint/Blueprints:87:1
build .bootstrap/minibp/obj/minibp.a: g.bootstrap.gc $
${g.bootstrap.srcDir}/build/blueprint/bootstrap/minibp/main.go | $
@@ -309,7 +500,7 @@ default .bootstrap/bin/minibp
# Module: soong-art
# Variant:
# Type: bootstrap_go_package
-# Factory: github.com/google/blueprint/bootstrap.newGoPackageModule
+# Factory: github.com/google/blueprint/bootstrap.func·002
# Defined: art/build/Android.bp:13:1
build .bootstrap/soong-art/pkg/android/soong/art.a: g.bootstrap.gc $
@@ -333,9 +524,59 @@ default .bootstrap/soong-art/pkg/android/soong/art.a
# Module: soong-cc
# Variant:
# Type: bootstrap_go_package
-# Factory: github.com/google/blueprint/bootstrap.newGoPackageModule
+# Factory: github.com/google/blueprint/bootstrap.func·002
# Defined: build/soong/Android.bp:93:1
+build .bootstrap/soong-cc/test/android/soong/cc.a: g.bootstrap.gc $
+ ${g.bootstrap.srcDir}/build/soong/cc/builder.go $
+ ${g.bootstrap.srcDir}/build/soong/cc/cc.go $
+ ${g.bootstrap.srcDir}/build/soong/cc/clang.go $
+ ${g.bootstrap.srcDir}/build/soong/cc/gen.go $
+ ${g.bootstrap.srcDir}/build/soong/cc/toolchain.go $
+ ${g.bootstrap.srcDir}/build/soong/cc/util.go $
+ ${g.bootstrap.srcDir}/build/soong/cc/arm_device.go $
+ ${g.bootstrap.srcDir}/build/soong/cc/arm64_device.go $
+ ${g.bootstrap.srcDir}/build/soong/cc/x86_darwin_host.go $
+ ${g.bootstrap.srcDir}/build/soong/cc/x86_linux_host.go $
+ ${g.bootstrap.srcDir}/build/soong/cc/cc_test.go | ${g.bootstrap.gcCmd} $
+ .bootstrap/blueprint-parser/pkg/github.com/google/blueprint/parser.a $
+ .bootstrap/blueprint-pathtools/pkg/github.com/google/blueprint/pathtools.a $
+ .bootstrap/blueprint-proptools/pkg/github.com/google/blueprint/proptools.a $
+ .bootstrap/blueprint/pkg/github.com/google/blueprint.a $
+ .bootstrap/blueprint-deptools/pkg/github.com/google/blueprint/deptools.a $
+ .bootstrap/blueprint-bootstrap/pkg/github.com/google/blueprint/bootstrap.a $
+ .bootstrap/soong-env/pkg/android/soong/env.a $
+ .bootstrap/soong-glob/pkg/android/soong/glob.a $
+ .bootstrap/soong-common/pkg/android/soong/common.a $
+ .bootstrap/soong-genrule/pkg/android/soong/genrule.a
+ incFlags = -I .bootstrap/blueprint-parser/pkg -I .bootstrap/blueprint-pathtools/pkg -I .bootstrap/blueprint-proptools/pkg -I .bootstrap/blueprint/pkg -I .bootstrap/blueprint-deptools/pkg -I .bootstrap/blueprint-bootstrap/pkg -I .bootstrap/soong-env/pkg -I .bootstrap/soong-glob/pkg -I .bootstrap/soong-common/pkg -I .bootstrap/soong-genrule/pkg
+ pkgPath = android/soong/cc
+default .bootstrap/soong-cc/test/android/soong/cc.a
+
+build .bootstrap/soong-cc/test/test.go: g.bootstrap.gotestmain $
+ ${g.bootstrap.srcDir}/build/soong/cc/cc_test.go | $
+ ${g.bootstrap.goTestMainCmd}
+ pkg = android/soong/cc
+default .bootstrap/soong-cc/test/test.go
+
+build .bootstrap/soong-cc/test/test.a: g.bootstrap.gc $
+ .bootstrap/soong-cc/test/test.go | $
+ .bootstrap/soong-cc/test/android/soong/cc.a
+ incFlags = -I .bootstrap/soong-cc/test
+ pkgPath = main
+default .bootstrap/soong-cc/test/test.a
+
+build .bootstrap/soong-cc/test/test: g.bootstrap.link $
+ .bootstrap/soong-cc/test/test.a | ${g.bootstrap.linkCmd}
+ libDirFlags = -L .bootstrap/soong-cc/test -L .bootstrap/blueprint-parser/pkg -L .bootstrap/blueprint-pathtools/pkg -L .bootstrap/blueprint-proptools/pkg -L .bootstrap/blueprint/pkg -L .bootstrap/blueprint-deptools/pkg -L .bootstrap/blueprint-bootstrap/pkg -L .bootstrap/soong-env/pkg -L .bootstrap/soong-glob/pkg -L .bootstrap/soong-common/pkg -L .bootstrap/soong-genrule/pkg
+default .bootstrap/soong-cc/test/test
+
+build .bootstrap/soong-cc/test/test.passed: g.bootstrap.test $
+ .bootstrap/soong-cc/test/test
+ pkg = android/soong/cc
+ pkgSrcDir = ${g.bootstrap.srcDir}/build/soong/cc
+default .bootstrap/soong-cc/test/test.passed
+
build .bootstrap/soong-cc/pkg/android/soong/cc.a: g.bootstrap.gc $
${g.bootstrap.srcDir}/build/soong/cc/builder.go $
${g.bootstrap.srcDir}/build/soong/cc/cc.go $
@@ -357,7 +598,8 @@ build .bootstrap/soong-cc/pkg/android/soong/cc.a: g.bootstrap.gc $
.bootstrap/soong-env/pkg/android/soong/env.a $
.bootstrap/soong-glob/pkg/android/soong/glob.a $
.bootstrap/soong-common/pkg/android/soong/common.a $
- .bootstrap/soong-genrule/pkg/android/soong/genrule.a
+ .bootstrap/soong-genrule/pkg/android/soong/genrule.a || $
+ .bootstrap/soong-cc/test/test.passed
incFlags = -I .bootstrap/blueprint-parser/pkg -I .bootstrap/blueprint-pathtools/pkg -I .bootstrap/blueprint-proptools/pkg -I .bootstrap/blueprint/pkg -I .bootstrap/blueprint-deptools/pkg -I .bootstrap/blueprint-bootstrap/pkg -I .bootstrap/soong-env/pkg -I .bootstrap/soong-glob/pkg -I .bootstrap/soong-common/pkg -I .bootstrap/soong-genrule/pkg
pkgPath = android/soong/cc
default .bootstrap/soong-cc/pkg/android/soong/cc.a
@@ -366,7 +608,7 @@ default .bootstrap/soong-cc/pkg/android/soong/cc.a
# Module: soong-common
# Variant:
# Type: bootstrap_go_package
-# Factory: github.com/google/blueprint/bootstrap.newGoPackageModule
+# Factory: github.com/google/blueprint/bootstrap.func·002
# Defined: build/soong/Android.bp:72:1
build .bootstrap/soong-common/pkg/android/soong/common.a: g.bootstrap.gc $
@@ -395,7 +637,7 @@ default .bootstrap/soong-common/pkg/android/soong/common.a
# Module: soong-env
# Variant:
# Type: bootstrap_go_package
-# Factory: github.com/google/blueprint/bootstrap.newGoPackageModule
+# Factory: github.com/google/blueprint/bootstrap.func·002
# Defined: build/soong/Android.bp:41:1
build .bootstrap/soong-env/pkg/android/soong/env.a: g.bootstrap.gc $
@@ -407,8 +649,8 @@ default .bootstrap/soong-env/pkg/android/soong/env.a
# Module: soong-genrule
# Variant:
# Type: bootstrap_go_package
-# Factory: github.com/google/blueprint/bootstrap.newGoPackageModule
-# Defined: build/soong/Android.bp:118:1
+# Factory: github.com/google/blueprint/bootstrap.func·002
+# Defined: build/soong/Android.bp:121:1
build .bootstrap/soong-genrule/pkg/android/soong/genrule.a: g.bootstrap.gc $
${g.bootstrap.srcDir}/build/soong/genrule/genrule.go | $
@@ -430,7 +672,7 @@ default .bootstrap/soong-genrule/pkg/android/soong/genrule.a
# Module: soong-glob
# Variant:
# Type: bootstrap_go_package
-# Factory: github.com/google/blueprint/bootstrap.newGoPackageModule
+# Factory: github.com/google/blueprint/bootstrap.func·002
# Defined: build/soong/Android.bp:60:1
build .bootstrap/soong-glob/pkg/android/soong/glob.a: g.bootstrap.gc $
@@ -445,8 +687,8 @@ default .bootstrap/soong-glob/pkg/android/soong/glob.a
# Module: soong-java
# Variant:
# Type: bootstrap_go_package
-# Factory: github.com/google/blueprint/bootstrap.newGoPackageModule
-# Defined: build/soong/Android.bp:138:1
+# Factory: github.com/google/blueprint/bootstrap.func·002
+# Defined: build/soong/Android.bp:141:1
build .bootstrap/soong-java/pkg/android/soong/java.a: g.bootstrap.gc $
${g.bootstrap.srcDir}/build/soong/java/app_builder.go $
@@ -474,7 +716,7 @@ default .bootstrap/soong-java/pkg/android/soong/java.a
# Module: soong_build
# Variant:
# Type: bootstrap_go_binary
-# Factory: github.com/google/blueprint/bootstrap.newGoBinaryModule
+# Factory: github.com/google/blueprint/bootstrap.func·003
# Defined: build/soong/Android.bp:13:1
build .bootstrap/soong_build/obj/soong_build.a: g.bootstrap.gc $
@@ -510,7 +752,7 @@ default .bootstrap/bin/soong_build
# Module: soong_env
# Variant:
# Type: bootstrap_go_binary
-# Factory: github.com/google/blueprint/bootstrap.newGoBinaryModule
+# Factory: github.com/google/blueprint/bootstrap.func·003
# Defined: build/soong/Android.bp:31:1
build .bootstrap/soong_env/obj/soong_env.a: g.bootstrap.gc $
@@ -532,7 +774,7 @@ default .bootstrap/bin/soong_env
# Module: soong_glob
# Variant:
# Type: bootstrap_go_binary
-# Factory: github.com/google/blueprint/bootstrap.newGoBinaryModule
+# Factory: github.com/google/blueprint/bootstrap.func·003
# Defined: build/soong/Android.bp:50:1
build .bootstrap/soong_glob/obj/soong_glob.a: g.bootstrap.gc $
@@ -558,8 +800,8 @@ default .bootstrap/bin/soong_glob
# Module: soong_jar
# Variant:
# Type: bootstrap_go_binary
-# Factory: github.com/google/blueprint/bootstrap.newGoBinaryModule
-# Defined: build/soong/Android.bp:131:1
+# Factory: github.com/google/blueprint/bootstrap.func·003
+# Defined: build/soong/Android.bp:134:1
build .bootstrap/soong_jar/obj/soong_jar.a: g.bootstrap.gc $
${g.bootstrap.srcDir}/build/soong/cmd/soong_jar/soong_jar.go | $
@@ -575,15 +817,15 @@ default .bootstrap/bin/soong_jar
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Singleton: bootstrap
-# Factory: github.com/google/blueprint/bootstrap.newSingleton
+# Factory: github.com/google/blueprint/bootstrap.func·008
rule s.bootstrap.bigbp
- command = .bootstrap/bin/soong_build -d .bootstrap/main.ninja.in.d -m ${g.bootstrap.bootstrapManifest} -o ${out} ${in}
+ command = .bootstrap/bin/soong_build -t -d .bootstrap/main.ninja.in.d -m ${g.bootstrap.bootstrapManifest} -o ${out} ${in}
depfile = .bootstrap/main.ninja.in.d
description = soong_build ${out}
rule s.bootstrap.minibp
- command = .bootstrap/bin/minibp -c ${checkFile} -m ${g.bootstrap.bootstrapManifest} -d ${out}.d -o ${out} ${in}
+ command = .bootstrap/bin/minibp ${runTests} -c ${checkFile} -m ${g.bootstrap.bootstrapManifest} -d ${out}.d -o ${out} ${in}
depfile = ${out}.d
description = minibp ${out}
generator = true
@@ -591,9 +833,9 @@ rule s.bootstrap.minibp
build .bootstrap/main.ninja.in: s.bootstrap.bigbp $
${g.bootstrap.srcDir}/Android.bp | .bootstrap/bin/androidbp $
.bootstrap/bin/androidmk .bootstrap/bin/bpfmt .bootstrap/bin/bpmodify $
- .bootstrap/bin/minibp .bootstrap/bin/soong_build $
- .bootstrap/bin/soong_env .bootstrap/bin/soong_glob $
- .bootstrap/bin/soong_jar
+ .bootstrap/bin/gotestmain .bootstrap/bin/minibp $
+ .bootstrap/bin/soong_build .bootstrap/bin/soong_env $
+ .bootstrap/bin/soong_glob .bootstrap/bin/soong_jar
default .bootstrap/main.ninja.in
build .bootstrap/notAFile: phony
default .bootstrap/notAFile
@@ -604,5 +846,6 @@ default build.ninja
build .bootstrap/bootstrap.ninja.in: s.bootstrap.minibp $
${g.bootstrap.srcDir}/Android.bp | .bootstrap/bin/minibp
checkFile = ${g.bootstrap.bootstrapManifest}
+ runTests = -t
default .bootstrap/bootstrap.ninja.in