From 3f51ab5c822b20c819e9b9c4b946d950d68feec5 Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Fri, 26 Oct 2018 23:28:02 -0700 Subject: [PATCH] Convert statsd_test and statsd_benchmark to proto lite libplatformprotos for the device is compiled using proto lite, and statsd_test and statsd_benchmark have protos that reference the libplatformprotos. With protobuf 3.9.1 compiling a full proto against a lite proto doesn't work. Convert them to lite. Requires adding the protobuf internal protos to the sources, libprotobuf-cpp-lite does not contain the compiled version of field_options.proto. Bug: 117607748 Test: m checkbuild Exempt-From-Owner-Approval: approved at https://android-review.googlesource.com/q/I0b101555ff604df17b2e3e06f3b3ce25adb1c9fb Change-Id: I0b101555ff604df17b2e3e06f3b3ce25adb1c9fb --- cmds/statsd/Android.bp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/cmds/statsd/Android.bp b/cmds/statsd/Android.bp index 19fa64073183c..7244e747d0b13 100644 --- a/cmds/statsd/Android.bp +++ b/cmds/statsd/Android.bp @@ -204,6 +204,10 @@ cc_test { ], srcs: [ + // atom_field_options.proto needs field_options.proto, but that is + // not included in libprotobuf-cpp-lite, so compile it here. + ":libprotobuf-internal-protos", + "src/atom_field_options.proto", "src/atoms.proto", "src/stats_log.proto", @@ -262,11 +266,11 @@ cc_test { ], proto: { - type: "full", + type: "lite", include_dirs: ["external/protobuf/src"], }, - shared_libs: ["libprotobuf-cpp-full"], + shared_libs: ["libprotobuf-cpp-lite"], } @@ -279,6 +283,10 @@ cc_benchmark { defaults: ["statsd_defaults"], srcs: [ + // atom_field_options.proto needs field_options.proto, but that is + // not included in libprotobuf-cpp-lite, so compile it here. + ":libprotobuf-internal-protos", + "src/atom_field_options.proto", "src/atoms.proto", "src/stats_log.proto", @@ -293,7 +301,7 @@ cc_benchmark { ], proto: { - type: "full", + type: "lite", include_dirs: ["external/protobuf/src"], }, @@ -315,7 +323,7 @@ cc_benchmark { shared_libs: [ "libgtest_prod", "libstatslog", - "libprotobuf-cpp-full", + "libprotobuf-cpp-lite", ], }