1shared_library("libvulkan_goldfish") { 2 sources = [ 3 "android-emu/android/base/AlignedBuf.cpp", 4 "android-emu/android/base/AlignedBuf.h", 5 "android-emu/android/base/Allocator.h", 6 "android-emu/android/base/AndroidSubAllocator.cpp", 7 "android-emu/android/base/AndroidSubAllocator.h", 8 "android-emu/android/base/BumpPool.h", 9 "android-emu/android/base/Pool.cpp", 10 "android-emu/android/base/Pool.h", 11 "android-emu/android/base/Tracing.cpp", 12 "android-emu/android/base/Tracing.h", 13 "android-emu/android/base/files/MemStream.cpp", 14 "android-emu/android/base/files/MemStream.h", 15 "android-emu/android/base/files/Stream.cpp", 16 "android-emu/android/base/files/Stream.h", 17 "android-emu/android/base/files/StreamSerializing.cpp", 18 "android-emu/android/base/files/StreamSerializing.h", 19 "android-emu/android/base/fit/Defer.h", 20 "android-emu/android/base/fit/Function.h", 21 "android-emu/android/base/fit/FunctionInternal.h", 22 "android-emu/android/base/fit/Nullable.h", 23 "android-emu/android/base/fit/ThreadChecker.h", 24 "android-emu/android/base/fit/ThreadSafety.h", 25 "android-emu/android/base/fit/UtilityInternal.h", 26 "android-emu/android/base/ring_buffer.c", 27 "android-emu/android/base/synchronization/AndroidConditionVariable.h", 28 "android-emu/android/base/synchronization/AndroidLock.h", 29 "android-emu/android/base/synchronization/AndroidMessageChannel.cpp", 30 "android-emu/android/base/synchronization/AndroidMessageChannel.h", 31 "android-emu/android/base/threads/AndroidFunctorThread.cpp", 32 "android-emu/android/base/threads/AndroidFunctorThread.h", 33 "android-emu/android/base/threads/AndroidThread.h", 34 "android-emu/android/base/threads/AndroidThreadStore.h", 35 "android-emu/android/base/threads/AndroidThreadTypes.h", 36 "android-emu/android/base/threads/AndroidThread_pthread.cpp", 37 "android-emu/android/base/threads/AndroidWorkPool.cpp", 38 "android-emu/android/base/threads/AndroidWorkPool.h", 39 "shared/GoldfishAddressSpace/goldfish_address_space.cpp", 40 "shared/GoldfishAddressSpace/include/goldfish_address_space.h", 41 "shared/OpenglCodecCommon/ChecksumCalculator.cpp", 42 "shared/OpenglCodecCommon/ChecksumCalculator.h", 43 "shared/OpenglCodecCommon/glUtils.cpp", 44 "shared/OpenglCodecCommon/glUtils.h", 45 "shared/OpenglCodecCommon/goldfish_dma.cpp", 46 "shared/OpenglCodecCommon/goldfish_dma.h", 47 "shared/gralloc_cb/include/gralloc_cb_bp.h", 48 "shared/qemupipe/include-types/qemu_pipe_types_bp.h", 49 "shared/qemupipe/include/qemu_pipe_bp.h", 50 "shared/qemupipe/qemu_pipe_common.cpp", 51 "shared/qemupipe/qemu_pipe_guest.cpp", 52 "system/OpenglSystemCommon/AddressSpaceStream.cpp", 53 "system/OpenglSystemCommon/HostConnection.cpp", 54 "system/OpenglSystemCommon/HostConnection.h", 55 "system/OpenglSystemCommon/ProcessPipe.cpp", 56 "system/OpenglSystemCommon/ProcessPipe.h", 57 "system/OpenglSystemCommon/QemuPipeStream.cpp", 58 "system/OpenglSystemCommon/QemuPipeStream.h", 59 "system/OpenglSystemCommon/ThreadInfo.cpp", 60 "system/OpenglSystemCommon/ThreadInfo.h", 61 "system/renderControl_enc/renderControl_enc.cpp", 62 "system/renderControl_enc/renderControl_enc.h", 63 "system/vulkan/goldfish_vulkan.cpp", 64 "system/vulkan_enc/CommandBufferStagingStream.cpp", 65 "system/vulkan_enc/CommandBufferStagingStream.h", 66 "system/vulkan_enc/DescriptorSetVirtualization.cpp", 67 "system/vulkan_enc/DescriptorSetVirtualization.h", 68 "system/vulkan_enc/HostVisibleMemoryVirtualization.cpp", 69 "system/vulkan_enc/HostVisibleMemoryVirtualization.h", 70 "system/vulkan_enc/ResourceTracker.cpp", 71 "system/vulkan_enc/ResourceTracker.h", 72 "system/vulkan_enc/Resources.cpp", 73 "system/vulkan_enc/Resources.h", 74 "system/vulkan_enc/Validation.cpp", 75 "system/vulkan_enc/Validation.h", 76 "system/vulkan_enc/VkEncoder.cpp", 77 "system/vulkan_enc/VkEncoder.h", 78 "system/vulkan_enc/VulkanHandleMapping.cpp", 79 "system/vulkan_enc/VulkanHandleMapping.h", 80 "system/vulkan_enc/VulkanStreamGuest.cpp", 81 "system/vulkan_enc/VulkanStreamGuest.h", 82 "system/vulkan_enc/func_table.cpp", 83 "system/vulkan_enc/func_table.h", 84 "system/vulkan_enc/goldfish_vk_counting_guest.cpp", 85 "system/vulkan_enc/goldfish_vk_counting_guest.h", 86 "system/vulkan_enc/goldfish_vk_deepcopy_guest.cpp", 87 "system/vulkan_enc/goldfish_vk_deepcopy_guest.h", 88 "system/vulkan_enc/goldfish_vk_extension_structs_guest.cpp", 89 "system/vulkan_enc/goldfish_vk_extension_structs_guest.h", 90 "system/vulkan_enc/goldfish_vk_marshaling_guest.cpp", 91 "system/vulkan_enc/goldfish_vk_marshaling_guest.h", 92 "system/vulkan_enc/goldfish_vk_reserved_marshaling_guest.cpp", 93 "system/vulkan_enc/goldfish_vk_reserved_marshaling_guest.h", 94 "system/vulkan_enc/goldfish_vk_transform_guest.cpp", 95 "system/vulkan_enc/goldfish_vk_transform_guest.h", 96 ] 97 98 include_dirs = [ 99 "android-emu", 100 "host/include/libOpenglRender", 101 "shared/GoldfishAddressSpace/include", 102 "shared/OpenglCodecCommon", 103 "shared/gralloc_cb/include", 104 "shared/qemupipe/include", 105 "shared/qemupipe/include-types", 106 "system/OpenglSystemCommon", 107 "system/renderControl_enc", 108 "system/vulkan_enc", 109 "system/include", 110 ] 111 112 defines = [ 113 "LOG_TAG=\"goldfish_vulkan\"", 114 "GFXSTREAM", 115 "GOLDFISH_NO_GL", 116 "VK_USE_PLATFORM_FUCHSIA", 117 "PLATFORM_SDK_VERSION=1", 118 "PAGE_SIZE=4096", 119 ] 120 121 cflags = [ "-Wextra-semi" ] 122 123 cflags_c = [ 124 "-Wstrict-prototypes", 125 "-Wno-missing-field-initializers", 126 "-Wno-newline-eof", 127 "-Wno-unused-function", 128 "-Wno-unused-value", 129 "-Wno-unused-variable", 130 ] 131 132 cflags_cc = [ 133 "-Wno-missing-field-initializers", 134 "-Wno-newline-eof", 135 "-Wno-unused-function", 136 "-Wno-unused-value", 137 "-Wno-unused-variable", 138 "-Wno-conversion", 139 "-Wno-unused-but-set-parameter", 140 "-Wno-unused-but-set-variable", 141 ] 142 143 ldflags = [ "-static-libstdc++" ] 144 145 if (target_os == "fuchsia") { 146 sources -= [ 147 "shared/OpenglCodecCommon/goldfish_dma.cpp", 148 "shared/OpenglCodecCommon/goldfish_dma.h", 149 "shared/qemupipe/qemu_pipe_common.cpp", 150 "shared/qemupipe/qemu_pipe_guest.cpp", 151 "system/OpenglSystemCommon/QemuPipeStream.cpp", 152 ] 153 sources += [ 154 "fuchsia/fuchsia_stdio.cc", 155 "fuchsia/port.cc", 156 "fuchsia/service_connector.cc", 157 "system/OpenglSystemCommon/QemuPipeStreamFuchsia.cpp", 158 "system/OpenglSystemCommon/TraceProviderFuchsia.cpp", 159 "system/OpenglSystemCommon/TraceProviderFuchsia.h", 160 ] 161 162 include_dirs += [ 163 "fuchsia/include", 164 "//third_party/Vulkan-Headers/include", 165 ] 166 167 deps = [ 168 "//sdk/fidl/fuchsia.hardware.goldfish:fuchsia.hardware.goldfish_llcpp", 169 "//sdk/fidl/fuchsia.logger:fuchsia.logger_llcpp", 170 "//sdk/fidl/fuchsia.sysmem:fuchsia.sysmem_llcpp", 171 "//sdk/lib/fdio", 172 "//src/zircon/lib/zircon", 173 "//zircon/public/lib/async-cpp", 174 "//zircon/public/lib/zx", 175 "//zircon/system/ulib/async-default", 176 "//zircon/system/ulib/async-loop:async-loop-cpp", 177 "//zircon/system/ulib/syslog:syslog-static", 178 "//zircon/system/ulib/trace:trace-with-static-engine", 179 "//zircon/system/ulib/trace-provider:trace-provider-with-static-engine", 180 "//zircon/system/ulib/zxio", 181 ] 182 183 defines += [ 184 "QEMU_PIPE_PATH=\"/loader-gpu-devices/class/goldfish-pipe/000\"", 185 "GOLDFISH_ADDRESS_SPACE_DEVICE_NAME=\"/loader-gpu-devices/class/goldfish-address-space/000\"", 186 ] 187 } 188} 189