Linux build fix

Test: compile on linux
Change-Id: I831df72da8bdec17c4d9c87ebdfb333024eb964c
diff --git a/bta/BUILD.gn b/bta/BUILD.gn
index fa85e40..e519b69 100644
--- a/bta/BUILD.gn
+++ b/bta/BUILD.gn
@@ -20,7 +20,6 @@
     "ag/bta_ag_api.cc",
     "ag/bta_ag_at.cc",
     "ag/bta_ag_cfg.cc",
-    "ag/bta_ag_ci.cc",
     "ag/bta_ag_cmd.cc",
     "ag/bta_ag_main.cc",
     "ag/bta_ag_rfc.cc",
@@ -50,6 +49,8 @@
     "gatt/bta_gatts_api.cc",
     "gatt/bta_gatts_main.cc",
     "gatt/bta_gatts_utils.cc",
+    "hearing_aid/hearing_aid.cc",
+    "hearing_aid/hearing_aid_audio_source.cc",
     "hf_client/bta_hf_client_act.cc",
     "hf_client/bta_hf_client_api.cc",
     "hf_client/bta_hf_client_at.cc",
@@ -100,6 +101,7 @@
     "include",
     "sys",
     "//",
+    "//internal_include",
     "//btcore/include",
     "//hci/include",
     "//internal_include",
@@ -108,6 +110,12 @@
     "//udrv/include",
     "//utils/include",
     "//vnd/include",
+    "//btif/include",
+    "//btif/avrcp",
+    "//include/hardware/avrcp",
+    "//profile/avrcp",
+    "//packet/avrcp",
+    "//packet/base",
   ]
 
   deps = [
diff --git a/btif/BUILD.gn b/btif/BUILD.gn
index de50a97..c5f820a 100644
--- a/btif/BUILD.gn
+++ b/btif/BUILD.gn
@@ -22,6 +22,7 @@
     "src/btif_a2dp_sink.cc",
     "src/btif_a2dp_source.cc",
     "src/btif_av.cc",
+    "avrcp/avrcp_service.cc",
 
     #TODO(jpawlowski): heavily depends on Android,
     #   "src/btif_avrcp_audio_track.cc",
@@ -66,7 +67,6 @@
 
   # BTIF callouts
   sources += [
-    "co/bta_ag_co.cc",
     "co/bta_dm_co.cc",
     "co/bta_av_co.cc",
     "co/bta_hh_co.cc",
@@ -88,15 +88,18 @@
     "//hci/include",
     "//stack/a2dp",
     "//stack/btm",
+    "//stack/l2cap",
     "//stack/include",
     "//third_party/tinyxml2",
     "//internal_include",
     "//udrv/include",
     "//utils/include",
     "//vnd/include",
+    "//profile/avrcp",
   ]
 
   deps = [
-    "//third_party/libchrome:base"
+    "//third_party/libchrome:base",
+    "//profile/avrcp:profile_avrcp"
   ]
 }
diff --git a/btif/avrcp/avrcp_service.h b/btif/avrcp/avrcp_service.h
index 16f8dbf..5f8fa2d 100644
--- a/btif/avrcp/avrcp_service.h
+++ b/btif/avrcp/avrcp_service.h
@@ -19,9 +19,9 @@
 #include <map>
 #include <memory>
 
-#include "avrcp.h"
-#include "connection_handler.h"
+#include "hardware/avrcp/avrcp.h"
 #include "osi/include/properties.h"
