Support for clearing profile in apk_masseur.py

Change-Id: I952953bb9f25eeff038f7669efb0dd8f15b637fa
diff --git a/tools/apk_masseur.py b/tools/apk_masseur.py
index 5153327..1b35d23 100755
--- a/tools/apk_masseur.py
+++ b/tools/apk_masseur.py
@@ -17,6 +17,11 @@
 
 def parse_options():
   parser = optparse.OptionParser(usage=USAGE)
+  parser.add_option('--clear-profile',
+                    help='To remove baseline.prof and baseline.profm from '
+                         'assets/dexopt/',
+                    default=False,
+                    action='store_true')
   parser.add_option('--dex',
                     help='Directory or archive with dex files to use instead '
                          'of those in the apk',
@@ -59,12 +64,20 @@
   return file.endswith('.zip') or file.endswith('.jar')
 
 def repack(
-    apk, processed_out, desugared_library_dex, resources, temp, quiet, logging):
+    apk, clear_profile, processed_out, desugared_library_dex, resources, temp,
+    quiet, logging):
   processed_apk = os.path.join(temp, 'processed.apk')
   shutil.copyfile(apk, processed_apk)
+
+  if clear_profile:
+    zip_utils.remove_files_from_zip(
+        ['assets/dexopt/baseline.prof', 'assets/dexopt/baseline.profm'],
+        processed_apk)
+
   if not processed_out:
-    utils.Print('Using original APK as is', quiet=quiet)
+    utils.Print('Using original dex as is', quiet=quiet)
     return processed_apk
+
   utils.Print(
       'Repacking APK with dex files from {}'.format(processed_out), quiet=quiet)
 
@@ -117,22 +130,23 @@
   return apk_utils.align(signed_apk, aligned_apk)
 
 def masseur(
-    apk, dex=None, desugared_library_dex=None, resources=None, out=None,
-    adb_options=None, sign_before_align=False, keystore=None, install=False,
-    quiet=False, logging=True):
+    apk, clear_profile=False, dex=None, desugared_library_dex=None,
+    resources=None, out=None, adb_options=None, sign_before_align=False,
+    keystore=None, install=False, quiet=False, logging=True):
   if not out:
     out = os.path.basename(apk)
   if not keystore:
     keystore = apk_utils.default_keystore()
   with utils.TempDir() as temp:
     processed_apk = None
-    if dex:
+    if dex or clear_profile:
       processed_apk = repack(
-          apk, dex, desugared_library_dex, resources, temp, quiet, logging)
+          apk, clear_profile, dex, desugared_library_dex, resources, temp,
+          quiet, logging)
     else:
       assert not desugared_library_dex
       utils.Print(
-          'Signing original APK without modifying dex files', quiet=quiet)
+          'Signing original APK without modifying apk', quiet=quiet)
       processed_apk = os.path.join(temp, 'processed.apk')
       shutil.copyfile(apk, processed_apk)
     if sign_before_align: