blob: a9b454a79fe2426d5b4ab8524e44f1c81a1857ff [file] [log] [blame]
# Copyright 2024 The Dawn & Tint Authors
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# 1. Redistributions of source code must retain the above copyright notice, this
# list of conditions and the following disclaimer.
#
# 2. Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# 3. Neither the name of the copyright holder nor the names of its
# contributors may be used to endorse or promote products derived from
# this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
import("../../scripts/dawn_overrides_with_defaults.gni")
import("${dawn_root}/generator/dawn_generator.gni")
dawn_json_generator("jni_gen") {
target = "jni"
outputs = [
"cpp/methods.cpp",
"cpp/structures.cpp",
"cpp/structures.h",
]
}
dawn_json_generator("kotlin_gen") {
target = "kotlin"
outputs = [
"java/android/dawn/Adapter.kt",
"java/android/dawn/AdapterInfo.kt",
"java/android/dawn/AdapterType.kt",
"java/android/dawn/AddressMode.kt",
"java/android/dawn/AsyncHelpers.kt",
"java/android/dawn/BackendType.kt",
"java/android/dawn/BindGroup.kt",
"java/android/dawn/BindGroupDescriptor.kt",
"java/android/dawn/BindGroupEntry.kt",
"java/android/dawn/BindGroupLayout.kt",
"java/android/dawn/BindGroupLayoutDescriptor.kt",
"java/android/dawn/BindGroupLayoutEntry.kt",
"java/android/dawn/BlendComponent.kt",
"java/android/dawn/BlendFactor.kt",
"java/android/dawn/BlendOperation.kt",
"java/android/dawn/BlendState.kt",
"java/android/dawn/Buffer.kt",
"java/android/dawn/BufferBindingLayout.kt",
"java/android/dawn/BufferBindingType.kt",
"java/android/dawn/BufferDescriptor.kt",
"java/android/dawn/BufferMapAsyncStatus.kt",
"java/android/dawn/BufferMapCallback.kt",
"java/android/dawn/BufferMapCallbackInfo.kt",
"java/android/dawn/BufferMapState.kt",
"java/android/dawn/BufferUsage.kt",
"java/android/dawn/CallbackMode.kt",
"java/android/dawn/Color.kt",
"java/android/dawn/ColorTargetState.kt",
"java/android/dawn/ColorWriteMask.kt",
"java/android/dawn/CommandBuffer.kt",
"java/android/dawn/CommandBufferDescriptor.kt",
"java/android/dawn/CommandEncoder.kt",
"java/android/dawn/CommandEncoderDescriptor.kt",
"java/android/dawn/CompareFunction.kt",
"java/android/dawn/CompilationInfo.kt",
"java/android/dawn/CompilationInfoCallback.kt",
"java/android/dawn/CompilationInfoCallbackInfo.kt",
"java/android/dawn/CompilationInfoRequestStatus.kt",
"java/android/dawn/CompilationMessage.kt",
"java/android/dawn/CompilationMessageType.kt",
"java/android/dawn/CompositeAlphaMode.kt",
"java/android/dawn/ComputePassDescriptor.kt",
"java/android/dawn/ComputePassEncoder.kt",
"java/android/dawn/ComputePassTimestampWrites.kt",
"java/android/dawn/ComputePipeline.kt",
"java/android/dawn/ComputePipelineDescriptor.kt",
"java/android/dawn/ConstantEntry.kt",
"java/android/dawn/Constants.kt",
"java/android/dawn/CreateComputePipelineAsyncCallback.kt",
"java/android/dawn/CreateComputePipelineAsyncCallbackInfo.kt",
"java/android/dawn/CreatePipelineAsyncStatus.kt",
"java/android/dawn/CreateRenderPipelineAsyncCallback.kt",
"java/android/dawn/CreateRenderPipelineAsyncCallbackInfo.kt",
"java/android/dawn/CullMode.kt",
"java/android/dawn/DepthStencilState.kt",
"java/android/dawn/Device.kt",
"java/android/dawn/DeviceDescriptor.kt",
"java/android/dawn/DeviceLostCallback.kt",
"java/android/dawn/DeviceLostCallbackInfo.kt",
"java/android/dawn/DeviceLostCallbackNew.kt",
"java/android/dawn/DeviceLostReason.kt",
"java/android/dawn/ErrorCallback.kt",
"java/android/dawn/ErrorFilter.kt",
"java/android/dawn/ErrorType.kt",
"java/android/dawn/Extent3D.kt",
"java/android/dawn/FeatureName.kt",
"java/android/dawn/FilterMode.kt",
"java/android/dawn/FragmentState.kt",
"java/android/dawn/FrontFace.kt",
"java/android/dawn/Functions.kt",
"java/android/dawn/Future.kt",
"java/android/dawn/FutureWaitInfo.kt",
"java/android/dawn/ImageCopyBuffer.kt",
"java/android/dawn/ImageCopyTexture.kt",
"java/android/dawn/IndexFormat.kt",
"java/android/dawn/Instance.kt",
"java/android/dawn/InstanceDescriptor.kt",
"java/android/dawn/InstanceFeatures.kt",
"java/android/dawn/Limits.kt",
"java/android/dawn/LoadOp.kt",
"java/android/dawn/MapAsyncStatus.kt",
"java/android/dawn/MapMode.kt",
"java/android/dawn/MipmapFilterMode.kt",
"java/android/dawn/MultisampleState.kt",
"java/android/dawn/OptionalBool.kt",
"java/android/dawn/Origin3D.kt",
"java/android/dawn/PipelineLayout.kt",
"java/android/dawn/PipelineLayoutDescriptor.kt",
"java/android/dawn/PopErrorScopeCallback.kt",
"java/android/dawn/PopErrorScopeCallbackInfo.kt",
"java/android/dawn/PopErrorScopeStatus.kt",
"java/android/dawn/PowerPreference.kt",
"java/android/dawn/PresentMode.kt",
"java/android/dawn/PrimitiveState.kt",
"java/android/dawn/PrimitiveTopology.kt",
"java/android/dawn/Proc.kt",
"java/android/dawn/ProgrammableStageDescriptor.kt",
"java/android/dawn/QuerySet.kt",
"java/android/dawn/QuerySetDescriptor.kt",
"java/android/dawn/QueryType.kt",
"java/android/dawn/Queue.kt",
"java/android/dawn/QueueDescriptor.kt",
"java/android/dawn/QueueWorkDoneCallback.kt",
"java/android/dawn/QueueWorkDoneCallbackInfo.kt",
"java/android/dawn/QueueWorkDoneStatus.kt",
"java/android/dawn/RenderBundle.kt",
"java/android/dawn/RenderBundleDescriptor.kt",
"java/android/dawn/RenderBundleEncoder.kt",
"java/android/dawn/RenderBundleEncoderDescriptor.kt",
"java/android/dawn/RenderPassColorAttachment.kt",
"java/android/dawn/RenderPassDepthStencilAttachment.kt",
"java/android/dawn/RenderPassDescriptor.kt",
"java/android/dawn/RenderPassMaxDrawCount.kt",
"java/android/dawn/RenderPassEncoder.kt",
"java/android/dawn/RenderPassTimestampWrites.kt",
"java/android/dawn/RenderPipeline.kt",
"java/android/dawn/RenderPipelineDescriptor.kt",
"java/android/dawn/RequestAdapterCallback.kt",
"java/android/dawn/RequestAdapterCallbackInfo.kt",
"java/android/dawn/RequestAdapterOptions.kt",
"java/android/dawn/RequestAdapterStatus.kt",
"java/android/dawn/RequestDeviceCallback.kt",
"java/android/dawn/RequestDeviceCallbackInfo.kt",
"java/android/dawn/RequestDeviceStatus.kt",
"java/android/dawn/RequiredLimits.kt",
"java/android/dawn/SType.kt",
"java/android/dawn/Sampler.kt",
"java/android/dawn/SamplerBindingLayout.kt",
"java/android/dawn/SamplerBindingType.kt",
"java/android/dawn/SamplerDescriptor.kt",
"java/android/dawn/ShaderModule.kt",
"java/android/dawn/ShaderModuleDescriptor.kt",
"java/android/dawn/ShaderSourceSPIRV.kt",
"java/android/dawn/ShaderSourceWGSL.kt",
"java/android/dawn/ShaderStage.kt",
"java/android/dawn/Status.kt",
"java/android/dawn/StencilFaceState.kt",
"java/android/dawn/StencilOperation.kt",
"java/android/dawn/StorageTextureAccess.kt",
"java/android/dawn/StorageTextureBindingLayout.kt",
"java/android/dawn/StoreOp.kt",
"java/android/dawn/SupportedLimits.kt",
"java/android/dawn/Surface.kt",
"java/android/dawn/SurfaceCapabilities.kt",
"java/android/dawn/SurfaceConfiguration.kt",
"java/android/dawn/SurfaceDescriptor.kt",
"java/android/dawn/SurfaceGetCurrentTextureStatus.kt",
"java/android/dawn/SurfaceSourceAndroidNativeWindow.kt",
"java/android/dawn/SurfaceTexture.kt",
"java/android/dawn/SwapChain.kt",
"java/android/dawn/SwapChainDescriptor.kt",
"java/android/dawn/Texture.kt",
"java/android/dawn/TextureAspect.kt",
"java/android/dawn/TextureBindingLayout.kt",
"java/android/dawn/TextureBindingViewDimensionDescriptor.kt",
"java/android/dawn/TextureDataLayout.kt",
"java/android/dawn/TextureDescriptor.kt",
"java/android/dawn/TextureDimension.kt",
"java/android/dawn/TextureFormat.kt",
"java/android/dawn/TextureSampleType.kt",
"java/android/dawn/TextureUsage.kt",
"java/android/dawn/TextureView.kt",
"java/android/dawn/TextureViewDescriptor.kt",
"java/android/dawn/TextureViewDimension.kt",
"java/android/dawn/UncapturedErrorCallbackInfo.kt",
"java/android/dawn/VertexAttribute.kt",
"java/android/dawn/VertexBufferLayout.kt",
"java/android/dawn/VertexFormat.kt",
"java/android/dawn/VertexState.kt",
"java/android/dawn/VertexStepMode.kt",
"java/android/dawn/WGSLFeatureName.kt",
"java/android/dawn/WaitStatus.kt",
]
}
group("android") {
deps = [
":jni_gen",
":kotlin_gen",
]
}