skia2/gyp/utils.gypi
mtklein 9db912c2ac Sketch splitting SkPicture into an interface and SkBigPicture.
Adds small pictures for drawRect(), drawTextBlob(), and drawPath().
These cover about 89% of draw calls from Blink SKPs,
and about 25% of draw calls from our GMs.

SkPicture handles:
  - serialization and deserialization
  - unique IDs

Everything else is left to the subclasses:
  - playback(), cullRect()
  - hasBitmap(), hasText(), suitableForGPU(), etc.
  - LayerInfo / AccelData if applicable.

The time to record a 1-op picture improves a good chunk
(2 mallocs to 1), and the time to record a 0-op picture
greatly improves (2 mallocs to none):

    picture_overhead_draw:   450ns -> 350ns
    picture_overhead_nodraw: 300ns -> 90ns

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/c92c129ff85b05a714bd1bf921c02d5e14651f8b

Latest blink_linux_rel:

http://build.chromium.org/p/tryserver.blink/builders/linux_blink_rel/builds/61248

Committed: https://skia.googlesource.com/skia/+/15877b6eae33a9282458bdb904a6d00440eca0ec

http://build.chromium.org/p/tryserver.blink/builders/linux_blink_rel/builds/62015

Review URL: https://codereview.chromium.org/1112523006
2015-05-19 11:11:26 -07:00

139 lines
6.4 KiB
Python

