# Copyright 2021 Google LLC
#
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# Things are easiest for everyone if these source paths are absolute.
_src = get_path_info("../experimental/graphite/src", "abspath")
_include = get_path_info("../experimental/graphite/include", "abspath")

skia_graphite_public = [
  "$_include/BackendTexture.h",
  "$_include/Context.h",
  "$_include/GraphiteTypes.h",
  "$_include/Recorder.h",
  "$_include/Recording.h",
  "$_include/SkStuff.h",
  "$_include/TextureInfo.h",
]

skia_graphite_sources = [
  "$_src/Attribute.h",
  "$_src/BackendTexture.cpp",
  "$_src/Buffer.cpp",
  "$_src/Buffer.h",
  "$_src/Caps.cpp",
  "$_src/Caps.h",
  "$_src/CommandBuffer.cpp",
  "$_src/CommandBuffer.h",
  "$_src/Context.cpp",
  "$_src/ContextPriv.cpp",
  "$_src/ContextPriv.h",
  "$_src/ContextUtils.cpp",
  "$_src/ContextUtils.h",
  "$_src/CopyTask.cpp",
  "$_src/CopyTask.h",
  "$_src/Device.cpp",
  "$_src/Device.h",
  "$_src/DrawBufferManager.cpp",
  "$_src/DrawBufferManager.h",
  "$_src/DrawContext.cpp",
  "$_src/DrawContext.h",
  "$_src/DrawList.cpp",
  "$_src/DrawList.h",
  "$_src/DrawOrder.h",
  "$_src/DrawPass.cpp",
  "$_src/DrawPass.h",
  "$_src/DrawTypes.h",
  "$_src/DrawWriter.cpp",
  "$_src/DrawWriter.h",
  "$_src/EnumBitMask.h",
  "$_src/Gpu.cpp",
  "$_src/Gpu.h",
  "$_src/GpuWorkSubmission.h",
  "$_src/GraphicsPipeline.cpp",
  "$_src/GraphicsPipeline.h",
  "$_src/GraphicsPipelineDesc.cpp",
  "$_src/GraphicsPipelineDesc.h",
  "$_src/Image_Graphite.cpp",
  "$_src/Image_Graphite.h",
  "$_src/Log.h",
  "$_src/PaintParams.cpp",
  "$_src/PaintParams.h",
  "$_src/Recorder.cpp",
  "$_src/Recording.cpp",
  "$_src/RenderPassTask.cpp",
  "$_src/RenderPassTask.h",
  "$_src/Renderer.h",
  "$_src/Resource.cpp",
  "$_src/Resource.h",
  "$_src/ResourceProvider.cpp",
  "$_src/ResourceProvider.h",
  "$_src/ResourceTypes.h",
  "$_src/SkStuff.cpp",
  "$_src/Surface_Graphite.cpp",
  "$_src/Surface_Graphite.h",
  "$_src/Task.cpp",
  "$_src/Task.h",
  "$_src/TaskGraph.cpp",
  "$_src/TaskGraph.h",
  "$_src/Texture.cpp",
  "$_src/Texture.h",
  "$_src/TextureInfo.cpp",
  "$_src/TextureProxy.cpp",
  "$_src/TextureProxy.h",
  "$_src/Uniform.h",
  "$_src/UniformCache.cpp",
  "$_src/UniformCache.h",
  "$_src/UniformManager.cpp",
  "$_src/UniformManager.h",
  "$_src/geom/BoundsManager.h",
  "$_src/geom/IntersectionTree.cpp",
  "$_src/geom/IntersectionTree.h",
  "$_src/geom/Rect.h",
  "$_src/geom/Shape.cpp",
  "$_src/geom/Shape.h",
  "$_src/geom/Transform.cpp",
  "$_src/geom/Transform_graphite.h",
  "$_src/geom/VectorTypes.h",
  "$_src/render/StencilAndFillPathRenderer.cpp",
]

skia_graphite_mtl_sources = [
  "$_include/mtl/MtlBackendContext.h",
  "$_include/mtl/MtlTypes.h",
  "$_include/private/MtlTypesPriv.h",
  "$_src/mtl/MtlBlitCommandEncoder.h",
  "$_src/mtl/MtlBuffer.h",
  "$_src/mtl/MtlBuffer.mm",
  "$_src/mtl/MtlCaps.h",
  "$_src/mtl/MtlCaps.mm",
  "$_src/mtl/MtlCommandBuffer.h",
  "$_src/mtl/MtlCommandBuffer.mm",
  "$_src/mtl/MtlGpu.h",
  "$_src/mtl/MtlGpu.mm",
  "$_src/mtl/MtlGraphicsPipeline.h",
  "$_src/mtl/MtlGraphicsPipeline.mm",
  "$_src/mtl/MtlRenderCommandEncoder.h",
  "$_src/mtl/MtlResourceProvider.h",
  "$_src/mtl/MtlResourceProvider.mm",
  "$_src/mtl/MtlTexture.h",
  "$_src/mtl/MtlTexture.mm",
  "$_src/mtl/MtlTrampoline.h",
  "$_src/mtl/MtlTrampoline.mm",
  "$_src/mtl/MtlTypesPriv.mm",
  "$_src/mtl/MtlUtils.h",
  "$_src/mtl/MtlUtils.mm",
]
