From 9dcacacca1f5eb89f163d827c29b46849b273f62 Mon Sep 17 00:00:00 2001 From: Stephen Gutekanst Date: Sun, 13 Feb 2022 01:40:48 -0700 Subject: [PATCH] gpu-dawn: use source scanning for dawn_native target Signed-off-by: Stephen Gutekanst --- gpu-dawn/build.zig | 17 ++++-- gpu-dawn/src/dawn/sources/dawn_native.cpp | 73 ----------------------- 2 files changed, 12 insertions(+), 78 deletions(-) delete mode 100644 gpu-dawn/src/dawn/sources/dawn_native.cpp diff --git a/gpu-dawn/build.zig b/gpu-dawn/build.zig index 9ff6ff7f..9d6654c3 100644 --- a/gpu-dawn/build.zig +++ b/gpu-dawn/build.zig @@ -518,10 +518,18 @@ fn buildLibDawnNative(b: *Builder, step: *std.build.LibExeObjStep, options: Opti }) catch unreachable; var sources = std.ArrayList([]const u8).init(b.allocator); - sources.appendSlice(&.{ - thisDir() ++ "/src/dawn/sources/dawn_native.cpp", - thisDir() ++ "/libs/dawn/out/Debug/gen/src/dawn/dawn_proc.c", - }) catch unreachable; + inline for (&[_][]const u8{ + "out/Debug/gen/src/dawn/", + "src/dawn_native/", + "src/dawn_native/utils/", + }) |dir| scanSources( + b, + &sources, + "libs/dawn/" ++ dir, + &.{ ".cpp", ".c", ".cc" }, + &.{}, + &.{ "test", "benchmark", "mock", "SpirvValidation.cpp", "XlibXcbFunctions.cpp" }, + ) catch unreachable; // dawn_native_utils_gen sources.append(thisDir() ++ "/src/dawn/sources/dawn_native_utils_gen.cpp") catch unreachable; @@ -763,7 +771,6 @@ fn buildLibDawnNative(b: *Builder, step: *std.build.LibExeObjStep, options: Opti } for ([_][]const u8{ - "src/dawn_native/DawnNative.cpp", "src/dawn_native/null/NullBackend.cpp", }) |path| { var abs_path = std.fs.path.join(b.allocator, &.{ thisDir(), "libs/dawn", path }) catch unreachable; diff --git a/gpu-dawn/src/dawn/sources/dawn_native.cpp b/gpu-dawn/src/dawn/sources/dawn_native.cpp deleted file mode 100644 index 683b2f50..00000000 --- a/gpu-dawn/src/dawn/sources/dawn_native.cpp +++ /dev/null @@ -1,73 +0,0 @@ -#include "out/Debug/gen/src/dawn/dawn_thread_dispatch_proc.cpp" -#include "out/Debug/gen/src/dawn/webgpu_cpp.cpp" - -#include "src/dawn_native/Adapter.cpp" -#include "src/dawn_native/AsyncTask.cpp" -#include "src/dawn_native/AttachmentState.cpp" -#include "src/dawn_native/BackendConnection.cpp" -#include "src/dawn_native/BindGroup.cpp" -#include "src/dawn_native/BindGroupLayout.cpp" -#include "src/dawn_native/BindingInfo.cpp" -#include "src/dawn_native/BuddyAllocator.cpp" -#include "src/dawn_native/BuddyMemoryAllocator.cpp" -#include "src/dawn_native/Buffer.cpp" -#include "src/dawn_native/CachedObject.cpp" -#include "src/dawn_native/CallbackTaskManager.cpp" -#include "src/dawn_native/CommandAllocator.cpp" -#include "src/dawn_native/CommandBuffer.cpp" -#include "src/dawn_native/CommandBufferStateTracker.cpp" -#include "src/dawn_native/CommandEncoder.cpp" -#include "src/dawn_native/CommandValidation.cpp" -#include "src/dawn_native/Commands.cpp" -#include "src/dawn_native/CompilationMessages.cpp" -#include "src/dawn_native/ComputePassEncoder.cpp" -#include "src/dawn_native/ComputePipeline.cpp" -#include "src/dawn_native/CopyTextureForBrowserHelper.cpp" -#include "src/dawn_native/CreatePipelineAsyncTask.cpp" -#include "src/dawn_native/Device.cpp" -#include "src/dawn_native/DynamicUploader.cpp" -#include "src/dawn_native/EncodingContext.cpp" -#include "src/dawn_native/Error.cpp" -#include "src/dawn_native/ErrorData.cpp" -#include "src/dawn_native/ErrorInjector.cpp" -#include "src/dawn_native/ErrorScope.cpp" -#include "src/dawn_native/ExternalTexture.cpp" -#include "src/dawn_native/Features.cpp" -#include "src/dawn_native/Format.cpp" -#include "src/dawn_native/IndirectDrawMetadata.cpp" -#include "src/dawn_native/IndirectDrawValidationEncoder.cpp" -#include "src/dawn_native/Instance.cpp" -#include "src/dawn_native/InternalPipelineStore.cpp" -#include "src/dawn_native/Limits.cpp" -#include "src/dawn_native/ObjectBase.cpp" -#include "src/dawn_native/ObjectContentHasher.cpp" -#include "src/dawn_native/PassResourceUsageTracker.cpp" -#include "src/dawn_native/PerStage.cpp" -#include "src/dawn_native/PersistentCache.cpp" -#include "src/dawn_native/Pipeline.cpp" -#include "src/dawn_native/PipelineLayout.cpp" -#include "src/dawn_native/PooledResourceMemoryAllocator.cpp" -#include "src/dawn_native/ProgrammableEncoder.cpp" -#include "src/dawn_native/QueryHelper.cpp" -#include "src/dawn_native/QuerySet.cpp" -#include "src/dawn_native/Queue.cpp" -#include "src/dawn_native/RenderBundle.cpp" -#include "src/dawn_native/RenderBundleEncoder.cpp" -#include "src/dawn_native/RenderEncoderBase.cpp" -#include "src/dawn_native/RenderPassEncoder.cpp" -#include "src/dawn_native/RenderPipeline.cpp" -#include "src/dawn_native/ResourceMemoryAllocation.cpp" -#include "src/dawn_native/RingBufferAllocator.cpp" -#include "src/dawn_native/Sampler.cpp" -#include "src/dawn_native/ScratchBuffer.cpp" -#include "src/dawn_native/ShaderModule.cpp" -#include "src/dawn_native/StagingBuffer.cpp" -#include "src/dawn_native/Subresource.cpp" -#include "src/dawn_native/Surface.cpp" -#include "src/dawn_native/SwapChain.cpp" -#include "src/dawn_native/Texture.cpp" -#include "src/dawn_native/TintUtils.cpp" -#include "src/dawn_native/Toggles.cpp" -#include "src/dawn_native/VertexFormat.cpp" -#include "src/dawn_native/webgpu_absl_format.cpp" -#include "src/dawn_native/utils/WGPUHelpers.cpp"