diff options
Diffstat (limited to 'java')
| -rw-r--r-- | java/app_builder.go | 4 | ||||
| -rw-r--r-- | java/builder.go | 2 | ||||
| -rw-r--r-- | java/dex.go | 4 | ||||
| -rw-r--r-- | java/java_resources.go | 6 |
4 files changed, 9 insertions, 7 deletions
diff --git a/java/app_builder.go b/java/app_builder.go index 954ca4464..e27b1b70e 100644 --- a/java/app_builder.go +++ b/java/app_builder.go @@ -103,10 +103,10 @@ var buildAAR = pctx.AndroidStaticRule("buildAAR", `cp ${manifest} ${outDir}/AndroidManifest.xml && ` + `cp ${classesJar} ${outDir}/classes.jar && ` + `cp ${rTxt} ${outDir}/R.txt && ` + - `${config.SoongZipCmd} -jar -o $out -C ${outDir} -D ${outDir} ${resArgs}`, + `${config.SoongZipCmd} -jar -o $out -C ${outDir} -D ${outDir}`, CommandDeps: []string{"${config.SoongZipCmd}"}, }, - "manifest", "classesJar", "rTxt", "resArgs", "outDir") + "manifest", "classesJar", "rTxt", "outDir") func BuildAAR(ctx android.ModuleContext, outputFile android.WritablePath, classesJar, manifest, rTxt android.Path, res android.Paths) { diff --git a/java/builder.go b/java/builder.go index 48b5a7b6c..07af8ebda 100644 --- a/java/builder.go +++ b/java/builder.go @@ -321,7 +321,7 @@ func TransformResourcesToJar(ctx android.ModuleContext, outputFile android.Writa Output: outputFile, Implicits: deps, Args: map[string]string{ - "jarArgs": strings.Join(proptools.NinjaEscape(jarArgs), " "), + "jarArgs": strings.Join(proptools.NinjaAndShellEscape(jarArgs), " "), }, }) } diff --git a/java/dex.go b/java/dex.go index 03316f6f9..ce0c18e66 100644 --- a/java/dex.go +++ b/java/dex.go @@ -26,7 +26,7 @@ var d8 = pctx.AndroidStaticRule("d8", blueprint.RuleParams{ Command: `rm -rf "$outDir" && mkdir -p "$outDir" && ` + `${config.D8Cmd} --output $outDir $d8Flags $in && ` + - `${config.SoongZipCmd} -o $outDir/classes.dex.jar -C $outDir -D $outDir && ` + + `${config.SoongZipCmd} -o $outDir/classes.dex.jar -C $outDir -f "$outDir/classes*.dex" && ` + `${config.MergeZipsCmd} -D -stripFile "**/*.class" $out $outDir/classes.dex.jar $in`, CommandDeps: []string{ "${config.D8Cmd}", @@ -46,7 +46,7 @@ var r8 = pctx.AndroidStaticRule("r8", `-printmapping $outDict ` + `$r8Flags && ` + `touch "$outDict" && ` + - `${config.SoongZipCmd} -o $outDir/classes.dex.jar -C $outDir -D $outDir && ` + + `${config.SoongZipCmd} -o $outDir/classes.dex.jar -C $outDir -f "$outDir/classes*.dex" && ` + `${config.MergeZipsCmd} -D -stripFile "**/*.class" $out $outDir/classes.dex.jar $in`, CommandDeps: []string{ "${config.R8Cmd}", diff --git a/java/java_resources.go b/java/java_resources.go index fdc159063..6c1fd39d0 100644 --- a/java/java_resources.go +++ b/java/java_resources.go @@ -19,6 +19,8 @@ import ( "path/filepath" "strings" + "github.com/google/blueprint/pathtools" + "android/soong/android" ) @@ -64,7 +66,7 @@ func ResourceDirsToJarArgs(ctx android.ModuleContext, if !strings.HasPrefix(path, dir.String()) { panic(fmt.Errorf("path %q does not start with %q", path, dir)) } - args = append(args, "-f", path) + args = append(args, "-f", pathtools.MatchEscape(path)) } } } @@ -107,7 +109,7 @@ func resourceFilesToJarArgs(ctx android.ModuleContext, if i == 0 || dir != lastDir { args = append(args, "-C", dir) } - args = append(args, "-f", path) + args = append(args, "-f", pathtools.MatchEscape(path)) lastDir = dir } |