# 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.
_samplecode = get_path_info("../samplecode", "abspath")

samples_sources = [
  "$_samplecode/PerlinPatch.cpp",
  "$_samplecode/Sample.cpp",
  "$_samplecode/Sample.h",
  "$_samplecode/Sample2PtRadial.cpp",
  "$_samplecode/SampleAAClip.cpp",
  "$_samplecode/SampleAAGeometry.cpp",
  "$_samplecode/SampleAARectModes.cpp",
  "$_samplecode/SampleAARects.cpp",
  "$_samplecode/SampleAll.cpp",
  "$_samplecode/SampleAndroidShadows.cpp",
  "$_samplecode/SampleAnimatedImage.cpp",
  "$_samplecode/SampleAnimatedText.cpp",
  "$_samplecode/SampleAnimBlur.cpp",
  "$_samplecode/SampleArc.cpp",
  "$_samplecode/SampleAtlas.cpp",
  "$_samplecode/SampleBigBlur.cpp",
  "$_samplecode/SampleBigGradient.cpp",
  "$_samplecode/SampleBitmapRect.cpp",
  "$_samplecode/SampleBlur.cpp",
  "$_samplecode/SampleCCPRGeometry.cpp",
  "$_samplecode/SampleCamera.cpp",
  "$_samplecode/SampleChart.cpp",
  "$_samplecode/SampleChineseFling.cpp",
  "$_samplecode/SampleCircle.cpp",
  "$_samplecode/SampleClip.cpp",
  "$_samplecode/SampleClipDrawMatch.cpp",
  "$_samplecode/SampleClock.cpp",
  "$_samplecode/SampleColorFilter.cpp",
  "$_samplecode/SampleComplexClip.cpp",
  "$_samplecode/SampleConcavePaths.cpp",
  "$_samplecode/SampleCowboy.cpp",
  "$_samplecode/SampleCusp.cpp",
  "$_samplecode/SampleDegenerateTwoPtRadials.cpp",
  "$_samplecode/SampleEffects.cpp",
  "$_samplecode/SampleEmboss.cpp",
  "$_samplecode/SampleFatBits.cpp",
  "$_samplecode/SampleFillType.cpp",
  "$_samplecode/SampleFilter2.cpp",
  "$_samplecode/SampleFilterFuzz.cpp",
  "$_samplecode/SampleFilterQuality.cpp",
  "$_samplecode/SampleFlutterAnimate.cpp",
  "$_samplecode/SampleFontScalerTest.cpp",
  "$_samplecode/SampleFuzz.cpp",
  "$_samplecode/SampleGlyphTransform.cpp",
  "$_samplecode/SampleGradients.cpp",
  "$_samplecode/SampleHairCurves.cpp",
  "$_samplecode/SampleHairline.cpp",
  "$_samplecode/SampleHairModes.cpp",
  "$_samplecode/SampleHT.cpp",
  "$_samplecode/SampleIdentityScale.cpp",
  "$_samplecode/SampleLayerMask.cpp",
  "$_samplecode/SampleLayers.cpp",
  "$_samplecode/SampleLCD.cpp",
  "$_samplecode/SampleLighting.cpp",
  "$_samplecode/SampleLines.cpp",
  "$_samplecode/SampleLitAtlas.cpp",
  "$_samplecode/SampleManyRects.cpp",
  "$_samplecode/SampleMeasure.cpp",
  "$_samplecode/SampleMegaStroke.cpp",
  "$_samplecode/SampleNima.cpp",
  "$_samplecode/SamplePatch.cpp",
  "$_samplecode/SamplePath.cpp",
  "$_samplecode/SamplePathText.cpp",
  "$_samplecode/SamplePathClip.cpp",
  "$_samplecode/SamplePathEffects.cpp",
  "$_samplecode/SamplePathFuzz.cpp",
  "$_samplecode/SamplePathOverstroke.cpp",
  "$_samplecode/SamplePdfFileViewer.cpp",
  "$_samplecode/SamplePoints.cpp",
  "$_samplecode/SamplePolyToPoly.cpp",
  "$_samplecode/SampleQuadStroker.cpp",
  "$_samplecode/SampleRectanizer.cpp",
  "$_samplecode/SampleRegion.cpp",
  "$_samplecode/SampleRepeatTile.cpp",
  "$_samplecode/SampleShaders.cpp",
  "$_samplecode/SampleShadowColor.cpp",
  "$_samplecode/SampleShadowReference.cpp",
  "$_samplecode/SampleShadowUtils.cpp",
  "$_samplecode/SampleShip.cpp",
  "$_samplecode/SampleSlides.cpp",
  "$_samplecode/SampleStringArt.cpp",
  "$_samplecode/SampleStrokePath.cpp",
  "$_samplecode/SampleStrokeRect.cpp",
  "$_samplecode/SampleSubpixelTranslate.cpp",
  "$_samplecode/SampleSVGFile.cpp",
  "$_samplecode/SampleText.cpp",
  "$_samplecode/SampleTextAlpha.cpp",
  "$_samplecode/SampleTextBox.cpp",
  "$_samplecode/SampleTextEffects.cpp",
  "$_samplecode/SampleTextureDomain.cpp",
  "$_samplecode/SampleTiling.cpp",
  "$_samplecode/SampleUnpremul.cpp",
  "$_samplecode/SampleVertices.cpp",
  "$_samplecode/SampleWritePixels.cpp",
  "$_samplecode/SampleXfer.cpp",
  "$_samplecode/SampleXfermodesBlur.cpp",
  "$_samplecode/vertexdump.cpp",
]

if (is_win && is_clang) {
  samples_sources -= [ "$_samplecode/SampleNima.cpp" ]
}
