Add mapping id to source file information for R8 full-mode builds.
Bug: 204293621
Test: atest --host r8retrace-check-retraced-stacktrace
Change-Id: I09703cfaab72350efe67217be9e2d37988218f4d
diff --git a/java/dex.go b/java/dex.go
index 8045b5c..c59c339 100644
--- a/java/dex.go
+++ b/java/dex.go
@@ -254,6 +254,15 @@
if BoolDefault(opt.Proguard_compatibility, true) {
r8Flags = append(r8Flags, "--force-proguard-compatibility")
+ } else {
+ // TODO(b/213833843): Allow configuration of the prefix via a build variable.
+ var sourceFilePrefix = "go/retraceme "
+ var sourceFileTemplate = "\"" + sourceFilePrefix + "%MAP_ID\""
+ // TODO(b/200967150): Also tag the source file in compat builds.
+ if Bool(opt.Optimize) || Bool(opt.Obfuscate) {
+ r8Flags = append(r8Flags, "--map-id-template", "%MAP_HASH")
+ r8Flags = append(r8Flags, "--source-file-template", sourceFileTemplate)
+ }
}
// TODO(ccross): Don't shrink app instrumentation tests by default.