Reland: perfetto_cmd: add ability to compress trace packets

Traces are often large but compress well. This adds a mode where
perfetto_cmd compresses packets using zlib.

Revert was 6c6eaf3c40cc0da0e10b4914fecad1437ab2626d.

Change-Id: I9d3b41f24903c545df325c1d3d76d92786e5caef
diff --git a/Android.bp b/Android.bp
index b061677..71646b3 100644
--- a/Android.bp
+++ b/Android.bp
@@ -486,6 +486,7 @@
     "src/tracing/core/trace_stats.cc",
     "src/tracing/core/trace_writer_impl.cc",
     "src/tracing/core/tracing_service_impl.cc",
+    "src/tracing/core/tracing_service_state.cc",
     "src/tracing/core/virtual_destructors.cc",
     "src/tracing/data_source.cc",
     "src/tracing/internal/in_process_tracing_backend.cc",
@@ -610,6 +611,7 @@
     "src/ipc/virtual_destructors.cc",
     "src/perfetto_cmd/config.cc",
     "src/perfetto_cmd/main.cc",
+    "src/perfetto_cmd/packet_writer.cc",
     "src/perfetto_cmd/pbtxt_to_pb.cc",
     "src/perfetto_cmd/perfetto_cmd.cc",
     "src/perfetto_cmd/rate_limiter.cc",
@@ -686,7 +688,10 @@
   cflags: [
     "-DGOOGLE_PROTOBUF_NO_RTTI",
     "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
+    "-DHAVE_HIDDEN",
     "-DPERFETTO_BUILD_WITH_ANDROID",
+    "-DUSE_MMAP",
+    "-DZLIB_CONST",
   ],
   product_variables: {
     pdk: {
@@ -3243,6 +3248,8 @@
     "src/ipc/virtual_destructors.cc",
     "src/perfetto_cmd/config.cc",
     "src/perfetto_cmd/config_unittest.cc",
+    "src/perfetto_cmd/packet_writer.cc",
+    "src/perfetto_cmd/packet_writer_unittest.cc",
     "src/perfetto_cmd/pbtxt_to_pb.cc",
     "src/perfetto_cmd/pbtxt_to_pb_unittest.cc",
     "src/perfetto_cmd/perfetto_cmd.cc",
@@ -3454,7 +3461,10 @@
   cflags: [
     "-DGOOGLE_PROTOBUF_NO_RTTI",
     "-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER",
+    "-DHAVE_HIDDEN",
     "-DPERFETTO_BUILD_WITH_ANDROID",
+    "-DUSE_MMAP",
+    "-DZLIB_CONST",
   ],
   product_variables: {
     pdk: {
@@ -3762,7 +3772,6 @@
   shared_libs: [
     "liblog",
     "libprotobuf-cpp-lite",
-    "libz",
   ],
   static_libs: [
     "perfetto_src_tracing_ipc",