Roll external/skia 8d6b2b6f6..f065907cc (4 commits)
https://skia.googlesource.com/skia.git/+log/8d6b2b6f6..f065907cc
2018-09-27 michaelludwig@google.com Reland "Implement an explicit binary search-based analytic gradient colorizer"
2018-09-27 mtklein@google.com bump NDK packages to r18
2018-09-27 mtklein@google.com add test that setLastPt() invalidates path bounds
2018-09-27 skia-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/externals/angle2 115e8a2625f5..122919bddd98 (1 commits)
The AutoRoll server is located here: https://autoroll-internal.skia.org/r/android-master-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
Test: Presubmit checks will test this change.
Change-Id: I657bc2f7054e15374621f91fd636877d52ad3b8d
Exempt-From-Owner-Approval: The autoroll bot does not require owner approval.
diff --git a/Android.bp b/Android.bp
new file mode 100644
index 0000000..6aff383
--- /dev/null
+++ b/Android.bp
@@ -0,0 +1,2369 @@
+// This file is autogenerated by gn_to_bp.py.
+
+cc_library_static {
+ name: "libskia",
+ cflags: [
+ "-U_FORTIFY_SOURCE",
+ "-DATRACE_TAG=ATRACE_TAG_VIEW",
+ "-DSKIA_DLL",
+ "-DSKIA_IMPLEMENTATION=1",
+ "-DSK_PRINT_CODEC_MESSAGES",
+ "-D_FORTIFY_SOURCE=1",
+ "-Wno-implicit-fallthrough",
+ "-Wno-missing-field-initializers",
+ "-Wno-thread-safety-analysis",
+ "-Wno-unused-parameter",
+ "-Wno-unused-variable",
+ "-fvisibility=hidden",
+ ],
+
+ cppflags:[
+ "-fexceptions",
+ ],
+
+ export_include_dirs: [
+ "include/android/",
+ "include/atlastext/",
+ "include/c/",
+ "include/codec/",
+ "include/config/",
+ "include/core/",
+ "include/docs/",
+ "include/effects/",
+ "include/encode/",
+ "include/gpu/",
+ "include/pathops/",
+ "include/ports/",
+ "include/svg/",
+ "include/utils/",
+ "include/utils/mac/",
+ ],
+
+ local_include_dirs: [
+ "include/android/",
+ "include/atlastext/",
+ "include/c/",
+ "include/codec/",
+ "include/config/",
+ "include/core/",
+ "include/docs/",
+ "include/effects/",
+ "include/encode/",
+ "include/gpu/",
+ "include/pathops/",
+ "include/ports/",
+ "include/private/",
+ "include/svg/",
+ "include/utils/",
+ "include/utils/mac/",
+ "src/c/",
+ "src/codec/",
+ "src/core/",
+ "src/effects/",
+ "src/fonts/",
+ "src/gpu/",
+ "src/image/",
+ "src/images/",
+ "src/lazy/",
+ "src/opts/",
+ "src/pathops/",
+ "src/pdf/",
+ "src/ports/",
+ "src/sfnt/",
+ "src/shaders/",
+ "src/shaders/gradients/",
+ "src/sksl/",
+ "src/utils/",
+ "src/utils/win/",
+ "src/xml/",
+ "third_party/gif/",
+ "third_party/skcms",
+ "third_party/vulkanmemoryallocator/",
+ ],
+
+ srcs: [
+ "src/android/SkAndroidFrameworkUtils.cpp",
+ "src/android/SkAnimatedImage.cpp",
+ "src/android/SkBitmapRegionCodec.cpp",
+ "src/android/SkBitmapRegionDecoder.cpp",
+ "src/c/sk_effects.cpp",
+ "src/c/sk_paint.cpp",
+ "src/c/sk_surface.cpp",
+ "src/codec/SkAndroidCodec.cpp",
+ "src/codec/SkBmpBaseCodec.cpp",
+ "src/codec/SkBmpCodec.cpp",
+ "src/codec/SkBmpMaskCodec.cpp",
+ "src/codec/SkBmpRLECodec.cpp",
+ "src/codec/SkBmpStandardCodec.cpp",
+ "src/codec/SkCodec.cpp",
+ "src/codec/SkCodecImageGenerator.cpp",
+ "src/codec/SkColorTable.cpp",
+ "src/codec/SkEncodedInfo.cpp",
+ "src/codec/SkGifCodec.cpp",
+ "src/codec/SkHeifCodec.cpp",
+ "src/codec/SkIcoCodec.cpp",
+ "src/codec/SkJpegCodec.cpp",
+ "src/codec/SkJpegDecoderMgr.cpp",
+ "src/codec/SkJpegUtility.cpp",
+ "src/codec/SkMaskSwizzler.cpp",
+ "src/codec/SkMasks.cpp",
+ "src/codec/SkPngCodec.cpp",
+ "src/codec/SkRawAdapterCodec.cpp",
+ "src/codec/SkRawCodec.cpp",
+ "src/codec/SkSampledCodec.cpp",
+ "src/codec/SkSampler.cpp",
+ "src/codec/SkStreamBuffer.cpp",
+ "src/codec/SkSwizzler.cpp",
+ "src/codec/SkWbmpCodec.cpp",
+ "src/codec/SkWebpAdapterCodec.cpp",
+ "src/codec/SkWebpCodec.cpp",
+ "src/core/SkAAClip.cpp",
+ "src/core/SkATrace.cpp",
+ "src/core/SkAlphaRuns.cpp",
+ "src/core/SkAnalyticEdge.cpp",
+ "src/core/SkAnnotation.cpp",
+ "src/core/SkArenaAlloc.cpp",
+ "src/core/SkAutoPixmapStorage.cpp",
+ "src/core/SkBBHFactory.cpp",
+ "src/core/SkBigPicture.cpp",
+ "src/core/SkBitmap.cpp",
+ "src/core/SkBitmapCache.cpp",
+ "src/core/SkBitmapController.cpp",
+ "src/core/SkBitmapDevice.cpp",
+ "src/core/SkBitmapProcState.cpp",
+ "src/core/SkBitmapProcState_matrixProcs.cpp",
+ "src/core/SkBitmapProvider.cpp",
+ "src/core/SkBlendMode.cpp",
+ "src/core/SkBlitMask_D32.cpp",
+ "src/core/SkBlitRow_D32.cpp",
+ "src/core/SkBlitter.cpp",
+ "src/core/SkBlitter_A8.cpp",
+ "src/core/SkBlitter_ARGB32.cpp",
+ "src/core/SkBlitter_RGB565.cpp",
+ "src/core/SkBlitter_Sprite.cpp",
+ "src/core/SkBlurMF.cpp",
+ "src/core/SkBlurMask.cpp",
+ "src/core/SkBuffer.cpp",
+ "src/core/SkCachedData.cpp",
+ "src/core/SkCanvas.cpp",
+ "src/core/SkCanvasPriv.cpp",
+ "src/core/SkClipStack.cpp",
+ "src/core/SkClipStackDevice.cpp",
+ "src/core/SkColor.cpp",
+ "src/core/SkColorFilter.cpp",
+ "src/core/SkColorMatrixFilterRowMajor255.cpp",
+ "src/core/SkColorSpace.cpp",
+ "src/core/SkColorSpaceXform.cpp",
+ "src/core/SkColorSpaceXformCanvas.cpp",
+ "src/core/SkColorSpaceXformSteps.cpp",
+ "src/core/SkColorSpaceXformer.cpp",
+ "src/core/SkConvertPixels.cpp",
+ "src/core/SkCoverageDelta.cpp",
+ "src/core/SkCpu.cpp",
+ "src/core/SkCubicClipper.cpp",
+ "src/core/SkCubicMap.cpp",
+ "src/core/SkData.cpp",
+ "src/core/SkDataTable.cpp",
+ "src/core/SkDebug.cpp",
+ "src/core/SkDeferredDisplayList.cpp",
+ "src/core/SkDeferredDisplayListRecorder.cpp",
+ "src/core/SkDeque.cpp",
+ "src/core/SkDevice.cpp",
+ "src/core/SkDistanceFieldGen.cpp",
+ "src/core/SkDocument.cpp",
+ "src/core/SkDraw.cpp",
+ "src/core/SkDrawLooper.cpp",
+ "src/core/SkDrawShadowInfo.cpp",
+ "src/core/SkDraw_vertices.cpp",
+ "src/core/SkDrawable.cpp",
+ "src/core/SkEdge.cpp",
+ "src/core/SkEdgeBuilder.cpp",
+ "src/core/SkEdgeClipper.cpp",
+ "src/core/SkExecutor.cpp",
+ "src/core/SkFDot6Constants.cpp",
+ "src/core/SkFlattenable.cpp",
+ "src/core/SkFont.cpp",
+ "src/core/SkFontDescriptor.cpp",
+ "src/core/SkFontLCDConfig.cpp",
+ "src/core/SkFontMgr.cpp",
+ "src/core/SkFontStream.cpp",
+ "src/core/SkGaussFilter.cpp",
+ "src/core/SkGeometry.cpp",
+ "src/core/SkGlobalInitialization_core.cpp",
+ "src/core/SkGlyph.cpp",
+ "src/core/SkGlyphCache.cpp",
+ "src/core/SkGlyphRun.cpp",
+ "src/core/SkGlyphRunPainter.cpp",
+ "src/core/SkGpuBlurUtils.cpp",
+ "src/core/SkGraphics.cpp",
+ "src/core/SkHalf.cpp",
+ "src/core/SkICC.cpp",
+ "src/core/SkImageFilter.cpp",
+ "src/core/SkImageFilterCache.cpp",
+ "src/core/SkImageGenerator.cpp",
+ "src/core/SkImageInfo.cpp",
+ "src/core/SkLatticeIter.cpp",
+ "src/core/SkLights.cpp",
+ "src/core/SkLineClipper.cpp",
+ "src/core/SkLiteDL.cpp",
+ "src/core/SkLiteRecorder.cpp",
+ "src/core/SkLocalMatrixImageFilter.cpp",
+ "src/core/SkMD5.cpp",
+ "src/core/SkMallocPixelRef.cpp",
+ "src/core/SkMask.cpp",
+ "src/core/SkMaskBlurFilter.cpp",
+ "src/core/SkMaskCache.cpp",
+ "src/core/SkMaskFilter.cpp",
+ "src/core/SkMaskGamma.cpp",
+ "src/core/SkMath.cpp",
+ "src/core/SkMatrix.cpp",
+ "src/core/SkMatrix44.cpp",
+ "src/core/SkMatrixImageFilter.cpp",
+ "src/core/SkMetaData.cpp",
+ "src/core/SkMiniRecorder.cpp",
+ "src/core/SkMipMap.cpp",
+ "src/core/SkModeColorFilter.cpp",
+ "src/core/SkMultiPictureDraw.cpp",
+ "src/core/SkNormalFlatSource.cpp",
+ "src/core/SkNormalMapSource.cpp",
+ "src/core/SkNormalSource.cpp",
+ "src/core/SkOpts.cpp",
+ "src/core/SkOverdrawCanvas.cpp",
+ "src/core/SkPaint.cpp",
+ "src/core/SkPaintPriv.cpp",
+ "src/core/SkPath.cpp",
+ "src/core/SkPathEffect.cpp",
+ "src/core/SkPathMeasure.cpp",
+ "src/core/SkPathRef.cpp",
+ "src/core/SkPath_serial.cpp",
+ "src/core/SkPicture.cpp",
+ "src/core/SkPictureData.cpp",
+ "src/core/SkPictureFlat.cpp",
+ "src/core/SkPictureImageGenerator.cpp",
+ "src/core/SkPicturePlayback.cpp",
+ "src/core/SkPictureRecord.cpp",
+ "src/core/SkPictureRecorder.cpp",
+ "src/core/SkPixelRef.cpp",
+ "src/core/SkPixmap.cpp",
+ "src/core/SkPoint.cpp",
+ "src/core/SkPoint3.cpp",
+ "src/core/SkPtrRecorder.cpp",
+ "src/core/SkQuadClipper.cpp",
+ "src/core/SkRRect.cpp",
+ "src/core/SkRTree.cpp",
+ "src/core/SkRWBuffer.cpp",
+ "src/core/SkRasterClip.cpp",
+ "src/core/SkRasterPipeline.cpp",
+ "src/core/SkRasterPipelineBlitter.cpp",
+ "src/core/SkReadBuffer.cpp",
+ "src/core/SkRecord.cpp",
+ "src/core/SkRecordDraw.cpp",
+ "src/core/SkRecordOpts.cpp",
+ "src/core/SkRecordedDrawable.cpp",
+ "src/core/SkRecorder.cpp",
+ "src/core/SkRecords.cpp",
+ "src/core/SkRect.cpp",
+ "src/core/SkRegion.cpp",
+ "src/core/SkRegion_path.cpp",
+ "src/core/SkRemoteGlyphCache.cpp",
+ "src/core/SkResourceCache.cpp",
+ "src/core/SkScalar.cpp",
+ "src/core/SkScalerContext.cpp",
+ "src/core/SkScan.cpp",
+ "src/core/SkScan_AAAPath.cpp",
+ "src/core/SkScan_AntiPath.cpp",
+ "src/core/SkScan_Antihair.cpp",
+ "src/core/SkScan_DAAPath.cpp",
+ "src/core/SkScan_Hairline.cpp",
+ "src/core/SkScan_Path.cpp",
+ "src/core/SkSemaphore.cpp",
+ "src/core/SkSharedMutex.cpp",
+ "src/core/SkSpecialImage.cpp",
+ "src/core/SkSpecialSurface.cpp",
+ "src/core/SkSpinlock.cpp",
+ "src/core/SkSpriteBlitter_ARGB32.cpp",
+ "src/core/SkSpriteBlitter_RGB565.cpp",
+ "src/core/SkStream.cpp",
+ "src/core/SkStrikeCache.cpp",
+ "src/core/SkString.cpp",
+ "src/core/SkStringUtils.cpp",
+ "src/core/SkStroke.cpp",
+ "src/core/SkStrokeRec.cpp",
+ "src/core/SkStrokerPriv.cpp",
+ "src/core/SkSurfaceCharacterization.cpp",
+ "src/core/SkSwizzle.cpp",
+ "src/core/SkTLS.cpp",
+ "src/core/SkTSearch.cpp",
+ "src/core/SkTaskGroup.cpp",
+ "src/core/SkTextBlob.cpp",
+ "src/core/SkThreadID.cpp",
+ "src/core/SkTime.cpp",
+ "src/core/SkTypeface.cpp",
+ "src/core/SkTypefaceCache.cpp",
+ "src/core/SkTypeface_remote.cpp",
+ "src/core/SkUnPreMultiply.cpp",
+ "src/core/SkUtils.cpp",
+ "src/core/SkVertState.cpp",
+ "src/core/SkVertices.cpp",
+ "src/core/SkWriteBuffer.cpp",
+ "src/core/SkWriter32.cpp",
+ "src/core/SkXfermode.cpp",
+ "src/core/SkXfermodeInterpretation.cpp",
+ "src/core/SkYUVPlanesCache.cpp",
+ "src/effects/Sk1DPathEffect.cpp",
+ "src/effects/Sk2DPathEffect.cpp",
+ "src/effects/SkColorMatrix.cpp",
+ "src/effects/SkColorMatrixFilter.cpp",
+ "src/effects/SkCornerPathEffect.cpp",
+ "src/effects/SkDashPathEffect.cpp",
+ "src/effects/SkDiscretePathEffect.cpp",
+ "src/effects/SkEmbossMask.cpp",
+ "src/effects/SkEmbossMaskFilter.cpp",
+ "src/effects/SkHighContrastFilter.cpp",
+ "src/effects/SkLayerDrawLooper.cpp",
+ "src/effects/SkLumaColorFilter.cpp",
+ "src/effects/SkOpPathEffect.cpp",
+ "src/effects/SkOverdrawColorFilter.cpp",
+ "src/effects/SkPackBits.cpp",
+ "src/effects/SkShaderMaskFilter.cpp",
+ "src/effects/SkTableColorFilter.cpp",
+ "src/effects/SkTableMaskFilter.cpp",
+ "src/effects/SkToSRGBColorFilter.cpp",
+ "src/effects/SkTrimPathEffect.cpp",
+ "src/effects/imagefilters/SkAlphaThresholdFilter.cpp",
+ "src/effects/imagefilters/SkArithmeticImageFilter.cpp",
+ "src/effects/imagefilters/SkBlurImageFilter.cpp",
+ "src/effects/imagefilters/SkColorFilterImageFilter.cpp",
+ "src/effects/imagefilters/SkComposeImageFilter.cpp",
+ "src/effects/imagefilters/SkDisplacementMapEffect.cpp",
+ "src/effects/imagefilters/SkDropShadowImageFilter.cpp",
+ "src/effects/imagefilters/SkImageSource.cpp",
+ "src/effects/imagefilters/SkLightingImageFilter.cpp",
+ "src/effects/imagefilters/SkMagnifierImageFilter.cpp",
+ "src/effects/imagefilters/SkMatrixConvolutionImageFilter.cpp",
+ "src/effects/imagefilters/SkMergeImageFilter.cpp",
+ "src/effects/imagefilters/SkMorphologyImageFilter.cpp",
+ "src/effects/imagefilters/SkOffsetImageFilter.cpp",
+ "src/effects/imagefilters/SkPaintImageFilter.cpp",
+ "src/effects/imagefilters/SkPictureImageFilter.cpp",
+ "src/effects/imagefilters/SkTileImageFilter.cpp",
+ "src/effects/imagefilters/SkXfermodeImageFilter.cpp",
+ "src/gpu/GrAHardwareBufferImageGenerator.cpp",
+ "src/gpu/GrAuditTrail.cpp",
+ "src/gpu/GrBackendSurface.cpp",
+ "src/gpu/GrBackendTextureImageGenerator.cpp",
+ "src/gpu/GrBitmapTextureMaker.cpp",
+ "src/gpu/GrBlurUtils.cpp",
+ "src/gpu/GrBuffer.cpp",
+ "src/gpu/GrBufferAllocPool.cpp",
+ "src/gpu/GrCaps.cpp",
+ "src/gpu/GrClipStackClip.cpp",
+ "src/gpu/GrColorSpaceInfo.cpp",
+ "src/gpu/GrColorSpaceXform.cpp",
+ "src/gpu/GrContext.cpp",
+ "src/gpu/GrDDLContext.cpp",
+ "src/gpu/GrDefaultGeoProcFactory.cpp",
+ "src/gpu/GrDirectContext.cpp",
+ "src/gpu/GrDistanceFieldGenFromVector.cpp",
+ "src/gpu/GrDrawOpAtlas.cpp",
+ "src/gpu/GrDrawOpTest.cpp",
+ "src/gpu/GrDrawingManager.cpp",
+ "src/gpu/GrDriverBugWorkarounds.cpp",
+ "src/gpu/GrFixedClip.cpp",
+ "src/gpu/GrFragmentProcessor.cpp",
+ "src/gpu/GrGpu.cpp",
+ "src/gpu/GrGpuCommandBuffer.cpp",
+ "src/gpu/GrGpuResource.cpp",
+ "src/gpu/GrImageTextureMaker.cpp",
+ "src/gpu/GrMemoryPool.cpp",
+ "src/gpu/GrOnFlushResourceProvider.cpp",
+ "src/gpu/GrOpFlushState.cpp",
+ "src/gpu/GrOpList.cpp",
+ "src/gpu/GrPaint.cpp",
+ "src/gpu/GrPath.cpp",
+ "src/gpu/GrPathProcessor.cpp",
+ "src/gpu/GrPathRenderer.cpp",
+ "src/gpu/GrPathRendererChain.cpp",
+ "src/gpu/GrPathRendering.cpp",
+ "src/gpu/GrPathUtils.cpp",
+ "src/gpu/GrPipeline.cpp",
+ "src/gpu/GrPrimitiveProcessor.cpp",
+ "src/gpu/GrProcessor.cpp",
+ "src/gpu/GrProcessorAnalysis.cpp",
+ "src/gpu/GrProcessorSet.cpp",
+ "src/gpu/GrProcessorUnitTest.cpp",
+ "src/gpu/GrProgramDesc.cpp",
+ "src/gpu/GrProxyProvider.cpp",
+ "src/gpu/GrQuad.cpp",
+ "src/gpu/GrRectanizer_pow2.cpp",
+ "src/gpu/GrRectanizer_skyline.cpp",
+ "src/gpu/GrReducedClip.cpp",
+ "src/gpu/GrRenderTarget.cpp",
+ "src/gpu/GrRenderTargetContext.cpp",
+ "src/gpu/GrRenderTargetOpList.cpp",
+ "src/gpu/GrRenderTargetProxy.cpp",
+ "src/gpu/GrResourceAllocator.cpp",
+ "src/gpu/GrResourceCache.cpp",
+ "src/gpu/GrResourceProvider.cpp",
+ "src/gpu/GrSKSLPrettyPrint.cpp",
+ "src/gpu/GrSWMaskHelper.cpp",
+ "src/gpu/GrShaderCaps.cpp",
+ "src/gpu/GrShaderVar.cpp",
+ "src/gpu/GrShape.cpp",
+ "src/gpu/GrSoftwarePathRenderer.cpp",
+ "src/gpu/GrStencilAttachment.cpp",
+ "src/gpu/GrStencilSettings.cpp",
+ "src/gpu/GrStyle.cpp",
+ "src/gpu/GrSurface.cpp",
+ "src/gpu/GrSurfaceContext.cpp",
+ "src/gpu/GrSurfaceProxy.cpp",
+ "src/gpu/GrTessellator.cpp",
+ "src/gpu/GrTestUtils.cpp",
+ "src/gpu/GrTexture.cpp",
+ "src/gpu/GrTextureAdjuster.cpp",
+ "src/gpu/GrTextureContext.cpp",
+ "src/gpu/GrTextureMaker.cpp",
+ "src/gpu/GrTextureOpList.cpp",
+ "src/gpu/GrTextureProducer.cpp",
+ "src/gpu/GrTextureProxy.cpp",
+ "src/gpu/GrTextureRenderTargetProxy.cpp",
+ "src/gpu/GrUninstantiateProxyTracker.cpp",
+ "src/gpu/GrXferProcessor.cpp",
+ "src/gpu/GrYUVProvider.cpp",
+ "src/gpu/SkGpuDevice.cpp",
+ "src/gpu/SkGpuDevice_drawTexture.cpp",
+ "src/gpu/SkGr.cpp",
+ "src/gpu/ccpr/GrCCAtlas.cpp",
+ "src/gpu/ccpr/GrCCClipPath.cpp",
+ "src/gpu/ccpr/GrCCClipProcessor.cpp",
+ "src/gpu/ccpr/GrCCConicShader.cpp",
+ "src/gpu/ccpr/GrCCCoverageProcessor.cpp",
+ "src/gpu/ccpr/GrCCCoverageProcessor_GSImpl.cpp",
+ "src/gpu/ccpr/GrCCCoverageProcessor_VSImpl.cpp",
+ "src/gpu/ccpr/GrCCCubicShader.cpp",
+ "src/gpu/ccpr/GrCCDrawPathsOp.cpp",
+ "src/gpu/ccpr/GrCCFillGeometry.cpp",
+ "src/gpu/ccpr/GrCCFiller.cpp",
+ "src/gpu/ccpr/GrCCPathCache.cpp",
+ "src/gpu/ccpr/GrCCPathProcessor.cpp",
+ "src/gpu/ccpr/GrCCPerFlushResources.cpp",
+ "src/gpu/ccpr/GrCCQuadraticShader.cpp",
+ "src/gpu/ccpr/GrCCStrokeGeometry.cpp",
+ "src/gpu/ccpr/GrCCStroker.cpp",
+ "src/gpu/ccpr/GrCoverageCountingPathRenderer.cpp",
+ "src/gpu/effects/GrAARectEffect.cpp",
+ "src/gpu/effects/GrAlphaThresholdFragmentProcessor.cpp",
+ "src/gpu/effects/GrBezierEffect.cpp",
+ "src/gpu/effects/GrBicubicEffect.cpp",
+ "src/gpu/effects/GrBitmapTextGeoProc.cpp",
+ "src/gpu/effects/GrBlurredEdgeFragmentProcessor.cpp",
+ "src/gpu/effects/GrCircleBlurFragmentProcessor.cpp",
+ "src/gpu/effects/GrCircleEffect.cpp",
+ "src/gpu/effects/GrConfigConversionEffect.cpp",
+ "src/gpu/effects/GrConstColorProcessor.cpp",
+ "src/gpu/effects/GrConvexPolyEffect.cpp",
+ "src/gpu/effects/GrCoverageSetOpXP.cpp",
+ "src/gpu/effects/GrCustomXfermode.cpp",
+ "src/gpu/effects/GrDisableColorXP.cpp",
+ "src/gpu/effects/GrDistanceFieldGeoProc.cpp",
+ "src/gpu/effects/GrEllipseEffect.cpp",
+ "src/gpu/effects/GrGaussianConvolutionFragmentProcessor.cpp",
+ "src/gpu/effects/GrLumaColorFilterEffect.cpp",
+ "src/gpu/effects/GrMagnifierEffect.cpp",
+ "src/gpu/effects/GrMatrixConvolutionEffect.cpp",
+ "src/gpu/effects/GrOvalEffect.cpp",
+ "src/gpu/effects/GrPorterDuffXferProcessor.cpp",
+ "src/gpu/effects/GrPremulInputFragmentProcessor.cpp",
+ "src/gpu/effects/GrRRectBlurEffect.cpp",
+ "src/gpu/effects/GrRRectEffect.cpp",
+ "src/gpu/effects/GrRectBlurEffect.cpp",
+ "src/gpu/effects/GrSRGBEffect.cpp",
+ "src/gpu/effects/GrShadowGeoProc.cpp",
+ "src/gpu/effects/GrSimpleTextureEffect.cpp",
+ "src/gpu/effects/GrSkSLFP.cpp",
+ "src/gpu/effects/GrTextureDomain.cpp",
+ "src/gpu/effects/GrUnpremulInputFragmentProcessor.cpp",
+ "src/gpu/effects/GrXfermodeFragmentProcessor.cpp",
+ "src/gpu/effects/GrYUVtoRGBEffect.cpp",
+ "src/gpu/gl/GrGLAssembleInterface.cpp",
+ "src/gpu/gl/GrGLBuffer.cpp",
+ "src/gpu/gl/GrGLCaps.cpp",
+ "src/gpu/gl/GrGLContext.cpp",
+ "src/gpu/gl/GrGLCreateNullInterface.cpp",
+ "src/gpu/gl/GrGLExtensions.cpp",
+ "src/gpu/gl/GrGLGLSL.cpp",
+ "src/gpu/gl/GrGLGpu.cpp",
+ "src/gpu/gl/GrGLGpuCommandBuffer.cpp",
+ "src/gpu/gl/GrGLGpuProgramCache.cpp",
+ "src/gpu/gl/GrGLInterface.cpp",
+ "src/gpu/gl/GrGLPath.cpp",
+ "src/gpu/gl/GrGLPathRendering.cpp",
+ "src/gpu/gl/GrGLProgram.cpp",
+ "src/gpu/gl/GrGLProgramDataManager.cpp",
+ "src/gpu/gl/GrGLRenderTarget.cpp",
+ "src/gpu/gl/GrGLSemaphore.cpp",
+ "src/gpu/gl/GrGLStencilAttachment.cpp",
+ "src/gpu/gl/GrGLTestInterface.cpp",
+ "src/gpu/gl/GrGLTexture.cpp",
+ "src/gpu/gl/GrGLTextureRenderTarget.cpp",
+ "src/gpu/gl/GrGLUniformHandler.cpp",
+ "src/gpu/gl/GrGLUtil.cpp",
+ "src/gpu/gl/GrGLVaryingHandler.cpp",
+ "src/gpu/gl/GrGLVertexArray.cpp",
+ "src/gpu/gl/builders/GrGLProgramBuilder.cpp",
+ "src/gpu/gl/builders/GrGLShaderStringBuilder.cpp",
+ "src/gpu/gl/egl/GrGLMakeNativeInterface_egl.cpp",
+ "src/gpu/glsl/GrGLSL.cpp",
+ "src/gpu/glsl/GrGLSLBlend.cpp",
+ "src/gpu/glsl/GrGLSLFragmentProcessor.cpp",
+ "src/gpu/glsl/GrGLSLFragmentShaderBuilder.cpp",
+ "src/gpu/glsl/GrGLSLGeometryProcessor.cpp",
+ "src/gpu/glsl/GrGLSLPrimitiveProcessor.cpp",
+ "src/gpu/glsl/GrGLSLProgramBuilder.cpp",
+ "src/gpu/glsl/GrGLSLProgramDataManager.cpp",
+ "src/gpu/glsl/GrGLSLShaderBuilder.cpp",
+ "src/gpu/glsl/GrGLSLUtil.cpp",
+ "src/gpu/glsl/GrGLSLVarying.cpp",
+ "src/gpu/glsl/GrGLSLVertexGeoBuilder.cpp",
+ "src/gpu/glsl/GrGLSLXferProcessor.cpp",
+ "src/gpu/gradients/GrClampedGradientEffect.cpp",
+ "src/gpu/gradients/GrDualIntervalGradientColorizer.cpp",
+ "src/gpu/gradients/GrGradientBitmapCache.cpp",
+ "src/gpu/gradients/GrGradientShader.cpp",
+ "src/gpu/gradients/GrLinearGradientLayout.cpp",
+ "src/gpu/gradients/GrRadialGradientLayout.cpp",
+ "src/gpu/gradients/GrSingleIntervalGradientColorizer.cpp",
+ "src/gpu/gradients/GrSweepGradientLayout.cpp",
+ "src/gpu/gradients/GrTextureGradientColorizer.cpp",
+ "src/gpu/gradients/GrTiledGradientEffect.cpp",
+ "src/gpu/gradients/GrTwoPointConicalGradientLayout.cpp",
+ "src/gpu/gradients/GrUnrolledBinaryGradientColorizer.cpp",
+ "src/gpu/mock/GrMockGpu.cpp",
+ "src/gpu/ops/GrAAConvexPathRenderer.cpp",
+ "src/gpu/ops/GrAAConvexTessellator.cpp",
+ "src/gpu/ops/GrAAFillRectOp.cpp",
+ "src/gpu/ops/GrAAHairLinePathRenderer.cpp",
+ "src/gpu/ops/GrAALinearizingConvexPathRenderer.cpp",
+ "src/gpu/ops/GrAAStrokeRectOp.cpp",
+ "src/gpu/ops/GrAtlasTextOp.cpp",
+ "src/gpu/ops/GrClearOp.cpp",
+ "src/gpu/ops/GrClearStencilClipOp.cpp",
+ "src/gpu/ops/GrCopySurfaceOp.cpp",
+ "src/gpu/ops/GrDashLinePathRenderer.cpp",
+ "src/gpu/ops/GrDashOp.cpp",
+ "src/gpu/ops/GrDebugMarkerOp.cpp",
+ "src/gpu/ops/GrDefaultPathRenderer.cpp",
+ "src/gpu/ops/GrDrawAtlasOp.cpp",
+ "src/gpu/ops/GrDrawPathOp.cpp",
+ "src/gpu/ops/GrDrawVerticesOp.cpp",
+ "src/gpu/ops/GrLatticeOp.cpp",
+ "src/gpu/ops/GrMeshDrawOp.cpp",
+ "src/gpu/ops/GrNonAAFillRectOp.cpp",
+ "src/gpu/ops/GrNonAAStrokeRectOp.cpp",
+ "src/gpu/ops/GrOp.cpp",
+ "src/gpu/ops/GrOvalOpFactory.cpp",
+ "src/gpu/ops/GrRegionOp.cpp",
+ "src/gpu/ops/GrSemaphoreOp.cpp",
+ "src/gpu/ops/GrShadowRRectOp.cpp",
+ "src/gpu/ops/GrSimpleMeshDrawOpHelper.cpp",
+ "src/gpu/ops/GrSmallPathRenderer.cpp",
+ "src/gpu/ops/GrStencilAndCoverPathRenderer.cpp",
+ "src/gpu/ops/GrStencilPathOp.cpp",
+ "src/gpu/ops/GrTessellatingPathRenderer.cpp",
+ "src/gpu/ops/GrTextureOp.cpp",
+ "src/gpu/text/GrAtlasManager.cpp",
+ "src/gpu/text/GrDistanceFieldAdjustTable.cpp",
+ "src/gpu/text/GrGlyphCache.cpp",
+ "src/gpu/text/GrSDFMaskFilter.cpp",
+ "src/gpu/text/GrTextBlob.cpp",
+ "src/gpu/text/GrTextBlobCache.cpp",
+ "src/gpu/text/GrTextBlobVertexRegenerator.cpp",
+ "src/gpu/text/GrTextContext.cpp",
+ "src/gpu/vk/GrVkAMDMemoryAllocator.cpp",
+ "src/gpu/vk/GrVkBuffer.cpp",
+ "src/gpu/vk/GrVkBufferView.cpp",
+ "src/gpu/vk/GrVkCaps.cpp",
+ "src/gpu/vk/GrVkCommandBuffer.cpp",
+ "src/gpu/vk/GrVkCopyManager.cpp",
+ "src/gpu/vk/GrVkCopyPipeline.cpp",
+ "src/gpu/vk/GrVkDescriptorPool.cpp",
+ "src/gpu/vk/GrVkDescriptorSet.cpp",
+ "src/gpu/vk/GrVkDescriptorSetManager.cpp",
+ "src/gpu/vk/GrVkExtensions.cpp",
+ "src/gpu/vk/GrVkFramebuffer.cpp",
+ "src/gpu/vk/GrVkGpu.cpp",
+ "src/gpu/vk/GrVkGpuCommandBuffer.cpp",
+ "src/gpu/vk/GrVkImage.cpp",
+ "src/gpu/vk/GrVkImageView.cpp",
+ "src/gpu/vk/GrVkIndexBuffer.cpp",
+ "src/gpu/vk/GrVkInterface.cpp",
+ "src/gpu/vk/GrVkMemory.cpp",
+ "src/gpu/vk/GrVkPipeline.cpp",
+ "src/gpu/vk/GrVkPipelineLayout.cpp",
+ "src/gpu/vk/GrVkPipelineState.cpp",
+ "src/gpu/vk/GrVkPipelineStateBuilder.cpp",
+ "src/gpu/vk/GrVkPipelineStateCache.cpp",
+ "src/gpu/vk/GrVkPipelineStateDataManager.cpp",
+ "src/gpu/vk/GrVkRenderPass.cpp",
+ "src/gpu/vk/GrVkRenderTarget.cpp",
+ "src/gpu/vk/GrVkResourceProvider.cpp",
+ "src/gpu/vk/GrVkSampler.cpp",
+ "src/gpu/vk/GrVkSemaphore.cpp",
+ "src/gpu/vk/GrVkStencilAttachment.cpp",
+ "src/gpu/vk/GrVkTexture.cpp",
+ "src/gpu/vk/GrVkTextureRenderTarget.cpp",
+ "src/gpu/vk/GrVkTransferBuffer.cpp",
+ "src/gpu/vk/GrVkTypesPriv.cpp",
+ "src/gpu/vk/GrVkUniformBuffer.cpp",
+ "src/gpu/vk/GrVkUniformHandler.cpp",
+ "src/gpu/vk/GrVkUtil.cpp",
+ "src/gpu/vk/GrVkVaryingHandler.cpp",
+ "src/gpu/vk/GrVkVertexBuffer.cpp",
+ "src/image/SkImage.cpp",
+ "src/image/SkImage_Gpu.cpp",
+ "src/image/SkImage_Lazy.cpp",
+ "src/image/SkImage_Raster.cpp",
+ "src/image/SkSurface.cpp",
+ "src/image/SkSurface_Gpu.cpp",
+ "src/image/SkSurface_Raster.cpp",
+ "src/images/SkImageEncoder.cpp",
+ "src/images/SkJPEGWriteUtility.cpp",
+ "src/images/SkJpegEncoder.cpp",
+ "src/images/SkPngEncoder.cpp",
+ "src/images/SkWebpEncoder.cpp",
+ "src/jumper/SkJumper.cpp",
+ "src/lazy/SkDiscardableMemoryPool.cpp",
+ "src/pathops/SkAddIntersections.cpp",
+ "src/pathops/SkDConicLineIntersection.cpp",
+ "src/pathops/SkDCubicLineIntersection.cpp",
+ "src/pathops/SkDCubicToQuads.cpp",
+ "src/pathops/SkDLineIntersection.cpp",
+ "src/pathops/SkDQuadLineIntersection.cpp",
+ "src/pathops/SkIntersections.cpp",
+ "src/pathops/SkOpAngle.cpp",
+ "src/pathops/SkOpBuilder.cpp",
+ "src/pathops/SkOpCoincidence.cpp",
+ "src/pathops/SkOpContour.cpp",
+ "src/pathops/SkOpCubicHull.cpp",
+ "src/pathops/SkOpEdgeBuilder.cpp",
+ "src/pathops/SkOpSegment.cpp",
+ "src/pathops/SkOpSpan.cpp",
+ "src/pathops/SkPathOpsAsWinding.cpp",
+ "src/pathops/SkPathOpsCommon.cpp",
+ "src/pathops/SkPathOpsConic.cpp",
+ "src/pathops/SkPathOpsCubic.cpp",
+ "src/pathops/SkPathOpsCurve.cpp",
+ "src/pathops/SkPathOpsDebug.cpp",
+ "src/pathops/SkPathOpsLine.cpp",
+ "src/pathops/SkPathOpsOp.cpp",
+ "src/pathops/SkPathOpsPoint.cpp",
+ "src/pathops/SkPathOpsQuad.cpp",
+ "src/pathops/SkPathOpsRect.cpp",
+ "src/pathops/SkPathOpsSimplify.cpp",
+ "src/pathops/SkPathOpsTSect.cpp",
+ "src/pathops/SkPathOpsTightBounds.cpp",
+ "src/pathops/SkPathOpsTypes.cpp",
+ "src/pathops/SkPathOpsWinding.cpp",
+ "src/pathops/SkPathWriter.cpp",
+ "src/pathops/SkReduceOrder.cpp",
+ "src/pdf/SkClusterator.cpp",
+ "src/pdf/SkDeflate.cpp",
+ "src/pdf/SkJpegInfo.cpp",
+ "src/pdf/SkKeyedImage.cpp",
+ "src/pdf/SkPDFBitmap.cpp",
+ "src/pdf/SkPDFCanon.cpp",
+ "src/pdf/SkPDFConvertType1FontStream.cpp",
+ "src/pdf/SkPDFDevice.cpp",
+ "src/pdf/SkPDFDocument.cpp",
+ "src/pdf/SkPDFFont.cpp",
+ "src/pdf/SkPDFFormXObject.cpp",
+ "src/pdf/SkPDFGradientShader.cpp",
+ "src/pdf/SkPDFGraphicState.cpp",
+ "src/pdf/SkPDFMakeCIDGlyphWidthsArray.cpp",
+ "src/pdf/SkPDFMakeToUnicodeCmap.cpp",
+ "src/pdf/SkPDFMetadata.cpp",
+ "src/pdf/SkPDFResourceDict.cpp",
+ "src/pdf/SkPDFShader.cpp",
+ "src/pdf/SkPDFTypes.cpp",
+ "src/pdf/SkPDFUtils.cpp",
+ "src/ports/SkDebug_android.cpp",
+ "src/ports/SkDiscardableMemory_none.cpp",
+ "src/ports/SkFontHost_FreeType.cpp",
+ "src/ports/SkFontHost_FreeType_common.cpp",
+ "src/ports/SkFontMgr_android.cpp",
+ "src/ports/SkFontMgr_android_factory.cpp",
+ "src/ports/SkFontMgr_android_parser.cpp",
+ "src/ports/SkGlobalInitialization_default.cpp",
+ "src/ports/SkGlobalInitialization_default_imagefilters.cpp",
+ "src/ports/SkImageGenerator_skia.cpp",
+ "src/ports/SkMemory_malloc.cpp",
+ "src/ports/SkOSFile_posix.cpp",
+ "src/ports/SkOSFile_stdio.cpp",
+ "src/ports/SkOSLibrary_posix.cpp",
+ "src/ports/SkTLS_pthread.cpp",
+ "src/sfnt/SkOTTable_name.cpp",
+ "src/sfnt/SkOTUtils.cpp",
+ "src/shaders/SkBitmapProcShader.cpp",
+ "src/shaders/SkColorFilterShader.cpp",
+ "src/shaders/SkColorShader.cpp",
+ "src/shaders/SkComposeShader.cpp",
+ "src/shaders/SkImageShader.cpp",
+ "src/shaders/SkLightingShader.cpp",
+ "src/shaders/SkLocalMatrixShader.cpp",
+ "src/shaders/SkPerlinNoiseShader.cpp",
+ "src/shaders/SkPictureShader.cpp",
+ "src/shaders/SkShader.cpp",
+ "src/shaders/gradients/Sk4fGradientBase.cpp",
+ "src/shaders/gradients/Sk4fLinearGradient.cpp",
+ "src/shaders/gradients/SkGradientShader.cpp",
+ "src/shaders/gradients/SkLinearGradient.cpp",
+ "src/shaders/gradients/SkRadialGradient.cpp",
+ "src/shaders/gradients/SkSweepGradient.cpp",
+ "src/shaders/gradients/SkTwoPointConicalGradient.cpp",
+ "src/sksl/SkSLCFGGenerator.cpp",
+ "src/sksl/SkSLCPPCodeGenerator.cpp",
+ "src/sksl/SkSLCPPUniformCTypes.cpp",
+ "src/sksl/SkSLCompiler.cpp",
+ "src/sksl/SkSLGLSLCodeGenerator.cpp",
+ "src/sksl/SkSLHCodeGenerator.cpp",
+ "src/sksl/SkSLIRGenerator.cpp",
+ "src/sksl/SkSLInterpreter.cpp",
+ "src/sksl/SkSLJIT.cpp",
+ "src/sksl/SkSLLexer.cpp",
+ "src/sksl/SkSLMetalCodeGenerator.cpp",
+ "src/sksl/SkSLParser.cpp",
+ "src/sksl/SkSLPipelineStageCodeGenerator.cpp",
+ "src/sksl/SkSLSPIRVCodeGenerator.cpp",
+ "src/sksl/SkSLString.cpp",
+ "src/sksl/SkSLUtil.cpp",
+ "src/sksl/ir/SkSLSetting.cpp",
+ "src/sksl/ir/SkSLSymbolTable.cpp",
+ "src/sksl/ir/SkSLType.cpp",
+ "src/sksl/ir/SkSLVariableReference.cpp",
+ "src/svg/SkSVGCanvas.cpp",
+ "src/svg/SkSVGDevice.cpp",
+ "src/utils/Sk3D.cpp",
+ "src/utils/SkBase64.cpp",
+ "src/utils/SkCamera.cpp",
+ "src/utils/SkCanvasStack.cpp",
+ "src/utils/SkCanvasStateUtils.cpp",
+ "src/utils/SkDashPath.cpp",
+ "src/utils/SkEventTracer.cpp",
+ "src/utils/SkFloatToDecimal.cpp",
+ "src/utils/SkFrontBufferedStream.cpp",
+ "src/utils/SkInterpolator.cpp",
+ "src/utils/SkJSON.cpp",
+ "src/utils/SkJSONWriter.cpp",
+ "src/utils/SkMatrix22.cpp",
+ "src/utils/SkMultiPictureDocument.cpp",
+ "src/utils/SkNWayCanvas.cpp",
+ "src/utils/SkNullCanvas.cpp",
+ "src/utils/SkOSPath.cpp",
+ "src/utils/SkPaintFilterCanvas.cpp",
+ "src/utils/SkParse.cpp",
+ "src/utils/SkParseColor.cpp",
+ "src/utils/SkParsePath.cpp",
+ "src/utils/SkPatchUtils.cpp",
+ "src/utils/SkPolyUtils.cpp",
+ "src/utils/SkShadowTessellator.cpp",
+ "src/utils/SkShadowUtils.cpp",
+ "src/utils/SkTextOnPath.cpp",
+ "src/utils/SkThreadUtils_pthread.cpp",
+ "src/utils/SkThreadUtils_win.cpp",
+ "src/utils/SkUTF.cpp",
+ "src/utils/SkWhitelistTypefaces.cpp",
+ "src/utils/mac/SkCreateCGImageRef.cpp",
+ "src/utils/mac/SkStream_mac.cpp",
+ "src/utils/win/SkAutoCoInitialize.cpp",
+ "src/utils/win/SkDWrite.cpp",
+ "src/utils/win/SkDWriteFontFileStream.cpp",
+ "src/utils/win/SkDWriteGeometrySink.cpp",
+ "src/utils/win/SkHRESULT.cpp",
+ "src/utils/win/SkIStream.cpp",
+ "src/utils/win/SkWGL_win.cpp",
+ "src/xml/SkDOM.cpp",
+ "src/xml/SkXMLParser.cpp",
+ "src/xml/SkXMLWriter.cpp",
+ "src/xps/SkXPSDevice.cpp",
+ "src/xps/SkXPSDocument.cpp",
+ "third_party/gif/SkGifImageReader.cpp",
+ "third_party/skcms/skcms.cc",
+ "third_party/vulkanmemoryallocator/GrVulkanMemoryAllocator.cpp",
+ ],
+
+ arch: {
+ arm: {
+ srcs: [
+ "src/opts/SkBitmapProcState_opts_none.cpp",
+ "src/opts/SkBlitMask_opts_arm.cpp",
+ "src/opts/SkBlitRow_opts_arm.cpp",
+ ],
+
+ neon: {
+ srcs: [
+ "src/opts/SkBitmapProcState_arm_neon.cpp",
+ "src/opts/SkBitmapProcState_matrixProcs_neon.cpp",
+ "src/opts/SkBlitMask_opts_arm_neon.cpp",
+ "src/opts/SkBlitRow_opts_arm_neon.cpp",
+ ],
+ },
+ },
+
+ arm64: {
+ srcs: [
+ "src/opts/SkBitmapProcState_arm_neon.cpp",
+ "src/opts/SkBitmapProcState_matrixProcs_neon.cpp",
+ "src/opts/SkBitmapProcState_opts_none.cpp",
+ "src/opts/SkBlitMask_opts_arm.cpp",
+ "src/opts/SkBlitMask_opts_arm_neon.cpp",
+ "src/opts/SkBlitRow_opts_arm.cpp",
+ "src/opts/SkBlitRow_opts_arm_neon.cpp",
+ "src/opts/SkOpts_crc32.cpp",
+ ],
+ },
+
+ mips: {
+ srcs: [
+ "src/opts/SkBitmapProcState_opts_none.cpp",
+ "src/opts/SkBlitMask_opts_none.cpp",
+ "src/opts/SkBlitRow_opts_none.cpp",
+ ],
+ },
+
+ mips64: {
+ srcs: [
+ "src/opts/SkBitmapProcState_opts_none.cpp",
+ "src/opts/SkBlitMask_opts_none.cpp",
+ "src/opts/SkBlitRow_opts_none.cpp",
+ ],
+ },
+
+ x86: {
+ srcs: [
+ "src/opts/SkBitmapProcState_opts_SSE2.cpp",
+ "src/opts/SkBitmapProcState_opts_SSSE3.cpp",
+ "src/opts/SkBlitRow_opts_SSE2.cpp",
+ "src/opts/SkOpts_avx.cpp",
+ "src/opts/SkOpts_hsw.cpp",
+ "src/opts/SkOpts_sse41.cpp",
+ "src/opts/SkOpts_sse42.cpp",
+ "src/opts/SkOpts_ssse3.cpp",
+ "src/opts/opts_check_x86.cpp",
+ ],
+ cflags: [
+ // Clang seems to think new/malloc will only be 4-byte aligned
+ // on x86 Android. We're pretty sure it's actually 8-byte
+ // alignment. tests/OverAlignedTest.cpp has more information,
+ // and should fail if we're wrong.
+ "-Wno-over-aligned"
+ ],
+ },
+
+ x86_64: {
+ srcs: [
+ "src/opts/SkBitmapProcState_opts_SSE2.cpp",
+ "src/opts/SkBitmapProcState_opts_SSSE3.cpp",
+ "src/opts/SkBlitRow_opts_SSE2.cpp",
+ "src/opts/SkOpts_avx.cpp",
+ "src/opts/SkOpts_hsw.cpp",
+ "src/opts/SkOpts_sse41.cpp",
+ "src/opts/SkOpts_sse42.cpp",
+ "src/opts/SkOpts_ssse3.cpp",
+ "src/opts/opts_check_x86.cpp",
+ ],
+ },
+ },
+
+ defaults: ["skia_deps",
+ "skia_pgo",
+ ],
+}
+
+// Build libskia with PGO by default.
+// Location of PGO profile data is defined in build/soong/cc/pgo.go
+// and is separate from skia.
+// To turn it off, set ANDROID_PGO_NO_PROFILE_USE environment variable
+// or set enable_profile_use property to false.
+cc_defaults {
+ name: "skia_pgo",
+ pgo: {
+ instrumentation: true,
+ profile_file: "hwui/hwui.profdata",
+ benchmarks: ["hwui", "skia"],
+ enable_profile_use: true,
+ },
+}
+
+// "defaults" property to disable profile use for Skia tools and benchmarks.
+cc_defaults {
+ name: "skia_pgo_no_profile_use",
+ defaults: [
+ "skia_pgo",
+ ],
+ pgo: {
+ enable_profile_use: false,
+ },
+}
+
+cc_defaults {
+ name: "skia_deps",
+ shared_libs: [
+ "libEGL",
+ "libGLESv2",
+ "libdng_sdk",
+ "libexpat",
+ "libft2",
+ "libheif",
+ "libicui18n",
+ "libicuuc",
+ "libjpeg",
+ "liblog",
+ "libpiex",
+ "libpng",
+ "libvulkan",
+ "libz",
+ "libcutils",
+ "libnativewindow",
+ ],
+ static_libs: [
+ "libarect",
+ "libsfntly",
+ "libwebp-decode",
+ "libwebp-encode",
+ ],
+ group_static_libs: true,
+}
+
+cc_defaults {
+ name: "skia_tool_deps",
+ defaults: [
+ "skia_deps",
+ "skia_pgo_no_profile_use"
+ ],
+ static_libs: [
+ "libjsoncpp",
+ "libskia",
+ ],
+ cflags: [
+ "-Wno-implicit-fallthrough",
+ "-Wno-unused-parameter",
+ "-Wno-unused-variable",
+ ],
+}
+
+cc_test {
+ name: "skia_dm",
+
+ defaults: [
+ "skia_tool_deps"
+ ],
+
+ local_include_dirs: [
+ "experimental/pipe/",
+ "experimental/svg/model/",
+ "gm/",
+ "include/android/",
+ "include/atlastext/",
+ "include/c/",
+ "include/codec/",
+ "include/config/",
+ "include/core/",
+ "include/docs/",
+ "include/effects/",
+ "include/encode/",
+ "include/gpu/",
+ "include/pathops/",
+ "include/ports/",
+ "include/private/",
+ "include/svg/",
+ "include/utils/",
+ "include/utils/mac/",
+ "modules/skottie/include/",
+ "modules/sksg/include/",
+ "src/c/",
+ "src/codec/",
+ "src/core/",
+ "src/effects/",
+ "src/fonts/",
+ "src/gpu/",
+ "src/image/",
+ "src/images/",
+ "src/lazy/",
+ "src/opts/",
+ "src/pathops/",
+ "src/pdf/",
+ "src/ports/",
+ "src/sfnt/",
+ "src/shaders/",
+ "src/shaders/gradients/",
+ "src/sksl/",
+ "src/utils/",
+ "src/utils/win/",
+ "src/xml/",
+ "tests/",
+ "third_party/gif/",
+ "third_party/skcms",
+ "third_party/vulkan/",
+ "tools/",
+ "tools/debugger/",
+ "tools/flags/",
+ "tools/fonts/",
+ "tools/gpu/",
+ "tools/timer/",
+ "tools/trace/",
+ ],
+
+ srcs: [
+ "dm/DM.cpp",
+ "dm/DMGpuTestProcs.cpp",
+ "dm/DMJsonWriter.cpp",
+ "dm/DMSrcSink.cpp",
+ "experimental/pipe/SkPipeCanvas.cpp",
+ "experimental/pipe/SkPipeReader.cpp",
+ "experimental/svg/model/SkSVGAttribute.cpp",
+ "experimental/svg/model/SkSVGAttributeParser.cpp",
+ "experimental/svg/model/SkSVGCircle.cpp",
+ "experimental/svg/model/SkSVGClipPath.cpp",
+ "experimental/svg/model/SkSVGContainer.cpp",
+ "experimental/svg/model/SkSVGDOM.cpp",
+ "experimental/svg/model/SkSVGEllipse.cpp",
+ "experimental/svg/model/SkSVGGradient.cpp",
+ "experimental/svg/model/SkSVGLine.cpp",
+ "experimental/svg/model/SkSVGLinearGradient.cpp",
+ "experimental/svg/model/SkSVGNode.cpp",
+ "experimental/svg/model/SkSVGPath.cpp",
+ "experimental/svg/model/SkSVGPattern.cpp",
+ "experimental/svg/model/SkSVGPoly.cpp",
+ "experimental/svg/model/SkSVGRadialGradient.cpp",
+ "experimental/svg/model/SkSVGRect.cpp",
+ "experimental/svg/model/SkSVGRenderContext.cpp",
+ "experimental/svg/model/SkSVGSVG.cpp",
+ "experimental/svg/model/SkSVGShape.cpp",
+ "experimental/svg/model/SkSVGStop.cpp",
+ "experimental/svg/model/SkSVGTransformableNode.cpp",
+ "experimental/svg/model/SkSVGUse.cpp",
+ "experimental/svg/model/SkSVGValue.cpp",
+ "gm/3dgm.cpp",
+ "gm/OverStroke.cpp",
+ "gm/aaa.cpp",
+ "gm/aaclip.cpp",
+ "gm/aarectmodes.cpp",
+ "gm/aaxfermodes.cpp",
+ "gm/addarc.cpp",
+ "gm/all_bitmap_configs.cpp",
+ "gm/alpha_image.cpp",
+ "gm/alphagradients.cpp",
+ "gm/analytic_gradients.cpp",
+ "gm/androidblendmodes.cpp",
+ "gm/animatedGif.cpp",
+ "gm/animatedimageblurs.cpp",
+ "gm/anisotropic.cpp",
+ "gm/annotated_text.cpp",
+ "gm/arcofzorro.cpp",
+ "gm/arcto.cpp",
+ "gm/arithmode.cpp",
+ "gm/atlastext.cpp",
+ "gm/badpaint.cpp",
+ "gm/beziereffects.cpp",
+ "gm/beziers.cpp",
+ "gm/bigblurs.cpp",
+ "gm/bigmatrix.cpp",
+ "gm/bigrect.cpp",
+ "gm/bigrrectaaeffect.cpp",
+ "gm/bigtext.cpp",
+ "gm/bigtileimagefilter.cpp",
+ "gm/bitmapcopy.cpp",
+ "gm/bitmapfilters.cpp",
+ "gm/bitmapimage.cpp",
+ "gm/bitmappremul.cpp",
+ "gm/bitmaprect.cpp",
+ "gm/bitmaprecttest.cpp",
+ "gm/bitmapshader.cpp",
+ "gm/bitmaptiled.cpp",
+ "gm/bleed.cpp",
+ "gm/blend.cpp",
+ "gm/blurcircles.cpp",
+ "gm/blurcircles2.cpp",
+ "gm/blurignorexform.cpp",
+ "gm/blurimagevmask.cpp",
+ "gm/blurpositioning.cpp",
+ "gm/blurquickreject.cpp",
+ "gm/blurrect.cpp",
+ "gm/blurredclippedcircle.cpp",
+ "gm/blurroundrect.cpp",
+ "gm/blurs.cpp",
+ "gm/blurtextsmallradii.cpp",
+ "gm/bmpfilterqualityrepeat.cpp",
+ "gm/bug5252.cpp",
+ "gm/bug530095.cpp",
+ "gm/bug615686.cpp",
+ "gm/bug6643.cpp",
+ "gm/bug6783.cpp",
+ "gm/cgm.c",
+ "gm/cgms.cpp",
+ "gm/circle_sizes.cpp",
+ "gm/circles.cpp",
+ "gm/circulararcs.cpp",
+ "gm/circularclips.cpp",
+ "gm/clip_error.cpp",
+ "gm/clip_strokerect.cpp",
+ "gm/clipdrawdraw.cpp",
+ "gm/clippedbitmapshaders.cpp",
+ "gm/clockwise.cpp",
+ "gm/color4f.cpp",
+ "gm/coloremoji.cpp",
+ "gm/coloremoji_blendmodes.cpp",
+ "gm/colorfilteralpha8.cpp",
+ "gm/colorfilterimagefilter.cpp",
+ "gm/colorfilters.cpp",
+ "gm/colormatrix.cpp",
+ "gm/colorwheel.cpp",
+ "gm/complexclip.cpp",
+ "gm/complexclip2.cpp",
+ "gm/complexclip3.cpp",
+ "gm/complexclip4.cpp",
+ "gm/complexclip_blur_tiled.cpp",
+ "gm/composeshader.cpp",
+ "gm/concavepaths.cpp",
+ "gm/conicpaths.cpp",
+ "gm/constcolorprocessor.cpp",
+ "gm/convex_all_line_paths.cpp",
+ "gm/convexpaths.cpp",
+ "gm/convexpolyclip.cpp",
+ "gm/convexpolyeffect.cpp",
+ "gm/copyTo4444.cpp",
+ "gm/crbug_691386.cpp",
+ "gm/crbug_788500.cpp",
+ "gm/crbug_847759.cpp",
+ "gm/crbug_884166.cpp",
+ "gm/crbug_887103.cpp",
+ "gm/croppedrects.cpp",
+ "gm/crosscontextimage.cpp",
+ "gm/cubicpaths.cpp",
+ "gm/dashcircle.cpp",
+ "gm/dashcubics.cpp",
+ "gm/dashing.cpp",
+ "gm/degeneratesegments.cpp",
+ "gm/dftext.cpp",
+ "gm/dftext_blob_persp.cpp",
+ "gm/discard.cpp",
+ "gm/displacement.cpp",
+ "gm/distantclip.cpp",
+ "gm/downsamplebitmap.cpp",
+ "gm/draw_bitmap_rect_skbug4374.cpp",
+ "gm/drawable.cpp",
+ "gm/drawatlas.cpp",
+ "gm/drawatlascolor.cpp",
+ "gm/drawbitmaprect.cpp",
+ "gm/drawlooper.cpp",
+ "gm/drawminibitmaprect.cpp",
+ "gm/drawregion.cpp",
+ "gm/drawregionmodes.cpp",
+ "gm/dropshadowimagefilter.cpp",
+ "gm/drrect.cpp",
+ "gm/drrect_small_inner.cpp",
+ "gm/dstreadshuffle.cpp",
+ "gm/emboss.cpp",
+ "gm/emptypath.cpp",
+ "gm/encode-alpha-jpeg.cpp",
+ "gm/encode-platform.cpp",
+ "gm/encode-srgb.cpp",
+ "gm/encode.cpp",
+ "gm/extractbitmap.cpp",
+ "gm/fadefilter.cpp",
+ "gm/fatpathfill.cpp",
+ "gm/filltypes.cpp",
+ "gm/filltypespersp.cpp",
+ "gm/filterbitmap.cpp",
+ "gm/filterbug.cpp",
+ "gm/filterfastbounds.cpp",
+ "gm/filterindiabox.cpp",
+ "gm/flippity.cpp",
+ "gm/fontcache.cpp",
+ "gm/fontmgr.cpp",
+ "gm/fontscaler.cpp",
+ "gm/fontscalerdistortable.cpp",
+ "gm/gamma.cpp",
+ "gm/gammatext.cpp",
+ "gm/gamut.cpp",
+ "gm/getpostextpath.cpp",
+ "gm/giantbitmap.cpp",
+ "gm/glyph_pos.cpp",
+ "gm/gm.cpp",
+ "gm/gradientDirtyLaundry.cpp",
+ "gm/gradient_matrix.cpp",
+ "gm/gradients.cpp",
+ "gm/gradients_2pt_conical.cpp",
+ "gm/gradients_no_texture.cpp",
+ "gm/gradtext.cpp",
+ "gm/grayscalejpg.cpp",
+ "gm/hairlines.cpp",
+ "gm/hairmodes.cpp",
+ "gm/hardstop_gradients.cpp",
+ "gm/highcontrastfilter.cpp",
+ "gm/hittestpath.cpp",
+ "gm/hsl.cpp",
+ "gm/hugepath.cpp",
+ "gm/image.cpp",
+ "gm/image_pict.cpp",
+ "gm/image_shader.cpp",
+ "gm/imagealphathreshold.cpp",
+ "gm/imageblur.cpp",
+ "gm/imageblur2.cpp",
+ "gm/imageblurclampmode.cpp",
+ "gm/imageblurrepeatmode.cpp",
+ "gm/imageblurtiled.cpp",
+ "gm/imagefilters.cpp",
+ "gm/imagefiltersbase.cpp",
+ "gm/imagefiltersclipped.cpp",
+ "gm/imagefilterscropexpand.cpp",
+ "gm/imagefilterscropped.cpp",
+ "gm/imagefiltersgraph.cpp",
+ "gm/imagefiltersscaled.cpp",
+ "gm/imagefiltersstroked.cpp",
+ "gm/imagefilterstransformed.cpp",
+ "gm/imagefromyuvtextures.cpp",
+ "gm/imagemagnifier.cpp",
+ "gm/imagemakewithfilter.cpp",
+ "gm/imagemasksubset.cpp",
+ "gm/imageresizetiled.cpp",
+ "gm/imagescalealigned.cpp",
+ "gm/imagesource.cpp",
+ "gm/imagesource2.cpp",
+ "gm/internal_links.cpp",
+ "gm/inversepaths.cpp",
+ "gm/jpg_color_cube.cpp",
+ "gm/largeglyphblur.cpp",
+ "gm/lattice.cpp",
+ "gm/lcdblendmodes.cpp",
+ "gm/lcdoverlap.cpp",
+ "gm/lcdtext.cpp",
+ "gm/lighting.cpp",
+ "gm/lightingshader.cpp",
+ "gm/lightingshader2.cpp",
+ "gm/linepaths.cpp",
+ "gm/localmatriximagefilter.cpp",
+ "gm/localmatriximageshader.cpp",
+ "gm/localmatrixshader.cpp",
+ "gm/lumafilter.cpp",
+ "gm/makeRasterImage.cpp",
+ "gm/makecolorspace.cpp",
+ "gm/mandoline.cpp",
+ "gm/manypaths.cpp",
+ "gm/matrixconvolution.cpp",
+ "gm/matriximagefilter.cpp",
+ "gm/megalooper.cpp",
+ "gm/mipmap.cpp",
+ "gm/mixedtextblobs.cpp",
+ "gm/modecolorfilters.cpp",
+ "gm/morphology.cpp",
+ "gm/multipicturedraw.cpp",
+ "gm/nested.cpp",
+ "gm/ninepatchstretch.cpp",
+ "gm/nonclosedpaths.cpp",
+ "gm/offsetimagefilter.cpp",
+ "gm/orientation.cpp",
+ "gm/ovals.cpp",
+ "gm/overdrawcolorfilter.cpp",
+ "gm/p3.cpp",
+ "gm/patch.cpp",
+ "gm/path_stroke_with_zero_length.cpp",
+ "gm/pathcontourstart.cpp",
+ "gm/patheffects.cpp",
+ "gm/pathfill.cpp",
+ "gm/pathinterior.cpp",
+ "gm/pathmaskcache.cpp",
+ "gm/pathmeasure.cpp",
+ "gm/pathopsinverse.cpp",
+ "gm/pathopsskpclip.cpp",
+ "gm/pathreverse.cpp",
+ "gm/pdf_never_embed.cpp",
+ "gm/perlinnoise.cpp",
+ "gm/perspimages.cpp",
+ "gm/perspshaders.cpp",
+ "gm/picture.cpp",
+ "gm/pictureimagefilter.cpp",
+ "gm/pictureimagegenerator.cpp",
+ "gm/pictureshader.cpp",
+ "gm/pictureshadercache.cpp",
+ "gm/pictureshadertile.cpp",
+ "gm/pixelsnap.cpp",
+ "gm/plus.cpp",
+ "gm/points.cpp",
+ "gm/poly2poly.cpp",
+ "gm/polygonoffset.cpp",
+ "gm/polygons.cpp",
+ "gm/quadpaths.cpp",
+ "gm/radial_gradient_precision.cpp",
+ "gm/readpixels.cpp",
+ "gm/recordopts.cpp",
+ "gm/rectangletexture.cpp",
+ "gm/rects.cpp",
+ "gm/repeated_bitmap.cpp",
+ "gm/resizeimagefilter.cpp",
+ "gm/roundrects.cpp",
+ "gm/rrect.cpp",
+ "gm/rrectclipdrawpaint.cpp",
+ "gm/rrects.cpp",
+ "gm/samplerstress.cpp",
+ "gm/savelayer.cpp",
+ "gm/scaledemoji.cpp",
+ "gm/scaledemoji_rendering.cpp",
+ "gm/scaledstrokes.cpp",
+ "gm/shadermaskfilter.cpp",
+ "gm/shadertext.cpp",
+ "gm/shadertext2.cpp",
+ "gm/shadertext3.cpp",
+ "gm/shadows.cpp",
+ "gm/shadowutils.cpp",
+ "gm/shallowgradient.cpp",
+ "gm/shapes.cpp",
+ "gm/shapes_as_paths.cpp",
+ "gm/sharedcorners.cpp",
+ "gm/showmiplevels.cpp",
+ "gm/simple_magnification.cpp",
+ "gm/simpleaaclip.cpp",
+ "gm/simplerect.cpp",
+ "gm/skbug1719.cpp",
+ "gm/skbug_257.cpp",
+ "gm/skbug_4868.cpp",
+ "gm/skbug_5321.cpp",
+ "gm/skinning.cpp",
+ "gm/smallarc.cpp",
+ "gm/smallpaths.cpp",
+ "gm/spritebitmap.cpp",
+ "gm/srcmode.cpp",
+ "gm/srgb.cpp",
+ "gm/stlouisarch.cpp",
+ "gm/stringart.cpp",
+ "gm/stroke_rect_shader.cpp",
+ "gm/strokedlines.cpp",
+ "gm/strokefill.cpp",
+ "gm/strokerect.cpp",
+ "gm/strokerects.cpp",
+ "gm/strokes.cpp",
+ "gm/stroketext.cpp",
+ "gm/subsetshader.cpp",
+ "gm/surface.cpp",
+ "gm/tablecolorfilter.cpp",
+ "gm/tallstretchedbitmaps.cpp",
+ "gm/testgradient.cpp",
+ "gm/text_scale_skew.cpp",
+ "gm/textblob.cpp",
+ "gm/textblobblockreordering.cpp",
+ "gm/textblobcolortrans.cpp",
+ "gm/textblobgeometrychange.cpp",
+ "gm/textbloblooper.cpp",
+ "gm/textblobmixedsizes.cpp",
+ "gm/textblobrandomfont.cpp",
+ "gm/textblobshader.cpp",
+ "gm/textblobtransforms.cpp",
+ "gm/textblobuseaftergpufree.cpp",
+ "gm/texteffects.cpp",
+ "gm/texturedomaineffect.cpp",
+ "gm/thinconcavepaths.cpp",
+ "gm/thinrects.cpp",
+ "gm/thinstrokedrects.cpp",
+ "gm/tiledscaledbitmap.cpp",
+ "gm/tileimagefilter.cpp",
+ "gm/tilemodes.cpp",
+ "gm/tilemodes_scaled.cpp",
+ "gm/tinybitmap.cpp",
+ "gm/tonalshadows.cpp",
+ "gm/tosrgb_colorfilter.cpp",
+ "gm/transparency.cpp",
+ "gm/trickycubicstrokes.cpp",
+ "gm/typeface.cpp",
+ "gm/variedtext.cpp",
+ "gm/vertices.cpp",
+ "gm/verttext.cpp",
+ "gm/verttext2.cpp",
+ "gm/verylargebitmap.cpp",
+ "gm/windowrectangles.cpp",
+ "gm/xfermodeimagefilter.cpp",
+ "gm/xfermodes.cpp",
+ "gm/xfermodes2.cpp",
+ "gm/xfermodes3.cpp",
+ "gm/yuvtorgbeffect.cpp",
+ "src/svg/SkSVGCanvas.cpp",
+ "src/svg/SkSVGDevice.cpp",
+ "src/xml/SkDOM.cpp",
+ "src/xml/SkXMLParser.cpp",
+ "src/xml/SkXMLWriter.cpp",
+ "tests/AAClipTest.cpp",
+ "tests/AndroidCodecTest.cpp",
+ "tests/AnimatedImageTest.cpp",
+ "tests/AnnotationTest.cpp",
+ "tests/ApplyGammaTest.cpp",
+ "tests/ArenaAllocTest.cpp",
+ "tests/AsADashTest.cpp",
+ "tests/BadIcoTest.cpp",
+ "tests/BitSetTest.cpp",
+ "tests/BitmapCopyTest.cpp",
+ "tests/BitmapGetColorTest.cpp",
+ "tests/BitmapTest.cpp",
+ "tests/BlendTest.cpp",
+ "tests/BlitMaskClip.cpp",
+ "tests/BlitMaskTest.cpp",
+ "tests/BlurTest.cpp",
+ "tests/CTest.cpp",
+ "tests/CachedDataTest.cpp",
+ "tests/CachedDecodingPixelRefTest.cpp",
+ "tests/CanvasStateHelpers.cpp",
+ "tests/CanvasStateTest.cpp",
+ "tests/CanvasTest.cpp",
+ "tests/ChecksumTest.cpp",
+ "tests/ClearTest.cpp",
+ "tests/ClipBoundsTest.cpp",
+ "tests/ClipCubicTest.cpp",
+ "tests/ClipStackTest.cpp",
+ "tests/ClipperTest.cpp",
+ "tests/CodecAnimTest.cpp",
+ "tests/CodecExactReadTest.cpp",
+ "tests/CodecPartialTest.cpp",
+ "tests/CodecRecommendedTypeTest.cpp",
+ "tests/CodecTest.cpp",
+ "tests/ColorFilterTest.cpp",
+ "tests/ColorMatrixTest.cpp",
+ "tests/ColorPrivTest.cpp",
+ "tests/ColorSpaceTest.cpp",
+ "tests/ColorTest.cpp",
+ "tests/CopySurfaceTest.cpp",
+ "tests/CubicMapTest.cpp",
+ "tests/DashPathEffectTest.cpp",
+ "tests/DataRefTest.cpp",
+ "tests/DefaultPathRendererTest.cpp",
+ "tests/DeferredDisplayListTest.cpp",
+ "tests/DequeTest.cpp",
+ "tests/DetermineDomainModeTest.cpp",
+ "tests/DeviceTest.cpp",
+ "tests/DiscardableMemoryPoolTest.cpp",
+ "tests/DiscardableMemoryTest.cpp",
+ "tests/DrawBitmapRectTest.cpp",
+ "tests/DrawOpAtlasTest.cpp",
+ "tests/DrawPathTest.cpp",
+ "tests/DrawTextTest.cpp",
+ "tests/DynamicHashTest.cpp",
+ "tests/EGLImageTest.cpp",
+ "tests/EmptyPathTest.cpp",
+ "tests/EncodeTest.cpp",
+ "tests/EncodedInfoTest.cpp",
+ "tests/ExifTest.cpp",
+ "tests/F16StagesTest.cpp",
+ "tests/FillPathTest.cpp",
+ "tests/FitsInTest.cpp",
+ "tests/FlattenDrawableTest.cpp",
+ "tests/FlattenableCustomFactory.cpp",
+ "tests/FlattenableFactoryToName.cpp",
+ "tests/FlattenableNameToFactory.cpp",
+ "tests/Float16Test.cpp",
+ "tests/FloatingPointTextureTest.cpp",
+ "tests/FontHostStreamTest.cpp",
+ "tests/FontHostTest.cpp",
+ "tests/FontMgrAndroidParserTest.cpp",
+ "tests/FontMgrTest.cpp",
+ "tests/FontNamesTest.cpp",
+ "tests/FontObjTest.cpp",
+ "tests/FrontBufferedStreamTest.cpp",
+ "tests/GLProgramsTest.cpp",
+ "tests/GeometryTest.cpp",
+ "tests/GifTest.cpp",
+ "tests/GlyphRunTest.cpp",
+ "tests/GpuDrawPathTest.cpp",
+ "tests/GpuLayerCacheTest.cpp",
+ "tests/GpuRectanizerTest.cpp",
+ "tests/GrAHardwareBufferTest.cpp",
+ "tests/GrAllocatorTest.cpp",
+ "tests/GrCCPRTest.cpp",
+ "tests/GrContextAbandonTest.cpp",
+ "tests/GrContextFactoryTest.cpp",
+ "tests/GrGLExtensionsTest.cpp",
+ "tests/GrMemoryPoolTest.cpp",
+ "tests/GrMeshTest.cpp",
+ "tests/GrMipMappedTest.cpp",
+ "tests/GrPipelineDynamicStateTest.cpp",
+ "tests/GrPorterDuffTest.cpp",
+ "tests/GrSKSLPrettyPrintTest.cpp",
+ "tests/GrShapeTest.cpp",
+ "tests/GrSurfaceTest.cpp",
+ "tests/GrTRecorderTest.cpp",
+ "tests/GrTestingBackendTextureUploadTest.cpp",
+ "tests/GrTextureMipMapInvalidationTest.cpp",
+ "tests/GrUploadPixelsTests.cpp",
+ "tests/GradientTest.cpp",
+ "tests/HSVRoundTripTest.cpp",
+ "tests/HashTest.cpp",
+ "tests/HighContrastFilterTest.cpp",
+ "tests/ICCTest.cpp",
+ "tests/ImageCacheTest.cpp",
+ "tests/ImageFilterCacheTest.cpp",
+ "tests/ImageFilterTest.cpp",
+ "tests/ImageFrom565Bitmap.cpp",
+ "tests/ImageGeneratorTest.cpp",
+ "tests/ImageIsOpaqueTest.cpp",
+ "tests/ImageNewShaderTest.cpp",
+ "tests/ImageTest.cpp",
+ "tests/IncrTopoSortTest.cpp",
+ "tests/IndexedPngOverflowTest.cpp",
+ "tests/InfRectTest.cpp",
+ "tests/InsetConvexPolyTest.cpp",
+ "tests/InterpolatorTest.cpp",
+ "tests/InvalidIndexedPngTest.cpp",
+ "tests/IsClosedSingleContourTest.cpp",
+ "tests/JSONTest.cpp",
+ "tests/LListTest.cpp",
+ "tests/LRUCacheTest.cpp",
+ "tests/LayerDrawLooperTest.cpp",
+ "tests/LazyProxyTest.cpp",
+ "tests/MD5Test.cpp",
+ "tests/MallocPixelRefTest.cpp",
+ "tests/MaskCacheTest.cpp",
+ "tests/MathTest.cpp",
+ "tests/Matrix44Test.cpp",
+ "tests/MatrixClipCollapseTest.cpp",
+ "tests/MatrixTest.cpp",
+ "tests/MemoryTest.cpp",
+ "tests/MemsetTest.cpp",
+ "tests/MessageBusTest.cpp",
+ "tests/MetaDataTest.cpp",
+ "tests/MipMapTest.cpp",
+ "tests/NonlinearBlendingTest.cpp",
+ "tests/OSPathTest.cpp",
+ "tests/OffsetSimplePolyTest.cpp",
+ "tests/OnFlushCallbackTest.cpp",
+ "tests/OnceTest.cpp",
+ "tests/OpChainTest.cpp",
+ "tests/OverAlignedTest.cpp",
+ "tests/PDFDeflateWStreamTest.cpp",
+ "tests/PDFDocumentTest.cpp",
+ "tests/PDFGlyphsToUnicodeTest.cpp",
+ "tests/PDFJpegEmbedTest.cpp",
+ "tests/PDFMetadataAttributeTest.cpp",
+ "tests/PDFOpaqueSrcModeToSrcOverTest.cpp",
+ "tests/PDFPrimitivesTest.cpp",
+ "tests/PackBitsTest.cpp",
+ "tests/PackedConfigsTextureTest.cpp",
+ "tests/PaintBreakTextTest.cpp",
+ "tests/PaintImageFilterTest.cpp",
+ "tests/PaintTest.cpp",
+ "tests/ParametricStageTest.cpp",
+ "tests/ParsePathTest.cpp",
+ "tests/PathCoverageTest.cpp",
+ "tests/PathMeasureTest.cpp",
+ "tests/PathOpsAngleIdeas.cpp",
+ "tests/PathOpsAngleTest.cpp",
+ "tests/PathOpsAsWindingTest.cpp",
+ "tests/PathOpsBattles.cpp",
+ "tests/PathOpsBoundsTest.cpp",
+ "tests/PathOpsBuildUseTest.cpp",
+ "tests/PathOpsBuilderConicTest.cpp",
+ "tests/PathOpsBuilderTest.cpp",
+ "tests/PathOpsChalkboardTest.cpp",
+ "tests/PathOpsConicIntersectionTest.cpp",
+ "tests/PathOpsConicLineIntersectionTest.cpp",
+ "tests/PathOpsConicQuadIntersectionTest.cpp",
+ "tests/PathOpsCubicConicIntersectionTest.cpp",
+ "tests/PathOpsCubicIntersectionTest.cpp",
+ "tests/PathOpsCubicIntersectionTestData.cpp",
+ "tests/PathOpsCubicLineIntersectionIdeas.cpp",
+ "tests/PathOpsCubicLineIntersectionTest.cpp",
+ "tests/PathOpsCubicQuadIntersectionTest.cpp",
+ "tests/PathOpsCubicReduceOrderTest.cpp",
+ "tests/PathOpsDCubicTest.cpp",
+ "tests/PathOpsDLineTest.cpp",
+ "tests/PathOpsDPointTest.cpp",
+ "tests/PathOpsDRectTest.cpp",
+ "tests/PathOpsDVectorTest.cpp",
+ "tests/PathOpsDebug.cpp",
+ "tests/PathOpsExtendedTest.cpp",
+ "tests/PathOpsFuzz763Test.cpp",
+ "tests/PathOpsInverseTest.cpp",
+ "tests/PathOpsIssue3651.cpp",
+ "tests/PathOpsLineIntersectionTest.cpp",
+ "tests/PathOpsLineParametetersTest.cpp",
+ "tests/PathOpsOpCircleThreadedTest.cpp",
+ "tests/PathOpsOpCubicThreadedTest.cpp",
+ "tests/PathOpsOpLoopThreadedTest.cpp",
+ "tests/PathOpsOpRectThreadedTest.cpp",
+ "tests/PathOpsOpTest.cpp",
+ "tests/PathOpsQuadIntersectionTest.cpp",
+ "tests/PathOpsQuadIntersectionTestData.cpp",
+ "tests/PathOpsQuadLineIntersectionTest.cpp",
+ "tests/PathOpsQuadLineIntersectionThreadedTest.cpp",
+ "tests/PathOpsQuadReduceOrderTest.cpp",
+ "tests/PathOpsSimplifyDegenerateThreadedTest.cpp",
+ "tests/PathOpsSimplifyFailTest.cpp",
+ "tests/PathOpsSimplifyQuadThreadedTest.cpp",
+ "tests/PathOpsSimplifyQuadralateralsThreadedTest.cpp",
+ "tests/PathOpsSimplifyRectThreadedTest.cpp",
+ "tests/PathOpsSimplifyTest.cpp",
+ "tests/PathOpsSimplifyTrianglesThreadedTest.cpp",
+ "tests/PathOpsSkpTest.cpp",
+ "tests/PathOpsTestCommon.cpp",
+ "tests/PathOpsThreadedCommon.cpp",
+ "tests/PathOpsThreeWayTest.cpp",
+ "tests/PathOpsTigerTest.cpp",
+ "tests/PathOpsTightBoundsTest.cpp",
+ "tests/PathOpsTypesTest.cpp",
+ "tests/PathRendererCacheTests.cpp",
+ "tests/PathTest.cpp",
+ "tests/PictureBBHTest.cpp",
+ "tests/PictureShaderTest.cpp",
+ "tests/PictureTest.cpp",
+ "tests/PinnedImageTest.cpp",
+ "tests/PipeTest.cpp",
+ "tests/PixelRefTest.cpp",
+ "tests/Point3Test.cpp",
+ "tests/PointTest.cpp",
+ "tests/PolyUtilsTest.cpp",
+ "tests/PremulAlphaRoundTripTest.cpp",
+ "tests/PrimitiveProcessorTest.cpp",
+ "tests/ProcessorTest.cpp",
+ "tests/PromiseImageTest.cpp",
+ "tests/ProxyConversionTest.cpp",
+ "tests/ProxyRefTest.cpp",
+ "tests/ProxyTest.cpp",
+ "tests/QuickRejectTest.cpp",
+ "tests/RRectInPathTest.cpp",
+ "tests/RTreeTest.cpp",
+ "tests/RandomTest.cpp",
+ "tests/ReadPixelsTest.cpp",
+ "tests/ReadWriteAlphaTest.cpp",
+ "tests/Reader32Test.cpp",
+ "tests/RecordDrawTest.cpp",
+ "tests/RecordOptsTest.cpp",
+ "tests/RecordPatternTest.cpp",
+ "tests/RecordTest.cpp",
+ "tests/RecorderTest.cpp",
+ "tests/RecordingXfermodeTest.cpp",
+ "tests/RectTest.cpp",
+ "tests/RectangleTextureTest.cpp",
+ "tests/RefCntTest.cpp",
+ "tests/RegionTest.cpp",
+ "tests/RenderTargetContextTest.cpp",
+ "tests/ResourceAllocatorTest.cpp",
+ "tests/ResourceCacheTest.cpp",
+ "tests/RoundRectTest.cpp",
+ "tests/SRGBReadWritePixelsTest.cpp",
+ "tests/SRGBTest.cpp",
+ "tests/SVGDeviceTest.cpp",
+ "tests/SafeMathTest.cpp",
+ "tests/ScalarTest.cpp",
+ "tests/ScaleToSidesTest.cpp",
+ "tests/SerialProcsTest.cpp",
+ "tests/SerializationTest.cpp",
+ "tests/ShaderOpacityTest.cpp",
+ "tests/ShaderTest.cpp",
+ "tests/ShadowTest.cpp",
+ "tests/SizeTest.cpp",
+ "tests/Sk4x4fTest.cpp",
+ "tests/SkBase64Test.cpp",
+ "tests/SkColor4fTest.cpp",
+ "tests/SkColorSpaceXformStepsTest.cpp",
+ "tests/SkDOMTest.cpp",
+ "tests/SkFixed15Test.cpp",
+ "tests/SkGaussFilterTest.cpp",
+ "tests/SkImageTest.cpp",
+ "tests/SkLiteDLTest.cpp",
+ "tests/SkNxTest.cpp",
+ "tests/SkPEGTest.cpp",
+ "tests/SkRasterPipelineTest.cpp",
+ "tests/SkRemoteGlyphCacheTest.cpp",
+ "tests/SkResourceCacheTest.cpp",
+ "tests/SkSLErrorTest.cpp",
+ "tests/SkSLFPTest.cpp",
+ "tests/SkSLGLSLTest.cpp",
+ "tests/SkSLJITTest.cpp",
+ "tests/SkSLMemoryLayoutTest.cpp",
+ "tests/SkSLSPIRVTest.cpp",
+ "tests/SkSharedMutexTest.cpp",
+ "tests/SkUTFTest.cpp",
+ "tests/SortTest.cpp",
+ "tests/SpecialImageTest.cpp",
+ "tests/SpecialSurfaceTest.cpp",
+ "tests/SrcOverTest.cpp",
+ "tests/StreamBufferTest.cpp",
+ "tests/StreamTest.cpp",
+ "tests/StringTest.cpp",
+ "tests/StrokeTest.cpp",
+ "tests/StrokerTest.cpp",
+ "tests/SubsetPath.cpp",
+ "tests/SurfaceSemaphoreTest.cpp",
+ "tests/SurfaceTest.cpp",
+ "tests/SwizzlerTest.cpp",
+ "tests/TArrayTest.cpp",
+ "tests/TDPQueueTest.cpp",
+ "tests/TLazyTest.cpp",
+ "tests/TableColorFilterTest.cpp",
+ "tests/TemplatesTest.cpp",
+ "tests/TessellatingPathRendererTests.cpp",
+ "tests/Test.cpp",
+ "tests/TestTest.cpp",
+ "tests/TestUtils.cpp",
+ "tests/TextBlobCacheTest.cpp",
+ "tests/TextBlobTest.cpp",
+ "tests/TextureProxyTest.cpp",
+ "tests/TextureStripAtlasManagerTest.cpp",
+ "tests/Time.cpp",
+ "tests/ToSRGBColorFilter.cpp",
+ "tests/TopoSortTest.cpp",
+ "tests/TraceMemoryDumpTest.cpp",
+ "tests/TracingTest.cpp",
+ "tests/TransferPixelsTest.cpp",
+ "tests/TypefaceTest.cpp",
+ "tests/UnicodeTest.cpp",
+ "tests/UtilsTest.cpp",
+ "tests/VerticesTest.cpp",
+ "tests/VkBackendSurfaceTest.cpp",
+ "tests/VkMakeCopyPipelineTest.cpp",
+ "tests/VkWrapTests.cpp",
+ "tests/VptrTest.cpp",
+ "tests/WindowRectanglesTest.cpp",
+ "tests/WritePixelsTest.cpp",
+ "tests/Writer32Test.cpp",
+ "tests/YUVCacheTest.cpp",
+ "tests/YUVTest.cpp",
+ "tests/image-bitmap.cpp",
+ "tests/skbug5221.cpp",
+ "tests/skbug6389.cpp",
+ "tests/skbug6653.cpp",
+ "tools/AndroidSkDebugToStdOut.cpp",
+ "tools/CrashHandler.cpp",
+ "tools/DDLPromiseImageHelper.cpp",
+ "tools/DDLTileHelper.cpp",
+ "tools/LsanSuppressions.cpp",
+ "tools/ProcStats.cpp",
+ "tools/Resources.cpp",
+ "tools/UrlDataManager.cpp",
+ "tools/debugger/SkDebugCanvas.cpp",
+ "tools/debugger/SkDrawCommand.cpp",
+ "tools/debugger/SkJsonWriteBuffer.cpp",
+ "tools/flags/SkCommandLineFlags.cpp",
+ "tools/flags/SkCommonFlags.cpp",
+ "tools/flags/SkCommonFlagsConfig.cpp",
+ "tools/fonts/SkRandomScalerContext.cpp",
+ "tools/fonts/SkTestFontMgr.cpp",
+ "tools/fonts/SkTestSVGTypeface.cpp",
+ "tools/fonts/SkTestTypeface.cpp",
+ "tools/fonts/sk_tool_utils_font.cpp",
+ "tools/gpu/GrContextFactory.cpp",
+ "tools/gpu/GrTest.cpp",
+ "tools/gpu/MemoryCache.cpp",
+ "tools/gpu/ProxyUtils.cpp",
+ "tools/gpu/TestContext.cpp",
+ "tools/gpu/atlastext/GLTestAtlasTextRenderer.cpp",
+ "tools/gpu/gl/GLTestContext.cpp",
+ "tools/gpu/gl/command_buffer/GLTestContext_command_buffer.cpp",
+ "tools/gpu/gl/egl/CreatePlatformGLTestContext_egl.cpp",
+ "tools/gpu/gl/null/NullGLTestContext.cpp",
+ "tools/gpu/mock/MockTestContext.cpp",
+ "tools/gpu/vk/VkTestContext.cpp",
+ "tools/gpu/vk/VkTestUtils.cpp",
+ "tools/random_parse_path.cpp",
+ "tools/sk_tool_utils.cpp",
+ "tools/timer/Timer.cpp",
+ "tools/trace/SkChromeTracingTracer.cpp",
+ "tools/trace/SkDebugfTracer.cpp",
+ "tools/trace/SkEventTracingPriv.cpp",
+ ],
+
+ shared_libs: [
+ "libbinder",
+ "libutils",
+ ],
+}
+
+cc_test {
+ name: "skia_nanobench",
+
+ defaults: [
+ "skia_tool_deps"
+ ],
+
+ local_include_dirs: [
+ "bench/",
+ "experimental/svg/model/",
+ "gm/",
+ "include/android/",
+ "include/atlastext/",
+ "include/c/",
+ "include/codec/",
+ "include/config/",
+ "include/core/",
+ "include/docs/",
+ "include/effects/",
+ "include/encode/",
+ "include/gpu/",
+ "include/pathops/",
+ "include/ports/",
+ "include/private/",
+ "include/svg/",
+ "include/utils/",
+ "include/utils/mac/",
+ "modules/sksg/include/",
+ "src/c/",
+ "src/codec/",
+ "src/core/",
+ "src/effects/",
+ "src/fonts/",
+ "src/gpu/",
+ "src/image/",
+ "src/images/",
+ "src/lazy/",
+ "src/opts/",
+ "src/pathops/",
+ "src/pdf/",
+ "src/ports/",
+ "src/sfnt/",
+ "src/shaders/",
+ "src/shaders/gradients/",
+ "src/sksl/",
+ "src/utils/",
+ "src/utils/win/",
+ "src/xml/",
+ "third_party/gif/",
+ "third_party/vulkan/",
+ "tools/",
+ "tools/debugger/",
+ "tools/flags/",
+ "tools/fonts/",
+ "tools/gpu/",
+ "tools/timer/",
+ "tools/trace/",
+ ],
+
+ srcs: [
+ "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/ClipMaskBench.cpp",
+ "bench/ClipStrategyBench.cpp",
+ "bench/CmapBench.cpp",
+ "bench/CodecBench.cpp",
+ "bench/ColorCanvasDrawBitmapBench.cpp",
+ "bench/ColorFilterBench.cpp",
+ "bench/ColorPrivBench.cpp",
+ "bench/ColorSpaceXformBench.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/EncoderBench.cpp",
+ "bench/FSRectBench.cpp",
+ "bench/FontCacheBench.cpp",
+ "bench/FontScalerBench.cpp",
+ "bench/GMBench.cpp",
+ "bench/GameBench.cpp",
+ "bench/GeometryBench.cpp",
+ "bench/GrCCFillGeometryBench.cpp",
+ "bench/GrMemoryPoolBench.cpp",
+ "bench/GrMipMapBench.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/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/PDFBench.cpp",
+ "bench/PatchBench.cpp",
+ "bench/PathBench.cpp",
+ "bench/PathIterBench.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/RectBench.cpp",
+ "bench/RectanizerBench.cpp",
+ "bench/RectoriBench.cpp",
+ "bench/RefCntBench.cpp",
+ "bench/RegionBench.cpp",
+ "bench/RegionContainBench.cpp",
+ "bench/RepeatTileBench.cpp",
+ "bench/RotatedRectBench.cpp",
+ "bench/SKPAnimationBench.cpp",
+ "bench/SKPBench.cpp",
+ "bench/ScalarBench.cpp",
+ "bench/ShaderMaskBench.cpp",
+ "bench/ShaderMaskFilterBench.cpp",
+ "bench/ShadowBench.cpp",
+ "bench/ShapesBench.cpp",
+ "bench/Sk4fBench.cpp",
+ "bench/SkGlyphCacheBench.cpp",
+ "bench/SkRasterPipelineBench.cpp",
+ "bench/SortBench.cpp",
+ "bench/StreamBench.cpp",
+ "bench/StrokeBench.cpp",
+ "bench/SwizzleBench.cpp",
+ "bench/TableBench.cpp",
+ "bench/TextBench.cpp",
+ "bench/TextBlobBench.cpp",
+ "bench/TileBench.cpp",
+ "bench/TileImageFilterBench.cpp",
+ "bench/TopoSortBench.cpp",
+ "bench/VertBench.cpp",
+ "bench/VertexColorSpaceBench.cpp",
+ "bench/WritePixelsBench.cpp",
+ "bench/WriterBench.cpp",
+ "bench/nanobench.cpp",
+ "experimental/svg/model/SkSVGAttribute.cpp",
+ "experimental/svg/model/SkSVGAttributeParser.cpp",
+ "experimental/svg/model/SkSVGCircle.cpp",
+ "experimental/svg/model/SkSVGClipPath.cpp",
+ "experimental/svg/model/SkSVGContainer.cpp",
+ "experimental/svg/model/SkSVGDOM.cpp",
+ "experimental/svg/model/SkSVGEllipse.cpp",
+ "experimental/svg/model/SkSVGGradient.cpp",
+ "experimental/svg/model/SkSVGLine.cpp",
+ "experimental/svg/model/SkSVGLinearGradient.cpp",
+ "experimental/svg/model/SkSVGNode.cpp",
+ "experimental/svg/model/SkSVGPath.cpp",
+ "experimental/svg/model/SkSVGPattern.cpp",
+ "experimental/svg/model/SkSVGPoly.cpp",
+ "experimental/svg/model/SkSVGRadialGradient.cpp",
+ "experimental/svg/model/SkSVGRect.cpp",
+ "experimental/svg/model/SkSVGRenderContext.cpp",
+ "experimental/svg/model/SkSVGSVG.cpp",
+ "experimental/svg/model/SkSVGShape.cpp",
+ "experimental/svg/model/SkSVGStop.cpp",
+ "experimental/svg/model/SkSVGTransformableNode.cpp",
+ "experimental/svg/model/SkSVGUse.cpp",
+ "experimental/svg/model/SkSVGValue.cpp",
+ "gm/3dgm.cpp",
+ "gm/OverStroke.cpp",
+ "gm/aaa.cpp",
+ "gm/aaclip.cpp",
+ "gm/aarectmodes.cpp",
+ "gm/aaxfermodes.cpp",
+ "gm/addarc.cpp",
+ "gm/all_bitmap_configs.cpp",
+ "gm/alpha_image.cpp",
+ "gm/alphagradients.cpp",
+ "gm/analytic_gradients.cpp",
+ "gm/androidblendmodes.cpp",
+ "gm/animatedGif.cpp",
+ "gm/animatedimageblurs.cpp",
+ "gm/anisotropic.cpp",
+ "gm/annotated_text.cpp",
+ "gm/arcofzorro.cpp",
+ "gm/arcto.cpp",
+ "gm/arithmode.cpp",
+ "gm/atlastext.cpp",
+ "gm/badpaint.cpp",
+ "gm/beziereffects.cpp",
+ "gm/beziers.cpp",
+ "gm/bigblurs.cpp",
+ "gm/bigmatrix.cpp",
+ "gm/bigrect.cpp",
+ "gm/bigrrectaaeffect.cpp",
+ "gm/bigtext.cpp",
+ "gm/bigtileimagefilter.cpp",
+ "gm/bitmapcopy.cpp",
+ "gm/bitmapfilters.cpp",
+ "gm/bitmapimage.cpp",
+ "gm/bitmappremul.cpp",
+ "gm/bitmaprect.cpp",
+ "gm/bitmaprecttest.cpp",
+ "gm/bitmapshader.cpp",
+ "gm/bitmaptiled.cpp",
+ "gm/bleed.cpp",
+ "gm/blend.cpp",
+ "gm/blurcircles.cpp",
+ "gm/blurcircles2.cpp",
+ "gm/blurignorexform.cpp",
+ "gm/blurimagevmask.cpp",
+ "gm/blurpositioning.cpp",
+ "gm/blurquickreject.cpp",
+ "gm/blurrect.cpp",
+ "gm/blurredclippedcircle.cpp",
+ "gm/blurroundrect.cpp",
+ "gm/blurs.cpp",
+ "gm/blurtextsmallradii.cpp",
+ "gm/bmpfilterqualityrepeat.cpp",
+ "gm/bug5252.cpp",
+ "gm/bug530095.cpp",
+ "gm/bug615686.cpp",
+ "gm/bug6643.cpp",
+ "gm/bug6783.cpp",
+ "gm/cgm.c",
+ "gm/cgms.cpp",
+ "gm/circle_sizes.cpp",
+ "gm/circles.cpp",
+ "gm/circulararcs.cpp",
+ "gm/circularclips.cpp",
+ "gm/clip_error.cpp",
+ "gm/clip_strokerect.cpp",
+ "gm/clipdrawdraw.cpp",
+ "gm/clippedbitmapshaders.cpp",
+ "gm/clockwise.cpp",
+ "gm/color4f.cpp",
+ "gm/coloremoji.cpp",
+ "gm/coloremoji_blendmodes.cpp",
+ "gm/colorfilteralpha8.cpp",
+ "gm/colorfilterimagefilter.cpp",
+ "gm/colorfilters.cpp",
+ "gm/colormatrix.cpp",
+ "gm/colorwheel.cpp",
+ "gm/complexclip.cpp",
+ "gm/complexclip2.cpp",
+ "gm/complexclip3.cpp",
+ "gm/complexclip4.cpp",
+ "gm/complexclip_blur_tiled.cpp",
+ "gm/composeshader.cpp",
+ "gm/concavepaths.cpp",
+ "gm/conicpaths.cpp",
+ "gm/constcolorprocessor.cpp",
+ "gm/convex_all_line_paths.cpp",
+ "gm/convexpaths.cpp",
+ "gm/convexpolyclip.cpp",
+ "gm/convexpolyeffect.cpp",
+ "gm/copyTo4444.cpp",
+ "gm/crbug_691386.cpp",
+ "gm/crbug_788500.cpp",
+ "gm/crbug_847759.cpp",
+ "gm/crbug_884166.cpp",
+ "gm/crbug_887103.cpp",
+ "gm/croppedrects.cpp",
+ "gm/crosscontextimage.cpp",
+ "gm/cubicpaths.cpp",
+ "gm/dashcircle.cpp",
+ "gm/dashcubics.cpp",
+ "gm/dashing.cpp",
+ "gm/degeneratesegments.cpp",
+ "gm/dftext.cpp",
+ "gm/dftext_blob_persp.cpp",
+ "gm/discard.cpp",
+ "gm/displacement.cpp",
+ "gm/distantclip.cpp",
+ "gm/downsamplebitmap.cpp",
+ "gm/draw_bitmap_rect_skbug4374.cpp",
+ "gm/drawable.cpp",
+ "gm/drawatlas.cpp",
+ "gm/drawatlascolor.cpp",
+ "gm/drawbitmaprect.cpp",
+ "gm/drawlooper.cpp",
+ "gm/drawminibitmaprect.cpp",
+ "gm/drawregion.cpp",
+ "gm/drawregionmodes.cpp",
+ "gm/dropshadowimagefilter.cpp",
+ "gm/drrect.cpp",
+ "gm/drrect_small_inner.cpp",
+ "gm/dstreadshuffle.cpp",
+ "gm/emboss.cpp",
+ "gm/emptypath.cpp",
+ "gm/encode-alpha-jpeg.cpp",
+ "gm/encode-platform.cpp",
+ "gm/encode-srgb.cpp",
+ "gm/encode.cpp",
+ "gm/extractbitmap.cpp",
+ "gm/fadefilter.cpp",
+ "gm/fatpathfill.cpp",
+ "gm/filltypes.cpp",
+ "gm/filltypespersp.cpp",
+ "gm/filterbitmap.cpp",
+ "gm/filterbug.cpp",
+ "gm/filterfastbounds.cpp",
+ "gm/filterindiabox.cpp",
+ "gm/flippity.cpp",
+ "gm/fontcache.cpp",
+ "gm/fontmgr.cpp",
+ "gm/fontscaler.cpp",
+ "gm/fontscalerdistortable.cpp",
+ "gm/gamma.cpp",
+ "gm/gammatext.cpp",
+ "gm/gamut.cpp",
+ "gm/getpostextpath.cpp",
+ "gm/giantbitmap.cpp",
+ "gm/glyph_pos.cpp",
+ "gm/gm.cpp",
+ "gm/gradientDirtyLaundry.cpp",
+ "gm/gradient_matrix.cpp",
+ "gm/gradients.cpp",
+ "gm/gradients_2pt_conical.cpp",
+ "gm/gradients_no_texture.cpp",
+ "gm/gradtext.cpp",
+ "gm/grayscalejpg.cpp",
+ "gm/hairlines.cpp",
+ "gm/hairmodes.cpp",
+ "gm/hardstop_gradients.cpp",
+ "gm/highcontrastfilter.cpp",
+ "gm/hittestpath.cpp",
+ "gm/hsl.cpp",
+ "gm/hugepath.cpp",
+ "gm/image.cpp",
+ "gm/image_pict.cpp",
+ "gm/image_shader.cpp",
+ "gm/imagealphathreshold.cpp",
+ "gm/imageblur.cpp",
+ "gm/imageblur2.cpp",
+ "gm/imageblurclampmode.cpp",
+ "gm/imageblurrepeatmode.cpp",
+ "gm/imageblurtiled.cpp",
+ "gm/imagefilters.cpp",
+ "gm/imagefiltersbase.cpp",
+ "gm/imagefiltersclipped.cpp",
+ "gm/imagefilterscropexpand.cpp",
+ "gm/imagefilterscropped.cpp",
+ "gm/imagefiltersgraph.cpp",
+ "gm/imagefiltersscaled.cpp",
+ "gm/imagefiltersstroked.cpp",
+ "gm/imagefilterstransformed.cpp",
+ "gm/imagefromyuvtextures.cpp",
+ "gm/imagemagnifier.cpp",
+ "gm/imagemakewithfilter.cpp",
+ "gm/imagemasksubset.cpp",
+ "gm/imageresizetiled.cpp",
+ "gm/imagescalealigned.cpp",
+ "gm/imagesource.cpp",
+ "gm/imagesource2.cpp",
+ "gm/internal_links.cpp",
+ "gm/inversepaths.cpp",
+ "gm/jpg_color_cube.cpp",
+ "gm/largeglyphblur.cpp",
+ "gm/lattice.cpp",
+ "gm/lcdblendmodes.cpp",
+ "gm/lcdoverlap.cpp",
+ "gm/lcdtext.cpp",
+ "gm/lighting.cpp",
+ "gm/lightingshader.cpp",
+ "gm/lightingshader2.cpp",
+ "gm/linepaths.cpp",
+ "gm/localmatriximagefilter.cpp",
+ "gm/localmatriximageshader.cpp",
+ "gm/localmatrixshader.cpp",
+ "gm/lumafilter.cpp",
+ "gm/makeRasterImage.cpp",
+ "gm/makecolorspace.cpp",
+ "gm/mandoline.cpp",
+ "gm/manypaths.cpp",
+ "gm/matrixconvolution.cpp",
+ "gm/matriximagefilter.cpp",
+ "gm/megalooper.cpp",
+ "gm/mipmap.cpp",
+ "gm/mixedtextblobs.cpp",
+ "gm/modecolorfilters.cpp",
+ "gm/morphology.cpp",
+ "gm/multipicturedraw.cpp",
+ "gm/nested.cpp",
+ "gm/ninepatchstretch.cpp",
+ "gm/nonclosedpaths.cpp",
+ "gm/offsetimagefilter.cpp",
+ "gm/orientation.cpp",
+ "gm/ovals.cpp",
+ "gm/overdrawcolorfilter.cpp",
+ "gm/p3.cpp",
+ "gm/patch.cpp",
+ "gm/path_stroke_with_zero_length.cpp",
+ "gm/pathcontourstart.cpp",
+ "gm/patheffects.cpp",
+ "gm/pathfill.cpp",
+ "gm/pathinterior.cpp",
+ "gm/pathmaskcache.cpp",
+ "gm/pathmeasure.cpp",
+ "gm/pathopsinverse.cpp",
+ "gm/pathopsskpclip.cpp",
+ "gm/pathreverse.cpp",
+ "gm/pdf_never_embed.cpp",
+ "gm/perlinnoise.cpp",
+ "gm/perspimages.cpp",
+ "gm/perspshaders.cpp",
+ "gm/picture.cpp",
+ "gm/pictureimagefilter.cpp",
+ "gm/pictureimagegenerator.cpp",
+ "gm/pictureshader.cpp",
+ "gm/pictureshadercache.cpp",
+ "gm/pictureshadertile.cpp",
+ "gm/pixelsnap.cpp",
+ "gm/plus.cpp",
+ "gm/points.cpp",
+ "gm/poly2poly.cpp",
+ "gm/polygonoffset.cpp",
+ "gm/polygons.cpp",
+ "gm/quadpaths.cpp",
+ "gm/radial_gradient_precision.cpp",
+ "gm/readpixels.cpp",
+ "gm/recordopts.cpp",
+ "gm/rectangletexture.cpp",
+ "gm/rects.cpp",
+ "gm/repeated_bitmap.cpp",
+ "gm/resizeimagefilter.cpp",
+ "gm/roundrects.cpp",
+ "gm/rrect.cpp",
+ "gm/rrectclipdrawpaint.cpp",
+ "gm/rrects.cpp",
+ "gm/samplerstress.cpp",
+ "gm/savelayer.cpp",
+ "gm/scaledemoji.cpp",
+ "gm/scaledemoji_rendering.cpp",
+ "gm/scaledstrokes.cpp",
+ "gm/shadermaskfilter.cpp",
+ "gm/shadertext.cpp",
+ "gm/shadertext2.cpp",
+ "gm/shadertext3.cpp",
+ "gm/shadows.cpp",
+ "gm/shadowutils.cpp",
+ "gm/shallowgradient.cpp",
+ "gm/shapes.cpp",
+ "gm/shapes_as_paths.cpp",
+ "gm/sharedcorners.cpp",
+ "gm/showmiplevels.cpp",
+ "gm/simple_magnification.cpp",
+ "gm/simpleaaclip.cpp",
+ "gm/simplerect.cpp",
+ "gm/skbug1719.cpp",
+ "gm/skbug_257.cpp",
+ "gm/skbug_4868.cpp",
+ "gm/skbug_5321.cpp",
+ "gm/skinning.cpp",
+ "gm/smallarc.cpp",
+ "gm/smallpaths.cpp",
+ "gm/spritebitmap.cpp",
+ "gm/srcmode.cpp",
+ "gm/srgb.cpp",
+ "gm/stlouisarch.cpp",
+ "gm/stringart.cpp",
+ "gm/stroke_rect_shader.cpp",
+ "gm/strokedlines.cpp",
+ "gm/strokefill.cpp",
+ "gm/strokerect.cpp",
+ "gm/strokerects.cpp",
+ "gm/strokes.cpp",
+ "gm/stroketext.cpp",
+ "gm/subsetshader.cpp",
+ "gm/surface.cpp",
+ "gm/tablecolorfilter.cpp",
+ "gm/tallstretchedbitmaps.cpp",
+ "gm/testgradient.cpp",
+ "gm/text_scale_skew.cpp",
+ "gm/textblob.cpp",
+ "gm/textblobblockreordering.cpp",
+ "gm/textblobcolortrans.cpp",
+ "gm/textblobgeometrychange.cpp",
+ "gm/textbloblooper.cpp",
+ "gm/textblobmixedsizes.cpp",
+ "gm/textblobrandomfont.cpp",
+ "gm/textblobshader.cpp",
+ "gm/textblobtransforms.cpp",
+ "gm/textblobuseaftergpufree.cpp",
+ "gm/texteffects.cpp",
+ "gm/texturedomaineffect.cpp",
+ "gm/thinconcavepaths.cpp",
+ "gm/thinrects.cpp",
+ "gm/thinstrokedrects.cpp",
+ "gm/tiledscaledbitmap.cpp",
+ "gm/tileimagefilter.cpp",
+ "gm/tilemodes.cpp",
+ "gm/tilemodes_scaled.cpp",
+ "gm/tinybitmap.cpp",
+ "gm/tonalshadows.cpp",
+ "gm/tosrgb_colorfilter.cpp",
+ "gm/transparency.cpp",
+ "gm/trickycubicstrokes.cpp",
+ "gm/typeface.cpp",
+ "gm/variedtext.cpp",
+ "gm/vertices.cpp",
+ "gm/verttext.cpp",
+ "gm/verttext2.cpp",
+ "gm/verylargebitmap.cpp",
+ "gm/windowrectangles.cpp",
+ "gm/xfermodeimagefilter.cpp",
+ "gm/xfermodes.cpp",
+ "gm/xfermodes2.cpp",
+ "gm/xfermodes3.cpp",
+ "gm/yuvtorgbeffect.cpp",
+ "src/svg/SkSVGCanvas.cpp",
+ "src/svg/SkSVGDevice.cpp",
+ "src/xml/SkDOM.cpp",
+ "src/xml/SkXMLParser.cpp",
+ "src/xml/SkXMLWriter.cpp",
+ "tools/AndroidSkDebugToStdOut.cpp",
+ "tools/CrashHandler.cpp",
+ "tools/DDLPromiseImageHelper.cpp",
+ "tools/DDLTileHelper.cpp",
+ "tools/LsanSuppressions.cpp",
+ "tools/ProcStats.cpp",
+ "tools/Resources.cpp",
+ "tools/UrlDataManager.cpp",
+ "tools/debugger/SkDebugCanvas.cpp",
+ "tools/debugger/SkDrawCommand.cpp",
+ "tools/debugger/SkJsonWriteBuffer.cpp",
+ "tools/flags/SkCommandLineFlags.cpp",
+ "tools/flags/SkCommonFlags.cpp",
+ "tools/flags/SkCommonFlagsConfig.cpp",
+ "tools/fonts/SkRandomScalerContext.cpp",
+ "tools/fonts/SkTestFontMgr.cpp",
+ "tools/fonts/SkTestSVGTypeface.cpp",
+ "tools/fonts/SkTestTypeface.cpp",
+ "tools/fonts/sk_tool_utils_font.cpp",
+ "tools/gpu/GrContextFactory.cpp",
+ "tools/gpu/GrTest.cpp",
+ "tools/gpu/MemoryCache.cpp",
+ "tools/gpu/ProxyUtils.cpp",
+ "tools/gpu/TestContext.cpp",
+ "tools/gpu/atlastext/GLTestAtlasTextRenderer.cpp",
+ "tools/gpu/gl/GLTestContext.cpp",
+ "tools/gpu/gl/command_buffer/GLTestContext_command_buffer.cpp",
+ "tools/gpu/gl/egl/CreatePlatformGLTestContext_egl.cpp",
+ "tools/gpu/gl/null/NullGLTestContext.cpp",
+ "tools/gpu/mock/MockTestContext.cpp",
+ "tools/gpu/vk/VkTestContext.cpp",
+ "tools/gpu/vk/VkTestUtils.cpp",
+ "tools/random_parse_path.cpp",
+ "tools/sk_tool_utils.cpp",
+ "tools/timer/Timer.cpp",
+ "tools/trace/SkChromeTracingTracer.cpp",
+ "tools/trace/SkDebugfTracer.cpp",
+ "tools/trace/SkEventTracingPriv.cpp",
+ ],
+
+ data: [
+ "resources/*",
+ ],
+}
diff --git a/CleanSpec.mk b/CleanSpec.mk
new file mode 100644
index 0000000..b84e1b6
--- /dev/null
+++ b/CleanSpec.mk
@@ -0,0 +1,49 @@
+# Copyright (C) 2007 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# If you don't need to do a full clean build but would like to touch
+# a file or delete some intermediate files, add a clean step to the end
+# of the list. These steps will only be run once, if they haven't been
+# run before.
+#
+# E.g.:
+# $(call add-clean-step, touch -c external/sqlite/sqlite3.h)
+# $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libz_intermediates)
+#
+# Always use "touch -c" and "rm -f" or "rm -rf" to gracefully deal with
+# files that are missing or have been moved.
+#
+# Use $(PRODUCT_OUT) to get to the "out/target/product/blah/" directory.
+# Use $(OUT_DIR) to refer to the "out" directory.
+#
+# If you need to re-do something that's already mentioned, just copy
+# the command and add it to the bottom of the list. E.g., if a change
+# that you made last week required touching a file and a change you
+# made today requires touching the same file, just copy the old
+# touch step and add it to the end of the list.
+#
+# ************************************************
+# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
+# ************************************************
+
+# For example:
+#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/AndroidTests_intermediates)
+#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/core_intermediates)
+#$(call add-clean-step, find $(OUT_DIR) -type f -name "IGTalkSession*" -print0 | xargs -0 rm -f)
+#$(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/*)
+
+# ************************************************
+# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
+# ************************************************
diff --git a/DATA/skia_resources b/DATA/skia_resources
new file mode 120000
index 0000000..35a4f7a
--- /dev/null
+++ b/DATA/skia_resources
@@ -0,0 +1 @@
+../resources
\ No newline at end of file
diff --git a/MODULE_LICENSE_BSD b/MODULE_LICENSE_BSD
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/MODULE_LICENSE_BSD
diff --git a/NOTICE b/NOTICE
new file mode 100644
index 0000000..3106369
--- /dev/null
+++ b/NOTICE
@@ -0,0 +1,68 @@
+// Copyright (c) 2011 Google Inc. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+=========================================================================
+
+The SKIA library also includes a third-party dependency on a nearly
+verbatim copy of the GLU tessellator source code from SGI's OpenGL Sample
+Implementation at http://oss.sgi.com/projects/ogl-sample/. Per
+http://oss.sgi.com/projects/FreeB/, the code is covered under the SGI
+Free Software License B, version 2.0, a copy of which is included below.
+
+SGI FREE SOFTWARE LICENSE B (Version 2.0, Sept. 18, 2008)
+
+Copyright (C) [dates of first publication] Silicon Graphics, Inc. All
+Rights Reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice including the dates of first publication
+and either this permission notice or a reference to HYPERLINK
+"http://oss.sgi.com/projects/FreeB/"http://oss.sgi.com/projects/FreeB/
+shall be included in all copies or substantial portions of the
+Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL SILICON GRAPHICS, INC. BE LIABLE
+FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
+CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of Silicon Graphics,
+Inc. shall not be used in advertising or otherwise to promote the
+sale, use or other dealings in this Software without prior written
+authorization from Silicon Graphics, Inc.
+
diff --git a/README.android b/README.android
new file mode 100644
index 0000000..fece98e
--- /dev/null
+++ b/README.android
@@ -0,0 +1,13 @@
+The Skia library is a cross-platform 2D-based renderer. The
+key places to look are in the folders:
+
+ include/ : contains public header files
+ src/ : contains src code
+
+The top level makefile is at the root: Android.mk
+
+These files originate from an upstream repository
+(skia.googlesource.com) where the project is actively developed
+and maintained. As a result some files are not relevant to
+Android, but make the merging process smoother.
+
diff --git a/gm/DATA/skia_resources b/gm/DATA/skia_resources
new file mode 120000
index 0000000..81bd1c5
--- /dev/null
+++ b/gm/DATA/skia_resources
@@ -0,0 +1 @@
+../../resources/
\ No newline at end of file
diff --git a/include/config/SkUserConfig.h b/include/config/SkUserConfig.h
index a6497ca..ce75021 100644
--- a/include/config/SkUserConfig.h
+++ b/include/config/SkUserConfig.h
@@ -1,130 +1,21 @@
-
-/*
- * Copyright 2006 The Android Open Source Project
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-
+// DO NOT MODIFY! This file is autogenerated by gn_to_bp.py.
+// If need to change a define, modify SkUserConfigManual.h
#ifndef SkUserConfig_DEFINED
#define SkUserConfig_DEFINED
-
-/* SkTypes.h, the root of the public header files, does the following trick:
-
- #include "SkPreConfig.h"
- #include "SkUserConfig.h"
- #include "SkPostConfig.h"
-
- SkPreConfig.h runs first, and it is responsible for initializing certain
- skia defines.
-
- SkPostConfig.h runs last, and its job is to just check that the final
- defines are consistent (i.e. that we don't have mutually conflicting
- defines).
-
- SkUserConfig.h (this file) runs in the middle. It gets to change or augment
- the list of flags initially set in preconfig, and then postconfig checks
- that everything still makes sense.
-
- Below are optional defines that add, subtract, or change default behavior
- in Skia. Your port can locally edit this file to enable/disable flags as
- you choose, or these can be delared on your command line (i.e. -Dfoo).
-
- By default, this include file will always default to having all of the flags
- commented out, so including it will have no effect.
-*/
-
-///////////////////////////////////////////////////////////////////////////////
-
-/* Skia has lots of debug-only code. Often this is just null checks or other
- parameter checking, but sometimes it can be quite intrusive (e.g. check that
- each 32bit pixel is in premultiplied form). This code can be very useful
- during development, but will slow things down in a shipping product.
-
- By default, these mutually exclusive flags are defined in SkPreConfig.h,
- based on the presence or absence of NDEBUG, but that decision can be changed
- here.
- */
-//#define SK_DEBUG
-//#define SK_RELEASE
-
-/* Skia has certain debug-only code that is extremely intensive even for debug
- builds. This code is useful for diagnosing specific issues, but is not
- generally applicable, therefore it must be explicitly enabled to avoid
- the performance impact. By default these flags are undefined, but can be
- enabled by uncommenting them below.
- */
-//#define SK_DEBUG_GLYPH_CACHE
-//#define SK_DEBUG_PATH
-
-/* preconfig will have attempted to determine the endianness of the system,
- but you can change these mutually exclusive flags here.
- */
-//#define SK_CPU_BENDIAN
-//#define SK_CPU_LENDIAN
-
-/* Most compilers use the same bit endianness for bit flags in a byte as the
- system byte endianness, and this is the default. If for some reason this
- needs to be overridden, specify which of the mutually exclusive flags to
- use. For example, some atom processors in certain configurations have big
- endian byte order but little endian bit orders.
-*/
-//#define SK_UINT8_BITFIELD_BENDIAN
-//#define SK_UINT8_BITFIELD_LENDIAN
-
-
-/* To write debug messages to a console, skia will call SkDebugf(...) following
- printf conventions (e.g. const char* format, ...). If you want to redirect
- this to something other than printf, define yours here
- */
-//#define SkDebugf(...) MyFunction(__VA_ARGS__)
-
-/*
- * To specify a different default font cache limit, define this. If this is
- * undefined, skia will use a built-in value.
- */
-//#define SK_DEFAULT_FONT_CACHE_LIMIT (1024 * 1024)
-
-/*
- * To specify the default size of the image cache, undefine this and set it to
- * the desired value (in bytes). SkGraphics.h as a runtime API to set this
- * value as well. If this is undefined, a built-in value will be used.
- */
-//#define SK_DEFAULT_IMAGE_CACHE_LIMIT (1024 * 1024)
-
-/* Define this to set the upper limit for text to support LCD. Values that
- are very large increase the cost in the font cache and draw slower, without
- improving readability. If this is undefined, Skia will use its default
- value (e.g. 48)
- */
-//#define SK_MAX_SIZE_FOR_LCDTEXT 48
-
-/* Change the ordering to work in X windows.
- */
-#ifdef SK_SAMPLES_FOR_X
- #define SK_R32_SHIFT 16
- #define SK_G32_SHIFT 8
- #define SK_B32_SHIFT 0
- #define SK_A32_SHIFT 24
-#endif
-
-
-/* Determines whether to build code that supports the GPU backend. Some classes
- that are not GPU-specific, such as SkShader subclasses, have optional code
- that is used allows them to interact with the GPU backend. If you'd like to
- omit this code set SK_SUPPORT_GPU to 0. This also allows you to omit the gpu
- directories from your include search path when you're not building the GPU
- backend. Defaults to 1 (build the GPU code).
- */
-//#define SK_SUPPORT_GPU 1
-
-/* Skia makes use of histogram logging macros to trace the frequency of
- * events. By default, Skia provides no-op versions of these macros.
- * Skia consumers can provide their own definitions of these macros to
- * integrate with their histogram collection backend.
- */
-//#define SK_HISTOGRAM_BOOLEAN(name, value)
-//#define SK_HISTOGRAM_ENUMERATION(name, value, boundary_value)
-
-#endif
+#include "SkUserConfigManual.h"
+ #define SK_ALLOW_STATIC_GLOBAL_INITIALIZERS 0
+ #define SK_CODEC_DECODES_RAW
+ #define SK_ENABLE_DISCRETE_GPU
+ #define SK_GAMMA_APPLY_TO_A8
+ #define SK_GAMMA_CONTRAST 0.0
+ #define SK_GAMMA_EXPONENT 1.4
+ #define SK_HAS_HEIF_LIBRARY
+ #define SK_HAS_JPEG_LIBRARY
+ #define SK_HAS_PNG_LIBRARY
+ #define SK_HAS_WEBP_LIBRARY
+ #define SK_PDF_USE_SFNTLY
+ #define SK_SUPPORT_LEGACY_DOCUMENT_FACTORY
+ #define SK_SUPPORT_PDF
+ #define SK_VULKAN
+ #define SK_XML
+#endif//SkUserConfig_DEFINED
diff --git a/include/config/SkUserConfigManual.h b/include/config/SkUserConfigManual.h
new file mode 100644
index 0000000..d07d72d
--- /dev/null
+++ b/include/config/SkUserConfigManual.h
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2017 Google Inc.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+#ifndef SkUserConfigManual_DEFINED
+#define SkUserConfigManual_DEFINED
+ #define GR_GL_CUSTOM_SETUP_HEADER "gl/GrGLConfig_chrome.h"
+ #define GR_TEST_UTILS 1
+ #define SK_BUILD_FOR_ANDROID_FRAMEWORK
+ #define SK_DEFAULT_FONT_CACHE_LIMIT (768 * 1024)
+ #define SK_DEFAULT_GLOBAL_DISCARDABLE_MEMORY_POOL_SIZE (512 * 1024)
+ #define SK_USE_FREETYPE_EMBOLDEN
+
+ // Disable these Ganesh features
+ #define SK_DISABLE_EXPLICIT_GPU_RESOURCE_ALLOCATION
+ #define SK_DISABLE_RENDER_TARGET_SORTING
+
+ // Legacy flags
+ #define SK_IGNORE_GPU_DITHER
+ #define SK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS
+ #define SK_SUPPORT_DEPRECATED_CLIPOPS
+ // Needed until we fix https://bug.skia.org/2440
+ #define SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG
+ #define SK_SUPPORT_LEGACY_EMBOSSMASKFILTER
+ #define SK_SUPPORT_LEGACY_GRADIENT_DITHERING
+ #define SK_SUPPORT_LEGACY_SHADER_ISABITMAP
+ #define SK_SUPPORT_LEGACY_TILED_BITMAPS
+ #define SK_SUPPORT_LEGACY_RECTMAKELARGEST
+ #define SK_SUPPORT_LEGACY_AA_CHOICE
+ #define SK_SUPPORT_LEGACY_THREADED_DAA_BUGS
+ #define SK_SUPPORT_LEGACY_A8_MASKBLITTER
+ #define SK_LEGACY_SRGB_GAMUT
+
+ // While working on updating skias vulkan interface
+ #define SK_SUPPORT_LEGACY_VULKAN_INTERFACE
+ #define SK_SUPPORT_LEGACY_AAA_CHOICE
+#endif // SkUserConfigManual_DEFINED
diff --git a/src/core/SkBlitter_Sprite.cpp b/src/core/SkBlitter_Sprite.cpp
index 0fdb5e1..d9a95a9 100644
--- a/src/core/SkBlitter_Sprite.cpp
+++ b/src/core/SkBlitter_Sprite.cpp
@@ -138,6 +138,7 @@
p.append(SkRasterPipeline::scale_1_float, &fPaintColor.fA);
}
+ // TODO: use this knowledge when creating SkColorSpaceXformSteps above.
bool is_opaque = fSource.isOpaque() && fPaintColor.fA == 1.0f;
fBlitter = SkCreateRasterPipelineBlitter(fDst, paint, p, is_opaque, fAlloc);
}