1cc_library( 2 name = "gfxstream-vulkan-server", 3 srcs = [ 4 "BorrowedImageVk.cpp", 5 "BufferVk.cpp", 6 "ColorBufferVk.cpp", 7 "CompositorVk.cpp", 8 "DebugUtilsHelper.cpp", 9 "DeviceOpTracker.cpp", 10 "DisplaySurfaceVk.cpp", 11 "DisplayVk.cpp", 12 "PostWorkerVk.cpp", 13 "RenderThreadInfoVk.cpp", 14 "SwapChainStateVk.cpp", 15 "VkAndroidNativeBuffer.cpp", 16 "VkCommonOperations.cpp", 17 "VkDecoder.cpp", 18 "VkDecoderGlobalState.cpp", 19 "VkDecoderSnapshot.cpp", 20 "VkDecoderSnapshotUtils.cpp", 21 "VkEmulatedPhysicalDeviceMemory.cpp", 22 "VkFormatUtils.cpp", 23 "VkReconstruction.cpp", 24 "VulkanDispatch.cpp", 25 "VulkanHandleMapping.cpp", 26 "VulkanStream.cpp", 27 "vk_util.cpp", 28 ] + glob([ 29 "**/*.h", 30 "*.h", 31 ]), 32 hdrs = [ 33 "VkDecoderGlobalState.cpp", 34 "VkSubDecoder.cpp", 35 ], 36 copts = [ 37 "-Wno-return-type-c-linkage", 38 "-Wno-extern-c-compat", 39 ], 40 defines = [ 41 "VK_GFXSTREAM_STRUCTURE_TYPE_EXT", 42 "EMUGL_BUILD", 43 "BUILDING_EMUGL_COMMON_SHARED", 44 "GFXSTREAM_ENABLE_HOST_GLES=1", 45 ] + select({ 46 "@platforms//os:macos": [ 47 "VK_USE_PLATFORM_METAL_EXT", 48 "VK_USE_PLATFORM_MACOS_MVK", 49 ], 50 "@platforms//os:windows": ["VK_USE_PLATFORM_WIN32_KHR"], 51 "@platforms//os:linux": [], 52 "//conditions:default": [], 53 }), 54 includes = [ 55 ".", 56 "cereal", 57 "cereal/common", 58 ], 59 visibility = ["//visibility:public"], 60 deps = [ 61 # "//external/angle:angle-headers", 62 "//hardware/google/aemu/snapshot:aemu-snapshot", 63 "//hardware/google/gfxstream/common/vulkan:gfxstream_vulkan_headers", 64 "//hardware/google/gfxstream/host:gfxstream-compressedTextures", 65 "//hardware/google/gfxstream/host:gfxstream_host_headers", 66 "//hardware/google/gfxstream/host/apigen-codec-common", 67 "//hardware/google/gfxstream/host/gl:gfxstream-gl-host-common", 68 "//hardware/google/gfxstream/host/gl:gl_headers", 69 "//hardware/google/gfxstream/host/vulkan:OpenglRender_vulkan_cereal", 70 "//hardware/google/gfxstream/host/vulkan:emulated_textures", 71 "//hardware/google/gfxstream/third-party/glm", 72 "//hardware/google/gfxstream/third-party/renderdoc", 73 "//hardware/google/gfxstream/utils:gfxstream_utils", 74 ], 75) 76 77cc_library( 78 name = "OpenglRender_vulkan_cereal", 79 srcs = [ 80 "cereal/common/goldfish_vk_deepcopy.cpp", 81 "cereal/common/goldfish_vk_dispatch.cpp", 82 "cereal/common/goldfish_vk_extension_structs.cpp", 83 "cereal/common/goldfish_vk_marshaling.cpp", 84 "cereal/common/goldfish_vk_reserved_marshaling.cpp", 85 "cereal/common/goldfish_vk_transform.cpp", 86 ] + glob([ 87 "**/*.h", 88 "*.h", 89 ]), 90 defines = [ 91 "EMUGL_BUILD", 92 "BUILDING_EMUGL_COMMON_SHARED", 93 "VK_GFXSTREAM_STRUCTURE_TYPE_EXT", 94 "VK_GOOGLE_gfxstream", 95 ] + select({ 96 "@platforms//os:macos": [ 97 "VK_USE_PLATFORM_METAL_EXT", 98 "VK_USE_PLATFORM_MACOS_MVK", 99 ], 100 "@platforms//os:windows": ["VK_USE_PLATFORM_WIN32_KHR"], 101 "@platforms//os:linux": [], 102 "//conditions:default": [], 103 }), 104 includes = [ 105 ".", 106 "cereal/common", 107 ], 108 deps = [ 109 "//hardware/google/aemu/base:aemu-base-headers", 110 "//hardware/google/aemu/host-common:aemu-host-common-headers", 111 "//hardware/google/gfxstream:gfxstream-gl-host-common-headers", 112 "//hardware/google/gfxstream/common/vulkan:gfxstream_vulkan_headers", 113 "//hardware/google/gfxstream/host:gfxstream_host_headers", 114 "//hardware/google/gfxstream/host/features:gfxstream_features", 115 "//hardware/google/gfxstream/utils:gfxstream_utils", 116 ], 117) 118 119cc_library( 120 name = "emulated_textures", 121 srcs = [ 122 "emulated_textures/AstcTexture.cpp", 123 "emulated_textures/CompressedImageInfo.cpp", 124 "emulated_textures/GpuDecompressionPipeline.cpp", 125 ] + glob([ 126 "**/*.h", 127 "**/*.inl", 128 ]), 129 defines = [ 130 "EMUGL_BUILD", 131 "BUILDING_EMUGL_COMMON_SHARED", 132 "VK_GFXSTREAM_STRUCTURE_TYPE_EXT", 133 "VK_GOOGLE_gfxstream", 134 ] + select({ 135 "@platforms//os:macos": [ 136 "VK_USE_PLATFORM_METAL_EXT", 137 "VK_USE_PLATFORM_MACOS_MVK", 138 ], 139 "@platforms//os:windows": ["VK_USE_PLATFORM_WIN32_KHR"], 140 "@platforms//os:linux": [], 141 "//conditions:default": [], 142 }), 143 includes = [ 144 ".", 145 "cereal/common", 146 ], 147 deps = [ 148 "//hardware/google/aemu/host-common:aemu-host-common-headers", 149 "//hardware/google/gfxstream:gfxstream-gl-host-common-headers", 150 "//hardware/google/gfxstream/common/vulkan:gfxstream_vulkan_headers", 151 "//hardware/google/gfxstream/host:gfxstream_host_headers", 152 "//hardware/google/gfxstream/utils:gfxstream_utils", 153 ], 154) 155