[fidl][overnet] Allow extra C++ dependencies

Allows additional C++ dependencies to be listed for FIDL libraries, in
turn enabling additional code generation options.

Test: utilized on an upcoming garnet CL

Change-Id: I13a6063411ebfbb76d6ce3d02c1f98f5f5e92007
diff --git a/cpp/fidl_cpp.gni b/cpp/fidl_cpp.gni
index 839feee..67acf45 100644
--- a/cpp/fidl_cpp.gni
+++ b/cpp/fidl_cpp.gni
@@ -128,6 +128,10 @@
     if (defined(invoker.public_deps)) {
       public_deps += invoker.public_deps
     }
+
+    if (defined(invoker.cpp_public_deps)) {
+      public_deps += invoker.cpp_public_deps
+    }
   }
 
   if (defined(invoker.sdk_category) && invoker.sdk_category != "excluded") {
diff --git a/fidl/fidl.gni b/fidl/fidl.gni
index 0f917e1..0c0e717 100644
--- a/fidl/fidl.gni
+++ b/fidl/fidl.gni
@@ -41,6 +41,9 @@
   if (defined(invoker.cpp_legacy_callbacks)) {
     not_needed(invoker, [ "cpp_legacy_callbacks" ])
   }
+  if (defined(invoker.cpp_public_deps)) {
+    not_needed(invoker, [ "cpp_public_deps"])
+  }
 
   if (current_toolchain == fidl_toolchain) {
     import("//build/fidl/fidl_library.gni")