Fixing build dependency for the MailboxHolder type

MailboxHolder uses and exposes
gpu/ipc/common/mailbox_holder_struct_traits.h so it needs to
be a public dependency (as it already is in

One example of many resulting dependency errors:

ERROR at //out/Default/gen/device/vr/public/mojom/ Can't include this header from here.
The target:
is including a file from the target:

It's usually best to depend directly on the destination target.
In some cases, the destination target is considered a subcomponent
of an intermediate target. In this case, the intermediate target
should depend publicly on the destination to forward the ability
to include headers.

Dependency chain (there may also be others):
  //device/vr/public/mojom:mojom -->
  //gpu/ipc/common:interfaces --[private]-->

Bug: 938893
Change-Id: I598db331d43cff5212d7d739da96e0648552b7a1
Reviewed-by: Daniel Cheng <>
Commit-Queue: Daniel Bratell <>
Cr-Commit-Position: refs/heads/master@{#644424}
diff --git a/gpu/ipc/common/mailbox_holder.typemap b/gpu/ipc/common/mailbox_holder.typemap
index 06d9d72..2b0f5a8 100644
--- a/gpu/ipc/common/mailbox_holder.typemap
+++ b/gpu/ipc/common/mailbox_holder.typemap
@@ -5,11 +5,9 @@
 mojom = "//gpu/ipc/common/mailbox_holder.mojom"
 public_headers = [ "//gpu/command_buffer/common/mailbox_holder.h" ]
 traits_headers = [ "//gpu/ipc/common/mailbox_holder_struct_traits.h" ]
-deps = [
-  "//gpu/ipc/common:struct_traits",
 public_deps = [
+  "//gpu/ipc/common:struct_traits",
 type_mappings = [ "gpu.mojom.MailboxHolder=::gpu::MailboxHolder" ]