Rerun vulkan codegen after move

... to update auto-generated path comments.

Bug: b/271464937
Test: ./scripts/generate-vulkan-sources.sh
Change-Id: If668cdd17ea819d84ec9cd703079b4042eda4d87
diff --git a/codegen/scripts/generate-vulkan-sources.sh b/codegen/scripts/generate-vulkan-sources.sh
deleted file mode 100755
index 3f3da70..0000000
--- a/codegen/scripts/generate-vulkan-sources.sh
+++ /dev/null
@@ -1,119 +0,0 @@
-#!/bin/bash
-
-# Copyright 2022 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-PROJECT_ROOT=$(pwd)
-
-WHICH=which
-if [[ "$OSTYPE" == "msys" ]]; then
-    WHICH=where
-fi
-
-if [ -z "$1" ] || [ -z "$2" ];
-then
-    AOSP_DIR=$(pwd)/../..
-    export GOLDFISH_OPENGL_DIR=$AOSP_DIR/device/generic/goldfish-opengl
-    export VULKAN_CEREAL_DIR=$AOSP_DIR/device/generic/vulkan-cereal
-    export VULKAN_REGISTRY_DIR=$AOSP_DIR/external/gfxstream-protocols/codegen/vulkan
-else
-    export GOLDFISH_OPENGL_DIR=$1
-    export VULKAN_CEREAL_DIR=$2
-    export VULKAN_REGISTRY_DIR=codegen/vulkan
-fi
-
-# Detect clang-format
-if ! $WHICH clang-format > /dev/null; then
-    echo "Failed to find clang-format." 1>&2
-    exit 1
-fi
-
-# Generate Vulkan headers
-VULKAN_HEADERS_ROOT=$PROJECT_ROOT/common/vulkan
-rm -rf $VULKAN_HEADERS_ROOT && mkdir -p $VULKAN_HEADERS_ROOT
-if [ $? -ne 0 ]; then
-    echo "Failed to clear the old Vulkan headers." 1>&2
-    exit 1
-fi
-
-cd $VULKAN_REGISTRY_DIR/xml && make GENOPTS="-removeExtensions VK_GOOGLE_gfxstream" GENERATED=$VULKAN_HEADERS_ROOT
-if [ $? -ne 0 ]; then
-    echo "Failed to generate Vulkan headers." 1>&2
-    exit 1
-fi
-
-cd $PROJECT_ROOT
-
-export VK_CEREAL_GUEST_ENCODER_DIR=$GOLDFISH_OPENGL_DIR/system/vulkan_enc
-export VK_CEREAL_GUEST_HAL_DIR=$GOLDFISH_OPENGL_DIR/system/vulkan
-export VK_CEREAL_HOST_DECODER_DIR=$VULKAN_CEREAL_DIR/host/vulkan
-export VK_CEREAL_HOST_INCLUDE_DIR=$VULKAN_CEREAL_DIR/host
-export VK_CEREAL_HOST_SCRIPTS_DIR=$VULKAN_CEREAL_DIR/scripts
-export VK_CEREAL_BASELIB_PREFIX=aemu/base
-export VK_CEREAL_BASELIB_LINKNAME=aemu-base.headers
-export VK_CEREAL_VK_HEADER_TARGET=gfxstream_vulkan_headers
-export VK_CEREAL_UTILS_LINKNAME=gfxstream_utils.headers
-export VK_CEREAL_UTILS_PREFIX=utils
-
-VK_CEREAL_OUTPUT_DIR=$VK_CEREAL_HOST_DECODER_DIR/cereal
-if [ -d "$VK_CEREAL_GUEST_DIR" ]; then
-    mkdir -p $VK_CEREAL_GUEST_ENCODER_DIR
-    mkdir -p $VK_CEREAL_GUEST_HAL_DIR
-fi
-if [ -d "$VK_CEREAL_HOST_DIR" ]; then
-    mkdir -p $VK_CEREAL_HOST_DECODER_DIR
-    mkdir -p $VK_CEREAL_OUTPUT_DIR
-fi
-
-VULKAN_REGISTRY_XML_DIR=$VULKAN_REGISTRY_DIR/xml
-VULKAN_REGISTRY_SCRIPTS_DIR=$VULKAN_REGISTRY_DIR/scripts
-
-python3 $VULKAN_REGISTRY_SCRIPTS_DIR/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml cereal -o $VK_CEREAL_OUTPUT_DIR
-
-
-# Generate VK_ANDROID_native_buffer specific Vulkan definitions.
-if [ -d $VK_CEREAL_HOST_DECODER_DIR ]; then
-    OUT_DIR=$VK_CEREAL_HOST_DECODER_DIR
-    OUT_FILE_BASENAME="vk_android_native_buffer.h"
-
-    python3 registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml -o $OUT_DIR \
-        $OUT_FILE_BASENAME
-
-    if [ $? -ne 0 ]; then
-        echo "Failed to generate vk_android_native_buffer.h" 1>&2
-        exit 1
-    fi
-    if ! clang-format -i $OUT_DIR/$OUT_FILE_BASENAME; then
-        echo "Failed to reformat vk_android_native_buffer.h" 1>&2
-        exit 1
-    fi
-fi
-
-# Generate gfxstream specific Vulkan definitions.
-for OUT_DIR in $VK_CEREAL_HOST_DECODER_DIR $VK_CEREAL_GUEST_ENCODER_DIR; do
-    if [ -d "$OUT_DIR" ]; then
-        OUT_FILE_BASENAME=vulkan_gfxstream.h
-        python3 registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml -o $OUT_DIR \
-            $OUT_FILE_BASENAME
-
-        if [ $? -ne 0 ]; then
-            echo "Failed to generate gfxstream specific vulkan headers." 1>&2
-            exit 1
-        fi
-        if ! clang-format -i $OUT_DIR/$OUT_FILE_BASENAME; then
-            echo "Failed to reformat gfxstream specific vulkan headers." 1>&2
-            exit 1
-        fi
-    fi
-done
diff --git a/host/vulkan/VkDecoder.cpp b/host/vulkan/VkDecoder.cpp
index b91e021..04e03e8 100644
--- a/host/vulkan/VkDecoder.cpp
+++ b/host/vulkan/VkDecoder.cpp
@@ -15,8 +15,8 @@
 
 // Autogenerated module VkDecoder
 //
