• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1load("//bazel:skia_rules.bzl", "exports_files_legacy", "skia_filegroup", "split_srcs_and_hdrs")
2
3licenses(["notice"])
4
5exports_files_legacy()
6
7# In separate file list because these files are exported to
8# core.gni:skia_core_sources as well as sksl.gni:skslc_deps.
9CORE_SKSLC_FILES = [
10    "SkCpu.cpp",
11    "SkCpu.h",
12    "SkData.cpp",
13    "SkMatrixInvert.cpp",
14    "SkMatrixInvert.h",
15    "SkStream.cpp",
16    "SkString.cpp",
17    "SkStringUtils.cpp",
18    "SkStringUtils.h",
19    "SkVM.cpp",
20    "SkVM.h",
21]
22
23split_srcs_and_hdrs(
24    name = "core_skslc",
25    files = CORE_SKSLC_FILES,
26)
27
28CORE_FILES = [
29    "Sk4px.h",
30    "SkAAClip.cpp",
31    "SkAAClip.h",
32    "SkATrace.cpp",
33    "SkATrace.h",
34    "SkAdvancedTypefaceMetrics.h",
35    "SkAlphaRuns.cpp",
36    "SkAnalyticEdge.cpp",
37    "SkAnalyticEdge.h",
38    "SkAnnotation.cpp",
39    "SkAnnotationKeys.h",
40    "SkAntiRun.h",
41    "SkAutoBlitterChoose.h",
42    "SkAutoPixmapStorage.cpp",
43    "SkAutoPixmapStorage.h",
44    "SkBBHFactory.cpp",
45    "SkBitmap.cpp",
46    "SkBitmapCache.cpp",
47    "SkBitmapCache.h",
48    "SkBitmapDevice.cpp",
49    "SkBitmapDevice.h",
50    "SkBitmapProcState.cpp",
51    "SkBitmapProcState.h",
52    "SkBitmapProcState_matrixProcs.cpp",
53    "SkBlendMode.cpp",
54    "SkBlendModeBlender.cpp",
55    "SkBlendModeBlender.h",
56    "SkBlendModePriv.h",
57    "SkBlenderBase.h",
58    "SkBlitBWMaskTemplate.h",
59    "SkBlitRow.h",
60    "SkBlitRow_D32.cpp",
61    "SkBlitter.cpp",
62    "SkBlitter.h",
63    "SkBlitter_A8.cpp",
64    "SkBlitter_ARGB32.cpp",
65    "SkBlitter_Sprite.cpp",
66    "SkBlurMF.cpp",
67    "SkBlurMask.cpp",
68    "SkBlurMask.h",
69    "SkCachedData.cpp",
70    "SkCachedData.h",
71    "SkCanvas.cpp",
72    "SkCanvasPriv.cpp",
73    "SkCanvasPriv.h",
74    "SkCapabilities.cpp",
75    "SkChromeRemoteGlyphCache.cpp",
76    "SkClipStack.cpp",
77    "SkClipStack.h",
78    "SkClipStackDevice.cpp",
79    "SkClipStackDevice.h",
80    "SkColor.cpp",
81    "SkColorFilter.cpp",
82    "SkColorFilterBase.h",
83    "SkColorFilterPriv.h",
84    "SkColorFilter_Matrix.cpp",
85    "SkColorSpace.cpp",
86    "SkColorSpacePriv.h",
87    "SkColorSpaceXformSteps.cpp",
88    "SkColorSpaceXformSteps.h",
89    "SkCompressedDataUtils.cpp",
90    "SkCompressedDataUtils.h",
91    "SkContourMeasure.cpp",
92    "SkConvertPixels.cpp",
93    "SkConvertPixels.h",
94    "SkCoreBlitters.h",
95    "SkCubicClipper.cpp",
96    "SkCubicClipper.h",
97    "SkCubicMap.cpp",
98    "SkCubicSolver.h",
99    "SkDataTable.cpp",
100    "SkDebug.cpp",
101    "SkDebugUtils.h",
102    "SkDeferredDisplayList.cpp",
103    "SkDeferredDisplayListPriv.h",
104    "SkDeferredDisplayListRecorder.cpp",
105    "SkDescriptor.cpp",
106    "SkDescriptor.h",
107    "SkDevice.cpp",
108    "SkDevice.h",
109    "SkDistanceFieldGen.cpp",
110    "SkDistanceFieldGen.h",
111    "SkDocument.cpp",
112    "SkDraw.cpp",
113    "SkDraw.h",
114    "SkDrawLooper.cpp",
115    "SkDrawProcs.h",
116    "SkDrawShadowInfo.cpp",
117    "SkDrawShadowInfo.h",
118    "SkDraw_atlas.cpp",
119    "SkDraw_text.cpp",
120    "SkDraw_vertices.cpp",
121    "SkDrawable.cpp",
122    "SkEdge.cpp",
123    "SkEdge.h",
124    "SkEdgeBuilder.cpp",
125    "SkEdgeBuilder.h",
126    "SkEdgeClipper.cpp",
127    "SkEdgeClipper.h",
128    "SkEffectPriv.h",
129    "SkEndian.h",
130    "SkEnumBitMask.h",
131    "SkEnumerate.h",
132    "SkExecutor.cpp",
133    "SkFDot6.h",
134    "SkFlattenable.cpp",
135    "SkFont.cpp",
136    "SkFontDescriptor.cpp",
137    "SkFontDescriptor.h",
138    "SkFontMgr.cpp",
139    "SkFontMgrPriv.h",
140    "SkFontPriv.h",
141    "SkFontStream.cpp",
142    "SkFontStream.h",
143    "SkFont_serial.cpp",
144    "SkFuzzLogging.h",
145    "SkGaussFilter.cpp",
146    "SkGaussFilter.h",
147    "SkGeometry.cpp",
148    "SkGeometry.h",
149    "SkGlobalInitialization_core.cpp",
150    "SkGlyph.cpp",
151    "SkGlyph.h",
152    "SkGlyphBuffer.cpp",
153    "SkGlyphBuffer.h",
154    "SkGlyphRunPainter.cpp",
155    "SkGlyphRunPainter.h",
156    "SkGpuBlurUtils.cpp",
157    "SkGpuBlurUtils.h",
158    "SkGraphics.cpp",
159    "SkICC.cpp",
160    "SkICCPriv.h",
161    "SkIDChangeListener.cpp",
162    "SkIPoint16.h",
163    "SkImageFilter.cpp",
164    "SkImageFilterCache.cpp",
165    "SkImageFilterCache.h",
166    "SkImageFilterTypes.cpp",
167    "SkImageFilterTypes.h",
168    "SkImageFilter_Base.h",
169    "SkImageGenerator.cpp",
170    "SkImageInfo.cpp",
171    "SkImageInfoPriv.h",
172    "SkImagePriv.h",
173    "SkLRUCache.h",
174    "SkLatticeIter.cpp",
175    "SkLatticeIter.h",
176    "SkLineClipper.cpp",
177    "SkLineClipper.h",
178    "SkLocalMatrixImageFilter.cpp",
179    "SkLocalMatrixImageFilter.h",
180    "SkM44.cpp",
181    "SkMD5.cpp",
182    "SkMD5.h",
183    "SkMallocPixelRef.cpp",
184    "SkMask.cpp",
185    "SkMask.h",
186    "SkMaskBlurFilter.cpp",
187    "SkMaskBlurFilter.h",
188    "SkMaskCache.cpp",
189    "SkMaskCache.h",
190    "SkMaskFilter.cpp",
191    "SkMaskFilterBase.h",
192    "SkMaskGamma.cpp",
193    "SkMaskGamma.h",
194    "SkMatrix.cpp",
195    "SkMatrixPriv.h",
196    "SkMatrixProvider.h",
197    "SkMatrixUtils.h",
198    "SkMesh.cpp",
199    "SkMeshPriv.h",
200    "SkMessageBus.h",
201    "SkMipmap.cpp",
202    "SkMipmap.h",
203    "SkMipmapAccessor.cpp",
204    "SkMipmapAccessor.h",
205    "SkMipmapBuilder.h",
206    "SkModeColorFilter.cpp",
207    "SkNextID.h",
208    "SkOSFile.h",
209    "SkOpts.cpp",
210    "SkOpts.h",
211    "SkOpts_erms.cpp",
212    "SkOverdrawCanvas.cpp",
213    "SkPaint.cpp",
214    "SkPaintDefaults.h",
215    "SkPaintPriv.cpp",
216    "SkPaintPriv.h",
217    "SkPath.cpp",
218    "SkPathBuilder.cpp",
219    "SkPathEffect.cpp",
220    "SkPathEffectBase.h",
221    "SkPathMakers.h",
222    "SkPathMeasure.cpp",
223    "SkPathMeasurePriv.h",
224    "SkPathPriv.h",
225    "SkPathRef.cpp",
226    "SkPathUtils.cpp",
227    "SkPath_serial.cpp",
228    "SkPicturePriv.h",
229    "SkPixelRef.cpp",
230    "SkPixelRefPriv.h",
231    "SkPixmap.cpp",
232    "SkPixmapDraw.cpp",
233    "SkPoint.cpp",
234    "SkPoint3.cpp",
235    "SkPointPriv.h",
236    "SkPromiseImageTexture.cpp",
237    "SkPtrRecorder.cpp",
238    "SkPtrRecorder.h",
239    "SkQuadClipper.cpp",
240    "SkQuadClipper.h",
241    "SkRRect.cpp",
242    "SkRRectPriv.h",
243    "SkRSXform.cpp",
244    "SkRTree.cpp",
245    "SkRTree.h",
246    "SkRasterClip.cpp",
247    "SkRasterClip.h",
248    "SkRasterClipStack.h",
249    "SkRasterPipeline.cpp",
250    "SkRasterPipeline.h",
251    "SkRasterPipelineBlitter.cpp",
252    "SkRasterPipelineOpContexts.h",
253    "SkRasterPipelineOpList.h",
254    "SkReadBuffer.cpp",
255    "SkReadBuffer.h",
256    "SkReadPixelsRec.cpp",
257    "SkReadPixelsRec.h",
258    "SkRecord.cpp",
259    "SkRecord.h",
260    "SkRecordDraw.cpp",
261    "SkRecordDraw.h",
262    "SkRecordOpts.cpp",
263    "SkRecordOpts.h",
264    "SkRecordPattern.h",
265    "SkRecords.cpp",
266    "SkRecords.h",
267    "SkRect.cpp",
268    "SkRectPriv.h",
269    "SkRegion.cpp",
270    "SkRegionPriv.h",
271    "SkRegion_path.cpp",
272    "SkResourceCache.cpp",
273    "SkResourceCache.h",
274    "SkRuntimeEffectPriv.h",
275    "SkSafeRange.h",
276    "SkSamplingPriv.h",
277    "SkScalar.cpp",
278    "SkScaleToSides.h",
279    "SkScalerContext.cpp",
280    "SkScalerContext.h",
281    "SkScan.cpp",
282    "SkScan.h",
283    "SkScanPriv.h",
284    "SkScan_AAAPath.cpp",
285    "SkScan_AntiPath.cpp",
286    "SkScan_Antihair.cpp",
287    "SkScan_Hairline.cpp",
288    "SkScan_Path.cpp",
289    "SkSharedMutex.cpp",
290    "SkSharedMutex.h",
291    "SkSpecialImage.cpp",
292    "SkSpecialImage.h",
293    "SkSpecialSurface.cpp",
294    "SkSpecialSurface.h",
295    "SkSpinlock.cpp",
296    "SkSpriteBlitter.h",
297    "SkSpriteBlitter_ARGB32.cpp",
298    "SkStreamPriv.h",
299    "SkStrike.cpp",
300    "SkStrike.h",
301    "SkStrikeCache.cpp",
302    "SkStrikeCache.h",
303    "SkStrikeSpec.cpp",
304    "SkStrikeSpec.h",
305    "SkStroke.cpp",
306    "SkStroke.h",
307    "SkStrokeRec.cpp",
308    "SkStrokerPriv.cpp",
309    "SkStrokerPriv.h",
310    "SkSurfaceCharacterization.cpp",
311    "SkSurfacePriv.h",
312    "SkSwizzle.cpp",
313    "SkSwizzlePriv.h",
314    "SkTDynamicHash.h",
315    "SkTHash.h",
316    "SkTMultiMap.h",
317    "SkTaskGroup.cpp",
318    "SkTaskGroup.h",
319    "SkTextBlob.cpp",
320    "SkTextBlobPriv.h",
321    "SkTextBlobTrace.cpp",
322    "SkTextBlobTrace.h",
323    "SkTextFormatParams.h",
324    "SkTime.cpp",
325    "SkTraceEvent.h",
326    "SkTraceEventCommon.h",
327    "SkTypeface.cpp",
328    "SkTypefaceCache.cpp",
329    "SkTypefaceCache.h",
330    "SkTypeface_remote.cpp",
331    "SkTypeface_remote.h",
332    "SkUnPreMultiply.cpp",
333    "SkVMBlitter.cpp",
334    "SkVMBlitter.h",
335    "SkVM_fwd.h",
336    "SkValidationUtils.h",
337    "SkVertState.cpp",
338    "SkVertState.h",
339    "SkVertices.cpp",
340    "SkVerticesPriv.h",
341    "SkWriteBuffer.cpp",
342    "SkWriteBuffer.h",
343    "SkWritePixelsRec.cpp",
344    "SkWritePixelsRec.h",
345    "SkWriter32.cpp",
346    "SkWriter32.h",
347    "SkXfermode.cpp",
348    "SkXfermodeInterpretation.cpp",
349    "SkXfermodeInterpretation.h",
350    "SkXfermodePriv.h",
351    "SkYUVAInfo.cpp",
352    "SkYUVAInfoLocation.h",
353    "SkYUVAPixmaps.cpp",
354    "SkYUVMath.cpp",
355    "SkYUVMath.h",
356    "SkYUVPlanesCache.cpp",
357    "SkYUVPlanesCache.h",
358]
359
360split_srcs_and_hdrs(
361    name = "core",
362    files = CORE_FILES,
363)
364
365# These files are only needed if SkSL is enabled (GPU backend or SkVM).
366SKSL_FILES = [
367    "SkRuntimeEffect.cpp",
368    "SkSLTypeShared.cpp",
369    "SkSLTypeShared.h",
370]
371
372split_srcs_and_hdrs(
373    name = "sksl",
374    files = SKSL_FILES,
375)
376
377# SkPicture files are maintained as a separate skia_filegroups for backward compatability
378# with GNI files. This allows the generation of skia_skpicture_sources GNI file list.
379SKPICTURE_FILES = [
380    "SkBigPicture.cpp",
381    "SkBigPicture.h",
382    "SkPicture.cpp",
383    "SkPictureData.cpp",
384    "SkPictureData.h",
385    "SkPictureFlat.cpp",
386    "SkPictureFlat.h",
387    "SkPictureImageGenerator.cpp",
388    "SkPicturePlayback.cpp",
389    "SkPicturePlayback.h",
390    "SkPictureRecord.cpp",
391    "SkPictureRecord.h",
392    "SkPictureRecorder.cpp",
393    "SkRecordedDrawable.cpp",
394    "SkRecordedDrawable.h",
395    "SkRecorder.cpp",
396    "SkRecorder.h",
397]
398
399split_srcs_and_hdrs(
400    name = "skpicture",
401    files = SKPICTURE_FILES,
402)
403
404skia_filegroup(
405    name = "srcs",
406    srcs = [
407        ":core_skslc_srcs",
408        ":core_srcs",
409        ":skpicture_srcs",
410    ] + select({
411        "//src/sksl:needs_sksl": [
412            ":sksl_srcs",
413        ],
414        "//conditions:default": [],
415    }),
416    visibility = ["//src:__pkg__"],
417)
418
419skia_filegroup(
420    name = "private_hdrs",
421    srcs = [
422        ":core_hdrs",
423        ":core_skslc_hdrs",
424        ":skpicture_hdrs",
425    ] + select({
426        "//src/sksl:needs_sksl": [
427            ":sksl_hdrs",
428        ],
429        "//conditions:default": [],
430    }),
431    visibility = ["//src:__pkg__"],
432)
433
434skia_filegroup(
435    name = "buffet_hdrs",
436    srcs = [
437        # By putting headers here, we are explicitly stating we want to use them
438        # in places other than core. They still count as "private" headers.
439        "SkGeometry.h",
440        "SkMatrixPriv.h",
441        "SkMatrixInvert.h",
442        "SkMatrixUtils.h",
443        "SkPathPriv.h",
444        "SkPointPriv.h",
445        "SkRRectPriv.h",
446        "SkRectPriv.h",
447        "SkSamplingPriv.h",
448        "SkStreamPriv.h",
449    ],
450    visibility = ["//src:__pkg__"],
451)
452
453skia_filegroup(
454    name = "buffet_srcs",
455    srcs = [
456        # Private Headers
457        "SkCubicClipper.h",
458        "SkEdgeClipper.h",
459        "SkLineClipper.h",
460        "SkOSFile.h",  # TODO(kjlubick) probably need platform-specific .cpp files
461        "SkPathMakers.h",
462        "SkScaleToSides.h",
463        "SkStringUtils.h",
464    ] + [
465        # Implementation of public and private headers
466        "SkColor.cpp",
467        "SkCubicClipper.cpp",
468        "SkEdgeClipper.cpp",
469        "SkGeometry.cpp",
470        "SkIDChangeListener.cpp",
471        "SkLineClipper.cpp",
472        "SkM44.cpp",
473        "SkMatrix.cpp",
474        "SkPath.cpp",
475        "SkPathBuilder.cpp",
476        "SkPathRef.cpp",
477        "SkPoint.cpp",
478        "SkPoint3.cpp",
479        "SkRRect.cpp",
480        "SkRSXform.cpp",
481        "SkRect.cpp",
482        "SkStream.cpp",
483        "SkString.cpp",
484        "SkStringUtils.cpp",
485    ],
486    visibility = ["//src:__pkg__"],
487)
488