[Retrace] Archive maps from generated retrace libraries

Bug: b/281459606
Change-Id: I7ee2759bef4cf003b33ac6fdad6a5b2e96119217
diff --git a/src/main/keep_retrace.txt b/src/main/keep_retrace.txt
index e8d050a..6ddb273 100644
--- a/src/main/keep_retrace.txt
+++ b/src/main/keep_retrace.txt
@@ -11,9 +11,18 @@
 -keepattributes SourceFile, LineNumberTable, InnerClasses, EnclosingMethod, Exceptions, Signature
 -keepparameternames
 
-# This is run on r8lib so keep everything in lib that is traced. That way
-# we only need a single mapping file
--keep,allowshrinking class * { *; }
+-repackageclasses com.android.tools.r8.retrace_internal
 
 # Keep all things that can be reached from the retrace api
 -keep @com.android.tools.r8.KeepForRetraceApi class * { public *; }
+
+-keep,allowshrinking @com.android.tools.r8.Keep class * { public *; }
+-keep,allowshrinking @com.android.tools.r8.KeepForSubclassing class * { public *; protected *; }
+
+-keep public class com.android.tools.r8.Version { public static final java.lang.String LABEL; }
+-keep public class com.android.tools.r8.Version { public static java.lang.String getVersionString(); }
+-keep public class com.android.tools.r8.Version { public static int getMajorVersion(); }
+-keep public class com.android.tools.r8.Version { public static int getMinorVersion(); }
+-keep public class com.android.tools.r8.Version { public static int getPatchVersion(); }
+-keep public class com.android.tools.r8.Version { public static java.lang.String getPreReleaseString(); }
+-keep public class com.android.tools.r8.Version { public static boolean isDevelopmentVersion(); }
diff --git a/tools/archive.py b/tools/archive.py
index d724b18..558842c 100755
--- a/tools/archive.py
+++ b/tools/archive.py
@@ -224,7 +224,11 @@
       utils.R8LIB_EXCLUDE_DEPS_JAR + '.map',
       utils.R8LIB_EXCLUDE_DEPS_JAR + '_map.zip',
       utils.R8RETRACE_JAR,
+      utils.R8RETRACE_JAR + '.map',
+      utils.R8RETRACE_JAR + '_map.zip',
       utils.R8RETRACE_EXCLUDE_DEPS_JAR,
+      utils.R8RETRACE_EXCLUDE_DEPS_JAR + '.map',
+      utils.R8RETRACE_EXCLUDE_DEPS_JAR + '_map.zip',
       utils.MAVEN_ZIP,
       utils.MAVEN_ZIP_LIB,
       utils.DESUGAR_CONFIGURATION,