-// (impl) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml cereal
-// -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (impl) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal -o
+// host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/VkDecoder.h b/host/vulkan/VkDecoder.h
index e8e3381..e1e353d 100644
--- a/host/vulkan/VkDecoder.h
+++ b/host/vulkan/VkDecoder.h
@@ -15,8 +15,8 @@
 
 // Autogenerated module VkDecoder
 //
-// (header) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml
-// cereal -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (header) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal
+// -o host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/VkDecoderSnapshot.cpp b/host/vulkan/VkDecoderSnapshot.cpp
index bbc32ca..d755ab2 100644
--- a/host/vulkan/VkDecoderSnapshot.cpp
+++ b/host/vulkan/VkDecoderSnapshot.cpp
@@ -15,8 +15,8 @@
 
 // Autogenerated module VkDecoderSnapshot
 //
-// (impl) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml cereal
-// -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (impl) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal -o
+// host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/VkDecoderSnapshot.h b/host/vulkan/VkDecoderSnapshot.h
index ef1eb06..7aadf71 100644
--- a/host/vulkan/VkDecoderSnapshot.h
+++ b/host/vulkan/VkDecoderSnapshot.h
@@ -15,8 +15,8 @@
 
 // Autogenerated module VkDecoderSnapshot
 //
-// (header) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml
-// cereal -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (header) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal
+// -o host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/VkSubDecoder.cpp b/host/vulkan/VkSubDecoder.cpp
index 672ab6d..5f52d0c 100644
--- a/host/vulkan/VkSubDecoder.cpp
+++ b/host/vulkan/VkSubDecoder.cpp
@@ -15,8 +15,8 @@
 
 // Autogenerated module VkSubDecoder
 //
