[vulkan] Implement external semaphore support for Fuchsia

This corresponds to the VK_FUCHSIA_external_semaphore extension
which uses a Zircon event object to communicate across processes.

Bug: b/140421726
Change-Id: I47b235d4ff7d787491738422bda6fdf853803ab7
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/35969
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Tested-by: David Turner <digit@google.com>
diff --git a/src/Vulkan/BUILD.gn b/src/Vulkan/BUILD.gn
index 067e32e..c42388d 100644
--- a/src/Vulkan/BUILD.gn
+++ b/src/Vulkan/BUILD.gn
@@ -92,6 +92,10 @@
     sources += [
       "VkSemaphoreExternalLinux.hpp",
     ]
+  } else if (is_fuchsia) {
+    sources += [
+      "VkSemaphoreExternalFuchsia.hpp",
+    ]
   } else {
     sources += [
       "VkSemaphoreExternalNone.hpp",