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