-// (impl) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml cereal
-// -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (impl) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal -o
+// host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/CMakeLists.txt b/host/vulkan/cereal/CMakeLists.txt
index 318fac7..a30d408 100644
--- a/host/vulkan/cereal/CMakeLists.txt
+++ b/host/vulkan/cereal/CMakeLists.txt
@@ -1,6 +1,6 @@
 
 # Autogenerated makefile
-# registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml cereal -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+# codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal -o host/vulkan/cereal
 # Please do not modify directly;
 # re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
 # or directly from Python by defining:
diff --git a/host/vulkan/cereal/common/goldfish_vk_deepcopy.cpp b/host/vulkan/cereal/common/goldfish_vk_deepcopy.cpp
index a6ea890..0ca2b21 100644
--- a/host/vulkan/cereal/common/goldfish_vk_deepcopy.cpp
+++ b/host/vulkan/cereal/common/goldfish_vk_deepcopy.cpp
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_deepcopy
 //
-// (impl) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml cereal
-// -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (impl) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal -o
+// host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_deepcopy.h b/host/vulkan/cereal/common/goldfish_vk_deepcopy.h
index 10b1a9d..609fdb0 100644
--- a/host/vulkan/cereal/common/goldfish_vk_deepcopy.h
+++ b/host/vulkan/cereal/common/goldfish_vk_deepcopy.h
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_deepcopy
 //
-// (header) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml
-// cereal -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (header) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal
+// -o host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_dispatch.cpp b/host/vulkan/cereal/common/goldfish_vk_dispatch.cpp
index dcb91e2..cd9a27d 100644
--- a/host/vulkan/cereal/common/goldfish_vk_dispatch.cpp
+++ b/host/vulkan/cereal/common/goldfish_vk_dispatch.cpp
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_dispatch
 //
-// (impl) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml cereal
-// -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (impl) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal -o
+// host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_dispatch.h b/host/vulkan/cereal/common/goldfish_vk_dispatch.h
index 8d5cefd..40223db 100644
--- a/host/vulkan/cereal/common/goldfish_vk_dispatch.h
+++ b/host/vulkan/cereal/common/goldfish_vk_dispatch.h
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_dispatch
 //
-// (header) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml
-// cereal -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (header) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal
+// -o host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_extension_structs.cpp b/host/vulkan/cereal/common/goldfish_vk_extension_structs.cpp
index 252dff2..296e881 100644
--- a/host/vulkan/cereal/common/goldfish_vk_extension_structs.cpp
+++ b/host/vulkan/cereal/common/goldfish_vk_extension_structs.cpp
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_extension_structs
 //
-// (impl) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml cereal
-// -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (impl) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal -o
+// host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_extension_structs.h b/host/vulkan/cereal/common/goldfish_vk_extension_structs.h
index 354397e..f900c8d 100644
--- a/host/vulkan/cereal/common/goldfish_vk_extension_structs.h
+++ b/host/vulkan/cereal/common/goldfish_vk_extension_structs.h
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_extension_structs
 //
-// (header) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml
-// cereal -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (header) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal
+// -o host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_handlemap.cpp b/host/vulkan/cereal/common/goldfish_vk_handlemap.cpp
index 5dcd8a5..8f98102 100644
--- a/host/vulkan/cereal/common/goldfish_vk_handlemap.cpp
+++ b/host/vulkan/cereal/common/goldfish_vk_handlemap.cpp
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_handlemap
 //
-// (impl) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml cereal
-// -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (impl) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal -o
+// host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_handlemap.h b/host/vulkan/cereal/common/goldfish_vk_handlemap.h
index 791ade7..1a58df6 100644
--- a/host/vulkan/cereal/common/goldfish_vk_handlemap.h
+++ b/host/vulkan/cereal/common/goldfish_vk_handlemap.h
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_handlemap
 //
