# Include this gypi to include all 'effects' files
# The parent gyp/gypi file must define:
#       'skia_src_path'     e.g. skia/trunk/src
#       'skia_include_path' e.g. skia/trunk/include
#
# The skia build defines these in common_variables.gypi.
#
{
  'sources': [
    '<(skia_src_path)/effects/Sk1DPathEffect.cpp',
    '<(skia_src_path)/effects/Sk2DPathEffect.cpp',
    '<(skia_src_path)/effects/SkAvoidXfermode.cpp',
    '<(skia_src_path)/effects/SkArithmeticMode.cpp',
    '<(skia_src_path)/effects/SkBicubicImageFilter.cpp',
    '<(skia_src_path)/effects/SkBitmapSource.cpp',
    '<(skia_src_path)/effects/SkBlendImageFilter.cpp',
    '<(skia_src_path)/effects/SkBlurDrawLooper.cpp',
    '<(skia_src_path)/effects/SkBlurMask.cpp',
    '<(skia_src_path)/effects/SkBlurMask.h',
    '<(skia_src_path)/effects/SkBlurImageFilter.cpp',
    '<(skia_src_path)/effects/SkBlurMaskFilter.cpp',
    '<(skia_src_path)/effects/SkColorFilters.cpp',
    '<(skia_src_path)/effects/SkColorFilterImageFilter.cpp',
    '<(skia_src_path)/effects/SkColorMatrix.cpp',
    '<(skia_src_path)/effects/SkColorMatrixFilter.cpp',
    '<(skia_src_path)/effects/SkCornerPathEffect.cpp',
    '<(skia_src_path)/effects/SkDashPathEffect.cpp',
    '<(skia_src_path)/effects/SkDiscretePathEffect.cpp',
    '<(skia_src_path)/effects/SkDisplacementMapEffect.cpp',
    '<(skia_src_path)/effects/SkEmbossMask.cpp',
    '<(skia_src_path)/effects/SkEmbossMask.h',
    '<(skia_src_path)/effects/SkEmbossMask_Table.h',
    '<(skia_src_path)/effects/SkEmbossMaskFilter.cpp',
    '<(skia_src_path)/effects/SkKernel33MaskFilter.cpp',
    '<(skia_src_path)/effects/SkLayerDrawLooper.cpp',
    '<(skia_src_path)/effects/SkLayerRasterizer.cpp',
    '<(skia_src_path)/effects/SkLightingImageFilter.cpp',
    '<(skia_src_path)/effects/SkMatrixConvolutionImageFilter.cpp',
    '<(skia_src_path)/effects/SkMergeImageFilter.cpp',
    '<(skia_src_path)/effects/SkMorphologyImageFilter.cpp',
    '<(skia_src_path)/effects/SkOffsetImageFilter.cpp',
    '<(skia_src_path)/effects/SkPaintFlagsDrawFilter.cpp',
    '<(skia_src_path)/effects/SkPixelXorXfermode.cpp',
    '<(skia_src_path)/effects/SkPorterDuff.cpp',
    '<(skia_src_path)/effects/SkSingleInputImageFilter.cpp',
    '<(skia_src_path)/effects/SkStippleMaskFilter.cpp',
    '<(skia_src_path)/effects/SkTableColorFilter.cpp',
    '<(skia_src_path)/effects/SkTableMaskFilter.cpp',
    '<(skia_src_path)/effects/SkTestImageFilters.cpp',
    '<(skia_src_path)/effects/SkTransparentShader.cpp',
    '<(skia_src_path)/effects/SkMagnifierImageFilter.cpp',

    '<(skia_src_path)/effects/gradients/SkBitmapCache.cpp',
    '<(skia_src_path)/effects/gradients/SkBitmapCache.h',
    '<(skia_src_path)/effects/gradients/SkClampRange.cpp',
    '<(skia_src_path)/effects/gradients/SkClampRange.h',
    '<(skia_src_path)/effects/gradients/SkRadialGradient_Table.h',
    '<(skia_src_path)/effects/gradients/SkGradientShader.cpp',
    '<(skia_src_path)/effects/gradients/SkGradientShaderPriv.h',
    '<(skia_src_path)/effects/gradients/SkLinearGradient.cpp',
    '<(skia_src_path)/effects/gradients/SkLinearGradient.h',
    '<(skia_src_path)/effects/gradients/SkRadialGradient.cpp',
    '<(skia_src_path)/effects/gradients/SkRadialGradient.h',
    '<(skia_src_path)/effects/gradients/SkTwoPointRadialGradient.cpp',
    '<(skia_src_path)/effects/gradients/SkTwoPointRadialGradient.h',
    '<(skia_src_path)/effects/gradients/SkTwoPointConicalGradient.cpp',
    '<(skia_src_path)/effects/gradients/SkTwoPointConicalGradient.h',
    '<(skia_src_path)/effects/gradients/SkSweepGradient.cpp',
    '<(skia_src_path)/effects/gradients/SkSweepGradient.h',

    '<(skia_include_path)/effects/Sk1DPathEffect.h',
    '<(skia_include_path)/effects/Sk2DPathEffect.h',
    '<(skia_include_path)/effects/SkAvoidXfermode.h',
    '<(skia_include_path)/effects/SkArithmeticMode.h',
    '<(skia_include_path)/effects/SkBitmapSource.h',
    '<(skia_include_path)/effects/SkBlendImageFilter.h',
    '<(skia_include_path)/effects/SkBlurDrawLooper.h',
    '<(skia_include_path)/effects/SkBlurImageFilter.h',
    '<(skia_include_path)/effects/SkBlurMaskFilter.h',
    '<(skia_include_path)/effects/SkColorMatrix.h',
    '<(skia_include_path)/effects/SkColorMatrixFilter.h',
    '<(skia_include_path)/effects/SkColorFilterImageFilter.h',
    '<(skia_include_path)/effects/SkCornerPathEffect.h',
    '<(skia_include_path)/effects/SkDashPathEffect.h',
    '<(skia_include_path)/effects/SkDiscretePathEffect.h',
    '<(skia_include_path)/effects/SkDisplacementMapEffect.h',
    '<(skia_include_path)/effects/SkDrawExtraPathEffect.h',
    '<(skia_include_path)/effects/SkEmbossMaskFilter.h',
    '<(skia_include_path)/effects/SkGradientShader.h',
    '<(skia_include_path)/effects/SkKernel33MaskFilter.h',
    '<(skia_include_path)/effects/SkLayerDrawLooper.h',
    '<(skia_include_path)/effects/SkLayerRasterizer.h',
    '<(skia_include_path)/effects/SkLightingImageFilter.h',
    '<(skia_include_path)/effects/SkOffsetImageFilter.h',
    '<(skia_include_path)/effects/SkMorphologyImageFilter.h',
    '<(skia_include_path)/effects/SkPaintFlagsDrawFilter.h',
    '<(skia_include_path)/effects/SkPixelXorXfermode.h',
    '<(skia_include_path)/effects/SkPorterDuff.h',
    '<(skia_include_path)/effects/SkSingleInputImageFilter.h',
    '<(skia_include_path)/effects/SkStippleMaskFilter.h',
    '<(skia_include_path)/effects/SkTableColorFilter.h',
    '<(skia_include_path)/effects/SkTableMaskFilter.h',
    '<(skia_include_path)/effects/SkTransparentShader.h',
    '<(skia_include_path)/effects/SkMagnifierImageFilter.h',
  ],
}

# Local Variables:
# tab-width:2
# indent-tabs-mode:nil
# End:
# vim: set expandtab tabstop=2 shiftwidth=2:
