#!/usr/bin/env python # # Copyright 2016 Google Inc. # # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. from __future__ import print_function import collections import json import os import subprocess import sys # Finds all public sources in include directories then write them to skia.h. # Also write skia.h.deps, which Ninja uses to track dependencies. It's the # very same mechanism Ninja uses to know which .h files affect which .cpp files. skia_h = sys.argv[3] with open(skia_h, 'w') as f: f.write('// skia.h generated by GN.\n') f.write('#ifndef skia_h_DEFINED\n') f.write('#define skia_h_DEFINED\n') f.write('#include "third_party/skia/client_utils/android/BRDAllocator.h"\n') f.write('#include "third_party/skia/client_utils/android/BitmapRegionDecoder.h"\n') f.write('#include "third_party/skia/client_utils/android/FrontBufferedStream.h"\n') f.write('#include "third_party/skia/include/core/SkAnnotation.h"\n') f.write('#include "third_party/skia/include/core/SkBBHFactory.h"\n') f.write('#include "third_party/skia/include/core/SkBitmap.h"\n') f.write('#include "third_party/skia/include/core/SkBlendMode.h"\n') f.write('#include "third_party/skia/include/core/SkBlender.h"\n') f.write('#include "third_party/skia/include/core/SkBlurTypes.h"\n') f.write('#include "third_party/skia/include/core/SkCanvas.h"\n') f.write('#include "third_party/skia/include/core/SkCanvasVirtualEnforcer.h"\n') f.write('#include "third_party/skia/include/core/SkClipOp.h"\n') f.write('#include "third_party/skia/include/core/SkColor.h"\n') f.write('#include "third_party/skia/include/core/SkColorFilter.h"\n') f.write('#include "third_party/skia/include/core/SkColorPriv.h"\n') f.write('#include "third_party/skia/include/core/SkColorSpace.h"\n') f.write('#include "third_party/skia/include/core/SkContourMeasure.h"\n') f.write('#include "third_party/skia/include/core/SkCoverageMode.h"\n') f.write('#include "third_party/skia/include/core/SkCubicMap.h"\n') f.write('#include "third_party/skia/include/core/SkData.h"\n') f.write('#include "third_party/skia/include/core/SkDataTable.h"\n') f.write('#include "third_party/skia/include/core/SkDeferredDisplayList.h"\n') f.write('#include "third_party/skia/include/core/SkDeferredDisplayListRecorder.h"\n') f.write('#include "third_party/skia/include/core/SkDocument.h"\n') f.write('#include "third_party/skia/include/core/SkDrawable.h"\n') f.write('#include "third_party/skia/include/core/SkEncodedImageFormat.h"\n') f.write('#include "third_party/skia/include/core/SkExecutor.h"\n') f.write('#include "third_party/skia/include/core/SkFlattenable.h"\n') f.write('#include "third_party/skia/include/core/SkFont.h"\n') f.write('#include "third_party/skia/include/core/SkFontArguments.h"\n') f.write('#include "third_party/skia/include/core/SkFontMetrics.h"\n') f.write('#include "third_party/skia/include/core/SkFontMgr.h"\n') f.write('#include "third_party/skia/include/core/SkFontParameters.h"\n') f.write('#include "third_party/skia/include/core/SkFontStyle.h"\n') f.write('#include "third_party/skia/include/core/SkFontTypes.h"\n') f.write('#include "third_party/skia/include/core/SkGraphics.h"\n') f.write('#include "third_party/skia/include/core/SkICC.h"\n') f.write('#include "third_party/skia/include/core/SkImage.h"\n') f.write('#include "third_party/skia/include/core/SkImageEncoder.h"\n') f.write('#include "third_party/skia/include/core/SkImageFilter.h"\n') f.write('#include "third_party/skia/include/core/SkImageGenerator.h"\n') f.write('#include "third_party/skia/include/core/SkImageInfo.h"\n') f.write('#include "third_party/skia/include/core/SkM44.h"\n') f.write('#include "third_party/skia/include/core/SkMallocPixelRef.h"\n') f.write('#include "third_party/skia/include/core/SkMaskFilter.h"\n') f.write('#include "third_party/skia/include/core/SkMath.h"\n') f.write('#include "third_party/skia/include/core/SkMatrix.h"\n') f.write('#include "third_party/skia/include/core/SkMilestone.h"\n') f.write('#include "third_party/skia/include/core/SkOverdrawCanvas.h"\n') f.write('#include "third_party/skia/include/core/SkPaint.h"\n') f.write('#include "third_party/skia/include/core/SkPath.h"\n') f.write('#include "third_party/skia/include/core/SkPathBuilder.h"\n') f.write('#include "third_party/skia/include/core/SkPathEffect.h"\n') f.write('#include "third_party/skia/include/core/SkPathMeasure.h"\n') f.write('#include "third_party/skia/include/core/SkPicture.h"\n') f.write('#include "third_party/skia/include/core/SkPictureRecorder.h"\n') f.write('#include "third_party/skia/include/core/SkPixelRef.h"\n') f.write('#include "third_party/skia/include/core/SkPixmap.h"\n') f.write('#include "third_party/skia/include/core/SkPngChunkReader.h"\n') f.write('#include "third_party/skia/include/core/SkPoint.h"\n') f.write('#include "third_party/skia/include/core/SkPoint3.h"\n') f.write('#include "third_party/skia/include/core/SkPromiseImageTexture.h"\n') f.write('#include "third_party/skia/include/core/SkRRect.h"\n') f.write('#include "third_party/skia/include/core/SkRSXform.h"\n') f.write('#include "third_party/skia/include/core/SkRasterHandleAllocator.h"\n') f.write('#include "third_party/skia/include/core/SkRect.h"\n') f.write('#include "third_party/skia/include/core/SkRefCnt.h"\n') f.write('#include "third_party/skia/include/core/SkRegion.h"\n') f.write('#include "third_party/skia/include/core/SkScalar.h"\n') f.write('#include "third_party/skia/include/core/SkSerialProcs.h"\n') f.write('#include "third_party/skia/include/core/SkShader.h"\n') f.write('#include "third_party/skia/include/core/SkSize.h"\n') f.write('#include "third_party/skia/include/core/SkSpan.h"\n') f.write('#include "third_party/skia/include/core/SkStream.h"\n') f.write('#include "third_party/skia/include/core/SkString.h"\n') f.write('#include "third_party/skia/include/core/SkStringView.h"\n') f.write('#include "third_party/skia/include/core/SkStrokeRec.h"\n') f.write('#include "third_party/skia/include/core/SkSurface.h"\n') f.write('#include "third_party/skia/include/core/SkSurfaceCharacterization.h"\n') f.write('#include "third_party/skia/include/core/SkSurfaceProps.h"\n') f.write('#include "third_party/skia/include/core/SkSwizzle.h"\n') f.write('#include "third_party/skia/include/core/SkTextBlob.h"\n') f.write('#include "third_party/skia/include/core/SkTime.h"\n') f.write('#include "third_party/skia/include/core/SkTraceMemoryDump.h"\n') f.write('#include "third_party/skia/include/core/SkTypeface.h"\n') f.write('#include "third_party/skia/include/core/SkTypes.h"\n') f.write('#include "third_party/skia/include/core/SkUnPreMultiply.h"\n') f.write('#include "third_party/skia/include/core/SkVertices.h"\n') f.write('#include "third_party/skia/include/core/SkYUVAInfo.h"\n') f.write('#include "third_party/skia/include/core/SkYUVAPixmaps.h"\n') f.write('#include "third_party/skia/include/docs/SkPDFDocument.h"\n') f.write('#include "third_party/skia/include/effects/Sk1DPathEffect.h"\n') f.write('#include "third_party/skia/include/effects/Sk2DPathEffect.h"\n') f.write('#include "third_party/skia/include/effects/SkBlenders.h"\n') f.write('#include "third_party/skia/include/effects/SkBlurMaskFilter.h"\n') f.write('#include "third_party/skia/include/effects/SkColorMatrix.h"\n') f.write('#include "third_party/skia/include/effects/SkColorMatrixFilter.h"\n') f.write('#include "third_party/skia/include/effects/SkCornerPathEffect.h"\n') f.write('#include "third_party/skia/include/effects/SkDashPathEffect.h"\n') f.write('#include "third_party/skia/include/effects/SkDiscretePathEffect.h"\n') f.write('#include "third_party/skia/include/effects/SkGradientShader.h"\n') f.write('#include "third_party/skia/include/effects/SkHighContrastFilter.h"\n') f.write('#include "third_party/skia/include/effects/SkImageFilters.h"\n') f.write('#include "third_party/skia/include/effects/SkLumaColorFilter.h"\n') f.write('#include "third_party/skia/include/effects/SkOverdrawColorFilter.h"\n') f.write('#include "third_party/skia/include/effects/SkPerlinNoiseShader.h"\n') f.write('#include "third_party/skia/include/effects/SkRuntimeEffect.h"\n') f.write('#include "third_party/skia/include/effects/SkShaderMaskFilter.h"\n') f.write('#include "third_party/skia/include/effects/SkTableColorFilter.h"\n') f.write('#include "third_party/skia/include/effects/SkTableMaskFilter.h"\n') f.write('#include "third_party/skia/include/encode/SkJpegEncoder.h"\n') f.write('#include "third_party/skia/include/gpu/GrBackendDrawableInfo.h"\n') f.write('#include "third_party/skia/include/gpu/GrBackendSemaphore.h"\n') f.write('#include "third_party/skia/include/gpu/GrBackendSurface.h"\n') f.write('#include "third_party/skia/include/gpu/GrBackendSurfaceMutableState.h"\n') f.write('#include "third_party/skia/include/gpu/GrConfig.h"\n') f.write('#include "third_party/skia/include/gpu/GrContextOptions.h"\n') f.write('#include "third_party/skia/include/gpu/GrContextThreadSafeProxy.h"\n') f.write('#include "third_party/skia/include/gpu/GrDirectContext.h"\n') f.write('#include "third_party/skia/include/gpu/GrDriverBugWorkarounds.h"\n') f.write('#include "third_party/skia/include/gpu/GrRecordingContext.h"\n') f.write('#include "third_party/skia/include/gpu/GrSurfaceInfo.h"\n') f.write('#include "third_party/skia/include/gpu/GrTypes.h"\n') f.write('#include "third_party/skia/include/gpu/GrYUVABackendTextures.h"\n') f.write('#include "third_party/skia/include/gpu/gl/GrGLAssembleInterface.h"\n') f.write('#include "third_party/skia/include/gpu/gl/GrGLConfig.h"\n') f.write('#include "third_party/skia/include/gpu/gl/GrGLExtensions.h"\n') f.write('#include "third_party/skia/include/gpu/gl/GrGLFunctions.h"\n') f.write('#include "third_party/skia/include/gpu/gl/GrGLInterface.h"\n') f.write('#include "third_party/skia/include/gpu/gl/GrGLTypes.h"\n') f.write('#include "third_party/skia/include/gpu/mock/GrMockTypes.h"\n') f.write('#include "third_party/skia/include/pathops/SkPathOps.h"\n') f.write('#include "third_party/skia/include/utils/SkAnimCodecPlayer.h"\n') f.write('#include "third_party/skia/include/utils/SkBase64.h"\n') f.write('#include "third_party/skia/include/utils/SkCamera.h"\n') f.write('#include "third_party/skia/include/utils/SkCanvasStateUtils.h"\n') f.write('#include "third_party/skia/include/utils/SkCustomTypeface.h"\n') f.write('#include "third_party/skia/include/utils/SkEventTracer.h"\n') f.write('#include "third_party/skia/include/utils/SkNWayCanvas.h"\n') f.write('#include "third_party/skia/include/utils/SkNoDrawCanvas.h"\n') f.write('#include "third_party/skia/include/utils/SkNullCanvas.h"\n') f.write('#include "third_party/skia/include/utils/SkOrderedFontMgr.h"\n') f.write('#include "third_party/skia/include/utils/SkPaintFilterCanvas.h"\n') f.write('#include "third_party/skia/include/utils/SkParse.h"\n') f.write('#include "third_party/skia/include/utils/SkParsePath.h"\n') f.write('#include "third_party/skia/include/utils/SkRandom.h"\n') f.write('#include "third_party/skia/include/utils/SkShadowUtils.h"\n') f.write('#include "third_party/skia/include/utils/mac/SkCGUtils.h"\n') f.write('#include "third_party/skia/modules/skottie/include/ExternalLayer.h"\n') f.write('#include "third_party/skia/modules/skottie/include/Skottie.h"\n') f.write('#include "third_party/skia/modules/skottie/include/SkottieProperty.h"\n') f.write('#include "third_party/skia/modules/skparagraph/include/DartTypes.h"\n') f.write('#include "third_party/skia/modules/skparagraph/include/FontCollection.h"\n') f.write('#include "third_party/skia/modules/skparagraph/include/Paragraph.h"\n') f.write('#include "third_party/skia/modules/skparagraph/include/ParagraphBuilder.h"\n') f.write('#include "third_party/skia/modules/skparagraph/include/ParagraphCache.h"\n') f.write('#include "third_party/skia/modules/skparagraph/include/ParagraphStyle.h"\n') f.write('#include "third_party/skia/modules/skparagraph/include/TextShadow.h"\n') f.write('#include "third_party/skia/modules/skparagraph/include/TextStyle.h"\n') f.write('#include "third_party/skia/modules/skparagraph/include/TypefaceFontProvider.h"\n') f.write('#include "third_party/skia/modules/skshaper/include/SkShaper.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGAttribute.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGAttributeParser.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGCircle.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGClipPath.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGContainer.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGDOM.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGDefs.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGEllipse.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFe.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFeBlend.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFeColorMatrix.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFeComposite.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFeDisplacementMap.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFeFlood.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFeGaussianBlur.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFeImage.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFeLightSource.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFeLighting.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFeMorphology.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFeOffset.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFeTurbulence.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFilter.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGFilterContext.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGG.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGGradient.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGHiddenContainer.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGIDMapper.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGImage.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGLine.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGLinearGradient.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGMask.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGNode.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGPath.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGPattern.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGPoly.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGRadialGradient.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGRect.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGRenderContext.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGSVG.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGShape.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGStop.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGText.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGTransformableNode.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGTypes.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGUse.h"\n') f.write('#include "third_party/skia/modules/svg/include/SkSVGValue.h"\n') f.write('#endif//skia_h_DEFINED\n') # Temporary: during development this file wrote skia.h.d, not skia.h.deps, # and I think we have some bad versions of those files laying around. if os.path.exists(skia_h + '.d'): os.remove(skia_h + '.d')