-// (header) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml
-// cereal -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (header) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal
+// -o host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_marshaling.cpp b/host/vulkan/cereal/common/goldfish_vk_marshaling.cpp
index 3a89cae..a71eff1 100644
--- a/host/vulkan/cereal/common/goldfish_vk_marshaling.cpp
+++ b/host/vulkan/cereal/common/goldfish_vk_marshaling.cpp
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_marshaling
 //
-// (impl) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml cereal
-// -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (impl) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal -o
+// host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_marshaling.h b/host/vulkan/cereal/common/goldfish_vk_marshaling.h
index 6573652..68bc250 100644
--- a/host/vulkan/cereal/common/goldfish_vk_marshaling.h
+++ b/host/vulkan/cereal/common/goldfish_vk_marshaling.h
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_marshaling
 //
-// (header) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml
-// cereal -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (header) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal
+// -o host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_reserved_marshaling.cpp b/host/vulkan/cereal/common/goldfish_vk_reserved_marshaling.cpp
index d6d9816..13e6dda 100644
--- a/host/vulkan/cereal/common/goldfish_vk_reserved_marshaling.cpp
+++ b/host/vulkan/cereal/common/goldfish_vk_reserved_marshaling.cpp
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_reserved_marshaling
 //
-// (impl) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml cereal
-// -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (impl) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal -o
+// host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_reserved_marshaling.h b/host/vulkan/cereal/common/goldfish_vk_reserved_marshaling.h
index cd7f4d6..0c82bd3 100644
--- a/host/vulkan/cereal/common/goldfish_vk_reserved_marshaling.h
+++ b/host/vulkan/cereal/common/goldfish_vk_reserved_marshaling.h
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_reserved_marshaling
 //
-// (header) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml
-// cereal -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (header) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal
+// -o host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_testing.cpp b/host/vulkan/cereal/common/goldfish_vk_testing.cpp
index 8fd7d62..eb33c98 100644
--- a/host/vulkan/cereal/common/goldfish_vk_testing.cpp
+++ b/host/vulkan/cereal/common/goldfish_vk_testing.cpp
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_testing
 //
-// (impl) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml cereal
-// -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (impl) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal -o
+// host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_testing.h b/host/vulkan/cereal/common/goldfish_vk_testing.h
index 9003856..fa361d2 100644
--- a/host/vulkan/cereal/common/goldfish_vk_testing.h
+++ b/host/vulkan/cereal/common/goldfish_vk_testing.h
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_testing
 //
-// (header) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml
-// cereal -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (header) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal
+// -o host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_transform.cpp b/host/vulkan/cereal/common/goldfish_vk_transform.cpp
index ae336de..689c050 100644
--- a/host/vulkan/cereal/common/goldfish_vk_transform.cpp
+++ b/host/vulkan/cereal/common/goldfish_vk_transform.cpp
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_transform
 //
-// (impl) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml cereal
-// -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (impl) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal -o
+// host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/cereal/common/goldfish_vk_transform.h b/host/vulkan/cereal/common/goldfish_vk_transform.h
index 9f0eca7..4ffc606 100644
--- a/host/vulkan/cereal/common/goldfish_vk_transform.h
+++ b/host/vulkan/cereal/common/goldfish_vk_transform.h
@@ -15,8 +15,8 @@
 
 // Autogenerated module goldfish_vk_transform
 //
-// (header) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml
-// cereal -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (header) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal
+// -o host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/vk_android_native_buffer_structure_type.h b/host/vulkan/vk_android_native_buffer_structure_type.h
index 6a46ad3..428dca1 100644
--- a/host/vulkan/vk_android_native_buffer_structure_type.h
+++ b/host/vulkan/vk_android_native_buffer_structure_type.h
@@ -15,8 +15,8 @@
 
 // Autogenerated module vk_android_native_buffer_structure_type
 //
-// (header) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml
-// cereal -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (header) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal
+// -o host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/host/vulkan/vulkan_gfxstream_structure_type.h b/host/vulkan/vulkan_gfxstream_structure_type.h
index e8958aa..ae9270c 100644
--- a/host/vulkan/vulkan_gfxstream_structure_type.h
+++ b/host/vulkan/vulkan_gfxstream_structure_type.h
@@ -15,8 +15,8 @@
 
 // Autogenerated module vulkan_gfxstream_structure_type
 //