# Copyright 2015 Google Inc.
#
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# Include this gypi to include all 'utils' 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': [
# Classes for a threadpool.
'<(skia_src_path)/utils/SkCondVar.h',
'<(skia_src_path)/utils/SkRunnable.h',
'<(skia_src_path)/utils/SkCondVar.cpp',
'<(skia_include_path)/utils/SkBoundaryPatch.h',
'<(skia_include_path)/utils/SkFrontBufferedStream.h',
'<(skia_include_path)/utils/SkCamera.h',
'<(skia_include_path)/utils/SkCanvasStateUtils.h',
'<(skia_include_path)/utils/SkCubicInterval.h',
'<(skia_include_path)/utils/SkCullPoints.h',
'<(skia_include_path)/utils/SkDebugUtils.h',
'<(skia_include_path)/utils/SkDeferredCanvas.h',
'<(skia_include_path)/utils/SkDumpCanvas.h',
'<(skia_include_path)/utils/SkEventTracer.h',
'<(skia_include_path)/utils/SkInterpolator.h',
'<(skia_include_path)/utils/SkLayer.h',
'<(skia_include_path)/utils/SkMatrix44.h',
'<(skia_include_path)/utils/SkMeshUtils.h',
'<(skia_include_path)/utils/SkNinePatch.h',
'<(skia_include_path)/utils/SkNoSaveLayerCanvas.h',
'<(skia_include_path)/utils/SkNWayCanvas.h',
'<(skia_include_path)/utils/SkNullCanvas.h',
'<(skia_include_path)/utils/SkPaintFilterCanvas.h',
'<(skia_include_path)/utils/SkParse.h',
'<(skia_include_path)/utils/SkParsePaint.h',
'<(skia_include_path)/utils/SkParsePath.h',
'<(skia_include_path)/utils/SkPictureUtils.h',
'<(skia_include_path)/utils/SkRandom.h',
'<(skia_include_path)/utils/SkRTConf.h',
'<(skia_include_path)/utils/SkTextBox.h',
'<(skia_src_path)/utils/SkBase64.cpp',
'<(skia_src_path)/utils/SkBase64.h',
'<(skia_src_path)/utils/SkBitmapHasher.cpp',
'<(skia_src_path)/utils/SkBitmapHasher.h',
'<(skia_src_path)/utils/SkBitSet.cpp',
'<(skia_src_path)/utils/SkBitSet.h',
'<(skia_src_path)/utils/SkBoundaryPatch.cpp',
'<(skia_src_path)/utils/SkFrontBufferedStream.cpp',
'<(skia_src_path)/utils/SkCamera.cpp',
'<(skia_src_path)/utils/SkCanvasStack.h',
'<(skia_src_path)/utils/SkCanvasStack.cpp',
'<(skia_src_path)/utils/SkCanvasStateUtils.cpp',
'<(skia_src_path)/utils/SkCubicInterval.cpp',
'<(skia_src_path)/utils/SkCullPoints.cpp',
'<(skia_src_path)/utils/SkDashPath.cpp',
'<(skia_src_path)/utils/SkDashPathPriv.h',
'<(skia_src_path)/utils/SkDeferredCanvas.cpp',
'<(skia_src_path)/utils/SkDumpCanvas.cpp',
'<(skia_src_path)/utils/SkEventTracer.cpp',
'<(skia_src_path)/utils/SkFloatUtils.h',
'<(skia_src_path)/utils/SkInterpolator.cpp',
'<(skia_src_path)/utils/SkLayer.cpp',
'<(skia_src_path)/utils/SkMatrix22.cpp',
'<(skia_src_path)/utils/SkMatrix22.h',
'<(skia_src_path)/utils/SkMatrix44.cpp',
'<(skia_src_path)/utils/SkMD5.cpp',
'<(skia_src_path)/utils/SkMD5.h',
'<(skia_src_path)/utils/SkMeshUtils.cpp',
'<(skia_src_path)/utils/SkNinePatch.cpp',
'<(skia_src_path)/utils/SkNWayCanvas.cpp',
'<(skia_src_path)/utils/SkNullCanvas.cpp',
'<(skia_src_path)/utils/SkOSFile.cpp',
'<(skia_src_path)/utils/SkPaintFilterCanvas.cpp',
'<(skia_src_path)/utils/SkParse.cpp',
'<(skia_src_path)/utils/SkParseColor.cpp',
'<(skia_src_path)/utils/SkParsePath.cpp',
'<(skia_src_path)/utils/SkPatchGrid.cpp',
'<(skia_src_path)/utils/SkPatchGrid.h',
'<(skia_src_path)/utils/SkPatchUtils.cpp',
'<(skia_src_path)/utils/SkPatchUtils.h',
'<(skia_src_path)/utils/SkSHA1.cpp',
'<(skia_src_path)/utils/SkSHA1.h',
'<(skia_src_path)/utils/SkRTConf.cpp',
'<(skia_src_path)/utils/SkTextBox.cpp',
'<(skia_src_path)/utils/SkTextureCompressor.cpp',
'<(skia_src_path)/utils/SkTextureCompressor.h',
'<(skia_src_path)/utils/SkTextureCompressor_Utils.h',
'<(skia_src_path)/utils/SkTextureCompressor_ASTC.cpp',
'<(skia_src_path)/utils/SkTextureCompressor_ASTC.h',
'<(skia_src_path)/utils/SkTextureCompressor_Blitter.h',
'<(skia_src_path)/utils/SkTextureCompressor_R11EAC.cpp',
'<(skia_src_path)/utils/SkTextureCompressor_R11EAC.h',
'<(skia_src_path)/utils/SkTextureCompressor_LATC.cpp',
'<(skia_src_path)/utils/SkTextureCompressor_LATC.h',
'<(skia_src_path)/utils/SkThreadUtils.h',
'<(skia_src_path)/utils/SkThreadUtils_pthread.cpp',
'<(skia_src_path)/utils/SkThreadUtils_pthread.h',
'<(skia_src_path)/utils/SkThreadUtils_pthread_linux.cpp',
'<(skia_src_path)/utils/SkThreadUtils_pthread_mach.cpp',
'<(skia_src_path)/utils/SkThreadUtils_pthread_other.cpp',
'<(skia_src_path)/utils/SkThreadUtils_win.cpp',
'<(skia_src_path)/utils/SkThreadUtils_win.h',
'<(skia_src_path)/utils/SkTFitsIn.h',
'<(skia_src_path)/utils/SkTLogic.h',
#mac
'<(skia_include_path)/utils/mac/SkCGUtils.h',
'<(skia_src_path)/utils/mac/SkCreateCGImageRef.cpp',
#windows
'<(skia_include_path)/utils/win/SkAutoCoInitialize.h',
'<(skia_include_path)/utils/win/SkHRESULT.h',
'<(skia_include_path)/utils/win/SkIStream.h',
'<(skia_include_path)/utils/win/SkTScopedComPtr.h',
'<(skia_src_path)/utils/win/SkAutoCoInitialize.cpp',
'<(skia_src_path)/utils/win/SkDWrite.h',
'<(skia_src_path)/utils/win/SkDWrite.cpp',
'<(skia_src_path)/utils/win/SkDWriteFontFileStream.cpp',
'<(skia_src_path)/utils/win/SkDWriteFontFileStream.h',
'<(skia_src_path)/utils/win/SkDWriteGeometrySink.cpp',
'<(skia_src_path)/utils/win/SkDWriteGeometrySink.h',
'<(skia_src_path)/utils/win/SkHRESULT.cpp',
'<(skia_src_path)/utils/win/SkIStream.cpp',
'<(skia_src_path)/utils/win/SkWGL.h',
'<(skia_src_path)/utils/win/SkWGL_win.cpp',
#testing
'<(skia_src_path)/fonts/SkGScalerContext.cpp',
'<(skia_src_path)/fonts/SkGScalerContext.h',
'<(skia_src_path)/fonts/SkTestScalerContext.cpp',
'<(skia_src_path)/fonts/SkTestScalerContext.h',
],
}