xref: /aosp_15_r20/external/skia/gm/BUILD.bazel (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Workerload("//bazel:skia_rules.bzl", "skia_cc_library", "skia_cc_test", "supports_platforms")
2*c8dee2aaSAndroid Build Coastguard Workerload("//tools/testrunners/gm:android_gm_test.bzl", "android_gm_test")
3*c8dee2aaSAndroid Build Coastguard Workerload(":png_codec.bzl", "png_codec_tests")
4*c8dee2aaSAndroid Build Coastguard Worker
5*c8dee2aaSAndroid Build Coastguard Workerpackage(
6*c8dee2aaSAndroid Build Coastguard Worker    default_applicable_licenses = ["//:license"],
7*c8dee2aaSAndroid Build Coastguard Worker)
8*c8dee2aaSAndroid Build Coastguard Worker
9*c8dee2aaSAndroid Build Coastguard Workerlicenses(["notice"])
10*c8dee2aaSAndroid Build Coastguard Worker
11*c8dee2aaSAndroid Build Coastguard Workerfilegroup(
12*c8dee2aaSAndroid Build Coastguard Worker    name = "gm_subset",
13*c8dee2aaSAndroid Build Coastguard Worker    srcs = [
14*c8dee2aaSAndroid Build Coastguard Worker        "bitmaprect.cpp",
15*c8dee2aaSAndroid Build Coastguard Worker        "colrv1.cpp",
16*c8dee2aaSAndroid Build Coastguard Worker        "fontations.cpp",
17*c8dee2aaSAndroid Build Coastguard Worker        "palette.cpp",
18*c8dee2aaSAndroid Build Coastguard Worker    ],
19*c8dee2aaSAndroid Build Coastguard Worker    visibility = ["//tools/viewer:__pkg__"],
20*c8dee2aaSAndroid Build Coastguard Worker)
21*c8dee2aaSAndroid Build Coastguard Worker
22*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library(
23*c8dee2aaSAndroid Build Coastguard Worker    name = "gm",
24*c8dee2aaSAndroid Build Coastguard Worker    testonly = True,
25*c8dee2aaSAndroid Build Coastguard Worker    srcs = [
26*c8dee2aaSAndroid Build Coastguard Worker        "gm.cpp",
27*c8dee2aaSAndroid Build Coastguard Worker    ],
28*c8dee2aaSAndroid Build Coastguard Worker    hdrs = ["gm.h"],
29*c8dee2aaSAndroid Build Coastguard Worker    visibility = [
30*c8dee2aaSAndroid Build Coastguard Worker        "//dm:__pkg__",
31*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm:__subpackages__",
32*c8dee2aaSAndroid Build Coastguard Worker        "//tools/viewer:__pkg__",
33*c8dee2aaSAndroid Build Coastguard Worker    ],
34*c8dee2aaSAndroid Build Coastguard Worker    deps = [
35*c8dee2aaSAndroid Build Coastguard Worker        "//:core",
36*c8dee2aaSAndroid Build Coastguard Worker        "//tools:registry",
37*c8dee2aaSAndroid Build Coastguard Worker        "//tools:tool_utils",
38*c8dee2aaSAndroid Build Coastguard Worker        "//tools/fonts:font_tool_utils",
39*c8dee2aaSAndroid Build Coastguard Worker    ],
40*c8dee2aaSAndroid Build Coastguard Worker)
41*c8dee2aaSAndroid Build Coastguard Worker
42*c8dee2aaSAndroid Build Coastguard WorkerCPU_GMS = [
43*c8dee2aaSAndroid Build Coastguard Worker    # This is an incomplete list of GMs that only require a CPU.
44*c8dee2aaSAndroid Build Coastguard Worker    # TODO(lovisolo): Complete this list.
45*c8dee2aaSAndroid Build Coastguard Worker    "3d.cpp",
46*c8dee2aaSAndroid Build Coastguard Worker    "aaa.cpp",
47*c8dee2aaSAndroid Build Coastguard Worker    "aaclip.cpp",
48*c8dee2aaSAndroid Build Coastguard Worker    "aarectmodes.cpp",
49*c8dee2aaSAndroid Build Coastguard Worker    "aaxfermodes.cpp",
50*c8dee2aaSAndroid Build Coastguard Worker    "addarc.cpp",
51*c8dee2aaSAndroid Build Coastguard Worker    "all_bitmap_configs.cpp",
52*c8dee2aaSAndroid Build Coastguard Worker    "alphagradients.cpp",
53*c8dee2aaSAndroid Build Coastguard Worker    "alpha_image.cpp",
54*c8dee2aaSAndroid Build Coastguard Worker    "analytic_gradients.cpp",
55*c8dee2aaSAndroid Build Coastguard Worker    "androidblendmodes.cpp",
56*c8dee2aaSAndroid Build Coastguard Worker    # "animated_gif.cpp", # needs a dep on SkResources
57*c8dee2aaSAndroid Build Coastguard Worker    "animatedimageblurs.cpp",
58*c8dee2aaSAndroid Build Coastguard Worker    # "animated_image_orientation.cpp", # Requires //include/android/SkAnimatedImage.h
59*c8dee2aaSAndroid Build Coastguard Worker    # "annotated_text.cpp",  # ./include/core/SkRefCnt.h:41: fatal error: "assert(this->getRefCnt() == 1)"
60*c8dee2aaSAndroid Build Coastguard Worker    "arcofzorro.cpp",
61*c8dee2aaSAndroid Build Coastguard Worker    "arcto.cpp",
62*c8dee2aaSAndroid Build Coastguard Worker    "arithmode.cpp",
63*c8dee2aaSAndroid Build Coastguard Worker
64*c8dee2aaSAndroid Build Coastguard Worker    # TODO(lovisolo): Are these CPU-only, GPU-only or something else? Try them and add them to the
65*c8dee2aaSAndroid Build Coastguard Worker    #                 corresponding list.
66*c8dee2aaSAndroid Build Coastguard Worker    # "b_119394958.cpp",
67*c8dee2aaSAndroid Build Coastguard Worker    # "backdrop.cpp",
68*c8dee2aaSAndroid Build Coastguard Worker    # "backdrop_imagefilter_croprect.cpp",
69*c8dee2aaSAndroid Build Coastguard Worker    # "badpaint.cpp",
70*c8dee2aaSAndroid Build Coastguard Worker    # "batchedconvexpaths.cpp",
71*c8dee2aaSAndroid Build Coastguard Worker    # "bc1_transparency.cpp",
72*c8dee2aaSAndroid Build Coastguard Worker    # "beziereffects.cpp",
73*c8dee2aaSAndroid Build Coastguard Worker    # "beziers.cpp",
74*c8dee2aaSAndroid Build Coastguard Worker    # "bicubic.cpp",
75*c8dee2aaSAndroid Build Coastguard Worker    # "bigblurs.cpp",
76*c8dee2aaSAndroid Build Coastguard Worker    # "bigmatrix.cpp",
77*c8dee2aaSAndroid Build Coastguard Worker    # "bigrect.cpp",
78*c8dee2aaSAndroid Build Coastguard Worker    # "bigrrectaaeffect.cpp",
79*c8dee2aaSAndroid Build Coastguard Worker    # "bigtext.cpp",
80*c8dee2aaSAndroid Build Coastguard Worker    # "bigtileimagefilter.cpp",
81*c8dee2aaSAndroid Build Coastguard Worker    # "bitmapcopy.cpp",
82*c8dee2aaSAndroid Build Coastguard Worker    # "bitmapfilters.cpp",
83*c8dee2aaSAndroid Build Coastguard Worker    # "bitmapimage.cpp",
84*c8dee2aaSAndroid Build Coastguard Worker    # "bitmappremul.cpp",
85*c8dee2aaSAndroid Build Coastguard Worker    # "bitmaprect.cpp",
86*c8dee2aaSAndroid Build Coastguard Worker    # "bitmaprecttest.cpp",
87*c8dee2aaSAndroid Build Coastguard Worker    # "bitmapshader.cpp",
88*c8dee2aaSAndroid Build Coastguard Worker    # "bitmaptiled.cpp",
89*c8dee2aaSAndroid Build Coastguard Worker    # "bleed.cpp",
90*c8dee2aaSAndroid Build Coastguard Worker    # "blend.cpp",
91*c8dee2aaSAndroid Build Coastguard Worker    # "blurcircles2.cpp",
92*c8dee2aaSAndroid Build Coastguard Worker    # "blurcircles.cpp",
93*c8dee2aaSAndroid Build Coastguard Worker    # "blurignorexform.cpp",
94*c8dee2aaSAndroid Build Coastguard Worker    # "blurimagevmask.cpp",
95*c8dee2aaSAndroid Build Coastguard Worker    # "blurpositioning.cpp",
96*c8dee2aaSAndroid Build Coastguard Worker    # "blurquickreject.cpp",
97*c8dee2aaSAndroid Build Coastguard Worker    # "blurrect.cpp",
98*c8dee2aaSAndroid Build Coastguard Worker    # "blurredclippedcircle.cpp",
99*c8dee2aaSAndroid Build Coastguard Worker    # "blurroundrect.cpp",
100*c8dee2aaSAndroid Build Coastguard Worker    # "blurs.cpp",
101*c8dee2aaSAndroid Build Coastguard Worker    # "blurtextsmallradii.cpp",
102*c8dee2aaSAndroid Build Coastguard Worker    # "bmpfilterqualityrepeat.cpp",
103*c8dee2aaSAndroid Build Coastguard Worker    # "bug12866.cpp",
104*c8dee2aaSAndroid Build Coastguard Worker    # "bug5252.cpp",
105*c8dee2aaSAndroid Build Coastguard Worker    # "bug530095.cpp",
106*c8dee2aaSAndroid Build Coastguard Worker    # "bug615686.cpp",
107*c8dee2aaSAndroid Build Coastguard Worker    # "bug6643.cpp",
108*c8dee2aaSAndroid Build Coastguard Worker    # "bug6783.cpp",
109*c8dee2aaSAndroid Build Coastguard Worker    # "bug9331.cpp",
110*c8dee2aaSAndroid Build Coastguard Worker    # "circle_sizes.cpp",
111*c8dee2aaSAndroid Build Coastguard Worker    # "circulararcs.cpp",
112*c8dee2aaSAndroid Build Coastguard Worker    # "circularclips.cpp",
113*c8dee2aaSAndroid Build Coastguard Worker    # "clear_swizzle.cpp",
114*c8dee2aaSAndroid Build Coastguard Worker    # "clipdrawdraw.cpp",
115*c8dee2aaSAndroid Build Coastguard Worker    # "clip_error.cpp",
116*c8dee2aaSAndroid Build Coastguard Worker    # "clippedbitmapshaders.cpp",
117*c8dee2aaSAndroid Build Coastguard Worker    # "clipshader.cpp",
118*c8dee2aaSAndroid Build Coastguard Worker    # "clip_sierpinski_region.cpp",
119*c8dee2aaSAndroid Build Coastguard Worker    # "clip_strokerect.cpp",
120*c8dee2aaSAndroid Build Coastguard Worker    # "clockwise.cpp",
121*c8dee2aaSAndroid Build Coastguard Worker    # "collapsepaths.cpp",
122*c8dee2aaSAndroid Build Coastguard Worker    # "color4f.cpp",
123*c8dee2aaSAndroid Build Coastguard Worker    # "coloremoji_blendmodes.cpp",
124*c8dee2aaSAndroid Build Coastguard Worker    # "coloremoji.cpp",
125*c8dee2aaSAndroid Build Coastguard Worker    # "colorfilteralpha8.cpp",
126*c8dee2aaSAndroid Build Coastguard Worker    # "colorfilterimagefilter.cpp",
127*c8dee2aaSAndroid Build Coastguard Worker    # "colorfilters.cpp",
128*c8dee2aaSAndroid Build Coastguard Worker    # "colormatrix.cpp",
129*c8dee2aaSAndroid Build Coastguard Worker    # "colorspace.cpp",
130*c8dee2aaSAndroid Build Coastguard Worker    # "colorwheel.cpp",
131*c8dee2aaSAndroid Build Coastguard Worker    # "colrv1.cpp",
132*c8dee2aaSAndroid Build Coastguard Worker    # "complexclip2.cpp",
133*c8dee2aaSAndroid Build Coastguard Worker    # "complexclip3.cpp",
134*c8dee2aaSAndroid Build Coastguard Worker    # "complexclip4.cpp",
135*c8dee2aaSAndroid Build Coastguard Worker    # "complexclip_blur_tiled.cpp",
136*c8dee2aaSAndroid Build Coastguard Worker    # "complexclip.cpp",
137*c8dee2aaSAndroid Build Coastguard Worker    # "composecolorfilter.cpp",
138*c8dee2aaSAndroid Build Coastguard Worker    # "composeshader.cpp",
139*c8dee2aaSAndroid Build Coastguard Worker    # "compositor_quads.cpp",
140*c8dee2aaSAndroid Build Coastguard Worker    # "compressed_textures.cpp",
141*c8dee2aaSAndroid Build Coastguard Worker    # "concavepaths.cpp",
142*c8dee2aaSAndroid Build Coastguard Worker    # "conicpaths.cpp",
143*c8dee2aaSAndroid Build Coastguard Worker    # "constcolorprocessor.cpp",
144*c8dee2aaSAndroid Build Coastguard Worker    # "convex_all_line_paths.cpp",
145*c8dee2aaSAndroid Build Coastguard Worker    # "convexpaths.cpp",
146*c8dee2aaSAndroid Build Coastguard Worker    # "convexpolyclip.cpp",
147*c8dee2aaSAndroid Build Coastguard Worker    # "convexpolyeffect.cpp",
148*c8dee2aaSAndroid Build Coastguard Worker    # "coordclampshader.cpp",
149*c8dee2aaSAndroid Build Coastguard Worker    # "copy_to_4444.cpp",
150*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_1041204.cpp",
151*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_1073670.cpp",
152*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_1086705.cpp",
153*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_1113794.cpp",
154*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_1139750.cpp",
155*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_1156804.cpp",
156*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_1162942.cpp",
157*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_1167277.cpp",
158*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_1174186.cpp",
159*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_1174354.cpp",
160*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_1177833.cpp",
161*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_1257515.cpp",
162*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_1313579.cpp",
163*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_224618.cpp",
164*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_691386.cpp",
165*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_788500.cpp",
166*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_847759.cpp",
167*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_884166.cpp",
168*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_887103.cpp",
169*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_892988.cpp",
170*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_899512.cpp",
171*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_905548.cpp",
172*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_908646.cpp",
173*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_913349.cpp",
174*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_918512.cpp",
175*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_938592.cpp",
176*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_946965.cpp",
177*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_947055.cpp",
178*c8dee2aaSAndroid Build Coastguard Worker    # "crbug_996140.cpp",
179*c8dee2aaSAndroid Build Coastguard Worker    # "crop_imagefilter.cpp",
180*c8dee2aaSAndroid Build Coastguard Worker    # "croppedrects.cpp",
181*c8dee2aaSAndroid Build Coastguard Worker    # "crosscontextimage.cpp",
182*c8dee2aaSAndroid Build Coastguard Worker    # "cubicpaths.cpp",
183*c8dee2aaSAndroid Build Coastguard Worker    # "daa.cpp",
184*c8dee2aaSAndroid Build Coastguard Worker    # "dashcircle.cpp",
185*c8dee2aaSAndroid Build Coastguard Worker    # "dashcubics.cpp",
186*c8dee2aaSAndroid Build Coastguard Worker    # "dashing.cpp",
187*c8dee2aaSAndroid Build Coastguard Worker    # "degeneratesegments.cpp",
188*c8dee2aaSAndroid Build Coastguard Worker    # "destcolor.cpp",
189*c8dee2aaSAndroid Build Coastguard Worker    # "dftext_blob_persp.cpp",
190*c8dee2aaSAndroid Build Coastguard Worker    # "dftext.cpp",
191*c8dee2aaSAndroid Build Coastguard Worker    # "discard.cpp",
192*c8dee2aaSAndroid Build Coastguard Worker    # "displacement.cpp",
193*c8dee2aaSAndroid Build Coastguard Worker    # "distantclip.cpp",
194*c8dee2aaSAndroid Build Coastguard Worker    # "drawable.cpp",
195*c8dee2aaSAndroid Build Coastguard Worker    # "drawatlascolor.cpp",
196*c8dee2aaSAndroid Build Coastguard Worker    # "drawatlas.cpp",
197*c8dee2aaSAndroid Build Coastguard Worker    # "drawbitmaprect.cpp",
198*c8dee2aaSAndroid Build Coastguard Worker    # "draw_bitmap_rect_skbug4374.cpp",
199*c8dee2aaSAndroid Build Coastguard Worker    # "drawglyphs.cpp",
200*c8dee2aaSAndroid Build Coastguard Worker    # "drawimageset.cpp",
201*c8dee2aaSAndroid Build Coastguard Worker    # "drawlines_with_local_matrix.cpp",
202*c8dee2aaSAndroid Build Coastguard Worker    # "drawminibitmaprect.cpp",
203*c8dee2aaSAndroid Build Coastguard Worker    # "drawquadset.cpp",
204*c8dee2aaSAndroid Build Coastguard Worker    # "drawregion.cpp",
205*c8dee2aaSAndroid Build Coastguard Worker    # "drawregionmodes.cpp",
206*c8dee2aaSAndroid Build Coastguard Worker    # "dropshadowimagefilter.cpp",
207*c8dee2aaSAndroid Build Coastguard Worker    # "drrect.cpp",
208*c8dee2aaSAndroid Build Coastguard Worker    # "drrect_small_inner.cpp",
209*c8dee2aaSAndroid Build Coastguard Worker    # "dstreadshuffle.cpp",
210*c8dee2aaSAndroid Build Coastguard Worker    # "ducky_yuv_blend.cpp",
211*c8dee2aaSAndroid Build Coastguard Worker    # "emboss.cpp",
212*c8dee2aaSAndroid Build Coastguard Worker    # "emptypath.cpp",
213*c8dee2aaSAndroid Build Coastguard Worker    # "encode_alpha_jpeg.cpp",
214*c8dee2aaSAndroid Build Coastguard Worker    # "encode_color_types.cpp",
215*c8dee2aaSAndroid Build Coastguard Worker    # "encode.cpp",
216*c8dee2aaSAndroid Build Coastguard Worker    # "encode_platform.cpp",
217*c8dee2aaSAndroid Build Coastguard Worker    # "encode_srgb.cpp",
218*c8dee2aaSAndroid Build Coastguard Worker    # "exoticformats.cpp",
219*c8dee2aaSAndroid Build Coastguard Worker    # "fadefilter.cpp",
220*c8dee2aaSAndroid Build Coastguard Worker    # "fatpathfill.cpp",
221*c8dee2aaSAndroid Build Coastguard Worker    # "fiddle.cpp",
222*c8dee2aaSAndroid Build Coastguard Worker    # "fillrect_gradient.cpp",
223*c8dee2aaSAndroid Build Coastguard Worker    # "filltypes.cpp",
224*c8dee2aaSAndroid Build Coastguard Worker    # "filltypespersp.cpp",
225*c8dee2aaSAndroid Build Coastguard Worker    # "filterbug.cpp",
226*c8dee2aaSAndroid Build Coastguard Worker    # "filterfastbounds.cpp",
227*c8dee2aaSAndroid Build Coastguard Worker    # "filterindiabox.cpp",
228*c8dee2aaSAndroid Build Coastguard Worker    # "flippity.cpp",
229*c8dee2aaSAndroid Build Coastguard Worker    # "fontations.cpp",
230*c8dee2aaSAndroid Build Coastguard Worker    # "fontcache.cpp",
231*c8dee2aaSAndroid Build Coastguard Worker    # "fontmgr.cpp",
232*c8dee2aaSAndroid Build Coastguard Worker    # "fontregen.cpp",
233*c8dee2aaSAndroid Build Coastguard Worker    # "fontscaler.cpp",
234*c8dee2aaSAndroid Build Coastguard Worker    # "fontscalerdistortable.cpp",
235*c8dee2aaSAndroid Build Coastguard Worker    # "fpcoordinateoverride.cpp",
236*c8dee2aaSAndroid Build Coastguard Worker    # "fp_sample_chaining.cpp",
237*c8dee2aaSAndroid Build Coastguard Worker    # "fwidth_squircle.cpp",
238*c8dee2aaSAndroid Build Coastguard Worker    # "gammatext.cpp",
239*c8dee2aaSAndroid Build Coastguard Worker    # "getpostextpath.cpp",
240*c8dee2aaSAndroid Build Coastguard Worker    # "giantbitmap.cpp",
241*c8dee2aaSAndroid Build Coastguard Worker    # "glyph_pos.cpp",
242*c8dee2aaSAndroid Build Coastguard Worker    # "gpu_blur_utils.cpp",
243*c8dee2aaSAndroid Build Coastguard Worker    # "gradient_dirty_laundry.cpp",
244*c8dee2aaSAndroid Build Coastguard Worker    # "gradient_matrix.cpp",
245*c8dee2aaSAndroid Build Coastguard Worker    # "gradients_2pt_conical.cpp",
246*c8dee2aaSAndroid Build Coastguard Worker    # "gradients.cpp",
247*c8dee2aaSAndroid Build Coastguard Worker    # "gradients_degenerate.cpp",
248*c8dee2aaSAndroid Build Coastguard Worker    # "gradients_no_texture.cpp",
249*c8dee2aaSAndroid Build Coastguard Worker    # "gradtext.cpp",
250*c8dee2aaSAndroid Build Coastguard Worker    # "graphite_replay.cpp",
251*c8dee2aaSAndroid Build Coastguard Worker    # "graphitestart.cpp",
252*c8dee2aaSAndroid Build Coastguard Worker    # "grayscalejpg.cpp",
253*c8dee2aaSAndroid Build Coastguard Worker    # "hairlines.cpp",
254*c8dee2aaSAndroid Build Coastguard Worker    # "hairmodes.cpp",
255*c8dee2aaSAndroid Build Coastguard Worker    # "hardstop_gradients.cpp",
256*c8dee2aaSAndroid Build Coastguard Worker    # "hardstop_gradients_many.cpp",
257*c8dee2aaSAndroid Build Coastguard Worker    # "highcontrastfilter.cpp",
258*c8dee2aaSAndroid Build Coastguard Worker    # "hittestpath.cpp",
259*c8dee2aaSAndroid Build Coastguard Worker    # "hsl.cpp",
260*c8dee2aaSAndroid Build Coastguard Worker    # "hugepath.cpp",
261*c8dee2aaSAndroid Build Coastguard Worker    # "imageblur2.cpp",
262*c8dee2aaSAndroid Build Coastguard Worker    # "imageblurclampmode.cpp",
263*c8dee2aaSAndroid Build Coastguard Worker    # "imageblur.cpp",
264*c8dee2aaSAndroid Build Coastguard Worker    # "imageblurrepeatmode.cpp",
265*c8dee2aaSAndroid Build Coastguard Worker    # "imageblurtiled.cpp",
266*c8dee2aaSAndroid Build Coastguard Worker    # "image.cpp",
267*c8dee2aaSAndroid Build Coastguard Worker    # "imagefiltersbase.cpp",
268*c8dee2aaSAndroid Build Coastguard Worker    # "imagefiltersclipped.cpp",
269*c8dee2aaSAndroid Build Coastguard Worker    # "imagefilters.cpp",
270*c8dee2aaSAndroid Build Coastguard Worker    # "imagefilterscropexpand.cpp",
271*c8dee2aaSAndroid Build Coastguard Worker    # "imagefilterscropped.cpp",
272*c8dee2aaSAndroid Build Coastguard Worker    # "imagefiltersgraph.cpp",
273*c8dee2aaSAndroid Build Coastguard Worker    # "imagefiltersscaled.cpp",
274*c8dee2aaSAndroid Build Coastguard Worker    # "imagefiltersstroked.cpp",
275*c8dee2aaSAndroid Build Coastguard Worker    # "imagefilterstransformed.cpp",
276*c8dee2aaSAndroid Build Coastguard Worker    # "imagefiltersunpremul.cpp",
277*c8dee2aaSAndroid Build Coastguard Worker    # "imagefromyuvtextures.cpp",
278*c8dee2aaSAndroid Build Coastguard Worker    # "imagemagnifier.cpp",
279*c8dee2aaSAndroid Build Coastguard Worker    # "imagemakewithfilter.cpp",
280*c8dee2aaSAndroid Build Coastguard Worker    # "imagemasksubset.cpp",
281*c8dee2aaSAndroid Build Coastguard Worker    # "image_pict.cpp",
282*c8dee2aaSAndroid Build Coastguard Worker    # "imageresizetiled.cpp",
283*c8dee2aaSAndroid Build Coastguard Worker    # "image_shader.cpp",
284*c8dee2aaSAndroid Build Coastguard Worker    # "imagesource2.cpp",
285*c8dee2aaSAndroid Build Coastguard Worker    # "imagesource.cpp",
286*c8dee2aaSAndroid Build Coastguard Worker    # "internal_links.cpp",
287*c8dee2aaSAndroid Build Coastguard Worker    # "inverseclip.cpp",
288*c8dee2aaSAndroid Build Coastguard Worker    # "inversepaths.cpp",
289*c8dee2aaSAndroid Build Coastguard Worker    # "jpg_color_cube.cpp",
290*c8dee2aaSAndroid Build Coastguard Worker    # "kawase_blur_rt.cpp",
291*c8dee2aaSAndroid Build Coastguard Worker    # "labyrinth.cpp",
292*c8dee2aaSAndroid Build Coastguard Worker    # "largeclippedpath.cpp",
293*c8dee2aaSAndroid Build Coastguard Worker    # "largeglyphblur.cpp",
294*c8dee2aaSAndroid Build Coastguard Worker    # "lattice.cpp",
295*c8dee2aaSAndroid Build Coastguard Worker    # "lazytiling.cpp",
296*c8dee2aaSAndroid Build Coastguard Worker    # "lcdblendmodes.cpp",
297*c8dee2aaSAndroid Build Coastguard Worker    # "lcdoverlap.cpp",
298*c8dee2aaSAndroid Build Coastguard Worker    # "lcdtext.cpp",
299*c8dee2aaSAndroid Build Coastguard Worker    # "lighting.cpp",
300*c8dee2aaSAndroid Build Coastguard Worker    # "linepaths.cpp",
301*c8dee2aaSAndroid Build Coastguard Worker    # "localmatriximagefilter.cpp",
302*c8dee2aaSAndroid Build Coastguard Worker    # "localmatriximageshader.cpp",
303*c8dee2aaSAndroid Build Coastguard Worker    # "localmatrixshader.cpp",
304*c8dee2aaSAndroid Build Coastguard Worker    # "lumafilter.cpp",
305*c8dee2aaSAndroid Build Coastguard Worker    # "mac_aa_explorer.cpp",
306*c8dee2aaSAndroid Build Coastguard Worker    # "makecolorspace.cpp",
307*c8dee2aaSAndroid Build Coastguard Worker    # "make_raster_image.cpp",
308*c8dee2aaSAndroid Build Coastguard Worker    # "mandoline.cpp",
309*c8dee2aaSAndroid Build Coastguard Worker    # "manypathatlases.cpp",
310*c8dee2aaSAndroid Build Coastguard Worker    # "manypaths.cpp",
311*c8dee2aaSAndroid Build Coastguard Worker    # "matrixconvolution.cpp",
312*c8dee2aaSAndroid Build Coastguard Worker    # "matriximagefilter.cpp",
313*c8dee2aaSAndroid Build Coastguard Worker    # "mesh.cpp",
314*c8dee2aaSAndroid Build Coastguard Worker    # "mipmap.cpp",
315*c8dee2aaSAndroid Build Coastguard Worker    # "mirrortile.cpp",
316*c8dee2aaSAndroid Build Coastguard Worker    # "mixedtextblobs.cpp",
317*c8dee2aaSAndroid Build Coastguard Worker    # "mixercolorfilter.cpp",
318*c8dee2aaSAndroid Build Coastguard Worker    # "modecolorfilters.cpp",
319*c8dee2aaSAndroid Build Coastguard Worker    # "morphology.cpp",
320*c8dee2aaSAndroid Build Coastguard Worker    # "nearesthalfpixelimage.cpp",
321*c8dee2aaSAndroid Build Coastguard Worker    # "nested.cpp",
322*c8dee2aaSAndroid Build Coastguard Worker    # "ninepatchstretch.cpp",
323*c8dee2aaSAndroid Build Coastguard Worker    # "nonclosedpaths.cpp",
324*c8dee2aaSAndroid Build Coastguard Worker    # "offsetimagefilter.cpp",
325*c8dee2aaSAndroid Build Coastguard Worker    # "orientation.cpp",
326*c8dee2aaSAndroid Build Coastguard Worker    # "ovals.cpp",
327*c8dee2aaSAndroid Build Coastguard Worker    # "overdrawcanvas.cpp",
328*c8dee2aaSAndroid Build Coastguard Worker    # "overdrawcolorfilter.cpp",
329*c8dee2aaSAndroid Build Coastguard Worker    # "overstroke.cpp",
330*c8dee2aaSAndroid Build Coastguard Worker    # "p3.cpp",
331*c8dee2aaSAndroid Build Coastguard Worker    # "palette.cpp",
332*c8dee2aaSAndroid Build Coastguard Worker    # "patch.cpp",
333*c8dee2aaSAndroid Build Coastguard Worker    # "patharcto.cpp",
334*c8dee2aaSAndroid Build Coastguard Worker    # "pathcontourstart.cpp",
335*c8dee2aaSAndroid Build Coastguard Worker    # "patheffects.cpp",
336*c8dee2aaSAndroid Build Coastguard Worker    # "pathfill.cpp",
337*c8dee2aaSAndroid Build Coastguard Worker    # "pathinterior.cpp",
338*c8dee2aaSAndroid Build Coastguard Worker    # "pathmaskcache.cpp",
339*c8dee2aaSAndroid Build Coastguard Worker    # "pathmeasure.cpp",
340*c8dee2aaSAndroid Build Coastguard Worker    # "pathopsinverse.cpp",
341*c8dee2aaSAndroid Build Coastguard Worker    # "pathreverse.cpp",
342*c8dee2aaSAndroid Build Coastguard Worker    # "path_stroke_with_zero_length.cpp",
343*c8dee2aaSAndroid Build Coastguard Worker    # "pdf_never_embed.cpp",
344*c8dee2aaSAndroid Build Coastguard Worker    # "perlinnoise.cpp",
345*c8dee2aaSAndroid Build Coastguard Worker    # "perspimages.cpp",
346*c8dee2aaSAndroid Build Coastguard Worker    # "perspshaders.cpp",
347*c8dee2aaSAndroid Build Coastguard Worker    # "persptext.cpp",
348*c8dee2aaSAndroid Build Coastguard Worker    # "picture.cpp",
349*c8dee2aaSAndroid Build Coastguard Worker    # "pictureimagefilter.cpp",
350*c8dee2aaSAndroid Build Coastguard Worker    # "pictureimagegenerator.cpp",
351*c8dee2aaSAndroid Build Coastguard Worker    # "pictureshadercache.cpp",
352*c8dee2aaSAndroid Build Coastguard Worker    # "pictureshader.cpp",
353*c8dee2aaSAndroid Build Coastguard Worker    # "pictureshadertile.cpp",
354*c8dee2aaSAndroid Build Coastguard Worker    # "plus.cpp",
355*c8dee2aaSAndroid Build Coastguard Worker    # "points.cpp",
356*c8dee2aaSAndroid Build Coastguard Worker    # "poly2poly.cpp",
357*c8dee2aaSAndroid Build Coastguard Worker    # "polygonoffset.cpp",
358*c8dee2aaSAndroid Build Coastguard Worker    # "polygons.cpp",
359*c8dee2aaSAndroid Build Coastguard Worker    # "postercircle.cpp",
360*c8dee2aaSAndroid Build Coastguard Worker    # "preservefillrule.cpp",
361*c8dee2aaSAndroid Build Coastguard Worker    # "quadpaths.cpp",
362*c8dee2aaSAndroid Build Coastguard Worker    # "radial_gradient_precision.cpp",
363*c8dee2aaSAndroid Build Coastguard Worker    # "rasterhandleallocator.cpp",
364*c8dee2aaSAndroid Build Coastguard Worker    # "readpixels.cpp",
365*c8dee2aaSAndroid Build Coastguard Worker    # "recordopts.cpp",
366*c8dee2aaSAndroid Build Coastguard Worker    # "rectangletexture.cpp",
367*c8dee2aaSAndroid Build Coastguard Worker    # "repeated_bitmap.cpp",
368*c8dee2aaSAndroid Build Coastguard Worker    # "resizeimagefilter.cpp",
369*c8dee2aaSAndroid Build Coastguard Worker    # "rippleshadergm.cpp",
370*c8dee2aaSAndroid Build Coastguard Worker    # "roundrects.cpp",
371*c8dee2aaSAndroid Build Coastguard Worker    # "rrectclipdrawpaint.cpp",
372*c8dee2aaSAndroid Build Coastguard Worker    # "rrect.cpp",
373*c8dee2aaSAndroid Build Coastguard Worker    # "rrects.cpp",
374*c8dee2aaSAndroid Build Coastguard Worker    # "rsxtext.cpp",
375*c8dee2aaSAndroid Build Coastguard Worker    # "runtimecolorfilter.cpp",
376*c8dee2aaSAndroid Build Coastguard Worker    # "runtimefunctions.cpp",
377*c8dee2aaSAndroid Build Coastguard Worker    # "runtimeimagefilter.cpp",
378*c8dee2aaSAndroid Build Coastguard Worker    # "runtimeintrinsics.cpp",
379*c8dee2aaSAndroid Build Coastguard Worker    # "runtimeshader.cpp",
380*c8dee2aaSAndroid Build Coastguard Worker    # "samplerstress.cpp",
381*c8dee2aaSAndroid Build Coastguard Worker    # "savelayer.cpp",
382*c8dee2aaSAndroid Build Coastguard Worker    # "scaledemoji.cpp",
383*c8dee2aaSAndroid Build Coastguard Worker    # "scaledemoji_rendering.cpp",
384*c8dee2aaSAndroid Build Coastguard Worker    # "scaledrects.cpp",
385*c8dee2aaSAndroid Build Coastguard Worker    # "scaledstrokes.cpp",
386*c8dee2aaSAndroid Build Coastguard Worker    # "shadermaskfilter.cpp",
387*c8dee2aaSAndroid Build Coastguard Worker    # "shaderpath.cpp",
388*c8dee2aaSAndroid Build Coastguard Worker    # "shadertext3.cpp",
389*c8dee2aaSAndroid Build Coastguard Worker    # "shadowutils.cpp",
390*c8dee2aaSAndroid Build Coastguard Worker    # "shallowgradient.cpp",
391*c8dee2aaSAndroid Build Coastguard Worker    # "shapes.cpp",
392*c8dee2aaSAndroid Build Coastguard Worker    # "sharedcorners.cpp",
393*c8dee2aaSAndroid Build Coastguard Worker    # "showmiplevels.cpp",
394*c8dee2aaSAndroid Build Coastguard Worker    # "simpleaaclip.cpp",
395*c8dee2aaSAndroid Build Coastguard Worker    # "simplerect.cpp",
396*c8dee2aaSAndroid Build Coastguard Worker    # "skbug_12212.cpp",
397*c8dee2aaSAndroid Build Coastguard Worker    # "skbug1719.cpp",
398*c8dee2aaSAndroid Build Coastguard Worker    # "skbug_257.cpp",
399*c8dee2aaSAndroid Build Coastguard Worker    # "skbug_4868.cpp",
400*c8dee2aaSAndroid Build Coastguard Worker    # "skbug_5321.cpp",
401*c8dee2aaSAndroid Build Coastguard Worker    # "skbug_8664.cpp",
402*c8dee2aaSAndroid Build Coastguard Worker    # "skbug_8955.cpp",
403*c8dee2aaSAndroid Build Coastguard Worker    # "skbug_9319.cpp",
404*c8dee2aaSAndroid Build Coastguard Worker    # "skbug_9819.cpp",
405*c8dee2aaSAndroid Build Coastguard Worker    # "slug.cpp",
406*c8dee2aaSAndroid Build Coastguard Worker    # "smallarc.cpp",
407*c8dee2aaSAndroid Build Coastguard Worker    # "smallpaths.cpp",
408*c8dee2aaSAndroid Build Coastguard Worker    # "spritebitmap.cpp",
409*c8dee2aaSAndroid Build Coastguard Worker    # "srcmode.cpp",
410*c8dee2aaSAndroid Build Coastguard Worker    # "srgb.cpp",
411*c8dee2aaSAndroid Build Coastguard Worker    # "stlouisarch.cpp",
412*c8dee2aaSAndroid Build Coastguard Worker    # "stringart.cpp",
413*c8dee2aaSAndroid Build Coastguard Worker    # "strokedlines.cpp",
414*c8dee2aaSAndroid Build Coastguard Worker    # "strokefill.cpp",
415*c8dee2aaSAndroid Build Coastguard Worker    # "strokerect_anisotropic.cpp",
416*c8dee2aaSAndroid Build Coastguard Worker    # "strokerect.cpp",
417*c8dee2aaSAndroid Build Coastguard Worker    # "strokerects.cpp",
418*c8dee2aaSAndroid Build Coastguard Worker    # "stroke_rect_shader.cpp",
419*c8dee2aaSAndroid Build Coastguard Worker    # "strokes.cpp",
420*c8dee2aaSAndroid Build Coastguard Worker    # "stroketext.cpp",
421*c8dee2aaSAndroid Build Coastguard Worker    # "subsetshader.cpp",
422*c8dee2aaSAndroid Build Coastguard Worker    # "surface.cpp",
423*c8dee2aaSAndroid Build Coastguard Worker    # "swizzle.cpp",
424*c8dee2aaSAndroid Build Coastguard Worker    # "tablecolorfilter.cpp",
425*c8dee2aaSAndroid Build Coastguard Worker    # "tallstretchedbitmaps.cpp",
426*c8dee2aaSAndroid Build Coastguard Worker    # "testgradient.cpp",
427*c8dee2aaSAndroid Build Coastguard Worker    # "texelsubset.cpp",
428*c8dee2aaSAndroid Build Coastguard Worker    # "textblobblockreordering.cpp",
429*c8dee2aaSAndroid Build Coastguard Worker    # "textblobcolortrans.cpp",
430*c8dee2aaSAndroid Build Coastguard Worker    # "textblob.cpp",
431*c8dee2aaSAndroid Build Coastguard Worker    # "textblobgeometrychange.cpp",
432*c8dee2aaSAndroid Build Coastguard Worker    # "textblobmixedsizes.cpp",
433*c8dee2aaSAndroid Build Coastguard Worker    # "textblobrandomfont.cpp",
434*c8dee2aaSAndroid Build Coastguard Worker    # "textblobshader.cpp",
435*c8dee2aaSAndroid Build Coastguard Worker    # "textblobtransforms.cpp",
436*c8dee2aaSAndroid Build Coastguard Worker    # "textblobuseaftergpufree.cpp",
437*c8dee2aaSAndroid Build Coastguard Worker    # "texteffects.cpp",
438*c8dee2aaSAndroid Build Coastguard Worker    # "text_scale_skew.cpp",
439*c8dee2aaSAndroid Build Coastguard Worker    # "thinconcavepaths.cpp",
440*c8dee2aaSAndroid Build Coastguard Worker    # "thinrects.cpp",
441*c8dee2aaSAndroid Build Coastguard Worker    # "thinstrokedrects.cpp",
442*c8dee2aaSAndroid Build Coastguard Worker    # "tiledscaledbitmap.cpp",
443*c8dee2aaSAndroid Build Coastguard Worker    # "tileimagefilter.cpp",
444*c8dee2aaSAndroid Build Coastguard Worker    # "tilemodes_alpha.cpp",
445*c8dee2aaSAndroid Build Coastguard Worker    # "tilemodes.cpp",
446*c8dee2aaSAndroid Build Coastguard Worker    # "tilemodes_scaled.cpp",
447*c8dee2aaSAndroid Build Coastguard Worker    # "tinybitmap.cpp",
448*c8dee2aaSAndroid Build Coastguard Worker    # "transparency.cpp",
449*c8dee2aaSAndroid Build Coastguard Worker    # "trickycubicstrokes.cpp",
450*c8dee2aaSAndroid Build Coastguard Worker    # "typeface.cpp",
451*c8dee2aaSAndroid Build Coastguard Worker    # "unpremul.cpp",
452*c8dee2aaSAndroid Build Coastguard Worker    # "userfont.cpp",
453*c8dee2aaSAndroid Build Coastguard Worker    # "variedtext.cpp",
454*c8dee2aaSAndroid Build Coastguard Worker    # "verifiers",
455*c8dee2aaSAndroid Build Coastguard Worker    # "vertices.cpp",
456*c8dee2aaSAndroid Build Coastguard Worker    # "verylargebitmap.cpp",
457*c8dee2aaSAndroid Build Coastguard Worker    # "video_decoder.cpp",
458*c8dee2aaSAndroid Build Coastguard Worker    # "wacky_yuv_formats.cpp",
459*c8dee2aaSAndroid Build Coastguard Worker    # "widebuttcaps.cpp",
460*c8dee2aaSAndroid Build Coastguard Worker    # "windowrectangles.cpp",
461*c8dee2aaSAndroid Build Coastguard Worker    # "workingspace.cpp",
462*c8dee2aaSAndroid Build Coastguard Worker    # "xfermodeimagefilter.cpp",
463*c8dee2aaSAndroid Build Coastguard Worker    # "xfermodes2.cpp",
464*c8dee2aaSAndroid Build Coastguard Worker    # "xfermodes3.cpp",
465*c8dee2aaSAndroid Build Coastguard Worker    # "xfermodes.cpp",
466*c8dee2aaSAndroid Build Coastguard Worker    # "ycbcrimage.cpp",
467*c8dee2aaSAndroid Build Coastguard Worker    # "yuv420_odd_dim.cpp",
468*c8dee2aaSAndroid Build Coastguard Worker    # "yuvtorgbsubset.cpp",
469*c8dee2aaSAndroid Build Coastguard Worker]
470*c8dee2aaSAndroid Build Coastguard Worker
471*c8dee2aaSAndroid Build Coastguard WorkerGPU_GMS = [
472*c8dee2aaSAndroid Build Coastguard Worker    # TODO(lovisolo): Incomplete list. Some commented out files in CPU_GMS probably belong here.
473*c8dee2aaSAndroid Build Coastguard Worker    # "aarecteffect.cpp",  # ./include/core/SkRefCnt.h:41: fatal error: "assert(this->getRefCnt() == 1)"
474*c8dee2aaSAndroid Build Coastguard Worker    "anisotropic.cpp",
475*c8dee2aaSAndroid Build Coastguard Worker    # "asyncrescaleandread.cpp",  # ./include/core/SkRefCnt.h:41: fatal error: "assert(this->getRefCnt() == 1)"
476*c8dee2aaSAndroid Build Coastguard Worker    # "attributes.cpp",  # ./include/core/SkRefCnt.h:41: fatal error: "assert(this->getRefCnt() == 1)"
477*c8dee2aaSAndroid Build Coastguard Worker    # "beziereffects.cpp",  # ./include/core/SkRefCnt.h:41: fatal error: "assert(this->getRefCnt() == 1)"
478*c8dee2aaSAndroid Build Coastguard Worker    # "clockwise.cpp",  # ./include/core/SkRefCnt.h:41: fatal error: "assert(this->getRefCnt() == 1)"
479*c8dee2aaSAndroid Build Coastguard Worker]
480*c8dee2aaSAndroid Build Coastguard Worker
481*c8dee2aaSAndroid Build Coastguard WorkerCOMMON_DEPS = [
482*c8dee2aaSAndroid Build Coastguard Worker    "//:core",
483*c8dee2aaSAndroid Build Coastguard Worker    "//gm",
484*c8dee2aaSAndroid Build Coastguard Worker    "//src/core:core_priv",
485*c8dee2aaSAndroid Build Coastguard Worker    "//tools:codec_utils",
486*c8dee2aaSAndroid Build Coastguard Worker    "//tools:hash_and_encode",
487*c8dee2aaSAndroid Build Coastguard Worker    "//tools:tool_utils",
488*c8dee2aaSAndroid Build Coastguard Worker    "//tools/testrunners/common:testrunner",
489*c8dee2aaSAndroid Build Coastguard Worker    "//tools/testrunners/common/compilation_mode_keys",
490*c8dee2aaSAndroid Build Coastguard Worker]
491*c8dee2aaSAndroid Build Coastguard Worker
492*c8dee2aaSAndroid Build Coastguard Worker# Sample invocation:
493*c8dee2aaSAndroid Build Coastguard Worker#
494*c8dee2aaSAndroid Build Coastguard Worker#     $ bazel run --config=linux_rbe //gm:cpu_8888_test
495*c8dee2aaSAndroid Build Coastguard Worker#
496*c8dee2aaSAndroid Build Coastguard Worker# Then inspect the PNG and JSON files produced by the GMs:
497*c8dee2aaSAndroid Build Coastguard Worker#
498*c8dee2aaSAndroid Build Coastguard Worker#     $ unzip -l bazel-testlogs/gm/cpu_8888_test/test.outputs/outputs.zip
499*c8dee2aaSAndroid Build Coastguard Workerskia_cc_test(
500*c8dee2aaSAndroid Build Coastguard Worker    name = "cpu_8888_test",
501*c8dee2aaSAndroid Build Coastguard Worker    srcs = CPU_GMS + [
502*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm:BazelGMTestRunner.cpp",
503*c8dee2aaSAndroid Build Coastguard Worker    ],
504*c8dee2aaSAndroid Build Coastguard Worker    args = [
505*c8dee2aaSAndroid Build Coastguard Worker        "--surfaceConfig",
506*c8dee2aaSAndroid Build Coastguard Worker        "8888",
507*c8dee2aaSAndroid Build Coastguard Worker    ],
508*c8dee2aaSAndroid Build Coastguard Worker    data = ["//resources"],
509*c8dee2aaSAndroid Build Coastguard Worker    target_compatible_with = supports_platforms(
510*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:linux",
511*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:windows",
512*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:macos",
513*c8dee2aaSAndroid Build Coastguard Worker    ),
514*c8dee2aaSAndroid Build Coastguard Worker    deps = COMMON_DEPS + [
515*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/common/surface_manager:raster",
516*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm/vias:simple_vias",
517*c8dee2aaSAndroid Build Coastguard Worker        "//tools/timer",  # Required by addarc.cpp and animatedimageblurs.cpp.
518*c8dee2aaSAndroid Build Coastguard Worker    ],
519*c8dee2aaSAndroid Build Coastguard Worker)
520*c8dee2aaSAndroid Build Coastguard Worker
521*c8dee2aaSAndroid Build Coastguard Workerskia_cc_test(
522*c8dee2aaSAndroid Build Coastguard Worker    name = "cpu_8888_via_picture_serialization_test",
523*c8dee2aaSAndroid Build Coastguard Worker    srcs = CPU_GMS + [
524*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm:BazelGMTestRunner.cpp",
525*c8dee2aaSAndroid Build Coastguard Worker    ],
526*c8dee2aaSAndroid Build Coastguard Worker    args = [
527*c8dee2aaSAndroid Build Coastguard Worker        "--surfaceConfig",
528*c8dee2aaSAndroid Build Coastguard Worker        "8888",
529*c8dee2aaSAndroid Build Coastguard Worker        "--via",
530*c8dee2aaSAndroid Build Coastguard Worker        "picture_serialization",
531*c8dee2aaSAndroid Build Coastguard Worker        # These tests fail with "Recorded and reference bitmap pixels do not match."
532*c8dee2aaSAndroid Build Coastguard Worker        "--skip",
533*c8dee2aaSAndroid Build Coastguard Worker        "analytic_antialias_convex",
534*c8dee2aaSAndroid Build Coastguard Worker        "arithmode",
535*c8dee2aaSAndroid Build Coastguard Worker        "arithmode_blender",
536*c8dee2aaSAndroid Build Coastguard Worker    ],
537*c8dee2aaSAndroid Build Coastguard Worker    data = ["//resources"],
538*c8dee2aaSAndroid Build Coastguard Worker    target_compatible_with = supports_platforms(
539*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:linux",
540*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:windows",
541*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:macos",
542*c8dee2aaSAndroid Build Coastguard Worker    ),
543*c8dee2aaSAndroid Build Coastguard Worker    deps = COMMON_DEPS + [
544*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/common/surface_manager:raster",
545*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm/vias:simple_vias",
546*c8dee2aaSAndroid Build Coastguard Worker        "//tools/timer",  # Required by addarc.cpp and animatedimageblurs.cpp.
547*c8dee2aaSAndroid Build Coastguard Worker    ],
548*c8dee2aaSAndroid Build Coastguard Worker)
549*c8dee2aaSAndroid Build Coastguard Worker
550*c8dee2aaSAndroid Build Coastguard Workerskia_cc_test(
551*c8dee2aaSAndroid Build Coastguard Worker    name = "cpu_8888_via_picture_test",
552*c8dee2aaSAndroid Build Coastguard Worker    srcs = CPU_GMS + [
553*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm:BazelGMTestRunner.cpp",
554*c8dee2aaSAndroid Build Coastguard Worker    ],
555*c8dee2aaSAndroid Build Coastguard Worker    args = [
556*c8dee2aaSAndroid Build Coastguard Worker        "--surfaceConfig",
557*c8dee2aaSAndroid Build Coastguard Worker        "8888",
558*c8dee2aaSAndroid Build Coastguard Worker        "--via",
559*c8dee2aaSAndroid Build Coastguard Worker        "picture",
560*c8dee2aaSAndroid Build Coastguard Worker    ],
561*c8dee2aaSAndroid Build Coastguard Worker    data = ["//resources"],
562*c8dee2aaSAndroid Build Coastguard Worker    target_compatible_with = supports_platforms(
563*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:linux",
564*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:windows",
565*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:macos",
566*c8dee2aaSAndroid Build Coastguard Worker    ),
567*c8dee2aaSAndroid Build Coastguard Worker    deps = COMMON_DEPS + [
568*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/common/surface_manager:raster",
569*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm/vias:simple_vias",
570*c8dee2aaSAndroid Build Coastguard Worker        "//tools/timer",  # Required by addarc.cpp and animatedimageblurs.cpp.
571*c8dee2aaSAndroid Build Coastguard Worker    ],
572*c8dee2aaSAndroid Build Coastguard Worker)
573*c8dee2aaSAndroid Build Coastguard Worker
574*c8dee2aaSAndroid Build Coastguard Workerpng_codec_tests(name = "png_codec_tests")
575*c8dee2aaSAndroid Build Coastguard Worker
576*c8dee2aaSAndroid Build Coastguard Workertest_suite(
577*c8dee2aaSAndroid Build Coastguard Worker    name = "cpu_gm_tests",
578*c8dee2aaSAndroid Build Coastguard Worker    tests = [
579*c8dee2aaSAndroid Build Coastguard Worker        "cpu_8888_test",
580*c8dee2aaSAndroid Build Coastguard Worker        "cpu_8888_via_picture_serialization_test",
581*c8dee2aaSAndroid Build Coastguard Worker        "cpu_8888_via_picture_test",
582*c8dee2aaSAndroid Build Coastguard Worker        ":png_codec_tests",
583*c8dee2aaSAndroid Build Coastguard Worker    ],
584*c8dee2aaSAndroid Build Coastguard Worker)
585*c8dee2aaSAndroid Build Coastguard Worker
586*c8dee2aaSAndroid Build Coastguard Workerskia_cc_test(
587*c8dee2aaSAndroid Build Coastguard Worker    name = "ganesh_gles_test",
588*c8dee2aaSAndroid Build Coastguard Worker    srcs = GPU_GMS + [
589*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm:BazelGMTestRunner.cpp",
590*c8dee2aaSAndroid Build Coastguard Worker    ],
591*c8dee2aaSAndroid Build Coastguard Worker    args = [
592*c8dee2aaSAndroid Build Coastguard Worker        "--surfaceConfig",
593*c8dee2aaSAndroid Build Coastguard Worker        "gles",
594*c8dee2aaSAndroid Build Coastguard Worker    ],
595*c8dee2aaSAndroid Build Coastguard Worker    data = ["//resources"],
596*c8dee2aaSAndroid Build Coastguard Worker    target_compatible_with = supports_platforms(
597*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:linux",
598*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:windows",
599*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:macos",
600*c8dee2aaSAndroid Build Coastguard Worker    ),
601*c8dee2aaSAndroid Build Coastguard Worker    deps = COMMON_DEPS + [
602*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/common/surface_manager:ganesh_gl",
603*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm/vias:simple_vias",
604*c8dee2aaSAndroid Build Coastguard Worker    ],
605*c8dee2aaSAndroid Build Coastguard Worker)
606*c8dee2aaSAndroid Build Coastguard Worker
607*c8dee2aaSAndroid Build Coastguard Worker# Vulkan GMs.
608*c8dee2aaSAndroid Build Coastguard Worker[
609*c8dee2aaSAndroid Build Coastguard Worker    skia_cc_test(
610*c8dee2aaSAndroid Build Coastguard Worker        name = name,
611*c8dee2aaSAndroid Build Coastguard Worker        srcs = GPU_GMS + [
612*c8dee2aaSAndroid Build Coastguard Worker            "//tools/testrunners/gm:BazelGMTestRunner.cpp",
613*c8dee2aaSAndroid Build Coastguard Worker        ],
614*c8dee2aaSAndroid Build Coastguard Worker        args = [
615*c8dee2aaSAndroid Build Coastguard Worker            "--surfaceConfig",
616*c8dee2aaSAndroid Build Coastguard Worker            surfaceConfig,
617*c8dee2aaSAndroid Build Coastguard Worker        ],
618*c8dee2aaSAndroid Build Coastguard Worker        data = ["//resources"],
619*c8dee2aaSAndroid Build Coastguard Worker        target_compatible_with = supports_platforms(
620*c8dee2aaSAndroid Build Coastguard Worker            "@platforms//os:linux",
621*c8dee2aaSAndroid Build Coastguard Worker            "@platforms//os:windows",
622*c8dee2aaSAndroid Build Coastguard Worker            "@platforms//os:macos",
623*c8dee2aaSAndroid Build Coastguard Worker        ),
624*c8dee2aaSAndroid Build Coastguard Worker        deps = COMMON_DEPS + [
625*c8dee2aaSAndroid Build Coastguard Worker            "//tools/testrunners/common/surface_manager:ganesh_vulkan",
626*c8dee2aaSAndroid Build Coastguard Worker            "//tools/testrunners/gm/vias:simple_vias",
627*c8dee2aaSAndroid Build Coastguard Worker        ],
628*c8dee2aaSAndroid Build Coastguard Worker    )
629*c8dee2aaSAndroid Build Coastguard Worker    for name, surfaceConfig in [
630*c8dee2aaSAndroid Build Coastguard Worker        [
631*c8dee2aaSAndroid Build Coastguard Worker            "ganesh_vk_test",
632*c8dee2aaSAndroid Build Coastguard Worker            "vk",
633*c8dee2aaSAndroid Build Coastguard Worker        ],
634*c8dee2aaSAndroid Build Coastguard Worker        [
635*c8dee2aaSAndroid Build Coastguard Worker            "ganesh_vk_1010102_test",
636*c8dee2aaSAndroid Build Coastguard Worker            "vk_1010102",
637*c8dee2aaSAndroid Build Coastguard Worker        ],
638*c8dee2aaSAndroid Build Coastguard Worker        [
639*c8dee2aaSAndroid Build Coastguard Worker            "ganesh_vk_msaa4_test",
640*c8dee2aaSAndroid Build Coastguard Worker            "vk_msaa4",
641*c8dee2aaSAndroid Build Coastguard Worker        ],
642*c8dee2aaSAndroid Build Coastguard Worker        [
643*c8dee2aaSAndroid Build Coastguard Worker            "ganesh_vk_msaa8_test",
644*c8dee2aaSAndroid Build Coastguard Worker            "vk_msaa8",
645*c8dee2aaSAndroid Build Coastguard Worker        ],
646*c8dee2aaSAndroid Build Coastguard Worker        [
647*c8dee2aaSAndroid Build Coastguard Worker            "ganesh_vk_dmsaa_test",
648*c8dee2aaSAndroid Build Coastguard Worker            "vk_dmsaa",
649*c8dee2aaSAndroid Build Coastguard Worker        ],
650*c8dee2aaSAndroid Build Coastguard Worker        [
651*c8dee2aaSAndroid Build Coastguard Worker            "ganesh_vk_betex_test",
652*c8dee2aaSAndroid Build Coastguard Worker            "vk_betex",
653*c8dee2aaSAndroid Build Coastguard Worker        ],
654*c8dee2aaSAndroid Build Coastguard Worker        [
655*c8dee2aaSAndroid Build Coastguard Worker            "ganesh_vk_bert_test",
656*c8dee2aaSAndroid Build Coastguard Worker            "vk_bert",
657*c8dee2aaSAndroid Build Coastguard Worker        ],
658*c8dee2aaSAndroid Build Coastguard Worker    ]
659*c8dee2aaSAndroid Build Coastguard Worker]
660*c8dee2aaSAndroid Build Coastguard Worker
661*c8dee2aaSAndroid Build Coastguard Workerskia_cc_test(
662*c8dee2aaSAndroid Build Coastguard Worker    name = "hello_bazel_world_test",
663*c8dee2aaSAndroid Build Coastguard Worker    srcs = [
664*c8dee2aaSAndroid Build Coastguard Worker        "hello_bazel_world.cpp",
665*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm:BazelGMTestRunner.cpp",
666*c8dee2aaSAndroid Build Coastguard Worker    ],
667*c8dee2aaSAndroid Build Coastguard Worker    args = [
668*c8dee2aaSAndroid Build Coastguard Worker        "--surfaceConfig",
669*c8dee2aaSAndroid Build Coastguard Worker        "8888",
670*c8dee2aaSAndroid Build Coastguard Worker    ],
671*c8dee2aaSAndroid Build Coastguard Worker    data = ["//resources"],
672*c8dee2aaSAndroid Build Coastguard Worker    target_compatible_with = supports_platforms(
673*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:linux",
674*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:windows",
675*c8dee2aaSAndroid Build Coastguard Worker        "@platforms//os:macos",
676*c8dee2aaSAndroid Build Coastguard Worker    ),
677*c8dee2aaSAndroid Build Coastguard Worker    deps = COMMON_DEPS + [
678*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/common/surface_manager:raster",
679*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm/vias:simple_vias",
680*c8dee2aaSAndroid Build Coastguard Worker    ],
681*c8dee2aaSAndroid Build Coastguard Worker)
682*c8dee2aaSAndroid Build Coastguard Worker
683*c8dee2aaSAndroid Build Coastguard Workerandroid_gm_test(
684*c8dee2aaSAndroid Build Coastguard Worker    name = "hello_bazel_world_android_test",
685*c8dee2aaSAndroid Build Coastguard Worker    srcs = [
686*c8dee2aaSAndroid Build Coastguard Worker        "hello_bazel_world.cpp",
687*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm:BazelGMTestRunner.cpp",
688*c8dee2aaSAndroid Build Coastguard Worker    ],
689*c8dee2aaSAndroid Build Coastguard Worker    args = [
690*c8dee2aaSAndroid Build Coastguard Worker        "--surfaceConfig",
691*c8dee2aaSAndroid Build Coastguard Worker        "8888",
692*c8dee2aaSAndroid Build Coastguard Worker    ],
693*c8dee2aaSAndroid Build Coastguard Worker    requires_resources_dir = True,
694*c8dee2aaSAndroid Build Coastguard Worker    deps = COMMON_DEPS + [
695*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/common/surface_manager:raster",
696*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm/vias:simple_vias",
697*c8dee2aaSAndroid Build Coastguard Worker    ],
698*c8dee2aaSAndroid Build Coastguard Worker)
699*c8dee2aaSAndroid Build Coastguard Worker
700*c8dee2aaSAndroid Build Coastguard Worker[
701*c8dee2aaSAndroid Build Coastguard Worker    # Sample invocation (assuming there's a Pixel 5 or similar device available via adb):
702*c8dee2aaSAndroid Build Coastguard Worker    #
703*c8dee2aaSAndroid Build Coastguard Worker    #     $ bazel test --config=android_rbe --config=Pixel5 //gm:cpu_8888_android_test
704*c8dee2aaSAndroid Build Coastguard Worker    #
705*c8dee2aaSAndroid Build Coastguard Worker    # Then inspect the PNG and JSON files produced by the GMs:
706*c8dee2aaSAndroid Build Coastguard Worker    #
707*c8dee2aaSAndroid Build Coastguard Worker    #     $ unzip -l bazel-testlogs/gm/cpu_8888_android_test/test.outputs/outputs.zip
708*c8dee2aaSAndroid Build Coastguard Worker    android_gm_test(
709*c8dee2aaSAndroid Build Coastguard Worker        name = "cpu_%s_android_test" % surface_config,
710*c8dee2aaSAndroid Build Coastguard Worker        srcs = CPU_GMS + [
711*c8dee2aaSAndroid Build Coastguard Worker            "//tools/testrunners/gm:BazelGMTestRunner.cpp",
712*c8dee2aaSAndroid Build Coastguard Worker        ],
713*c8dee2aaSAndroid Build Coastguard Worker        args = [
714*c8dee2aaSAndroid Build Coastguard Worker            "--surfaceConfig",
715*c8dee2aaSAndroid Build Coastguard Worker            "8888",
716*c8dee2aaSAndroid Build Coastguard Worker        ],
717*c8dee2aaSAndroid Build Coastguard Worker        requires_resources_dir = True,
718*c8dee2aaSAndroid Build Coastguard Worker        deps = COMMON_DEPS + [
719*c8dee2aaSAndroid Build Coastguard Worker            "//tools/testrunners/common/surface_manager:raster",
720*c8dee2aaSAndroid Build Coastguard Worker            "//tools/testrunners/gm/vias:simple_vias",
721*c8dee2aaSAndroid Build Coastguard Worker            "//tools/timer",  # Required by addarc.cpp and animatedimageblurs.cpp.
722*c8dee2aaSAndroid Build Coastguard Worker        ],
723*c8dee2aaSAndroid Build Coastguard Worker    )
724*c8dee2aaSAndroid Build Coastguard Worker    for surface_config in [
725*c8dee2aaSAndroid Build Coastguard Worker        "8888",
726*c8dee2aaSAndroid Build Coastguard Worker        "565",
727*c8dee2aaSAndroid Build Coastguard Worker    ]
728*c8dee2aaSAndroid Build Coastguard Worker]
729*c8dee2aaSAndroid Build Coastguard Worker
730*c8dee2aaSAndroid Build Coastguard Workerandroid_gm_test(
731*c8dee2aaSAndroid Build Coastguard Worker    name = "ganesh_gles_android_test",
732*c8dee2aaSAndroid Build Coastguard Worker    srcs = GPU_GMS + [
733*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm:BazelGMTestRunner.cpp",
734*c8dee2aaSAndroid Build Coastguard Worker    ],
735*c8dee2aaSAndroid Build Coastguard Worker    args = [
736*c8dee2aaSAndroid Build Coastguard Worker        "--surfaceConfig",
737*c8dee2aaSAndroid Build Coastguard Worker        "gles",
738*c8dee2aaSAndroid Build Coastguard Worker    ],
739*c8dee2aaSAndroid Build Coastguard Worker    requires_resources_dir = True,
740*c8dee2aaSAndroid Build Coastguard Worker    deps = COMMON_DEPS + [
741*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/common/surface_manager:ganesh_gl",
742*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm/vias:simple_vias",
743*c8dee2aaSAndroid Build Coastguard Worker    ],
744*c8dee2aaSAndroid Build Coastguard Worker)
745*c8dee2aaSAndroid Build Coastguard Worker
746*c8dee2aaSAndroid Build Coastguard Workerandroid_gm_test(
747*c8dee2aaSAndroid Build Coastguard Worker    name = "ganesh_gles_via_picture_serialization_android_test",
748*c8dee2aaSAndroid Build Coastguard Worker    srcs = GPU_GMS + [
749*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm:BazelGMTestRunner.cpp",
750*c8dee2aaSAndroid Build Coastguard Worker    ],
751*c8dee2aaSAndroid Build Coastguard Worker    args = [
752*c8dee2aaSAndroid Build Coastguard Worker        "--surfaceConfig",
753*c8dee2aaSAndroid Build Coastguard Worker        "gles",
754*c8dee2aaSAndroid Build Coastguard Worker        "--via",
755*c8dee2aaSAndroid Build Coastguard Worker        "picture_serialization",
756*c8dee2aaSAndroid Build Coastguard Worker        "--skip",
757*c8dee2aaSAndroid Build Coastguard Worker        "anisomips",  # Fails with "Recorded and reference bitmap pixels do not match".
758*c8dee2aaSAndroid Build Coastguard Worker    ],
759*c8dee2aaSAndroid Build Coastguard Worker    requires_resources_dir = True,
760*c8dee2aaSAndroid Build Coastguard Worker    deps = COMMON_DEPS + [
761*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/common/surface_manager:ganesh_gl",
762*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm/vias:simple_vias",
763*c8dee2aaSAndroid Build Coastguard Worker    ],
764*c8dee2aaSAndroid Build Coastguard Worker)
765*c8dee2aaSAndroid Build Coastguard Worker
766*c8dee2aaSAndroid Build Coastguard Workerandroid_gm_test(
767*c8dee2aaSAndroid Build Coastguard Worker    name = "ganesh_gles_via_picture_android_test",
768*c8dee2aaSAndroid Build Coastguard Worker    srcs = GPU_GMS + [
769*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm:BazelGMTestRunner.cpp",
770*c8dee2aaSAndroid Build Coastguard Worker    ],
771*c8dee2aaSAndroid Build Coastguard Worker    args = [
772*c8dee2aaSAndroid Build Coastguard Worker        "--surfaceConfig",
773*c8dee2aaSAndroid Build Coastguard Worker        "gles",
774*c8dee2aaSAndroid Build Coastguard Worker        "--via",
775*c8dee2aaSAndroid Build Coastguard Worker        "picture",
776*c8dee2aaSAndroid Build Coastguard Worker        "--skip",
777*c8dee2aaSAndroid Build Coastguard Worker        "anisomips",  # Fails with "Recorded and reference bitmap pixels do not match".
778*c8dee2aaSAndroid Build Coastguard Worker    ],
779*c8dee2aaSAndroid Build Coastguard Worker    requires_resources_dir = True,
780*c8dee2aaSAndroid Build Coastguard Worker    deps = COMMON_DEPS + [
781*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/common/surface_manager:ganesh_gl",
782*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm/vias:simple_vias",
783*c8dee2aaSAndroid Build Coastguard Worker    ],
784*c8dee2aaSAndroid Build Coastguard Worker)
785*c8dee2aaSAndroid Build Coastguard Worker
786*c8dee2aaSAndroid Build Coastguard Workerandroid_gm_test(
787*c8dee2aaSAndroid Build Coastguard Worker    name = "ganesh_vk_android_test",
788*c8dee2aaSAndroid Build Coastguard Worker    srcs = GPU_GMS + [
789*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm:BazelGMTestRunner.cpp",
790*c8dee2aaSAndroid Build Coastguard Worker    ],
791*c8dee2aaSAndroid Build Coastguard Worker    args = [
792*c8dee2aaSAndroid Build Coastguard Worker        "--surfaceConfig",
793*c8dee2aaSAndroid Build Coastguard Worker        "vk",
794*c8dee2aaSAndroid Build Coastguard Worker    ],
795*c8dee2aaSAndroid Build Coastguard Worker    requires_resources_dir = True,
796*c8dee2aaSAndroid Build Coastguard Worker    deps = COMMON_DEPS + [
797*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/common/surface_manager:ganesh_vulkan",
798*c8dee2aaSAndroid Build Coastguard Worker        "//tools/testrunners/gm/vias:simple_vias",
799*c8dee2aaSAndroid Build Coastguard Worker    ],
800*c8dee2aaSAndroid Build Coastguard Worker)
801