-// (header) generated by registry/vulkan/scripts/genvk.py -registry registry/vulkan/xml/vk.xml
-// cereal -o ../../device/generic/vulkan-cereal/host/vulkan/cereal
+// (header) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml cereal
+// -o host/vulkan/cereal
 //
 // Please do not modify directly;
 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
diff --git a/scripts/generate-vulkan-sources.sh b/scripts/generate-vulkan-sources.sh
index 0f93523..c3f2365 100755
--- a/scripts/generate-vulkan-sources.sh
+++ b/scripts/generate-vulkan-sources.sh
@@ -1,5 +1,6 @@
-#!/bin/sh
-# Copyright 2019 The Android Open Source Project
+#!/bin/bash
+
+# Copyright 2022 The Android Open Source Project
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -13,33 +14,106 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-echo ""
-echo ""
-echo "DEPRECATED: Please regenerate the Vulkan codegen using the "
-echo "external/gfxstream-protocols project!"
-echo ""
-echo ""
+PROJECT_ROOT=$(pwd)
 
-echo "To be run in the vulkan-cereal repo root directory."
-echo "Note: This needs to be in an AOSP checkout to generate guest encoder files."
+WHICH=which
+if [[ "$OSTYPE" == "msys" ]]; then
+    WHICH=where
+fi
 
-REPO_DIR=`pwd`
-VULKAN_REGISTRY_XML_DIR=$REPO_DIR/protocols/vulkan/xml
-VULKAN_SRC_DIR=$REPO_DIR/stream-servers/vulkan
-CEREAL_OUTPUT_DIR=$VULKAN_SRC_DIR/cereal
+if [ -z "$1" ] || [ -z "$2" ];
+then
+    AOSP_DIR=$(pwd)/../../..
+    export GOLDFISH_OPENGL_DIR=$AOSP_DIR/device/generic/goldfish-opengl
+    export VULKAN_CEREAL_DIR=$AOSP_DIR/hardware/google/gfxstream
+    export VULKAN_REGISTRY_DIR=$AOSP_DIR/hardware/google/gfxstream/codegen/vulkan
+else
+    export GOLDFISH_OPENGL_DIR=$1
+    export VULKAN_CEREAL_DIR=$2
+    export VULKAN_REGISTRY_DIR=codegen/vulkan
+fi
 
-export VK_CEREAL_GUEST_ENCODER_DIR=$REPO_DIR/../goldfish-opengl/system/vulkan_enc
-export VK_CEREAL_GUEST_HAL_DIR=$REPO_DIR/../goldfish-opengl/system/vulkan
-export VK_CEREAL_HOST_DECODER_DIR=$REPO_DIR/stream-servers/vulkan
-export VK_CEREAL_HOST_PROTO_DIR=$REPO_DIR/stream-servers/vulkan/cereal/proto
-export VK_CEREAL_HOST_INCLUDE_DIR=$REPO_DIR/include
-export VK_CEREAL_BASELIB_PREFIX=base
+# Detect clang-format
+if ! $WHICH clang-format > /dev/null; then
+    echo "Failed to find clang-format." 1>&2
+    exit 1
+fi
+
+# Generate Vulkan headers
+VULKAN_HEADERS_ROOT=$PROJECT_ROOT/common/vulkan
+rm -rf $VULKAN_HEADERS_ROOT && mkdir -p $VULKAN_HEADERS_ROOT
+if [ $? -ne 0 ]; then
+    echo "Failed to clear the old Vulkan headers." 1>&2
+    exit 1
+fi
+
+cd $VULKAN_REGISTRY_DIR/xml && make GENOPTS="-removeExtensions VK_GOOGLE_gfxstream" GENERATED=$VULKAN_HEADERS_ROOT
+if [ $? -ne 0 ]; then
+    echo "Failed to generate Vulkan headers." 1>&2
+    exit 1
+fi
+
+cd $PROJECT_ROOT
+
+export VK_CEREAL_GUEST_ENCODER_DIR=$GOLDFISH_OPENGL_DIR/system/vulkan_enc
+export VK_CEREAL_GUEST_HAL_DIR=$GOLDFISH_OPENGL_DIR/system/vulkan
+export VK_CEREAL_HOST_DECODER_DIR=$VULKAN_CEREAL_DIR/host/vulkan
+export VK_CEREAL_HOST_INCLUDE_DIR=$VULKAN_CEREAL_DIR/host
+export VK_CEREAL_HOST_SCRIPTS_DIR=$VULKAN_CEREAL_DIR/scripts
+export VK_CEREAL_BASELIB_PREFIX=aemu/base
 export VK_CEREAL_BASELIB_LINKNAME=aemu-base.headers
