# 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/ColorSpaceBench.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/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",
]

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

bench_sources += ganesh_bench_sources
