Index: build/android/gyp/util/proguard_util.py |
diff --git a/build/android/gyp/util/proguard_util.py b/build/android/gyp/util/proguard_util.py |
index 8ca86462631939eb0f44eb2b506b8e508e5fe762..901cd9f2a8f30c5491986492cc3a4575776ef8a2 100644 |
--- a/build/android/gyp/util/proguard_util.py |
+++ b/build/android/gyp/util/proguard_util.py |
@@ -32,55 +32,45 @@ |
def __init__(self, proguard_jar): |
assert os.path.exists(proguard_jar) |
self._proguard_jar_path = proguard_jar |
- self._tested_apk_info_path = None |
- self._tested_apk_info = None |
+ self._test = None |
self._mapping = None |
self._libraries = None |
self._injars = None |
self._configs = None |
self._outjar = None |
- self._cmd = None |
def outjar(self, path): |
- assert self._cmd is None |
assert self._outjar is None |
self._outjar = path |
- def tested_apk_info(self, tested_apk_info_path): |
- assert self._cmd is None |
- assert self._tested_apk_info is None |
- self._tested_apk_info_path = tested_apk_info_path |
+ def is_test(self, enable): |
+ assert self._test is None |
+ self._test = enable |
def mapping(self, path): |
- assert self._cmd is None |
assert self._mapping is None |
assert os.path.exists(path), path |
self._mapping = path |
def libraryjars(self, paths): |
- assert self._cmd is None |
assert self._libraries is None |
for p in paths: |
assert os.path.exists(p), p |
self._libraries = paths |
def injars(self, paths): |
- assert self._cmd is None |
assert self._injars is None |
for p in paths: |
assert os.path.exists(p), p |
self._injars = paths |
def configs(self, paths): |
- assert self._cmd is None |
assert self._configs is None |
for p in paths: |
assert os.path.exists(p), p |
self._configs = paths |
def build(self): |
- if self._cmd: |
- return self._cmd |
assert self._injars is not None |
assert self._outjar is not None |
assert self._configs is not None |
@@ -88,16 +78,7 @@ |
'java', '-jar', self._proguard_jar_path, |
'-forceprocessing', |
] |
- if self._tested_apk_info_path: |
- assert len(self._configs) == 1 |
- tested_apk_info = build_utils.ReadJson(self._tested_apk_info_path) |
- self._configs += tested_apk_info['configs'] |
- self._injars = [ |
- p for p in self._injars if not p in tested_apk_info['inputs']] |
- if not self._libraries: |
- self._libraries = [] |
- self._libraries += tested_apk_info['inputs'] |
- self._mapping = tested_apk_info['mapping'] |
+ if self._test: |
cmd += [ |
'-dontobfuscate', |
'-dontoptimize', |
@@ -130,38 +111,18 @@ |
'-printusage', self._outjar + '.usage', |
'-printmapping', self._outjar + '.mapping', |
] |
- self._cmd = cmd |
- return self._cmd |
+ return cmd |
def GetInputs(self): |
- self.build() |
inputs = [self._proguard_jar_path] + self._configs + self._injars |
if self._mapping: |
inputs.append(self._mapping) |
if self._libraries: |
inputs += self._libraries |
- if self._tested_apk_info_path: |
- inputs += [self._tested_apk_info_path] |
return inputs |
def CheckOutput(self): |
- self.build() |
- # Proguard will skip writing these files if they would be empty. Create |
- # empty versions of them all now so that they are updated as the build |
- # expects. |
- open(self._outjar + '.dump', 'w').close() |
- open(self._outjar + '.seeds', 'w').close() |
- open(self._outjar + '.usage', 'w').close() |
- open(self._outjar + '.mapping', 'w').close() |
- build_utils.CheckOutput(self._cmd, print_stdout=True, |
+ build_utils.CheckOutput(self.build(), print_stdout=True, |
stdout_filter=FilterProguardOutput) |
- this_info = { |
- 'inputs': self._injars, |
- 'configs': self._configs, |
- 'mapping': self._outjar + '.mapping', |
- } |
- |
- build_utils.WriteJson(this_info, self._outjar + '.info') |
- |