-export VK_CEREAL_HOST_COMMON_LIB_LINKNAME=aemu-host-common.headers
+export VK_CEREAL_VK_HEADER_TARGET=gfxstream_vulkan_headers
+export VK_CEREAL_UTILS_LINKNAME=gfxstream_utils.headers
+export VK_CEREAL_UTILS_PREFIX=utils
 
-mkdir -p $CEREAL_OUTPUT_DIR
+VK_CEREAL_OUTPUT_DIR=$VK_CEREAL_HOST_DECODER_DIR/cereal
+if [ -d "$VK_CEREAL_GUEST_DIR" ]; then
+    mkdir -p $VK_CEREAL_GUEST_ENCODER_DIR
+    mkdir -p $VK_CEREAL_GUEST_HAL_DIR
+fi
+if [ -d "$VK_CEREAL_HOST_DIR" ]; then
+    mkdir -p $VK_CEREAL_HOST_DECODER_DIR
+    mkdir -p $VK_CEREAL_OUTPUT_DIR
+fi
 
-python3 $VULKAN_REGISTRY_XML_DIR/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml cereal -o $CEREAL_OUTPUT_DIR
+VULKAN_REGISTRY_XML_DIR=$VULKAN_REGISTRY_DIR/xml
+VULKAN_REGISTRY_SCRIPTS_DIR=$VULKAN_REGISTRY_DIR/scripts
 
-echo "Done generating Vulkan driver."
+python3 $VULKAN_REGISTRY_SCRIPTS_DIR/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml cereal -o $VK_CEREAL_OUTPUT_DIR
 
+
+# Generate VK_ANDROID_native_buffer specific Vulkan definitions.
+if [ -d $VK_CEREAL_HOST_DECODER_DIR ]; then
+    OUT_DIR=$VK_CEREAL_HOST_DECODER_DIR
+    OUT_FILE_BASENAME="vk_android_native_buffer.h"
+
+    python3 codegen/vulkan/scripts/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml -o $OUT_DIR \
+        $OUT_FILE_BASENAME
+
+    if [ $? -ne 0 ]; then
+        echo "Failed to generate vk_android_native_buffer.h" 1>&2
+        exit 1
+    fi
+    if ! clang-format -i $OUT_DIR/$OUT_FILE_BASENAME; then
+        echo "Failed to reformat vk_android_native_buffer.h" 1>&2
+        exit 1
+    fi
+fi
+
+# Generate gfxstream specific Vulkan definitions.
+for OUT_DIR in $VK_CEREAL_HOST_DECODER_DIR $VK_CEREAL_GUEST_ENCODER_DIR; do
+    if [ -d "$OUT_DIR" ]; then
+        OUT_FILE_BASENAME=vulkan_gfxstream.h
+        python3 codegen/vulkan/scripts/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml -o $OUT_DIR \
+            $OUT_FILE_BASENAME
+
+        if [ $? -ne 0 ]; then
+            echo "Failed to generate gfxstream specific vulkan headers." 1>&2
+            exit 1
+        fi
+        if ! clang-format -i $OUT_DIR/$OUT_FILE_BASENAME; then
+            echo "Failed to reformat gfxstream specific vulkan headers." 1>&2
+            exit 1
+        fi
+    fi
+done