1#!/usr/bin/env python 2# 3# Copyright 2016 Google Inc. 4# 5# Use of this source code is governed by a BSD-style license that can be 6# found in the LICENSE file. 7 8from __future__ import print_function 9 10import collections 11import json 12import os 13import subprocess 14import sys 15 16# Finds all public sources in include directories then write them to skia.h. 17 18# Also write skia.h.deps, which Ninja uses to track dependencies. It's the 19# very same mechanism Ninja uses to know which .h files affect which .cpp files. 20 21skia_h = sys.argv[3] 22 23with open(skia_h, 'w') as f: 24 f.write('// skia.h generated by GN.\n') 25 f.write('#ifndef skia_h_DEFINED\n') 26 f.write('#define skia_h_DEFINED\n') 27 f.write('#include "third_party/skia/client_utils/android/BRDAllocator.h"\n') 28 f.write('#include "third_party/skia/client_utils/android/BitmapRegionDecoder.h"\n') 29 f.write('#include "third_party/skia/client_utils/android/FrontBufferedStream.h"\n') 30 f.write('#include "third_party/skia/include/core/SkAnnotation.h"\n') 31 f.write('#include "third_party/skia/include/core/SkBBHFactory.h"\n') 32 f.write('#include "third_party/skia/include/core/SkBitmap.h"\n') 33 f.write('#include "third_party/skia/include/core/SkBlendMode.h"\n') 34 f.write('#include "third_party/skia/include/core/SkBlender.h"\n') 35 f.write('#include "third_party/skia/include/core/SkBlurTypes.h"\n') 36 f.write('#include "third_party/skia/include/core/SkCanvas.h"\n') 37 f.write('#include "third_party/skia/include/core/SkCanvasVirtualEnforcer.h"\n') 38 f.write('#include "third_party/skia/include/core/SkClipOp.h"\n') 39 f.write('#include "third_party/skia/include/core/SkColor.h"\n') 40 f.write('#include "third_party/skia/include/core/SkColorFilter.h"\n') 41 f.write('#include "third_party/skia/include/core/SkColorPriv.h"\n') 42 f.write('#include "third_party/skia/include/core/SkColorSpace.h"\n') 43 f.write('#include "third_party/skia/include/core/SkContourMeasure.h"\n') 44 f.write('#include "third_party/skia/include/core/SkCoverageMode.h"\n') 45 f.write('#include "third_party/skia/include/core/SkCubicMap.h"\n') 46 f.write('#include "third_party/skia/include/core/SkData.h"\n') 47 f.write('#include "third_party/skia/include/core/SkDataTable.h"\n') 48 f.write('#include "third_party/skia/include/core/SkDeferredDisplayList.h"\n') 49 f.write('#include "third_party/skia/include/core/SkDeferredDisplayListRecorder.h"\n') 50 f.write('#include "third_party/skia/include/core/SkDocument.h"\n') 51 f.write('#include "third_party/skia/include/core/SkDrawable.h"\n') 52 f.write('#include "third_party/skia/include/core/SkEncodedImageFormat.h"\n') 53 f.write('#include "third_party/skia/include/core/SkExecutor.h"\n') 54 f.write('#include "third_party/skia/include/core/SkFlattenable.h"\n') 55 f.write('#include "third_party/skia/include/core/SkFont.h"\n') 56 f.write('#include "third_party/skia/include/core/SkFontArguments.h"\n') 57 f.write('#include "third_party/skia/include/core/SkFontMetrics.h"\n') 58 f.write('#include "third_party/skia/include/core/SkFontMgr.h"\n') 59 f.write('#include "third_party/skia/include/core/SkFontParameters.h"\n') 60 f.write('#include "third_party/skia/include/core/SkFontStyle.h"\n') 61 f.write('#include "third_party/skia/include/core/SkFontTypes.h"\n') 62 f.write('#include "third_party/skia/include/core/SkGraphics.h"\n') 63 f.write('#include "third_party/skia/include/core/SkICC.h"\n') 64 f.write('#include "third_party/skia/include/core/SkImage.h"\n') 65 f.write('#include "third_party/skia/include/core/SkImageEncoder.h"\n') 66 f.write('#include "third_party/skia/include/core/SkImageFilter.h"\n') 67 f.write('#include "third_party/skia/include/core/SkImageGenerator.h"\n') 68 f.write('#include "third_party/skia/include/core/SkImageInfo.h"\n') 69 f.write('#include "third_party/skia/include/core/SkM44.h"\n') 70 f.write('#include "third_party/skia/include/core/SkMallocPixelRef.h"\n') 71 f.write('#include "third_party/skia/include/core/SkMaskFilter.h"\n') 72 f.write('#include "third_party/skia/include/core/SkMath.h"\n') 73 f.write('#include "third_party/skia/include/core/SkMatrix.h"\n') 74 f.write('#include "third_party/skia/include/core/SkMilestone.h"\n') 75 f.write('#include "third_party/skia/include/core/SkOverdrawCanvas.h"\n') 76 f.write('#include "third_party/skia/include/core/SkPaint.h"\n') 77 f.write('#include "third_party/skia/include/core/SkPath.h"\n') 78 f.write('#include "third_party/skia/include/core/SkPathBuilder.h"\n') 79 f.write('#include "third_party/skia/include/core/SkPathEffect.h"\n') 80 f.write('#include "third_party/skia/include/core/SkPathMeasure.h"\n') 81 f.write('#include "third_party/skia/include/core/SkPicture.h"\n') 82 f.write('#include "third_party/skia/include/core/SkPictureRecorder.h"\n') 83 f.write('#include "third_party/skia/include/core/SkPixelRef.h"\n') 84 f.write('#include "third_party/skia/include/core/SkPixmap.h"\n') 85 f.write('#include "third_party/skia/include/core/SkPngChunkReader.h"\n') 86 f.write('#include "third_party/skia/include/core/SkPoint.h"\n') 87 f.write('#include "third_party/skia/include/core/SkPoint3.h"\n') 88 f.write('#include "third_party/skia/include/core/SkPromiseImageTexture.h"\n') 89 f.write('#include "third_party/skia/include/core/SkRRect.h"\n') 90 f.write('#include "third_party/skia/include/core/SkRSXform.h"\n') 91 f.write('#include "third_party/skia/include/core/SkRasterHandleAllocator.h"\n') 92 f.write('#include "third_party/skia/include/core/SkRect.h"\n') 93 f.write('#include "third_party/skia/include/core/SkRefCnt.h"\n') 94 f.write('#include "third_party/skia/include/core/SkRegion.h"\n') 95 f.write('#include "third_party/skia/include/core/SkScalar.h"\n') 96 f.write('#include "third_party/skia/include/core/SkSerialProcs.h"\n') 97 f.write('#include "third_party/skia/include/core/SkShader.h"\n') 98 f.write('#include "third_party/skia/include/core/SkSize.h"\n') 99 f.write('#include "third_party/skia/include/core/SkSpan.h"\n') 100 f.write('#include "third_party/skia/include/core/SkStream.h"\n') 101 f.write('#include "third_party/skia/include/core/SkString.h"\n') 102 f.write('#include "third_party/skia/include/core/SkStringView.h"\n') 103 f.write('#include "third_party/skia/include/core/SkStrokeRec.h"\n') 104 f.write('#include "third_party/skia/include/core/SkSurface.h"\n') 105 f.write('#include "third_party/skia/include/core/SkSurfaceCharacterization.h"\n') 106 f.write('#include "third_party/skia/include/core/SkSurfaceProps.h"\n') 107 f.write('#include "third_party/skia/include/core/SkSwizzle.h"\n') 108 f.write('#include "third_party/skia/include/core/SkTextBlob.h"\n') 109 f.write('#include "third_party/skia/include/core/SkTime.h"\n') 110 f.write('#include "third_party/skia/include/core/SkTraceMemoryDump.h"\n') 111 f.write('#include "third_party/skia/include/core/SkTypeface.h"\n') 112 f.write('#include "third_party/skia/include/core/SkTypes.h"\n') 113 f.write('#include "third_party/skia/include/core/SkUnPreMultiply.h"\n') 114 f.write('#include "third_party/skia/include/core/SkVertices.h"\n') 115 f.write('#include "third_party/skia/include/core/SkYUVAInfo.h"\n') 116 f.write('#include "third_party/skia/include/core/SkYUVAPixmaps.h"\n') 117 f.write('#include "third_party/skia/include/docs/SkPDFDocument.h"\n') 118 f.write('#include "third_party/skia/include/effects/Sk1DPathEffect.h"\n') 119 f.write('#include "third_party/skia/include/effects/Sk2DPathEffect.h"\n') 120 f.write('#include "third_party/skia/include/effects/SkBlenders.h"\n') 121 f.write('#include "third_party/skia/include/effects/SkBlurMaskFilter.h"\n') 122 f.write('#include "third_party/skia/include/effects/SkColorMatrix.h"\n') 123 f.write('#include "third_party/skia/include/effects/SkColorMatrixFilter.h"\n') 124 f.write('#include "third_party/skia/include/effects/SkCornerPathEffect.h"\n') 125 f.write('#include "third_party/skia/include/effects/SkDashPathEffect.h"\n') 126 f.write('#include "third_party/skia/include/effects/SkDiscretePathEffect.h"\n') 127 f.write('#include "third_party/skia/include/effects/SkGradientShader.h"\n') 128 f.write('#include "third_party/skia/include/effects/SkHighContrastFilter.h"\n') 129 f.write('#include "third_party/skia/include/effects/SkImageFilters.h"\n') 130 f.write('#include "third_party/skia/include/effects/SkLumaColorFilter.h"\n') 131 f.write('#include "third_party/skia/include/effects/SkOverdrawColorFilter.h"\n') 132 f.write('#include "third_party/skia/include/effects/SkPerlinNoiseShader.h"\n') 133 f.write('#include "third_party/skia/include/effects/SkRuntimeEffect.h"\n') 134 f.write('#include "third_party/skia/include/effects/SkShaderMaskFilter.h"\n') 135 f.write('#include "third_party/skia/include/effects/SkTableColorFilter.h"\n') 136 f.write('#include "third_party/skia/include/effects/SkTableMaskFilter.h"\n') 137 f.write('#include "third_party/skia/include/encode/SkJpegEncoder.h"\n') 138 f.write('#include "third_party/skia/include/gpu/GrBackendDrawableInfo.h"\n') 139 f.write('#include "third_party/skia/include/gpu/GrBackendSemaphore.h"\n') 140 f.write('#include "third_party/skia/include/gpu/GrBackendSurface.h"\n') 141 f.write('#include "third_party/skia/include/gpu/GrBackendSurfaceMutableState.h"\n') 142 f.write('#include "third_party/skia/include/gpu/GrConfig.h"\n') 143 f.write('#include "third_party/skia/include/gpu/GrContextOptions.h"\n') 144 f.write('#include "third_party/skia/include/gpu/GrContextThreadSafeProxy.h"\n') 145 f.write('#include "third_party/skia/include/gpu/GrDirectContext.h"\n') 146 f.write('#include "third_party/skia/include/gpu/GrDriverBugWorkarounds.h"\n') 147 f.write('#include "third_party/skia/include/gpu/GrRecordingContext.h"\n') 148 f.write('#include "third_party/skia/include/gpu/GrSurfaceInfo.h"\n') 149 f.write('#include "third_party/skia/include/gpu/GrTypes.h"\n') 150 f.write('#include "third_party/skia/include/gpu/GrYUVABackendTextures.h"\n') 151 f.write('#include "third_party/skia/include/gpu/gl/GrGLAssembleInterface.h"\n') 152 f.write('#include "third_party/skia/include/gpu/gl/GrGLConfig.h"\n') 153 f.write('#include "third_party/skia/include/gpu/gl/GrGLExtensions.h"\n') 154 f.write('#include "third_party/skia/include/gpu/gl/GrGLFunctions.h"\n') 155 f.write('#include "third_party/skia/include/gpu/gl/GrGLInterface.h"\n') 156 f.write('#include "third_party/skia/include/gpu/gl/GrGLTypes.h"\n') 157 f.write('#include "third_party/skia/include/gpu/mock/GrMockTypes.h"\n') 158 f.write('#include "third_party/skia/include/pathops/SkPathOps.h"\n') 159 f.write('#include "third_party/skia/include/utils/SkAnimCodecPlayer.h"\n') 160 f.write('#include "third_party/skia/include/utils/SkBase64.h"\n') 161 f.write('#include "third_party/skia/include/utils/SkCamera.h"\n') 162 f.write('#include "third_party/skia/include/utils/SkCanvasStateUtils.h"\n') 163 f.write('#include "third_party/skia/include/utils/SkCustomTypeface.h"\n') 164 f.write('#include "third_party/skia/include/utils/SkEventTracer.h"\n') 165 f.write('#include "third_party/skia/include/utils/SkNWayCanvas.h"\n') 166 f.write('#include "third_party/skia/include/utils/SkNoDrawCanvas.h"\n') 167 f.write('#include "third_party/skia/include/utils/SkNullCanvas.h"\n') 168 f.write('#include "third_party/skia/include/utils/SkOrderedFontMgr.h"\n') 169 f.write('#include "third_party/skia/include/utils/SkPaintFilterCanvas.h"\n') 170 f.write('#include "third_party/skia/include/utils/SkParse.h"\n') 171 f.write('#include "third_party/skia/include/utils/SkParsePath.h"\n') 172 f.write('#include "third_party/skia/include/utils/SkRandom.h"\n') 173 f.write('#include "third_party/skia/include/utils/SkShadowUtils.h"\n') 174 f.write('#include "third_party/skia/include/utils/mac/SkCGUtils.h"\n') 175 f.write('#include "third_party/skia/modules/skottie/include/ExternalLayer.h"\n') 176 f.write('#include "third_party/skia/modules/skottie/include/Skottie.h"\n') 177 f.write('#include "third_party/skia/modules/skottie/include/SkottieProperty.h"\n') 178 f.write('#include "third_party/skia/modules/skparagraph/include/DartTypes.h"\n') 179 f.write('#include "third_party/skia/modules/skparagraph/include/FontCollection.h"\n') 180 f.write('#include "third_party/skia/modules/skparagraph/include/Paragraph.h"\n') 181 f.write('#include "third_party/skia/modules/skparagraph/include/ParagraphBuilder.h"\n') 182 f.write('#include "third_party/skia/modules/skparagraph/include/ParagraphCache.h"\n') 183 f.write('#include "third_party/skia/modules/skparagraph/include/ParagraphStyle.h"\n') 184 f.write('#include "third_party/skia/modules/skparagraph/include/TextShadow.h"\n') 185 f.write('#include "third_party/skia/modules/skparagraph/include/TextStyle.h"\n') 186 f.write('#include "third_party/skia/modules/skparagraph/include/TypefaceFontProvider.h"\n') 187 f.write('#include "third_party/skia/modules/skshaper/include/SkShaper.h"\n') 188 f.write('#include "third_party/skia/modules/svg/include/SkSVGAttribute.h"\n') 189 f.write('#include "third_party/skia/modules/svg/include/SkSVGAttributeParser.h"\n') 190 f.write('#include "third_party/skia/modules/svg/include/SkSVGCircle.h"\n') 191 f.write('#include "third_party/skia/modules/svg/include/SkSVGClipPath.h"\n') 192 f.write('#include "third_party/skia/modules/svg/include/SkSVGContainer.h"\n') 193 f.write('#include "third_party/skia/modules/svg/include/SkSVGDOM.h"\n') 194 f.write('#include "third_party/skia/modules/svg/include/SkSVGDefs.h"\n') 195 f.write('#include "third_party/skia/modules/svg/include/SkSVGEllipse.h"\n') 196 f.write('#include "third_party/skia/modules/svg/include/SkSVGFe.h"\n') 197 f.write('#include "third_party/skia/modules/svg/include/SkSVGFeBlend.h"\n') 198 f.write('#include "third_party/skia/modules/svg/include/SkSVGFeColorMatrix.h"\n') 199 f.write('#include "third_party/skia/modules/svg/include/SkSVGFeComposite.h"\n') 200 f.write('#include "third_party/skia/modules/svg/include/SkSVGFeDisplacementMap.h"\n') 201 f.write('#include "third_party/skia/modules/svg/include/SkSVGFeFlood.h"\n') 202 f.write('#include "third_party/skia/modules/svg/include/SkSVGFeGaussianBlur.h"\n') 203 f.write('#include "third_party/skia/modules/svg/include/SkSVGFeImage.h"\n') 204 f.write('#include "third_party/skia/modules/svg/include/SkSVGFeLightSource.h"\n') 205 f.write('#include "third_party/skia/modules/svg/include/SkSVGFeLighting.h"\n') 206 f.write('#include "third_party/skia/modules/svg/include/SkSVGFeMorphology.h"\n') 207 f.write('#include "third_party/skia/modules/svg/include/SkSVGFeOffset.h"\n') 208 f.write('#include "third_party/skia/modules/svg/include/SkSVGFeTurbulence.h"\n') 209 f.write('#include "third_party/skia/modules/svg/include/SkSVGFilter.h"\n') 210 f.write('#include "third_party/skia/modules/svg/include/SkSVGFilterContext.h"\n') 211 f.write('#include "third_party/skia/modules/svg/include/SkSVGG.h"\n') 212 f.write('#include "third_party/skia/modules/svg/include/SkSVGGradient.h"\n') 213 f.write('#include "third_party/skia/modules/svg/include/SkSVGHiddenContainer.h"\n') 214 f.write('#include "third_party/skia/modules/svg/include/SkSVGIDMapper.h"\n') 215 f.write('#include "third_party/skia/modules/svg/include/SkSVGImage.h"\n') 216 f.write('#include "third_party/skia/modules/svg/include/SkSVGLine.h"\n') 217 f.write('#include "third_party/skia/modules/svg/include/SkSVGLinearGradient.h"\n') 218 f.write('#include "third_party/skia/modules/svg/include/SkSVGMask.h"\n') 219 f.write('#include "third_party/skia/modules/svg/include/SkSVGNode.h"\n') 220 f.write('#include "third_party/skia/modules/svg/include/SkSVGPath.h"\n') 221 f.write('#include "third_party/skia/modules/svg/include/SkSVGPattern.h"\n') 222 f.write('#include "third_party/skia/modules/svg/include/SkSVGPoly.h"\n') 223 f.write('#include "third_party/skia/modules/svg/include/SkSVGRadialGradient.h"\n') 224 f.write('#include "third_party/skia/modules/svg/include/SkSVGRect.h"\n') 225 f.write('#include "third_party/skia/modules/svg/include/SkSVGRenderContext.h"\n') 226 f.write('#include "third_party/skia/modules/svg/include/SkSVGSVG.h"\n') 227 f.write('#include "third_party/skia/modules/svg/include/SkSVGShape.h"\n') 228 f.write('#include "third_party/skia/modules/svg/include/SkSVGStop.h"\n') 229 f.write('#include "third_party/skia/modules/svg/include/SkSVGText.h"\n') 230 f.write('#include "third_party/skia/modules/svg/include/SkSVGTransformableNode.h"\n') 231 f.write('#include "third_party/skia/modules/svg/include/SkSVGTypes.h"\n') 232 f.write('#include "third_party/skia/modules/svg/include/SkSVGUse.h"\n') 233 f.write('#include "third_party/skia/modules/svg/include/SkSVGValue.h"\n') 234 f.write('#endif//skia_h_DEFINED\n') 235 236# Temporary: during development this file wrote skia.h.d, not skia.h.deps, 237# and I think we have some bad versions of those files laying around. 238if os.path.exists(skia_h + '.d'): 239 os.remove(skia_h + '.d') 240