gpu: implement source inclusion for most Vulkan/D3D12/OpenGL backends
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
This commit is contained in:
parent
3f56f3f964
commit
e1d17f461e
1 changed files with 208 additions and 171 deletions
|
|
@ -310,50 +310,53 @@ fn buildLibDawnNative(b: *Builder, step: *std.build.LibExeObjStep, options: Opti
|
||||||
// TODO(build-system): allow use_angle here. See src/dawn_native/BUILD.gn
|
// TODO(build-system): allow use_angle here. See src/dawn_native/BUILD.gn
|
||||||
// TODO(build-system): could allow use_swiftshader here. See src/dawn_native/BUILD.gn
|
// TODO(build-system): could allow use_swiftshader here. See src/dawn_native/BUILD.gn
|
||||||
|
|
||||||
// TODO(build-system): windows
|
if (options.d3d12.?) {
|
||||||
// if (dawn_enable_d3d12) {
|
// TODO(build-system): windows
|
||||||
// libs += [ "dxguid.lib" ]
|
// libs += [ "dxguid.lib" ]
|
||||||
// sources += [
|
for ([_][]const u8{
|
||||||
// "d3d12/AdapterD3D12.cpp",
|
"src/dawn_native/d3d12/AdapterD3D12.cpp",
|
||||||
// "d3d12/BackendD3D12.cpp",
|
"src/dawn_native/d3d12/BackendD3D12.cpp",
|
||||||
// "d3d12/BindGroupD3D12.cpp",
|
"src/dawn_native/d3d12/BindGroupD3D12.cpp",
|
||||||
// "d3d12/BindGroupLayoutD3D12.cpp",
|
"src/dawn_native/d3d12/BindGroupLayoutD3D12.cpp",
|
||||||
// "d3d12/BufferD3D12.cpp",
|
"src/dawn_native/d3d12/BufferD3D12.cpp",
|
||||||
// "d3d12/CPUDescriptorHeapAllocationD3D12.cpp",
|
"src/dawn_native/d3d12/CPUDescriptorHeapAllocationD3D12.cpp",
|
||||||
// "d3d12/CommandAllocatorManager.cpp",
|
"src/dawn_native/d3d12/CommandAllocatorManager.cpp",
|
||||||
// "d3d12/CommandBufferD3D12.cpp",
|
"src/dawn_native/d3d12/CommandBufferD3D12.cpp",
|
||||||
// "d3d12/CommandRecordingContext.cpp",
|
"src/dawn_native/d3d12/CommandRecordingContext.cpp",
|
||||||
// "d3d12/ComputePipelineD3D12.cpp",
|
"src/dawn_native/d3d12/ComputePipelineD3D12.cpp",
|
||||||
// "d3d12/D3D11on12Util.cpp",
|
"src/dawn_native/d3d12/D3D11on12Util.cpp",
|
||||||
// "d3d12/D3D12Error.cpp",
|
"src/dawn_native/d3d12/D3D12Error.cpp",
|
||||||
// "d3d12/D3D12Info.cpp",
|
"src/dawn_native/d3d12/D3D12Info.cpp",
|
||||||
// "d3d12/DeviceD3D12.cpp",
|
"src/dawn_native/d3d12/DeviceD3D12.cpp",
|
||||||
// "d3d12/GPUDescriptorHeapAllocationD3D12.cpp",
|
"src/dawn_native/d3d12/GPUDescriptorHeapAllocationD3D12.cpp",
|
||||||
// "d3d12/HeapAllocatorD3D12.cpp",
|
"src/dawn_native/d3d12/HeapAllocatorD3D12.cpp",
|
||||||
// "d3d12/HeapD3D12.cpp",
|
"src/dawn_native/d3d12/HeapD3D12.cpp",
|
||||||
// "d3d12/NativeSwapChainImplD3D12.cpp",
|
"src/dawn_native/d3d12/NativeSwapChainImplD3D12.cpp",
|
||||||
// "d3d12/PageableD3D12.cpp",
|
"src/dawn_native/d3d12/PageableD3D12.cpp",
|
||||||
// "d3d12/PipelineLayoutD3D12.cpp",
|
"src/dawn_native/d3d12/PipelineLayoutD3D12.cpp",
|
||||||
// "d3d12/PlatformFunctions.cpp",
|
"src/dawn_native/d3d12/PlatformFunctions.cpp",
|
||||||
// "d3d12/QuerySetD3D12.cpp",
|
"src/dawn_native/d3d12/QuerySetD3D12.cpp",
|
||||||
// "d3d12/QueueD3D12.cpp",
|
"src/dawn_native/d3d12/QueueD3D12.cpp",
|
||||||
// "d3d12/RenderPassBuilderD3D12.cpp",
|
"src/dawn_native/d3d12/RenderPassBuilderD3D12.cpp",
|
||||||
// "d3d12/RenderPipelineD3D12.cpp",
|
"src/dawn_native/d3d12/RenderPipelineD3D12.cpp",
|
||||||
// "d3d12/ResidencyManagerD3D12.cpp",
|
"src/dawn_native/d3d12/ResidencyManagerD3D12.cpp",
|
||||||
// "d3d12/ResourceAllocatorManagerD3D12.cpp",
|
"src/dawn_native/d3d12/ResourceAllocatorManagerD3D12.cpp",
|
||||||
// "d3d12/ResourceHeapAllocationD3D12.cpp",
|
"src/dawn_native/d3d12/ResourceHeapAllocationD3D12.cpp",
|
||||||
// "d3d12/SamplerD3D12.cpp",
|
"src/dawn_native/d3d12/SamplerD3D12.cpp",
|
||||||
// "d3d12/SamplerHeapCacheD3D12.cpp",
|
"src/dawn_native/d3d12/SamplerHeapCacheD3D12.cpp",
|
||||||
// "d3d12/ShaderModuleD3D12.cpp",
|
"src/dawn_native/d3d12/ShaderModuleD3D12.cpp",
|
||||||
// "d3d12/ShaderVisibleDescriptorAllocatorD3D12.cpp",
|
"src/dawn_native/d3d12/ShaderVisibleDescriptorAllocatorD3D12.cpp",
|
||||||
// "d3d12/StagingBufferD3D12.cpp",
|
"src/dawn_native/d3d12/StagingBufferD3D12.cpp",
|
||||||
// "d3d12/StagingDescriptorAllocatorD3D12.cpp",
|
"src/dawn_native/d3d12/StagingDescriptorAllocatorD3D12.cpp",
|
||||||
// "d3d12/SwapChainD3D12.cpp",
|
"src/dawn_native/d3d12/SwapChainD3D12.cpp",
|
||||||
// "d3d12/TextureCopySplitter.cpp",
|
"src/dawn_native/d3d12/TextureCopySplitter.cpp",
|
||||||
// "d3d12/TextureD3D12.cpp",
|
"src/dawn_native/d3d12/TextureD3D12.cpp",
|
||||||
// "d3d12/UtilsD3D12.cpp",
|
"src/dawn_native/d3d12/UtilsD3D12.cpp",
|
||||||
// ]
|
}) |path| {
|
||||||
// }
|
var abs_path = std.fs.path.join(b.allocator, &.{ thisDir(), "libs/dawn", path }) catch unreachable;
|
||||||
|
lib.addCSourceFile(abs_path, flags.items);
|
||||||
|
}
|
||||||
|
}
|
||||||
if (options.metal.?) {
|
if (options.metal.?) {
|
||||||
lib.linkFramework("Metal");
|
lib.linkFramework("Metal");
|
||||||
lib.linkFramework("CoreGraphics");
|
lib.linkFramework("CoreGraphics");
|
||||||
|
|
@ -406,117 +409,129 @@ fn buildLibDawnNative(b: *Builder, step: *std.build.LibExeObjStep, options: Opti
|
||||||
lib.addCSourceFile(abs_path, flags.items);
|
lib.addCSourceFile(abs_path, flags.items);
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO(build-system): opengl, vulkan
|
if (options.desktop_gl.? or options.vulkan.?) {
|
||||||
// if (dawn_enable_opengl || dawn_enable_vulkan) {
|
for ([_][]const u8{
|
||||||
// sources += [
|
"src/dawn_native/SpirvValidation.cpp",
|
||||||
// "SpirvValidation.cpp",
|
}) |path| {
|
||||||
// ]
|
var abs_path = std.fs.path.join(b.allocator, &.{ thisDir(), "libs/dawn", path }) catch unreachable;
|
||||||
// }
|
lib.addCSourceFile(abs_path, flags.items);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// TODO(build-system): opengl
|
if (options.desktop_gl.?) {
|
||||||
// if (dawn_enable_opengl) {
|
// TODO(build-system): opengl
|
||||||
// public_deps += [
|
// public_deps += [
|
||||||
// ":dawn_native_opengl_loader_gen",
|
// ":dawn_native_opengl_loader_gen",
|
||||||
// "${dawn_root}/third_party/khronos:khronos_platform",
|
// "${dawn_root}/third_party/khronos:khronos_platform",
|
||||||
// ]
|
// ]
|
||||||
// sources += get_target_outputs(":dawn_native_opengl_loader_gen")
|
// sources += get_target_outputs(":dawn_native_opengl_loader_gen")
|
||||||
// sources += [
|
for ([_][]const u8{
|
||||||
// "opengl/BackendGL.cpp",
|
"src/dawn_native/opengl/BackendGL.cpp",
|
||||||
// "opengl/BindGroupGL.cpp",
|
"src/dawn_native/opengl/BindGroupGL.cpp",
|
||||||
// "opengl/BindGroupLayoutGL.cpp",
|
"src/dawn_native/opengl/BindGroupLayoutGL.cpp",
|
||||||
// "opengl/BufferGL.cpp",
|
"src/dawn_native/opengl/BufferGL.cpp",
|
||||||
// "opengl/CommandBufferGL.cpp",
|
"src/dawn_native/opengl/CommandBufferGL.cpp",
|
||||||
// "opengl/ComputePipelineGL.cpp",
|
"src/dawn_native/opengl/ComputePipelineGL.cpp",
|
||||||
// "opengl/DeviceGL.cpp",
|
"src/dawn_native/opengl/DeviceGL.cpp",
|
||||||
// "opengl/GLFormat.cpp",
|
"src/dawn_native/opengl/GLFormat.cpp",
|
||||||
// "opengl/NativeSwapChainImplGL.cpp",
|
"src/dawn_native/opengl/NativeSwapChainImplGL.cpp",
|
||||||
// "opengl/OpenGLFunctions.cpp",
|
"src/dawn_native/opengl/OpenGLFunctions.cpp",
|
||||||
// "opengl/OpenGLVersion.cpp",
|
"src/dawn_native/opengl/OpenGLVersion.cpp",
|
||||||
// "opengl/PersistentPipelineStateGL.cpp",
|
"src/dawn_native/opengl/PersistentPipelineStateGL.cpp",
|
||||||
// "opengl/PipelineGL.cpp",
|
"src/dawn_native/opengl/PipelineGL.cpp",
|
||||||
// "opengl/PipelineLayoutGL.cpp",
|
"src/dawn_native/opengl/PipelineLayoutGL.cpp",
|
||||||
// "opengl/QuerySetGL.cpp",
|
"src/dawn_native/opengl/QuerySetGL.cpp",
|
||||||
// "opengl/QueueGL.cpp",
|
"src/dawn_native/opengl/QueueGL.cpp",
|
||||||
// "opengl/RenderPipelineGL.cpp",
|
"src/dawn_native/opengl/RenderPipelineGL.cpp",
|
||||||
// "opengl/SamplerGL.cpp",
|
"src/dawn_native/opengl/SamplerGL.cpp",
|
||||||
// "opengl/ShaderModuleGL.cpp",
|
"src/dawn_native/opengl/ShaderModuleGL.cpp",
|
||||||
// "opengl/SpirvUtils.cpp",
|
"src/dawn_native/opengl/SpirvUtils.cpp",
|
||||||
// "opengl/SwapChainGL.cpp",
|
"src/dawn_native/opengl/SwapChainGL.cpp",
|
||||||
// "opengl/TextureGL.cpp",
|
"src/dawn_native/opengl/TextureGL.cpp",
|
||||||
// "opengl/UtilsGL.cpp",
|
"src/dawn_native/opengl/UtilsGL.cpp",
|
||||||
// ]
|
}) |path| {
|
||||||
// }
|
var abs_path = std.fs.path.join(b.allocator, &.{ thisDir(), "libs/dawn", path }) catch unreachable;
|
||||||
|
lib.addCSourceFile(abs_path, flags.items);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// TODO(build-system): vulkan
|
if (options.vulkan.?) {
|
||||||
// if (dawn_enable_vulkan) {
|
// TODO(build-system): vulkan
|
||||||
// public_deps += [ "${dawn_root}/third_party/khronos:vulkan_headers" ]
|
// public_deps += [ "${dawn_root}/third_party/khronos:vulkan_headers" ]
|
||||||
// sources += [
|
for ([_][]const u8{
|
||||||
// "vulkan/AdapterVk.cpp",
|
"src/dawn_native/vulkan/AdapterVk.cpp",
|
||||||
// "vulkan/BackendVk.cpp",
|
"src/dawn_native/vulkan/BackendVk.cpp",
|
||||||
// "vulkan/BindGroupLayoutVk.cpp",
|
"src/dawn_native/vulkan/BindGroupLayoutVk.cpp",
|
||||||
// "vulkan/BindGroupVk.cpp",
|
"src/dawn_native/vulkan/BindGroupVk.cpp",
|
||||||
// "vulkan/BufferVk.cpp",
|
"src/dawn_native/vulkan/BufferVk.cpp",
|
||||||
// "vulkan/CommandBufferVk.cpp",
|
"src/dawn_native/vulkan/CommandBufferVk.cpp",
|
||||||
// "vulkan/ComputePipelineVk.cpp",
|
"src/dawn_native/vulkan/ComputePipelineVk.cpp",
|
||||||
// "vulkan/DescriptorSetAllocator.cpp",
|
"src/dawn_native/vulkan/DescriptorSetAllocator.cpp",
|
||||||
// "vulkan/DeviceVk.cpp",
|
"src/dawn_native/vulkan/DeviceVk.cpp",
|
||||||
// "vulkan/FencedDeleter.cpp",
|
"src/dawn_native/vulkan/FencedDeleter.cpp",
|
||||||
// "vulkan/NativeSwapChainImplVk.cpp",
|
"src/dawn_native/vulkan/NativeSwapChainImplVk.cpp",
|
||||||
// "vulkan/PipelineLayoutVk.cpp",
|
"src/dawn_native/vulkan/PipelineLayoutVk.cpp",
|
||||||
// "vulkan/QuerySetVk.cpp",
|
"src/dawn_native/vulkan/QuerySetVk.cpp",
|
||||||
// "vulkan/QueueVk.cpp",
|
"src/dawn_native/vulkan/QueueVk.cpp",
|
||||||
// "vulkan/RenderPassCache.cpp",
|
"src/dawn_native/vulkan/RenderPassCache.cpp",
|
||||||
// "vulkan/RenderPipelineVk.cpp",
|
"src/dawn_native/vulkan/RenderPipelineVk.cpp",
|
||||||
// "vulkan/ResourceHeapVk.cpp",
|
"src/dawn_native/vulkan/ResourceHeapVk.cpp",
|
||||||
// "vulkan/ResourceMemoryAllocatorVk.cpp",
|
"src/dawn_native/vulkan/ResourceMemoryAllocatorVk.cpp",
|
||||||
// "vulkan/SamplerVk.cpp",
|
"src/dawn_native/vulkan/SamplerVk.cpp",
|
||||||
// "vulkan/ShaderModuleVk.cpp",
|
"src/dawn_native/vulkan/ShaderModuleVk.cpp",
|
||||||
// "vulkan/StagingBufferVk.cpp",
|
"src/dawn_native/vulkan/StagingBufferVk.cpp",
|
||||||
// "vulkan/SwapChainVk.cpp",
|
"src/dawn_native/vulkan/SwapChainVk.cpp",
|
||||||
// "vulkan/TextureVk.cpp",
|
"src/dawn_native/vulkan/TextureVk.cpp",
|
||||||
// "vulkan/UtilsVulkan.cpp",
|
"src/dawn_native/vulkan/UtilsVulkan.cpp",
|
||||||
// "vulkan/VulkanError.cpp",
|
"src/dawn_native/vulkan/VulkanError.cpp",
|
||||||
// "vulkan/VulkanExtensions.cpp",
|
"src/dawn_native/vulkan/VulkanExtensions.cpp",
|
||||||
// "vulkan/VulkanFunctions.cpp",
|
"src/dawn_native/vulkan/VulkanFunctions.cpp",
|
||||||
// "vulkan/VulkanInfo.cpp",
|
"src/dawn_native/vulkan/VulkanInfo.cpp",
|
||||||
// ]
|
}) |path| {
|
||||||
|
var abs_path = std.fs.path.join(b.allocator, &.{ thisDir(), "libs/dawn", path }) catch unreachable;
|
||||||
|
lib.addCSourceFile(abs_path, flags.items);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// TODO(build-system): linux, fuschia, other
|
// TODO(build-system): linux, fuschia, other
|
||||||
// if (is_chromeos) {
|
// if (is_chromeos) {
|
||||||
// sources += [
|
// sources += [
|
||||||
// "vulkan/external_memory/MemoryServiceDmaBuf.cpp",
|
// "src/dawn_native/vulkan/external_memory/MemoryServiceDmaBuf.cpp",
|
||||||
// "vulkan/external_semaphore/SemaphoreServiceFD.cpp",
|
// "src/dawn_native/vulkan/external_semaphore/SemaphoreServiceFD.cpp",
|
||||||
// ]
|
// ]
|
||||||
// defines += [ "DAWN_USE_SYNC_FDS" ]
|
// defines += [ "DAWN_USE_SYNC_FDS" ]
|
||||||
// } else if (is_linux) {
|
// } else if (is_linux) {
|
||||||
// sources += [
|
// sources += [
|
||||||
// "vulkan/external_memory/MemoryServiceOpaqueFD.cpp",
|
// "src/dawn_native/vulkan/external_memory/MemoryServiceOpaqueFD.cpp",
|
||||||
// "vulkan/external_semaphore/SemaphoreServiceFD.cpp",
|
// "src/dawn_native/vulkan/external_semaphore/SemaphoreServiceFD.cpp",
|
||||||
// ]
|
// ]
|
||||||
// } else if (is_fuchsia) {
|
// } else if (is_fuchsia) {
|
||||||
// sources += [
|
// sources += [
|
||||||
// "vulkan/external_memory/MemoryServiceZirconHandle.cpp",
|
// "src/dawn_native/vulkan/external_memory/MemoryServiceZirconHandle.cpp",
|
||||||
// "vulkan/external_semaphore/SemaphoreServiceZirconHandle.cpp",
|
// "src/dawn_native/vulkan/external_semaphore/SemaphoreServiceZirconHandle.cpp",
|
||||||
// ]
|
// ]
|
||||||
// } else {
|
// } else {
|
||||||
// sources += [
|
// sources += [
|
||||||
// "vulkan/external_memory/MemoryServiceNull.cpp",
|
// "src/dawn_native/vulkan/external_memory/MemoryServiceNull.cpp",
|
||||||
// "vulkan/external_semaphore/SemaphoreServiceNull.cpp",
|
// "src/dawn_native/vulkan/external_semaphore/SemaphoreServiceNull.cpp",
|
||||||
// ]
|
// ]
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// TODO(build-system): fuschia: add is_fuchsia here from upstream source file
|
// TODO(build-system): fuschia: add is_fuchsia here from upstream source file
|
||||||
|
|
||||||
// TODO(build-system): vulkan
|
if (options.vulkan.?) {
|
||||||
// if (enable_vulkan_validation_layers) {
|
// TODO(build-system): vulkan
|
||||||
// defines += [
|
// if (enable_vulkan_validation_layers) {
|
||||||
// "DAWN_ENABLE_VULKAN_VALIDATION_LAYERS",
|
// defines += [
|
||||||
// "DAWN_VK_DATA_DIR=\"$vulkan_data_subdir\"",
|
// "DAWN_ENABLE_VULKAN_VALIDATION_LAYERS",
|
||||||
// ]
|
// "DAWN_VK_DATA_DIR=\"$vulkan_data_subdir\"",
|
||||||
// }
|
// ]
|
||||||
// if (enable_vulkan_loader) {
|
// }
|
||||||
// data_deps += [ "${dawn_vulkan_loader_dir}:libvulkan" ]
|
// if (enable_vulkan_loader) {
|
||||||
// }
|
// data_deps += [ "${dawn_vulkan_loader_dir}:libvulkan" ]
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
// TODO(build-system): swiftshader
|
||||||
// if (use_swiftshader) {
|
// if (use_swiftshader) {
|
||||||
// data_deps += [
|
// data_deps += [
|
||||||
// "${dawn_swiftshader_dir}/src/Vulkan:icd_file",
|
// "${dawn_swiftshader_dir}/src/Vulkan:icd_file",
|
||||||
|
|
@ -529,14 +544,16 @@ fn buildLibDawnNative(b: *Builder, step: *std.build.LibExeObjStep, options: Opti
|
||||||
// }
|
// }
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// TODO(build-system): opengl
|
if (options.opengl_es.?) {
|
||||||
// if (use_angle) {
|
// TODO(build-system): gles
|
||||||
// data_deps += [
|
// if (use_angle) {
|
||||||
// "${dawn_angle_dir}:libEGL",
|
// data_deps += [
|
||||||
// "${dawn_angle_dir}:libGLESv2",
|
// "${dawn_angle_dir}:libEGL",
|
||||||
// ]
|
// "${dawn_angle_dir}:libGLESv2",
|
||||||
// }
|
// ]
|
||||||
// }
|
// }
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
|
||||||
for ([_][]const u8{
|
for ([_][]const u8{
|
||||||
"src/dawn_native/DawnNative.cpp",
|
"src/dawn_native/DawnNative.cpp",
|
||||||
|
|
@ -546,27 +563,39 @@ fn buildLibDawnNative(b: *Builder, step: *std.build.LibExeObjStep, options: Opti
|
||||||
lib.addCSourceFile(abs_path, flags.items);
|
lib.addCSourceFile(abs_path, flags.items);
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO(build-system): d3d12
|
if (options.d3d12.?) {
|
||||||
// if (dawn_enable_d3d12) {
|
for ([_][]const u8{
|
||||||
// sources += [ "d3d12/D3D12Backend.cpp" ]
|
"src/dawn_native/d3d12/D3D12Backend.cpp",
|
||||||
// }
|
}) |path| {
|
||||||
// TODO(build-system): opengl
|
var abs_path = std.fs.path.join(b.allocator, &.{ thisDir(), "libs/dawn", path }) catch unreachable;
|
||||||
// if (dawn_enable_opengl) {
|
lib.addCSourceFile(abs_path, flags.items);
|
||||||
// sources += [ "opengl/OpenGLBackend.cpp" ]
|
}
|
||||||
// }
|
}
|
||||||
// TODO(build-system): vulkan
|
if (options.desktop_gl.?) {
|
||||||
// if (dawn_enable_vulkan) {
|
for ([_][]const u8{
|
||||||
// sources += [ "vulkan/VulkanBackend.cpp" ]
|
"src/dawn_native/opengl/OpenGLBackend.cpp",
|
||||||
// if (enable_vulkan_validation_layers) {
|
}) |path| {
|
||||||
// data_deps =
|
var abs_path = std.fs.path.join(b.allocator, &.{ thisDir(), "libs/dawn", path }) catch unreachable;
|
||||||
// [ "${dawn_vulkan_validation_layers_dir}:vulkan_validation_layers" ]
|
lib.addCSourceFile(abs_path, flags.items);
|
||||||
// if (!is_android) {
|
}
|
||||||
// data_deps +=
|
}
|
||||||
// [ "${dawn_vulkan_validation_layers_dir}:vulkan_gen_json_files" ]
|
if (options.vulkan.?) {
|
||||||
// }
|
for ([_][]const u8{
|
||||||
// }
|
"src/dawn_native/vulkan/VulkanBackend.cpp",
|
||||||
// }
|
}) |path| {
|
||||||
// }
|
var abs_path = std.fs.path.join(b.allocator, &.{ thisDir(), "libs/dawn", path }) catch unreachable;
|
||||||
|
lib.addCSourceFile(abs_path, flags.items);
|
||||||
|
}
|
||||||
|
// TODO(build-system): vulkan
|
||||||
|
// if (enable_vulkan_validation_layers) {
|
||||||
|
// data_deps =
|
||||||
|
// [ "${dawn_vulkan_validation_layers_dir}:vulkan_validation_layers" ]
|
||||||
|
// if (!is_android) {
|
||||||
|
// data_deps +=
|
||||||
|
// [ "${dawn_vulkan_validation_layers_dir}:vulkan_gen_json_files" ]
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
}
|
||||||
return lib;
|
return lib;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1335,15 +1364,23 @@ fn buildLibDawnUtils(b: *Builder, step: *std.build.LibExeObjStep, options: Optio
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO(build-system): opengl
|
if (options.desktop_gl.?) {
|
||||||
// if (dawn_enable_opengl) {
|
for ([_][]const u8{
|
||||||
// sources += [ "OpenGLBinding.cpp" ]
|
"src/utils/OpenGLBinding.cpp",
|
||||||
// }
|
}) |path| {
|
||||||
|
var abs_path = std.fs.path.join(b.allocator, &.{ thisDir(), "libs/dawn", path }) catch unreachable;
|
||||||
|
lib.addCSourceFile(abs_path, flags.items);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// TODO(build-system): vulkan
|
if (options.vulkan.?) {
|
||||||
// if (dawn_enable_vulkan) {
|
for ([_][]const u8{
|
||||||
// sources += [ "VulkanBinding.cpp" ]
|
"src/utils/VulkanBinding.cpp",
|
||||||
// }
|
}) |path| {
|
||||||
|
var abs_path = std.fs.path.join(b.allocator, &.{ thisDir(), "libs/dawn", path }) catch unreachable;
|
||||||
|
lib.addCSourceFile(abs_path, flags.items);
|
||||||
|
}
|
||||||
|
}
|
||||||
return lib;
|
return lib;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue