update_engine: Replace libprotobuf with protobuf-lite.
This adds the option to the .proto file to generate the code as
libprotobuf-lite compatible since update_engine nor delta_generator
rely on reflection support from the generated protobuf class.
gyp file was updated to use the libprotobuf-lite flags as
specified by pkg-config.
BUG=chromium:383182,chromium:403588
TEST=cros deployed on link and attempted an update from there.
TEST=ldd update_engine shows libprotobuf-lite.
TEST=Tested delta_generator compatibility with old signed images.
Change-Id: I31dd314736df0c44ddc32824e0a537898f44b4e6
Reviewed-on: https://chromium-review.googlesource.com/212491
Tested-by: Alex Deymo <deymo@chromium.org>
Reviewed-by: Don Garrett <dgarrett@chromium.org>
Reviewed-by: Gaurav Shah <gauravsh@chromium.org>
Commit-Queue: Alex Deymo <deymo@chromium.org>
diff --git a/update_engine.gyp b/update_engine.gyp
index d2d9ca1..490926e 100644
--- a/update_engine.gyp
+++ b/update_engine.gyp
@@ -42,7 +42,7 @@
'proto_in_dir': '.',
'proto_out_dir': 'include/update_engine',
'exported_deps': [
- 'protobuf',
+ 'protobuf-lite',
],
'deps': ['<@(exported_deps)'],
},
diff --git a/update_metadata.proto b/update_metadata.proto
index 6c2b888..1a8fd4b 100644
--- a/update_metadata.proto
+++ b/update_metadata.proto
@@ -46,6 +46,7 @@
// to block size.
package chromeos_update_engine;
+option optimize_for = LITE_RUNTIME;
// Data is packed into blocks on disk, always starting from the beginning
// of the block. If a file's data is too large for one block, it overflows