Add GN build for dawn_node

Example:
```
gn gen out/Default --args='dawn_build_node_bindings=true'
autoninja -C out/Default dawn_node
```

Bug: chromium:404208023
Change-Id: I20f745406b83605bf7d0c5a62ea3cf4524cd5198
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/231214
Reviewed-by: James Price <jrprice@google.com>
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
diff --git a/BUILD.gn b/BUILD.gn
index 197d981..1af41fe 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -29,6 +29,8 @@
 import("scripts/dawn_overrides_with_defaults.gni")
 import("scripts/tint_overrides_with_defaults.gni")
 
+import("${dawn_root}/scripts/dawn_features.gni")
+
 if (!is_clang && is_win) {
   # libc++ cannot currently build with MSVC. See https://anglebug.com/376074941
   assert(!use_custom_libcxx, "MSVC build requires use_custom_libcxx=false")
@@ -52,6 +54,12 @@
     "src/dawn/native:webgpu_dawn",
     "src/tint:libs",
   ]
+  if (dawn_build_node_bindings) {
+    assert(
+        !defined(use_libfuzzer) || !use_libfuzzer,
+        "Building dawn node bindings with use_libfuzzer currently not supported")
+    deps += [ "src/dawn/node:dawn_node" ]
+  }
 }
 
 group("tests") {