aboutsummaryrefslogtreecommitdiffstats
path: root/java/app_builder.go
diff options
context:
space:
mode:
authorDan Willemsen <dwillemsen@google.com>2015-11-17 15:27:28 -0800
committerDan Willemsen <dwillemsen@google.com>2015-11-17 19:05:07 -0800
commitc94a768a2a6998a34f76212912ce4013a7be47f5 (patch)
tree0420066908ab1d2efaa14953a2a84282c18f4b33 /java/app_builder.go
parent322a0a6b59dfe5d059b7075cd033dc0bcb49dc13 (diff)
downloadbuild_soong-c94a768a2a6998a34f76212912ce4013a7be47f5.tar.gz
build_soong-c94a768a2a6998a34f76212912ce4013a7be47f5.tar.bz2
build_soong-c94a768a2a6998a34f76212912ce4013a7be47f5.zip
Use Rule-local implicit dependencies
Depends on https://github.com/google/blueprint/pull/78 This uses the new CommandDeps field to move implicit dependencies embedded in the Command string next to the definition, instead of having to specify them in every BuildParam struct. This should make it easier to verify dependencies. Change-Id: I2711b160920e22fa962a436e1f7041272166f50f
Diffstat (limited to 'java/app_builder.go')
-rw-r--r--java/app_builder.go31
1 files changed, 15 insertions, 16 deletions
diff --git a/java/app_builder.go b/java/app_builder.go
index 8e907d22..4b3d3153 100644
--- a/java/app_builder.go
+++ b/java/app_builder.go
@@ -34,6 +34,7 @@ var (
`$aaptCmd package -m $aaptFlags -P $publicResourcesFile -G $proguardOptionsFile ` +
`-J $javaDir || ( rm -rf "$javaDir/*"; exit 41 ) && ` +
`find $javaDir -name "*.java" > $javaFileList`,
+ CommandDeps: []string{"$aaptCmd"},
Description: "aapt create R.java $out",
},
"aaptFlags", "publicResourcesFile", "proguardOptionsFile", "javaDir", "javaFileList")
@@ -41,6 +42,7 @@ var (
aaptCreateAssetsPackage = pctx.StaticRule("aaptCreateAssetsPackage",
blueprint.RuleParams{
Command: `rm -f $out && $aaptCmd package $aaptFlags -F $out`,
+ CommandDeps: []string{"$aaptCmd"},
Description: "aapt export package $out",
},
"aaptFlags", "publicResourcesFile", "proguardOptionsFile", "javaDir", "javaFileList")
@@ -49,6 +51,7 @@ var (
blueprint.RuleParams{
// TODO: add-jni-shared-libs-to-package
Command: `cp -f $in $out.tmp && $aaptCmd package -u $aaptFlags -F $out.tmp && mv $out.tmp $out`,
+ CommandDeps: []string{"$aaptCmd"},
Description: "aapt package $out",
},
"aaptFlags")
@@ -56,6 +59,7 @@ var (
zipalign = pctx.StaticRule("zipalign",
blueprint.RuleParams{
Command: `$zipalignCmd -f $zipalignFlags 4 $in $out`,
+ CommandDeps: []string{"$zipalignCmd"},
Description: "zipalign $out",
},
"zipalignFlags")
@@ -63,6 +67,7 @@ var (
signapk = pctx.StaticRule("signapk",
blueprint.RuleParams{
Command: `java -jar $signapkCmd $certificates $in $out`,
+ CommandDeps: []string{"$signapkCmd"},
Description: "signapk $out",
},
"certificates")
@@ -71,6 +76,7 @@ var (
blueprint.RuleParams{
Command: "java -classpath $androidManifestMergerCmd com.android.manifmerger.Main merge " +
"--main $in --libs $libsManifests --out $out",
+ CommandDeps: []string{"$androidManifestMergerCmd"},
Description: "merge manifest files $out",
},
"libsManifests")
@@ -96,8 +102,6 @@ func CreateResourceJavaFiles(ctx common.AndroidModuleContext, flags []string,
publicResourcesFile := filepath.Join(common.ModuleOutDir(ctx), "public_resources.xml")
proguardOptionsFile := filepath.Join(common.ModuleOutDir(ctx), "proguard.options")
- deps = append([]string{"$aaptCmd"}, deps...)
-
ctx.Build(pctx, blueprint.BuildParams{
Rule: aaptCreateResourceJavaFile,
Outputs: []string{publicResourcesFile, proguardOptionsFile, javaFileList},
@@ -117,8 +121,6 @@ func CreateResourceJavaFiles(ctx common.AndroidModuleContext, flags []string,
func CreateExportPackage(ctx common.AndroidModuleContext, flags []string, deps []string) string {
outputFile := filepath.Join(common.ModuleOutDir(ctx), "package-export.apk")
- deps = append([]string{"$aaptCmd"}, deps...)
-
ctx.Build(pctx, blueprint.BuildParams{
Rule: aaptCreateAssetsPackage,
Outputs: []string{outputFile},
@@ -137,10 +139,9 @@ func CreateAppPackage(ctx common.AndroidModuleContext, flags []string, jarFile s
resourceApk := filepath.Join(common.ModuleOutDir(ctx), "resources.apk")
ctx.Build(pctx, blueprint.BuildParams{
- Rule: aaptAddResources,
- Outputs: []string{resourceApk},
- Inputs: []string{jarFile},
- Implicits: []string{"$aaptCmd"},
+ Rule: aaptAddResources,
+ Outputs: []string{resourceApk},
+ Inputs: []string{jarFile},
Args: map[string]string{
"aaptFlags": strings.Join(flags, " "),
},
@@ -154,10 +155,9 @@ func CreateAppPackage(ctx common.AndroidModuleContext, flags []string, jarFile s
}
ctx.Build(pctx, blueprint.BuildParams{
- Rule: signapk,
- Outputs: []string{signedApk},
- Inputs: []string{resourceApk},
- Implicits: []string{"$signapkCmd"},
+ Rule: signapk,
+ Outputs: []string{signedApk},
+ Inputs: []string{resourceApk},
Args: map[string]string{
"certificates": strings.Join(certificateArgs, " "),
},
@@ -166,10 +166,9 @@ func CreateAppPackage(ctx common.AndroidModuleContext, flags []string, jarFile s
outputFile := filepath.Join(common.ModuleOutDir(ctx), "package.apk")
ctx.Build(pctx, blueprint.BuildParams{
- Rule: zipalign,
- Outputs: []string{outputFile},
- Inputs: []string{signedApk},
- Implicits: []string{"$zipalignCmd"},
+ Rule: zipalign,
+ Outputs: []string{outputFile},
+ Inputs: []string{signedApk},
Args: map[string]string{
"zipalignFlags": "",
},