# Copyright 2016 Google Inc.
#
# 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.
_bench = get_path_info("../bench", "abspath")

bench_sources = [
  "$_bench/AAClipBench.cpp",
  "$_bench/AlternatingColorPatternBench.cpp",
  "$_bench/AndroidCodecBench.cpp",
  "$_bench/AndroidCodecBench.h",
  "$_bench/BenchLogger.cpp",
  "$_bench/BenchLogger.h",
  "$_bench/Benchmark.cpp",
  "$_bench/Benchmark.h",
  "$_bench/BezierBench.cpp",
  "$_bench/BigPath.cpp",
  "$_bench/BigPath.h",
  "$_bench/BigPathBench.cpp",
  "$_bench/BitmapRegionDecoderBench.cpp",
  "$_bench/BitmapRegionDecoderBench.h",
  "$_bench/BlendmodeBench.cpp",
  "$_bench/BlurBench.cpp",
  "$_bench/BlurImageFilterBench.cpp",
  "$_bench/BlurRectBench.cpp",
  "$_bench/BlurRectsBench.cpp",
  "$_bench/CanvasSaveRestoreBench.cpp",
  "$_bench/ChartBench.cpp",
  "$_bench/ChecksumBench.cpp",
  "$_bench/ChromeBench.cpp",
  "$_bench/ClipMaskBench.cpp",
  "$_bench/ClipStrategyBench.cpp",
  "$_bench/CmapBench.cpp",
  "$_bench/CodecBench.cpp",
  "$_bench/CodecBench.h",
  "$_bench/CodecBenchPriv.h",
  "$_bench/ColorFilterBench.cpp",
  "$_bench/ColorPrivBench.cpp",
  "$_bench/CompositingImagesBench.cpp",
  "$_bench/ControlBench.cpp",
  "$_bench/CoverageBench.cpp",
  "$_bench/CreateBackendTextureBench.cpp",
  "$_bench/CubicMapBench.cpp",
  "$_bench/DDLRecorderBench.cpp",
  "$_bench/DashBench.cpp",
  "$_bench/DecodeBench.cpp",
  "$_bench/DisplacementBench.cpp",
  "$_bench/DrawBitmapAABench.cpp",
  "$_bench/EncodeBench.cpp",
  "$_bench/FSRectBench.cpp",
  "$_bench/FilteringBench.cpp",
  "$_bench/FindCubicConvex180ChopsBench.cpp",
  "$_bench/FontCacheBench.cpp",
  "$_bench/GMBench.cpp",
  "$_bench/GMBench.h",
  "$_bench/GameBench.cpp",
  "$_bench/GeometryBench.cpp",
  "$_bench/GlyphQuadFillBench.cpp",
  "$_bench/GrMemoryPoolBench.cpp",
  "$_bench/GrMipmapBench.cpp",
  "$_bench/GrQuadBench.cpp",
  "$_bench/GrResourceCacheBench.cpp",
  "$_bench/GradientBench.cpp",
  "$_bench/HairlinePathBench.cpp",
  "$_bench/HardStopGradientBench_ScaleNumColors.cpp",
  "$_bench/HardStopGradientBench_ScaleNumHardStops.cpp",
  "$_bench/HardStopGradientBench_SpecialHardStops.cpp",
  "$_bench/ImageBench.cpp",
  "$_bench/ImageCacheBench.cpp",
  "$_bench/ImageCacheBudgetBench.cpp",
  "$_bench/ImageCycleBench.cpp",
  "$_bench/ImageFilterCollapse.cpp",
  "$_bench/ImageFilterDAGBench.cpp",
  "$_bench/InterpBench.cpp",
  "$_bench/JSONBench.cpp",
  "$_bench/LightingBench.cpp",
  "$_bench/LineBench.cpp",
  "$_bench/MSKPBench.cpp",
  "$_bench/MSKPBench.h",
  "$_bench/MathBench.cpp",
  "$_bench/Matrix44Bench.cpp",
  "$_bench/MatrixBench.cpp",
  "$_bench/MatrixConvolutionBench.cpp",
  "$_bench/MemsetBench.cpp",
  "$_bench/MergeBench.cpp",
  "$_bench/MipmapBench.cpp",
  "$_bench/MorphologyBench.cpp",
  "$_bench/MutexBench.cpp",
  "$_bench/PDFBench.cpp",
  "$_bench/ParagraphBench.cpp",
  "$_bench/PatchBench.cpp",
  "$_bench/PathBench.cpp",
  "$_bench/PathIterBench.cpp",
  "$_bench/PathOpsBench.cpp",
  "$_bench/PathTextBench.cpp",
  "$_bench/PerlinNoiseBench.cpp",
  "$_bench/PictureNestingBench.cpp",
  "$_bench/PictureOverheadBench.cpp",
  "$_bench/PicturePlaybackBench.cpp",
  "$_bench/PolyUtilsBench.cpp",
  "$_bench/PremulAndUnpremulAlphaOpsBench.cpp",
  "$_bench/QuickRejectBench.cpp",
  "$_bench/RTreeBench.cpp",
  "$_bench/ReadPixBench.cpp",
  "$_bench/RecordingBench.cpp",
  "$_bench/RecordingBench.h",
  "$_bench/RectBench.cpp",
  "$_bench/RectanizerBench.cpp",
  "$_bench/RefCntBench.cpp",
  "$_bench/RegionBench.cpp",
  "$_bench/RegionContainBench.cpp",
  "$_bench/RepeatTileBench.cpp",
  "$_bench/ResultsWriter.h",
  "$_bench/RotatedRectBench.cpp",
  "$_bench/SKPAnimationBench.cpp",
  "$_bench/SKPAnimationBench.h",
  "$_bench/SKPBench.cpp",
  "$_bench/SKPBench.h",
  "$_bench/ScalarBench.cpp",
  "$_bench/ShaderMaskFilterBench.cpp",
  "$_bench/ShadowBench.cpp",
  "$_bench/ShapesBench.cpp",
  "$_bench/Sk4fBench.cpp",
  "$_bench/SkGlyphCacheBench.cpp",
  "$_bench/SkGlyphCacheBench.h",
  "$_bench/SkSLBench.cpp",
  "$_bench/SkSLBench.h",
  "$_bench/SortBench.cpp",
  "$_bench/StreamBench.cpp",
  "$_bench/StrokeBench.cpp",
  "$_bench/SwizzleBench.cpp",
  "$_bench/TableBench.cpp",
  "$_bench/TessellateBench.cpp",
  "$_bench/TextBlobBench.cpp",
  "$_bench/TileBench.cpp",
  "$_bench/TileImageFilterBench.cpp",
  "$_bench/TopoSortBench.cpp",
  "$_bench/TriangulatorBench.cpp",
  "$_bench/TypefaceBench.cpp",
  "$_bench/VertBench.cpp",
  "$_bench/WritePixelsBench.cpp",
  "$_bench/WriterBench.cpp",
  "$_bench/gUniqueGlyphIDs.h",
]

graphite_bench_sources = [
  "$_bench/graphite/BoundsManagerBench.cpp",
  "$_bench/graphite/IntersectionTreeBench.cpp",
]

skgpu_v1_bench_sources = [
  "$_bench/BulkRectBench.cpp",
  "$_bench/ClearBench.cpp",
  "$_bench/VertexColorSpaceBench.cpp",
]

bench_sources += skgpu_v1_bench_sources
