# 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/BenchLogger.cpp",
  "$_bench/Benchmark.cpp",
  "$_bench/BezierBench.cpp",
  "$_bench/BigPathBench.cpp",
  "$_bench/BitmapBench.cpp",
  "$_bench/BitmapRectBench.cpp",
  "$_bench/BitmapRegionDecoderBench.cpp",
  "$_bench/BlendmodeBench.cpp",
  "$_bench/BlurBench.cpp",
  "$_bench/BlurImageFilterBench.cpp",
  "$_bench/BlurRectBench.cpp",
  "$_bench/BlurRectsBench.cpp",
  "$_bench/BlurRoundRectBench.cpp",
  "$_bench/ChartBench.cpp",
  "$_bench/ChecksumBench.cpp",
  "$_bench/ChromeBench.cpp",
  "$_bench/ClearBench.cpp",
  "$_bench/ClipMaskBench.cpp",
  "$_bench/ClipStrategyBench.cpp",
  "$_bench/CmapBench.cpp",
  "$_bench/CodecBench.cpp",
  "$_bench/ColorFilterBench.cpp",
  "$_bench/ColorPrivBench.cpp",
  "$_bench/CompositingImagesBench.cpp",
  "$_bench/ControlBench.cpp",
  "$_bench/CoverageBench.cpp",
  "$_bench/CubicKLMBench.cpp",
  "$_bench/CubicMapBench.cpp",
  "$_bench/DashBench.cpp",
  "$_bench/DisplacementBench.cpp",
  "$_bench/DrawBitmapAABench.cpp",
  "$_bench/DrawLatticeBench.cpp",
  "$_bench/EncodeBench.cpp",
  "$_bench/FontCacheBench.cpp",
  "$_bench/FSRectBench.cpp",
  "$_bench/GameBench.cpp",
  "$_bench/GeometryBench.cpp",
  "$_bench/GMBench.cpp",
  "$_bench/GradientBench.cpp",
  "$_bench/GrCCFillGeometryBench.cpp",
  "$_bench/GrMemoryPoolBench.cpp",
  "$_bench/GrMipMapBench.cpp",
  "$_bench/GrResourceCacheBench.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/MagnifierBench.cpp",
  "$_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/PatchBench.cpp",
  "$_bench/PathBench.cpp",
  "$_bench/PathIterBench.cpp",
  "$_bench/PathOpsBench.cpp",
  "$_bench/PathTextBench.cpp",
  "$_bench/PDFBench.cpp",
  "$_bench/PerlinNoiseBench.cpp",
  "$_bench/PictureNestingBench.cpp",
  "$_bench/PictureOverheadBench.cpp",
  "$_bench/PicturePlaybackBench.cpp",
  "$_bench/PolyUtilsBench.cpp",
  "$_bench/PremulAndUnpremulAlphaOpsBench.cpp",
  "$_bench/QuickRejectBench.cpp",
  "$_bench/ReadPixBench.cpp",
  "$_bench/RecordingBench.cpp",
  "$_bench/RectanizerBench.cpp",
  "$_bench/RectBench.cpp",
  "$_bench/RectoriBench.cpp",
  "$_bench/RefCntBench.cpp",
  "$_bench/RegionBench.cpp",
  "$_bench/RegionContainBench.cpp",
  "$_bench/RepeatTileBench.cpp",
  "$_bench/RotatedRectBench.cpp",
  "$_bench/RTreeBench.cpp",
  "$_bench/ScalarBench.cpp",
  "$_bench/ShaderMaskFilterBench.cpp",
  "$_bench/ShadowBench.cpp",
  "$_bench/ShapesBench.cpp",
  "$_bench/Sk4fBench.cpp",
  "$_bench/SkGlyphCacheBench.cpp",
  "$_bench/SKPAnimationBench.cpp",
  "$_bench/SKPBench.cpp",
  "$_bench/StreamBench.cpp",
  "$_bench/SortBench.cpp",
  "$_bench/StrokeBench.cpp",
  "$_bench/SwizzleBench.cpp",
  "$_bench/TableBench.cpp",
  "$_bench/TextBlobBench.cpp",
  "$_bench/TileBench.cpp",
  "$_bench/TileImageFilterBench.cpp",
  "$_bench/TopoSortBench.cpp",
  "$_bench/TypefaceBench.cpp",
  "$_bench/VertBench.cpp",
  "$_bench/VertexColorSpaceBench.cpp",
  "$_bench/WritePixelsBench.cpp",
  "$_bench/WriterBench.cpp",
]
