• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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/Pool.cpp",
6    "android-emu/android/base/Pool.h",
7    "android-emu/android/base/ring_buffer.c",
8    "android-emu/android/base/AndroidSubAllocator.cpp",
9    "android-emu/android/base/AndroidSubAllocator.h",
10    "android-emu/android/base/files/MemStream.cpp",
11    "android-emu/android/base/files/MemStream.h",
12    "android-emu/android/base/files/Stream.cpp",
13    "android-emu/android/base/files/Stream.h",
14    "android-emu/android/base/files/StreamSerializing.cpp",
15    "android-emu/android/base/files/StreamSerializing.h",
16    "android-emu/android/base/synchronization/AndroidConditionVariable.h",
17    "android-emu/android/base/synchronization/AndroidLock.h",
18    "android-emu/android/base/synchronization/AndroidMessageChannel.h",
19    "android-emu/android/base/synchronization/AndroidMessageChannel.cpp",
20    "android-emu/android/base/threads/AndroidFunctorThread.h",
21    "android-emu/android/base/threads/AndroidThread.h",
22    "android-emu/android/base/threads/AndroidThreadStore.h",
23    "android-emu/android/base/threads/AndroidThreadTypes.h",
24    "android-emu/android/base/threads/AndroidWorkPool.h",
25    "android-emu/android/base/threads/AndroidFunctorThread.cpp",
26    "android-emu/android/base/threads/AndroidThreadStore.h",
27    "android-emu/android/base/threads/AndroidThread_pthread.cpp",
28    "android-emu/android/base/threads/AndroidWorkPool.cpp",
29    "android-emu/android/base/Tracing.cpp",
30    "android-emu/android/base/Tracing.h",
31    "shared/GoldfishAddressSpace/goldfish_address_space.cpp",
32    "shared/GoldfishAddressSpace/goldfish_address_space.h",
33    "shared/OpenglCodecCommon/ChecksumCalculator.cpp",
34    "shared/OpenglCodecCommon/ChecksumCalculator.h",
35    "shared/OpenglCodecCommon/glUtils.cpp",
36    "shared/OpenglCodecCommon/glUtils.h",
37    "shared/OpenglCodecCommon/goldfish_dma.cpp",
38    "shared/OpenglCodecCommon/goldfish_dma.h",
39    "shared/gralloc_cb/include/gralloc_cb_bp.h",
40    "shared/qemupipe/include/qemu_pipe_bp.h",
41    "shared/qemupipe/include-types/qemu_pipe_types_bp.h",
42    "shared/qemupipe/qemu_pipe_common.cpp",
43    "shared/qemupipe/qemu_pipe_guest.cpp",
44    "system/OpenglSystemCommon/AddressSpaceStream.cpp",
45    "system/OpenglSystemCommon/HostConnection.cpp",
46    "system/OpenglSystemCommon/HostConnection.h",
47    "system/OpenglSystemCommon/ProcessPipe.cpp",
48    "system/OpenglSystemCommon/ProcessPipe.h",
49    "system/OpenglSystemCommon/QemuPipeStream.cpp",
50    "system/OpenglSystemCommon/QemuPipeStream.h",
51    "system/OpenglSystemCommon/ThreadInfo.cpp",
52    "system/OpenglSystemCommon/ThreadInfo.h",
53    "system/renderControl_enc/renderControl_enc.cpp",
54    "system/renderControl_enc/renderControl_enc.h",
55    "system/vulkan/func_table.cpp",
56    "system/vulkan/func_table.h",
57    "system/vulkan/goldfish_vulkan.cpp",
58    "system/vulkan_enc/HostVisibleMemoryVirtualization.cpp",
59    "system/vulkan_enc/HostVisibleMemoryVirtualization.h",
60    "system/vulkan_enc/ResourceTracker.cpp",
61    "system/vulkan_enc/ResourceTracker.h",
62    "system/vulkan_enc/Resources.cpp",
63    "system/vulkan_enc/Resources.h",
64    "system/vulkan_enc/Validation.cpp",
65    "system/vulkan_enc/Validation.h",
66    "system/vulkan_enc/VkEncoder.cpp",
67    "system/vulkan_enc/VkEncoder.h",
68    "system/vulkan_enc/VulkanHandleMapping.cpp",
69    "system/vulkan_enc/VulkanHandleMapping.h",
70    "system/vulkan_enc/VulkanStreamGuest.cpp",
71    "system/vulkan_enc/VulkanStreamGuest.h",
72    "system/vulkan_enc/goldfish_vk_deepcopy_guest.cpp",
73    "system/vulkan_enc/goldfish_vk_deepcopy_guest.h",
74    "system/vulkan_enc/goldfish_vk_extension_structs_guest.cpp",
75    "system/vulkan_enc/goldfish_vk_extension_structs_guest.h",
76    "system/vulkan_enc/goldfish_vk_marshaling_guest.cpp",
77    "system/vulkan_enc/goldfish_vk_marshaling_guest.h",
78    "system/vulkan_enc/goldfish_vk_transform_guest.cpp",
79    "system/vulkan_enc/goldfish_vk_transform_guest.h",
80  ]
81
82  include_dirs = [
83    "android-emu",
84    "host/include/libOpenglRender",
85    "shared/GoldfishAddressSpace/include",
86    "shared/OpenglCodecCommon",
87    "shared/gralloc_cb/include",
88    "shared/qemupipe/include",
89    "shared/qemupipe/include-types",
90    "system/OpenglSystemCommon",
91    "system/renderControl_enc",
92    "system/vulkan_enc",
93    "system/include",
94  ]
95
96  defines = [
97    "LOG_TAG=\"goldfish_vulkan\"",
98    "GOLDFISH_VULKAN",
99    "GOLDFISH_NO_GL",
100    "VK_USE_PLATFORM_FUCHSIA",
101    "PLATFORM_SDK_VERSION=1",
102    "PAGE_SIZE=4096",
103  ]
104
105  cflags_c = [
106    "-Wno-missing-field-initializers",
107    "-Wno-newline-eof",
108    "-Wno-unused-function",
109    "-Wno-unused-value",
110    "-Wno-unused-variable",
111  ]
112
113  cflags_cc = [
114    "-Wno-missing-field-initializers",
115    "-Wno-newline-eof",
116    "-Wno-unused-function",
117    "-Wno-unused-value",
118    "-Wno-unused-variable",
119  ]
120
121  ldflags = [ "-static-libstdc++" ]
122
123  if (target_os == "fuchsia") {
124    sources -= [ "system/OpenglSystemCommon/QemuPipeStream.cpp" ]
125    sources += [
126      "fuchsia/fuchsia_stdio.cc",
127      "fuchsia/port.cc",
128      "fuchsia/service_connector.cc",
129      "system/OpenglSystemCommon/QemuPipeStreamFuchsia.cpp",
130    ]
131
132    include_dirs += [
133      "fuchsia/include",
134      "//third_party/Vulkan-Headers/include"
135    ]
136
137    libs = [
138      "zircon"
139    ]
140
141    deps = [
142      "//sdk/fidl/fuchsia.hardware.goldfish",
143      "//sdk/fidl/fuchsia.logger:fuchsia.logger_llcpp",
144      "//sdk/fidl/fuchsia.sysmem",
145      "//zircon/public/lib/zx",
146      "//zircon/public/lib/zxio",
147      "//zircon/system/ulib/syslog:syslog-static",
148      "//zircon/system/ulib/trace:trace-with-static-engine",
149    ]
150
151    defines += [
152      "QEMU_PIPE_PATH=\"/dev/class/goldfish-pipe/000\"",
153      "GOLDFISH_ADDRESS_SPACE_DEVICE_NAME=\"/dev/class/goldfish-address-space/000\"",
154    ]
155  }
156}
157