+#include "profile/avrcp/connection_handler.h"
 #include "raw_address.h"
 
 namespace bluetooth {
diff --git a/btif/src/bluetooth.cc b/btif/src/bluetooth.cc
index 92a4092..94dc108 100644
--- a/btif/src/bluetooth.cc
+++ b/btif/src/bluetooth.cc
@@ -47,10 +47,10 @@
 #include <hardware/bt_sdp.h>
 #include <hardware/bt_sock.h>
 
-#include "avrcp_service.h"
 #include "bt_utils.h"
 #include "bta/include/bta_hearing_aid_api.h"
 #include "bta/include/bta_hf_client_api.h"
+#include "btif/avrcp/avrcp_service.h"
 #include "btif_a2dp.h"
 #include "btif_api.h"
 #include "btif_av.h"
diff --git a/btif/src/btif_hearing_aid.cc b/btif/src/btif_hearing_aid.cc
index 48aab95..1614a73 100644
--- a/btif/src/btif_hearing_aid.cc
+++ b/btif/src/btif_hearing_aid.cc
@@ -54,7 +54,7 @@
       public HearingAidCallbacks {
   ~HearingAidInterfaceImpl() = default;
 
-  void Init(HearingAidCallbacks* callbacks) {
+  void Init(HearingAidCallbacks* callbacks) override {
     DVLOG(2) << __func__;
     this->callbacks = callbacks;
     do_in_bta_thread(
@@ -114,7 +114,7 @@
                      Bind(&btif_storage_remove_hearing_aid, address));
   }
 
-  void Cleanup(void) {
+  void Cleanup(void) override {
     DVLOG(2) << __func__;
     do_in_bta_thread(FROM_HERE, Bind(&HearingAid::CleanUp));
   }
diff --git a/build/secondary/third_party/libchrome/BUILD.gn b/build/secondary/third_party/libchrome/BUILD.gn
index c84b293..9ffdaa7 100644
--- a/build/secondary/third_party/libchrome/BUILD.gn
+++ b/build/secondary/third_party/libchrome/BUILD.gn
@@ -30,7 +30,9 @@
     "base/callback_internal.cc",
     "base/command_line.cc",
     "base/cpu.cc",
+    "base/debug/activity_tracker.cc",
     "base/debug/alias.cc",
+    "base/debug/dump_without_crashing.cc",
     "base/debug/debugger.cc",
     "base/debug/debugger_posix.cc",
     "base/debug/stack_trace.cc",
@@ -38,6 +40,7 @@
     "base/debug/task_annotator.cc",
     "base/environment.cc",
     "base/files/file.cc",
+    "base/files/file_descriptor_watcher_posix.cc",
     "base/files/file_enumerator.cc",
     "base/files/file_enumerator_posix.cc",
     "base/files/file_path.cc",
@@ -101,6 +104,7 @@
     "base/process/launch_posix.cc",
     "base/process/process_handle_linux.cc",
     "base/process/process_handle_posix.cc",
+    "base/process/process_info_linux.cc",
     "base/process/process_iterator.cc",
     "base/process/process_iterator_linux.cc",
     "base/process/process_metrics.cc",
@@ -115,7 +119,8 @@
     "base/run_loop.cc",
     "base/sequence_checker_impl.cc",
     "base/sequenced_task_runner.cc",
-    "base/sha1_portable.cc",
+    "base/sequence_token.cc",
+    "base/sha1.cc",
     "base/strings/pattern.cc",
     "base/strings/safe_sprintf.cc",
     "base/strings/string16.cc",
@@ -128,7 +133,6 @@
     "base/strings/sys_string_conversions_posix.cc",
     "base/strings/utf_string_conversions.cc",
     "base/strings/utf_string_conversion_utils.cc",
-    "base/synchronization/cancellation_flag.cc",
     "base/synchronization/condition_variable_posix.cc",
     "base/synchronization/lock.cc",
     "base/synchronization/lock_impl_posix.cc",
@@ -160,7 +164,6 @@
     "base/threading/thread_checker_impl.cc",
     "base/threading/thread_collision_warner.cc",
     "base/threading/thread_id_name_manager.cc",
-    "base/threading/thread_local_posix.cc",
     "base/threading/thread_local_storage.cc",
     "base/threading/thread_local_storage_posix.cc",
     "base/threading/thread_restrictions.cc",
@@ -175,14 +178,20 @@
     "base/time/tick_clock.cc",
     "base/time/time.cc",
     "base/time/time_posix.cc",
+    "base/trace_event/category_registry.cc",
+    "base/trace_event/event_name_filter.cc",
     "base/trace_event/heap_profiler_allocation_context.cc",
     "base/trace_event/heap_profiler_allocation_context_tracker.cc",
+    "base/trace_event/heap_profiler_event_filter.cc",
     "base/trace_event/heap_profiler_stack_frame_deduplicator.cc",
     "base/trace_event/heap_profiler_type_name_deduplicator.cc",
     "base/trace_event/malloc_dump_provider.cc",
     "base/trace_event/memory_allocator_dump.cc",
     "base/trace_event/memory_allocator_dump_guid.cc",
     "base/trace_event/memory_dump_manager.cc",
+    "base/trace_event/memory_dump_request_args.cc",
+    "base/trace_event/memory_dump_provider_info.cc",
+    "base/trace_event/memory_dump_scheduler.cc",
     "base/trace_event/memory_dump_session_state.cc",
     "base/trace_event/memory_infra_background_whitelist.cc",
     "base/trace_event/process_memory_dump.cc",
@@ -190,13 +199,14 @@
     "base/trace_event/process_memory_totals.cc",
     "base/trace_event/trace_buffer.cc",
     "base/trace_event/trace_config.cc",
+    "base/trace_event/trace_config_category_filter.cc",
     "base/trace_event/trace_event_argument.cc",
+    "base/trace_event/trace_event_filter.cc",
     "base/trace_event/trace_event_impl.cc",
     "base/trace_event/trace_event_memory_overhead.cc",
     "base/trace_event/trace_event_synthetic_delay.cc",
     "base/trace_event/trace_log.cc",
     "base/trace_event/trace_log_constants.cc",
-    "base/trace_event/trace_sampling_thread.cc",
     "base/tracked_objects.cc",
     "base/tracking_info.cc",
     "base/values.cc",
@@ -205,7 +215,6 @@
     "dbus/bus.cc",
     "dbus/dbus_statistics.cc",
     "dbus/exported_object.cc",
-    "dbus/file_descriptor.cc",
     "dbus/message.cc",
     "dbus/object_manager.cc",
     "dbus/object_path.cc",
diff --git a/embdrv/g722/BUILD.gn b/embdrv/g722/BUILD.gn
new file mode 100644
index 0000000..083e80b
--- /dev/null
+++ b/embdrv/g722/BUILD.gn
@@ -0,0 +1,22 @@
+#
+#  Copyright 2018 Google, Inc.
+#
+#  Licensed under the Apache License, Version 2.0 (the "License");
+#  you may not use this file except in compliance with the License.
+#  You may obtain a copy of the License at:
+#
+#  http://www.apache.org/licenses/LICENSE-2.0
+#
+#  Unless required by applicable law or agreed to in writing, software
+#  distributed under the License is distributed on an "AS IS" BASIS,
+#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#  See the License for the specific language governing permissions and
+#  limitations under the License.
+#
+
+static_library("g722") {
+  sources = [
+    "g722_decode.cc",
+    "g722_encode.cc",
+  ]
+}
diff --git a/include/hardware/avrcp/avrcp.h b/include/hardware/avrcp/avrcp.h
index 8adba47..dba43fc 100644
--- a/include/hardware/avrcp/avrcp.h
+++ b/include/hardware/avrcp/avrcp.h
@@ -19,7 +19,7 @@
 #include <set>
 #include <string>
 
-#include <base/bind.h>
+#include <base/callback_forward.h>
 
 #include "avrcp_common.h"
 #include "raw_address.h"
diff --git a/main/BUILD.gn b/main/BUILD.gn
index 2a07d7b..ccbc49f 100644
--- a/main/BUILD.gn
+++ b/main/BUILD.gn
@@ -73,6 +73,7 @@
     "//embdrv/sbc",
     "//hci",
     "//osi",
+    "//packet",
     "//stack",
     "//third_party/libchrome:base",
     "//third_party/tinyxml2",
diff --git a/osi/BUILD.gn b/osi/BUILD.gn
index 93b74cc..d45d703 100644
--- a/osi/BUILD.gn
+++ b/osi/BUILD.gn
@@ -47,6 +47,7 @@
 
   include_dirs = [
     "//",
+    "//internal_include",
     "//utils/include",
     "//stack/include",
   ]
diff --git a/osi/src/metrics_linux.cc b/osi/src/metrics_linux.cc
index 162f4ca..76c1fde 100644
--- a/osi/src/metrics_linux.cc
+++ b/osi/src/metrics_linux.cc
@@ -176,16 +176,15 @@
   // TODO(siyuanh): Implement for linux
 }
 
-void BluetoothMetricsLogger::WriteString(std::string* serialized, bool clear) {
+void BluetoothMetricsLogger::WriteString(std::string* serialized) {
   // TODO(siyuanh): Implement for linux
 }
 
-void BluetoothMetricsLogger::WriteBase64String(std::string* serialized,
-                                               bool clear) {
+void BluetoothMetricsLogger::WriteBase64String(std::string* serialized) {
   // TODO(siyuanh): Implement for linux
 }
 
-void BluetoothMetricsLogger::WriteBase64(int fd, bool clear) {
+void BluetoothMetricsLogger::WriteBase64(int fd) {
   // TODO(siyuanh): Implement for linux
 }
 
diff --git a/packet/Android.bp b/packet/Android.bp
index 8338c2d..200ebab 100644
--- a/packet/Android.bp
+++ b/packet/Android.bp
@@ -17,6 +17,10 @@
     defaults: ["fluoride_defaults"],
     host_supported: true,
     local_include_dirs: ["tests"],
+    include_dirs: [
+        "system/bt/",
+        "system/bt/include",
+    ],
     srcs: [
         "tests/avrcp/avrcp_browse_packet_test.cc",
         "tests/avrcp/avrcp_packet_test.cc",
diff --git a/packet/BUILD.gn b/packet/BUILD.gn
new file mode 100644
index 0000000..37d6ca4
--- /dev/null
+++ b/packet/BUILD.gn
@@ -0,0 +1,52 @@
+#
+#  Copyright 2018 Android Open Source Project
+#
+#  Licensed under the Apache License, Version 2.0 (the "License");
+#  you may not use this file except in compliance with the License.
+#  You may obtain a copy of the License at:
+#
+#  http://www.apache.org/licenses/LICENSE-2.0
+#
+#  Unless required by applicable law or agreed to in writing, software
+#  distributed under the License is distributed on an "AS IS" BASIS,
+#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#  See the License for the specific language governing permissions and
+#  limitations under the License.
+#
+
+static_library("packet") {
+  sources = [
+    "avrcp/get_folder_items.cc",
+    "avrcp/register_notification_packet.cc",
+    "avrcp/change_path.cc",
+    "avrcp/get_total_number_of_items.cc",
+    "avrcp/capabilities_packet.cc",
+    "avrcp/pass_through_packet.cc",
+    "avrcp/set_browsed_player.cc",
+    "avrcp/avrcp_reject_packet.cc",
+    "avrcp/set_absolute_volume.cc",
+    "avrcp/avrcp_packet.cc",
+    "avrcp/get_element_attributes_packet.cc",
+    "avrcp/get_play_status_packet.cc",
+    "avrcp/general_reject_packet.cc",
+    "avrcp/avrcp_browse_packet.cc",
+    "avrcp/get_item_attributes.cc",
+    "avrcp/play_item.cc",
+    "avrcp/vendor_packet.cc",
+    "avrcp/set_addressed_player.cc",
+    "base/iterator.cc",
+    "base/packet.cc",
+    "base/packet_builder.cc",
+ ]
+
+  include_dirs = [
+    "//",
+    "//internal_include",
+    "//stack/include",
+    "//profile/avrcp",
+  ]
+
+  deps = [
+    "//third_party/libchrome:base"
+  ]
+}
diff --git a/packet/avrcp/Android.bp b/packet/avrcp/Android.bp
index 80e93e8..b54288f 100644
--- a/packet/avrcp/Android.bp
+++ b/packet/avrcp/Android.bp
@@ -5,6 +5,10 @@
     export_header_lib_headers: ["avrcp_headers"],
     export_include_dirs: ["."],
     host_supported: true,
+    include_dirs: [
+        "system/bt/",
+        "system/bt/include",
+    ],
     srcs: [
         "avrcp_browse_packet.cc",
         "avrcp_packet.cc",
diff --git a/packet/avrcp/avrcp_browse_packet.h b/packet/avrcp/avrcp_browse_packet.h
index d62f0e2..038f576 100644
--- a/packet/avrcp/avrcp_browse_packet.h
+++ b/packet/avrcp/avrcp_browse_packet.h
@@ -20,11 +20,11 @@
 #include <base/macros.h>
 #include <iostream>
 
-#include "avrcp_common.h"
-#include "avrcp_logging_helper.h"
-#include "iterator.h"
-#include "packet.h"
-#include "packet_builder.h"
+#include "hardware/avrcp/avrcp_common.h"
+#include "hardware/avrcp/avrcp_logging_helper.h"
+#include "packet/base/iterator.h"
+#include "packet/base/packet.h"
+#include "packet/base/packet_builder.h"
 
 namespace bluetooth {
 namespace avrcp {
@@ -75,7 +75,7 @@
   using ::bluetooth::Packet::Packet;
 
  private:
-  virtual std::pair<size_t, size_t> GetPayloadIndecies() const;
+  virtual std::pair<size_t, size_t> GetPayloadIndecies() const override;
   DISALLOW_COPY_AND_ASSIGN(BrowsePacket);
 };
 
diff --git a/packet/avrcp/avrcp_packet.h b/packet/avrcp/avrcp_packet.h
index 1e56186..fc28f2f 100644
--- a/packet/avrcp/avrcp_packet.h
+++ b/packet/avrcp/avrcp_packet.h
@@ -20,11 +20,11 @@
 #include <base/macros.h>
 #include <iostream>
 
-#include "avrcp_common.h"
-#include "avrcp_logging_helper.h"
-#include "iterator.h"
-#include "packet.h"
-#include "packet_builder.h"
+#include "hardware/avrcp/avrcp_common.h"
+#include "hardware/avrcp/avrcp_logging_helper.h"
+#include "packet/base/iterator.h"
+#include "packet/base/packet.h"
+#include "packet/base/packet_builder.h"
 
 namespace bluetooth {
 namespace avrcp {
@@ -87,7 +87,7 @@
   Opcode GetOpcode() const;
 
   // Overloaded Functions
-  virtual bool IsValid() const;
+  virtual bool IsValid() const override;
   virtual std::string ToString() const override;
 
  protected:
@@ -103,7 +103,7 @@
   }
 
  private:
-  virtual std::pair<size_t, size_t> GetPayloadIndecies() const;
+  virtual std::pair<size_t, size_t> GetPayloadIndecies() const override;
   DISALLOW_COPY_AND_ASSIGN(Packet);
 };
 
diff --git a/packet/avrcp/get_element_attributes_packet.h b/packet/avrcp/get_element_attributes_packet.h
index 03fa8d1..e60844c 100644
--- a/packet/avrcp/get_element_attributes_packet.h
+++ b/packet/avrcp/get_element_attributes_packet.h
@@ -51,7 +51,7 @@
   std::vector<Attribute> GetAttributesRequested() const;
 
   // Overloaded Functions
-  virtual bool IsValid() const;
+  virtual bool IsValid() const override;
   virtual std::string ToString() const override;
 
  protected:
diff --git a/profile/avrcp/BUILD.gn b/profile/avrcp/BUILD.gn
new file mode 100644
index 0000000..9144bb8
--- /dev/null
+++ b/profile/avrcp/BUILD.gn
@@ -0,0 +1,33 @@
+#
+#  Copyright 2018 Android Open Source Project
+#
+#  Licensed under the Apache License, Version 2.0 (the "License");
+#  you may not use this file except in compliance with the License.
+#  You may obtain a copy of the License at:
+#
+#  http://www.apache.org/licenses/LICENSE-2.0
+#
+#  Unless required by applicable law or agreed to in writing, software
+#  distributed under the License is distributed on an "AS IS" BASIS,
+#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#  See the License for the specific language governing permissions and
+#  limitations under the License.
+#
+
+static_library("profile_avrcp") {
+  sources = [
+    "connection_handler.cc",
+    "device.cc",
+  ]
+
+  include_dirs = [
+    "//",
+    "//internal_include",
+    "//stack/include",
+    "//profile/avrcp",
+  ]
+
+  deps = [
+    "//third_party/libchrome:base"
+  ]
+}
diff --git a/profile/avrcp/avrcp_message_converter.h b/profile/avrcp/avrcp_message_converter.h
index 389a497..495009c 100644
--- a/profile/avrcp/avrcp_message_converter.h
+++ b/profile/avrcp/avrcp_message_converter.h
@@ -19,7 +19,7 @@
 #include <iostream>
 #include <vector>
 
-#include "avrcp_packet.h"
+#include "packet/avrcp/avrcp_packet.h"
 
 // These classes are temporary placeholders to easily switch between BT_HDR and
 // packets.
diff --git a/profile/avrcp/connection_handler.cc b/profile/avrcp/connection_handler.cc
index 9ba8384..5fc3e7c 100644
--- a/profile/avrcp/connection_handler.cc
+++ b/profile/avrcp/connection_handler.cc
@@ -22,9 +22,9 @@
 
 #include "avrc_defs.h"
 #include "avrcp_message_converter.h"
-#include "avrcp_packet.h"
 #include "bt_types.h"
 #include "btu.h"
+#include "packet/avrcp/avrcp_packet.h"
 // TODO (apanicke): Remove dependency on this header once we cleanup feature
 // handling.
 #include "bta/include/bta_av_api.h"
diff --git a/profile/avrcp/connection_handler.h b/profile/avrcp/connection_handler.h
index 63bc8a0..e22cb6a 100644
--- a/profile/avrcp/connection_handler.h
+++ b/profile/avrcp/connection_handler.h
@@ -22,9 +22,9 @@
 #include <memory>
 
 #include "avrcp_internal.h"
-#include "avrcp_packet.h"
-#include "device.h"
-#include "packet.h"
+#include "packet/avrcp/avrcp_packet.h"
+#include "packet/base/packet.h"
+#include "profile/avrcp/device.h"
 #include "raw_address.h"
 
 namespace bluetooth {
diff --git a/profile/avrcp/device.cc b/profile/avrcp/device.cc
index 52efbd6..2b2172d 100644
--- a/profile/avrcp/device.cc
+++ b/profile/avrcp/device.cc
@@ -19,6 +19,13 @@
 #include "connection_handler.h"
 #include "device.h"
 
+#include "packet/avrcp/avrcp_reject_packet.h"
+#include "packet/avrcp/general_reject_packet.h"
+#include "packet/avrcp/get_play_status_packet.h"
+#include "packet/avrcp/pass_through_packet.h"
+#include "packet/avrcp/set_absolute_volume.h"
+#include "packet/avrcp/set_addressed_player.h"
+
 namespace bluetooth {
 namespace avrcp {
 
diff --git a/profile/avrcp/device.h b/profile/avrcp/device.h
index 7fcb3a5..6280905 100644
--- a/profile/avrcp/device.h
+++ b/profile/avrcp/device.h
@@ -23,10 +23,21 @@
 #include <base/bind.h>
 #include <base/cancelable_callback.h>
 
-#include "avrcp.h"
 #include "avrcp_internal.h"
-#include "avrcp_packet.h"
-#include "media_id_map.h"
+#include "hardware/avrcp/avrcp.h"
+#include "packet/avrcp/avrcp_browse_packet.h"
+#include "packet/avrcp/avrcp_packet.h"
+#include "packet/avrcp/capabilities_packet.h"
+#include "packet/avrcp/change_path.h"
+#include "packet/avrcp/get_element_attributes_packet.h"
+#include "packet/avrcp/get_folder_items.h"
+#include "packet/avrcp/get_item_attributes.h"
+#include "packet/avrcp/get_total_number_of_items.h"
+#include "packet/avrcp/play_item.h"
+#include "packet/avrcp/register_notification_packet.h"
+#include "packet/avrcp/set_browsed_player.h"
+#include "packet/avrcp/vendor_packet.h"
+#include "profile/avrcp/media_id_map.h"
 #include "raw_address.h"
 
 namespace bluetooth {
diff --git a/service/BUILD.gn b/service/BUILD.gn
index 2fb94b5..42791f1 100644
--- a/service/BUILD.gn
+++ b/service/BUILD.gn
@@ -57,6 +57,7 @@
 
   deps = [
     "//types",
+    "//osi",
     "//third_party/libchrome:base",
   ]
 }
diff --git a/stack/BUILD.gn b/stack/BUILD.gn
index 6f3c55a..7920f70 100644
--- a/stack/BUILD.gn
+++ b/stack/BUILD.gn
@@ -162,6 +162,7 @@
     "sdp",
     "smp",
     "srvc",
+    "//internal_include",
     "//btcore/include",
     "//vnd/include",
     "//vnd/ble",
@@ -226,6 +227,7 @@
     "//btcore",
     "//device",
     "//embdrv/sbc",
+    "//embdrv/g722",
     "//hci",
     "//types",
     "//main:bluetooth",
diff --git a/stack/btm/btm_ble_multi_adv.cc b/stack/btm/btm_ble_multi_adv.cc
index 60490fb..f34e9de 100644
--- a/stack/btm/btm_ble_multi_adv.cc
+++ b/stack/btm/btm_ble_multi_adv.cc
@@ -931,7 +931,7 @@
     }
   }
 
-  void Suspend() {
+  void Suspend() override {
     std::vector<SetEnableData> sets;
 
     for (AdvertisingInstance& inst : adv_inst) {
diff --git a/udrv/BUILD.gn b/udrv/BUILD.gn
index 8a0fc92..3712bd4 100644
--- a/udrv/BUILD.gn
+++ b/udrv/BUILD.gn
@@ -26,5 +26,6 @@
     "//internal_include",
     "//stack/include",
     "//utils/include",
+    "//third_party/libchrome",
   ]
 }
diff --git a/utils/BUILD.gn b/utils/BUILD.gn
index c6e7dab..9e5b481 100644
--- a/utils/BUILD.gn
+++ b/utils/BUILD.gn
@@ -23,5 +23,6 @@
     "include",
     "//",
     "//stack/include",
+    "//third_party/libchrome",
   ]
 }