summaryrefslogtreecommitdiffstats
path: root/docs/use_find_bugs_for_android.md
diff options
context:
space:
mode:
authorandybons <andybons@chromium.org>2015-08-24 14:37:09 -0700
committerCommit bot <commit-bot@chromium.org>2015-08-24 21:39:36 +0000
commit3322f7611ba1444e553b2cce4de3a1a32ad46e72 (patch)
treedfb6bbea413da0581b8d085b184a5e6ceea5af3e /docs/use_find_bugs_for_android.md
parent5d58c9eb2baa203be1b84ac88cde82c59d72f143 (diff)
downloadchromium_src-3322f7611ba1444e553b2cce4de3a1a32ad46e72.zip
chromium_src-3322f7611ba1444e553b2cce4de3a1a32ad46e72.tar.gz
chromium_src-3322f7611ba1444e553b2cce4de3a1a32ad46e72.tar.bz2
Per https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/irLAQ8f8uGk
Initial migration of wiki content over to src/docs There will be a follow-up CL to ensure docs are following chromium’s style guide, links are fixed, etc. The file auditing was becoming too much for a single change and per Nico’s suggestion, it seems to be better to do + Bulk import with initial prune. + Follow-up CLs to clean up the documentation. So that each CL has its own purpose. BUG=none Review URL: https://codereview.chromium.org/1309473002 Cr-Commit-Position: refs/heads/master@{#345186}
Diffstat (limited to 'docs/use_find_bugs_for_android.md')
-rw-r--r--docs/use_find_bugs_for_android.md32
1 files changed, 32 insertions, 0 deletions
diff --git a/docs/use_find_bugs_for_android.md b/docs/use_find_bugs_for_android.md
new file mode 100644
index 0000000..862c147
--- /dev/null
+++ b/docs/use_find_bugs_for_android.md
@@ -0,0 +1,32 @@
+# Introduction
+
+[FindBugs](http://findbugs.sourceforge.net) is an open source static analysis tool from the University of Maryland that looks for potential bugs in Java class files. We have some scripts to run it over the Java code at build time.
+
+# How To Run
+
+For gyp builds, add `run_findbugs=1` to your `GYP_DEFINES`.
+
+For gn builds, add `run_findbugs=true` to the args you pass to `gn gen`:
+
+```
+gn gen --args='target_os="android" run_findbugs=true'
+```
+
+Note that running findbugs will add time to your build. The amount of additional time required depends on the number of targets on which findbugs runs, though it will usually be between 1-10 minutes.
+
+Some of the warnings are false positives. In general, they should be suppressed using [@SuppressFBWarnings](https://code.google.com/p/chromium/codesearch#chromium/src/base/android/java/src/org/chromium/base/annotations/SuppressFBWarnings.java). In the rare event that a warning should be suppressed across the entire code base, it should be added to the [exclusion file](https://code.google.com/p/chromium/codesearch#chromium/src/build/android/findbugs_filter/findbugs_exclude.xml) instead. If you modify this file:
+
+ * Include a comment that says what you're suppressing and why.
+ * The existing suppressions should give you an idea of the syntax. See also the FindBugs documentation. Note that the documentation doesn't seem totally accurate (there's probably some version skew between the online docs and the version of FindBugs we're using) so you may have to experiment a little.
+
+# Chromium's [FindBugs](http://findbugs.sourceforge.net) plugin
+
+We have [FindBugs plugin](https://code.google.com/p/chromium/codesearch#chromium/src/tools/android/findbugs_plugin/) to enforce chromium specific Java rules. It currently detects:
+ * Synchronized method
+ * Synchronized this
+
+# [FindBugs](http://findbugs.sourceforge.net) on the Bots
+
+[FindBugs](http://findbugs.sourceforge.net) is configured to run on:
+ * [android\_clang\_dbg\_recipe](http://build.chromium.org/p/tryserver.chromium.linux/builders/android_clang_dbg_recipe) on the commit queue
+ * [Android Clang Builder (dbg)](http://build.chromium.org/p/chromium.linux/builders/Android%20Clang%20Builder%20(dbg)) on the main waterfall \ No newline at end of file