summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornyquist <nyquist@chromium.org>2014-09-15 17:52:50 -0700
committerCommit bot <commit-bot@chromium.org>2014-09-16 00:54:33 +0000
commit1c8fb8003d7d8e338c0bd277d3ab6bdff97e75df (patch)
treeb08263bd8d46724d5d1a3951de42c7244c93a283
parent8bf7cfffd01ed9c1e7cfdee389f70c3b4ecb15e4 (diff)
downloadchromium_src-1c8fb8003d7d8e338c0bd277d3ab6bdff97e75df.zip
chromium_src-1c8fb8003d7d8e338c0bd277d3ab6bdff97e75df.tar.gz
chromium_src-1c8fb8003d7d8e338c0bd277d3ab6bdff97e75df.tar.bz2
Remove guava dependency for multiple_proguards test.
The multiple_proguards_test_apk target used guava as an example for something that needed to be proguarded out to ensure no proguard warnings. Since guava is going away, this CL moves the bad code into chromium directly so there is no need for guava. It does bad things which produce warnings, so they are silenced by telling GYP that it is not chromium code. BUG=412673 Review URL: https://codereview.chromium.org/571203003 Cr-Commit-Position: refs/heads/master@{#294950}
-rw-r--r--build/android/tests/multiple_proguards/multiple_proguards.gyp10
-rw-r--r--build/android/tests/multiple_proguards/proguard1.flags1
-rw-r--r--build/android/tests/multiple_proguards/proguard2.flags4
-rw-r--r--build/android/tests/multiple_proguards/src/dummy/DummyActivity.java14
4 files changed, 19 insertions, 10 deletions
diff --git a/build/android/tests/multiple_proguards/multiple_proguards.gyp b/build/android/tests/multiple_proguards/multiple_proguards.gyp
index 158d4ce..48a5d7b 100644
--- a/build/android/tests/multiple_proguards/multiple_proguards.gyp
+++ b/build/android/tests/multiple_proguards/multiple_proguards.gyp
@@ -14,6 +14,9 @@
'java_in_dir': '.',
'proguard_enabled': 'true',
'proguard_flags_paths': [
+ # Both these proguard?.flags files need to be part of the build to
+ # remove both warnings from the src/dummy/DummyActivity.java file, else the
+ # build will fail.
'proguard1.flags',
'proguard2.flags',
],
@@ -22,12 +25,9 @@
'apk_name': 'MultipleProguards',
# This is a build-only test. There's nothing to install.
'gyp_managed_install': 0,
+ # The Java code produces warnings, so force the build to not show them.
+ 'chromium_code': 0,
},
- 'dependencies': [
- # guava has references to objects using reflection which
- # should be ignored in proguard step.
- '../../../../third_party/guava/guava.gyp:guava_javalib',
- ],
'includes': [ '../../../../build/java_apk.gypi' ],
},
],
diff --git a/build/android/tests/multiple_proguards/proguard1.flags b/build/android/tests/multiple_proguards/proguard1.flags
index 4539a7a..95a814c 100644
--- a/build/android/tests/multiple_proguards/proguard1.flags
+++ b/build/android/tests/multiple_proguards/proguard1.flags
@@ -1,2 +1 @@
-# src/third_party/guava/guava.gyp:guava_javalib
-dontwarn sun.misc.Unsafe
diff --git a/build/android/tests/multiple_proguards/proguard2.flags b/build/android/tests/multiple_proguards/proguard2.flags
index 7da78c3..ceac62b 100644
--- a/build/android/tests/multiple_proguards/proguard2.flags
+++ b/build/android/tests/multiple_proguards/proguard2.flags
@@ -1,3 +1 @@
-# Striped64 uses reflection to access some local fields.
--dontnote com.google.common.cache.Striped64
--dontnote com.google.common.cache.Striped64$Cell
+-dontwarn sun.reflect.Reflection
diff --git a/build/android/tests/multiple_proguards/src/dummy/DummyActivity.java b/build/android/tests/multiple_proguards/src/dummy/DummyActivity.java
index 291a810..2ff8c4f 100644
--- a/build/android/tests/multiple_proguards/src/dummy/DummyActivity.java
+++ b/build/android/tests/multiple_proguards/src/dummy/DummyActivity.java
@@ -5,10 +5,22 @@
package dummy;
import android.app.Activity;
-import android.os.Bundle;
/**
* Dummy activity to build apk.
+ *
+ * This class is created to ensure that proguard will produce two separate warnings.
*/
public class DummyActivity extends Activity {
+ private static void doBadThings1() {
+ try {
+ sun.misc.Unsafe.getUnsafe();
+ } catch (Exception e) {
+ throw new Error(e);
+ }
+ }
+
+ private static void doBadThings2() {
+ sun.reflect.Reflection.getCallerClass(2);
+ }
}