Add gn files for Vulkan Swiftshader

gn files are tested on linux only.

Test:
* Built GL Swiftshader using ninja on Linux, Mac, and Windows.
* Built and ran viz_unittests on Linux, Mac, and Windows.
* Built Chromium ToT on Linux, Android, Mac.
* Built Chromium + Vulkan Swiftshader on Linux by applying
  crrev.com/c/1615710 and ran viz_unittests with --enable-vulkan

Bug: chromium:963988
Change-Id: Ic1529b8be0b508786863e03722acf610045a98ca
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/31529
Tested-by: Saman Sami <samans@chromium.org>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9585f9c..2b4c0a1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1824,7 +1824,7 @@
         INCLUDE_DIRECTORIES "${VULKAN_INCLUDE_DIR}"
         FOLDER "Vulkan"
         COMPILE_OPTIONS "${SWIFTSHADER_COMPILE_OPTIONS}"
-        COMPILE_DEFINITIONS "NO_SANITIZE_FUNCTION=;$<$<CONFIG:Debug>:DEBUGGER_WAIT_DIALOG>"
+        COMPILE_DEFINITIONS "VK_EXPORT=;NO_SANITIZE_FUNCTION=;$<$<CONFIG:Debug>:DEBUGGER_WAIT_DIALOG>"
         PREFIX ""
     )
     set_shared_library_export_map(libvk_swiftshader ${SOURCE_DIR}/Vulkan)