Enable using lite protos for Android.

Lite is the new preferred proto runtime on Android, for two reasons:
- It lends itself to better proguard optimizing
- There is only one flavor, so there is no risk in including
  proto libraries with overlapping definitions that use different
  flavors

This CL adds a generate_nano argument to the proto_java_library build
rule. This argument is default false, so new proto libraries will use
lite by default. However, existing libraries will be migrated in a
follow-up CL, so this change sets generate_nano to true for those
libraries.

It also adds the android_library rule that contains the runtime
library for lite protos.

For an example conversion CL for a proto target, see:
https://chromium-review.googlesource.com/c/chromium/src/+/757103

Bug: 782237
Change-Id: I8100e70c38d41add9068e493ca2a5822f7025213
Reviewed-on: https://chromium-review.googlesource.com/757134
Commit-Queue: agrieve <agrieve@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Tommy Nyquist <nyquist@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Reviewed-by: Doug Steedman <dougsteed@chromium.org>
Cr-Commit-Position: refs/heads/master@{#517268}

CrOS-Libchrome-Original-Commit: cc12c7a9522169c079a0c0c6ad446088f6cbea1d
1 file changed
tree: ba2c7b92d0ed1f8b96510902e155a731c9e7505d
  1. base/
  2. build/
  3. components/
  4. dbus/
  5. device/
  6. ipc/
  7. mojo/
  8. testing/
  9. third_party/
  10. ui/