1*c8dee2aaSAndroid Build Coastguard Workerload( 2*c8dee2aaSAndroid Build Coastguard Worker "//bazel:skia_rules.bzl", 3*c8dee2aaSAndroid Build Coastguard Worker "generate_cpp_files_for_headers", 4*c8dee2aaSAndroid Build Coastguard Worker "skia_cc_library", 5*c8dee2aaSAndroid Build Coastguard Worker "skia_filegroup", 6*c8dee2aaSAndroid Build Coastguard Worker "split_srcs_and_hdrs", 7*c8dee2aaSAndroid Build Coastguard Worker) 8*c8dee2aaSAndroid Build Coastguard Worker 9*c8dee2aaSAndroid Build Coastguard Workerpackage( 10*c8dee2aaSAndroid Build Coastguard Worker default_applicable_licenses = ["//:license"], 11*c8dee2aaSAndroid Build Coastguard Worker) 12*c8dee2aaSAndroid Build Coastguard Worker 13*c8dee2aaSAndroid Build Coastguard Workerlicenses(["notice"]) 14*c8dee2aaSAndroid Build Coastguard Worker 15*c8dee2aaSAndroid Build Coastguard WorkerPRIVATE_CODEC_HEADERS = [ 16*c8dee2aaSAndroid Build Coastguard Worker "SkCodecPriv.h", 17*c8dee2aaSAndroid Build Coastguard Worker "SkColorPalette.h", 18*c8dee2aaSAndroid Build Coastguard Worker "SkFrameHolder.h", 19*c8dee2aaSAndroid Build Coastguard Worker "SkMaskSwizzler.h", 20*c8dee2aaSAndroid Build Coastguard Worker "SkParseEncodedOrigin.h", 21*c8dee2aaSAndroid Build Coastguard Worker "SkSampler.h", 22*c8dee2aaSAndroid Build Coastguard Worker "SkScalingCodec.h", 23*c8dee2aaSAndroid Build Coastguard Worker "SkSwizzler.h", 24*c8dee2aaSAndroid Build Coastguard Worker "SkPixmapUtilsPriv.h", 25*c8dee2aaSAndroid Build Coastguard Worker "//include/private:decode_srcs", 26*c8dee2aaSAndroid Build Coastguard Worker] 27*c8dee2aaSAndroid Build Coastguard Worker 28*c8dee2aaSAndroid Build Coastguard Worker# We put any file that is used by more than one codec here to avoid potential issues if clients 29*c8dee2aaSAndroid Build Coastguard Worker# depend on multiple codecs. This is not a problem for a statically linked binary, but could maybe 30*c8dee2aaSAndroid Build Coastguard Worker# cause issues with producing a shared library (e.g. duplicate symbols showing up). 31*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library( 32*c8dee2aaSAndroid Build Coastguard Worker name = "any_decoder", 33*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 34*c8dee2aaSAndroid Build Coastguard Worker "SkCodec.cpp", 35*c8dee2aaSAndroid Build Coastguard Worker "SkCodecImageGenerator.cpp", 36*c8dee2aaSAndroid Build Coastguard Worker "SkCodecImageGenerator.h", 37*c8dee2aaSAndroid Build Coastguard Worker "SkColorPalette.cpp", 38*c8dee2aaSAndroid Build Coastguard Worker "SkEncodedInfo.cpp", 39*c8dee2aaSAndroid Build Coastguard Worker "SkExif.cpp", 40*c8dee2aaSAndroid Build Coastguard Worker "SkGainmapInfo.cpp", 41*c8dee2aaSAndroid Build Coastguard Worker "SkImageGenerator_FromEncoded.cpp", 42*c8dee2aaSAndroid Build Coastguard Worker "SkMaskSwizzler.cpp", 43*c8dee2aaSAndroid Build Coastguard Worker "SkParseEncodedOrigin.cpp", 44*c8dee2aaSAndroid Build Coastguard Worker "SkPixmapUtils.cpp", 45*c8dee2aaSAndroid Build Coastguard Worker "SkSampler.cpp", 46*c8dee2aaSAndroid Build Coastguard Worker "SkSwizzler.cpp", 47*c8dee2aaSAndroid Build Coastguard Worker "SkTiffUtility.cpp", 48*c8dee2aaSAndroid Build Coastguard Worker "SkTiffUtility.h", 49*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:any_codec_hdrs", 50*c8dee2aaSAndroid Build Coastguard Worker ], 51*c8dee2aaSAndroid Build Coastguard Worker hdrs = PRIVATE_CODEC_HEADERS, 52*c8dee2aaSAndroid Build Coastguard Worker features = ["layering_check"], 53*c8dee2aaSAndroid Build Coastguard Worker local_defines = ["SK_DISABLE_LEGACY_INIT_DECODERS"], 54*c8dee2aaSAndroid Build Coastguard Worker visibility = [ 55*c8dee2aaSAndroid Build Coastguard Worker "//experimental/rust_png:__subpackages__", 56*c8dee2aaSAndroid Build Coastguard Worker "//src/encode:__pkg__", 57*c8dee2aaSAndroid Build Coastguard Worker "//src/ports:__pkg__", 58*c8dee2aaSAndroid Build Coastguard Worker ], 59*c8dee2aaSAndroid Build Coastguard Worker deps = [ 60*c8dee2aaSAndroid Build Coastguard Worker "//modules/skcms", 61*c8dee2aaSAndroid Build Coastguard Worker "//src/base", 62*c8dee2aaSAndroid Build Coastguard Worker "//src/core", 63*c8dee2aaSAndroid Build Coastguard Worker "//src/core:core_priv", 64*c8dee2aaSAndroid Build Coastguard Worker ], 65*c8dee2aaSAndroid Build Coastguard Worker) 66*c8dee2aaSAndroid Build Coastguard Worker 67*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library( 68*c8dee2aaSAndroid Build Coastguard Worker name = "codec_support", 69*c8dee2aaSAndroid Build Coastguard Worker # This is its own rule (with no srcs) to explicitly expose any_codec_hdrs 70*c8dee2aaSAndroid Build Coastguard Worker # as public in case a client does not want to use any of our codecs, but 71*c8dee2aaSAndroid Build Coastguard Worker # still register their own and/or make use of SkImage::DeferredFromEncodedData 72*c8dee2aaSAndroid Build Coastguard Worker hdrs = [ 73*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:any_codec_hdrs", 74*c8dee2aaSAndroid Build Coastguard Worker ], 75*c8dee2aaSAndroid Build Coastguard Worker visibility = [ 76*c8dee2aaSAndroid Build Coastguard Worker "//:__pkg__", 77*c8dee2aaSAndroid Build Coastguard Worker ], 78*c8dee2aaSAndroid Build Coastguard Worker deps = [ 79*c8dee2aaSAndroid Build Coastguard Worker ":any_decoder", 80*c8dee2aaSAndroid Build Coastguard Worker ], 81*c8dee2aaSAndroid Build Coastguard Worker) 82*c8dee2aaSAndroid Build Coastguard Worker 83*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library( 84*c8dee2aaSAndroid Build Coastguard Worker name = "codec_support_priv", 85*c8dee2aaSAndroid Build Coastguard Worker hdrs = [ 86*c8dee2aaSAndroid Build Coastguard Worker "SkCodecImageGenerator.h", 87*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:any_codec_hdrs", 88*c8dee2aaSAndroid Build Coastguard Worker ] + PRIVATE_CODEC_HEADERS, 89*c8dee2aaSAndroid Build Coastguard Worker visibility = [ 90*c8dee2aaSAndroid Build Coastguard Worker "//modules/skottie:__pkg__", 91*c8dee2aaSAndroid Build Coastguard Worker "//modules/skottie/src:__pkg__", 92*c8dee2aaSAndroid Build Coastguard Worker "//modules/skresources:__pkg__", 93*c8dee2aaSAndroid Build Coastguard Worker "//src/android:__pkg__", 94*c8dee2aaSAndroid Build Coastguard Worker "//tools:__pkg__", 95*c8dee2aaSAndroid Build Coastguard Worker ], 96*c8dee2aaSAndroid Build Coastguard Worker deps = [ 97*c8dee2aaSAndroid Build Coastguard Worker ":any_decoder", 98*c8dee2aaSAndroid Build Coastguard Worker ], 99*c8dee2aaSAndroid Build Coastguard Worker) 100*c8dee2aaSAndroid Build Coastguard Worker 101*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library( 102*c8dee2aaSAndroid Build Coastguard Worker name = "android_codec", 103*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 104*c8dee2aaSAndroid Build Coastguard Worker "SkAndroidCodec.cpp", 105*c8dee2aaSAndroid Build Coastguard Worker "SkAndroidCodecAdapter.cpp", 106*c8dee2aaSAndroid Build Coastguard Worker "SkAndroidCodecAdapter.h", 107*c8dee2aaSAndroid Build Coastguard Worker "SkSampledCodec.cpp", 108*c8dee2aaSAndroid Build Coastguard Worker "SkSampledCodec.h", 109*c8dee2aaSAndroid Build Coastguard Worker ], 110*c8dee2aaSAndroid Build Coastguard Worker hdrs = [ 111*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:android_public_hdrs", 112*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:any_codec_hdrs", 113*c8dee2aaSAndroid Build Coastguard Worker ], 114*c8dee2aaSAndroid Build Coastguard Worker features = ["layering_check"], 115*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 116*c8dee2aaSAndroid Build Coastguard Worker deps = [ 117*c8dee2aaSAndroid Build Coastguard Worker ":any_decoder", 118*c8dee2aaSAndroid Build Coastguard Worker "//modules/skcms", 119*c8dee2aaSAndroid Build Coastguard Worker "//src/base", 120*c8dee2aaSAndroid Build Coastguard Worker "//src/core", 121*c8dee2aaSAndroid Build Coastguard Worker "//src/core:core_priv", 122*c8dee2aaSAndroid Build Coastguard Worker ], 123*c8dee2aaSAndroid Build Coastguard Worker) 124*c8dee2aaSAndroid Build Coastguard Worker 125*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library( 126*c8dee2aaSAndroid Build Coastguard Worker name = "bmp_decode", 127*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 128*c8dee2aaSAndroid Build Coastguard Worker "SkBmpBaseCodec.cpp", 129*c8dee2aaSAndroid Build Coastguard Worker "SkBmpBaseCodec.h", 130*c8dee2aaSAndroid Build Coastguard Worker "SkBmpCodec.cpp", 131*c8dee2aaSAndroid Build Coastguard Worker "SkBmpCodec.h", 132*c8dee2aaSAndroid Build Coastguard Worker "SkBmpMaskCodec.cpp", 133*c8dee2aaSAndroid Build Coastguard Worker "SkBmpMaskCodec.h", 134*c8dee2aaSAndroid Build Coastguard Worker "SkBmpRLECodec.cpp", 135*c8dee2aaSAndroid Build Coastguard Worker "SkBmpRLECodec.h", 136*c8dee2aaSAndroid Build Coastguard Worker "SkBmpStandardCodec.cpp", 137*c8dee2aaSAndroid Build Coastguard Worker "SkBmpStandardCodec.h", 138*c8dee2aaSAndroid Build Coastguard Worker ], 139*c8dee2aaSAndroid Build Coastguard Worker hdrs = [ 140*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:any_codec_hdrs", 141*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:bmp_public_hdrs", 142*c8dee2aaSAndroid Build Coastguard Worker ], 143*c8dee2aaSAndroid Build Coastguard Worker defines = ["SK_CODEC_DECODES_BMP"], 144*c8dee2aaSAndroid Build Coastguard Worker features = ["layering_check"], 145*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 146*c8dee2aaSAndroid Build Coastguard Worker deps = [ 147*c8dee2aaSAndroid Build Coastguard Worker ":any_decoder", 148*c8dee2aaSAndroid Build Coastguard Worker "//modules/skcms", 149*c8dee2aaSAndroid Build Coastguard Worker "//src/base", 150*c8dee2aaSAndroid Build Coastguard Worker "//src/core", 151*c8dee2aaSAndroid Build Coastguard Worker "//src/core:core_priv", 152*c8dee2aaSAndroid Build Coastguard Worker ], 153*c8dee2aaSAndroid Build Coastguard Worker) 154*c8dee2aaSAndroid Build Coastguard Worker 155*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library( 156*c8dee2aaSAndroid Build Coastguard Worker name = "gif_decode", 157*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 158*c8dee2aaSAndroid Build Coastguard Worker "SkWuffsCodec.cpp", 159*c8dee2aaSAndroid Build Coastguard Worker ], 160*c8dee2aaSAndroid Build Coastguard Worker hdrs = [ 161*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:any_codec_hdrs", 162*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:gif_public_hdrs", 163*c8dee2aaSAndroid Build Coastguard Worker ], 164*c8dee2aaSAndroid Build Coastguard Worker defines = ["SK_CODEC_DECODES_GIF"], 165*c8dee2aaSAndroid Build Coastguard Worker features = ["layering_check"], 166*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 167*c8dee2aaSAndroid Build Coastguard Worker deps = [ 168*c8dee2aaSAndroid Build Coastguard Worker ":any_decoder", 169*c8dee2aaSAndroid Build Coastguard Worker "//modules/skcms", 170*c8dee2aaSAndroid Build Coastguard Worker "//src/base", 171*c8dee2aaSAndroid Build Coastguard Worker "//src/core", 172*c8dee2aaSAndroid Build Coastguard Worker "//src/core:core_priv", 173*c8dee2aaSAndroid Build Coastguard Worker "@wuffs", 174*c8dee2aaSAndroid Build Coastguard Worker ], 175*c8dee2aaSAndroid Build Coastguard Worker) 176*c8dee2aaSAndroid Build Coastguard Worker 177*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library( 178*c8dee2aaSAndroid Build Coastguard Worker name = "ico_decode", 179*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 180*c8dee2aaSAndroid Build Coastguard Worker "SkBmpCodec.h", 181*c8dee2aaSAndroid Build Coastguard Worker "SkIcoCodec.cpp", 182*c8dee2aaSAndroid Build Coastguard Worker "SkIcoCodec.h", 183*c8dee2aaSAndroid Build Coastguard Worker ], 184*c8dee2aaSAndroid Build Coastguard Worker hdrs = [ 185*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:any_codec_hdrs", 186*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:ico_public_hdrs", 187*c8dee2aaSAndroid Build Coastguard Worker ], 188*c8dee2aaSAndroid Build Coastguard Worker defines = ["SK_CODEC_DECODES_ICO"], 189*c8dee2aaSAndroid Build Coastguard Worker features = ["layering_check"], 190*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 191*c8dee2aaSAndroid Build Coastguard Worker deps = [ 192*c8dee2aaSAndroid Build Coastguard Worker "//src/base", 193*c8dee2aaSAndroid Build Coastguard Worker "//src/core", 194*c8dee2aaSAndroid Build Coastguard Worker "//src/core:core_priv", 195*c8dee2aaSAndroid Build Coastguard Worker "//modules/skcms", 196*c8dee2aaSAndroid Build Coastguard Worker ":any_decoder", 197*c8dee2aaSAndroid Build Coastguard Worker # icos can be either PNG or BMP 198*c8dee2aaSAndroid Build Coastguard Worker ":bmp_decode", 199*c8dee2aaSAndroid Build Coastguard Worker ":png_decode", 200*c8dee2aaSAndroid Build Coastguard Worker ], 201*c8dee2aaSAndroid Build Coastguard Worker) 202*c8dee2aaSAndroid Build Coastguard Worker 203*c8dee2aaSAndroid Build Coastguard Workerskia_filegroup( 204*c8dee2aaSAndroid Build Coastguard Worker name = "common_jpeg_srcs", 205*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 206*c8dee2aaSAndroid Build Coastguard Worker "SkJpegConstants.h", 207*c8dee2aaSAndroid Build Coastguard Worker "SkJpegPriv.h", 208*c8dee2aaSAndroid Build Coastguard Worker ], 209*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//src/encode:__pkg__"], 210*c8dee2aaSAndroid Build Coastguard Worker) 211*c8dee2aaSAndroid Build Coastguard Worker 212*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library( 213*c8dee2aaSAndroid Build Coastguard Worker name = "jpeg_decode", 214*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 215*c8dee2aaSAndroid Build Coastguard Worker "SkJpegCodec.cpp", 216*c8dee2aaSAndroid Build Coastguard Worker "SkJpegCodec.h", 217*c8dee2aaSAndroid Build Coastguard Worker "SkJpegDecoderMgr.cpp", 218*c8dee2aaSAndroid Build Coastguard Worker "SkJpegDecoderMgr.h", 219*c8dee2aaSAndroid Build Coastguard Worker "SkJpegMetadataDecoderImpl.cpp", 220*c8dee2aaSAndroid Build Coastguard Worker "SkJpegMetadataDecoderImpl.h", 221*c8dee2aaSAndroid Build Coastguard Worker "SkJpegSourceMgr.cpp", 222*c8dee2aaSAndroid Build Coastguard Worker "SkJpegSourceMgr.h", 223*c8dee2aaSAndroid Build Coastguard Worker "SkJpegUtility.cpp", 224*c8dee2aaSAndroid Build Coastguard Worker "SkJpegUtility.h", 225*c8dee2aaSAndroid Build Coastguard Worker ":common_jpeg_srcs", 226*c8dee2aaSAndroid Build Coastguard Worker "//include/private:jpeg_decode_srcs", 227*c8dee2aaSAndroid Build Coastguard Worker ], 228*c8dee2aaSAndroid Build Coastguard Worker hdrs = [ 229*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:any_codec_hdrs", 230*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:jpeg_public_hdrs", 231*c8dee2aaSAndroid Build Coastguard Worker ], 232*c8dee2aaSAndroid Build Coastguard Worker defines = ["SK_CODEC_DECODES_JPEG"], 233*c8dee2aaSAndroid Build Coastguard Worker features = ["layering_check"], 234*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 235*c8dee2aaSAndroid Build Coastguard Worker deps = [ 236*c8dee2aaSAndroid Build Coastguard Worker ":any_decoder", 237*c8dee2aaSAndroid Build Coastguard Worker "//modules/skcms", 238*c8dee2aaSAndroid Build Coastguard Worker "//src/base", 239*c8dee2aaSAndroid Build Coastguard Worker "//src/core", 240*c8dee2aaSAndroid Build Coastguard Worker "//src/core:core_priv", 241*c8dee2aaSAndroid Build Coastguard Worker "@libjpeg_turbo", 242*c8dee2aaSAndroid Build Coastguard Worker ], 243*c8dee2aaSAndroid Build Coastguard Worker) 244*c8dee2aaSAndroid Build Coastguard Worker 245*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library( 246*c8dee2aaSAndroid Build Coastguard Worker name = "jpegxl_decode", 247*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 248*c8dee2aaSAndroid Build Coastguard Worker "SkJpegxlCodec.cpp", 249*c8dee2aaSAndroid Build Coastguard Worker "SkJpegxlCodec.h", 250*c8dee2aaSAndroid Build Coastguard Worker ":common_jpeg_srcs", 251*c8dee2aaSAndroid Build Coastguard Worker ], 252*c8dee2aaSAndroid Build Coastguard Worker hdrs = [ 253*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:any_codec_hdrs", 254*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:jpegxl_public_hdrs", 255*c8dee2aaSAndroid Build Coastguard Worker ], 256*c8dee2aaSAndroid Build Coastguard Worker defines = ["SK_CODEC_DECODES_JPEGXL"], 257*c8dee2aaSAndroid Build Coastguard Worker features = ["layering_check"], 258*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 259*c8dee2aaSAndroid Build Coastguard Worker deps = [ 260*c8dee2aaSAndroid Build Coastguard Worker ":any_decoder", 261*c8dee2aaSAndroid Build Coastguard Worker "//modules/skcms", 262*c8dee2aaSAndroid Build Coastguard Worker "//src/base", 263*c8dee2aaSAndroid Build Coastguard Worker "//src/core", 264*c8dee2aaSAndroid Build Coastguard Worker "//src/core:core_priv", 265*c8dee2aaSAndroid Build Coastguard Worker "@libjxl", 266*c8dee2aaSAndroid Build Coastguard Worker ], 267*c8dee2aaSAndroid Build Coastguard Worker) 268*c8dee2aaSAndroid Build Coastguard Worker 269*c8dee2aaSAndroid Build Coastguard Workerskia_filegroup( 270*c8dee2aaSAndroid Build Coastguard Worker name = "png_codec_base_srcs", 271*c8dee2aaSAndroid Build Coastguard Worker srcs = ["SkPngCodecBase.cpp"], 272*c8dee2aaSAndroid Build Coastguard Worker) 273*c8dee2aaSAndroid Build Coastguard Worker 274*c8dee2aaSAndroid Build Coastguard Workerskia_filegroup( 275*c8dee2aaSAndroid Build Coastguard Worker name = "png_codec_base_hdrs", 276*c8dee2aaSAndroid Build Coastguard Worker srcs = ["SkPngCodecBase.h"], 277*c8dee2aaSAndroid Build Coastguard Worker) 278*c8dee2aaSAndroid Build Coastguard Worker 279*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library( 280*c8dee2aaSAndroid Build Coastguard Worker name = "png_codec_base", 281*c8dee2aaSAndroid Build Coastguard Worker srcs = [":png_codec_base_srcs"], 282*c8dee2aaSAndroid Build Coastguard Worker hdrs = [ 283*c8dee2aaSAndroid Build Coastguard Worker ":png_codec_base_hdrs", 284*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:any_codec_hdrs", 285*c8dee2aaSAndroid Build Coastguard Worker ], 286*c8dee2aaSAndroid Build Coastguard Worker features = ["layering_check"], 287*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//experimental/rust_png/decoder:__pkg__"], 288*c8dee2aaSAndroid Build Coastguard Worker deps = [ 289*c8dee2aaSAndroid Build Coastguard Worker ":any_decoder", 290*c8dee2aaSAndroid Build Coastguard Worker "//modules/skcms", 291*c8dee2aaSAndroid Build Coastguard Worker "//src/base", 292*c8dee2aaSAndroid Build Coastguard Worker "//src/core", 293*c8dee2aaSAndroid Build Coastguard Worker "//src/core:core_priv", 294*c8dee2aaSAndroid Build Coastguard Worker ], 295*c8dee2aaSAndroid Build Coastguard Worker) 296*c8dee2aaSAndroid Build Coastguard Worker 297*c8dee2aaSAndroid Build Coastguard Workerskia_filegroup( 298*c8dee2aaSAndroid Build Coastguard Worker name = "buffet_png_srcs", 299*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 300*c8dee2aaSAndroid Build Coastguard Worker "SkPngCodec.cpp", 301*c8dee2aaSAndroid Build Coastguard Worker "SkPngCodec.h", 302*c8dee2aaSAndroid Build Coastguard Worker "SkPngCompositeChunkReader.cpp", 303*c8dee2aaSAndroid Build Coastguard Worker "SkPngCompositeChunkReader.h", 304*c8dee2aaSAndroid Build Coastguard Worker ], 305*c8dee2aaSAndroid Build Coastguard Worker) 306*c8dee2aaSAndroid Build Coastguard Worker 307*c8dee2aaSAndroid Build Coastguard Workerskia_filegroup( 308*c8dee2aaSAndroid Build Coastguard Worker name = "common_png_srcs", 309*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 310*c8dee2aaSAndroid Build Coastguard Worker "SkPngPriv.h", 311*c8dee2aaSAndroid Build Coastguard Worker ], 312*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//src/encode:__pkg__"], 313*c8dee2aaSAndroid Build Coastguard Worker) 314*c8dee2aaSAndroid Build Coastguard Worker 315*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library( 316*c8dee2aaSAndroid Build Coastguard Worker name = "png_decode", 317*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 318*c8dee2aaSAndroid Build Coastguard Worker ":buffet_png_srcs", 319*c8dee2aaSAndroid Build Coastguard Worker ":common_png_srcs", 320*c8dee2aaSAndroid Build Coastguard Worker ], 321*c8dee2aaSAndroid Build Coastguard Worker hdrs = [ 322*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:any_codec_hdrs", 323*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:png_public_hdrs", 324*c8dee2aaSAndroid Build Coastguard Worker ], 325*c8dee2aaSAndroid Build Coastguard Worker defines = ["SK_CODEC_DECODES_PNG"], 326*c8dee2aaSAndroid Build Coastguard Worker features = ["layering_check"], 327*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 328*c8dee2aaSAndroid Build Coastguard Worker deps = [ 329*c8dee2aaSAndroid Build Coastguard Worker ":any_decoder", 330*c8dee2aaSAndroid Build Coastguard Worker ":png_codec_base", 331*c8dee2aaSAndroid Build Coastguard Worker "//modules/skcms", 332*c8dee2aaSAndroid Build Coastguard Worker "//src/base", 333*c8dee2aaSAndroid Build Coastguard Worker "//src/core", 334*c8dee2aaSAndroid Build Coastguard Worker "//src/core:core_priv", 335*c8dee2aaSAndroid Build Coastguard Worker "@libpng", 336*c8dee2aaSAndroid Build Coastguard Worker ], 337*c8dee2aaSAndroid Build Coastguard Worker) 338*c8dee2aaSAndroid Build Coastguard Worker 339*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library( 340*c8dee2aaSAndroid Build Coastguard Worker name = "wbmp_decode", 341*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 342*c8dee2aaSAndroid Build Coastguard Worker "SkBmpBaseCodec.h", 343*c8dee2aaSAndroid Build Coastguard Worker "SkBmpCodec.h", 344*c8dee2aaSAndroid Build Coastguard Worker "SkBmpMaskCodec.h", 345*c8dee2aaSAndroid Build Coastguard Worker "SkBmpRLECodec.h", 346*c8dee2aaSAndroid Build Coastguard Worker "SkBmpStandardCodec.h", 347*c8dee2aaSAndroid Build Coastguard Worker "SkWbmpCodec.cpp", 348*c8dee2aaSAndroid Build Coastguard Worker "SkWbmpCodec.h", 349*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:bmp_public_hdrs", 350*c8dee2aaSAndroid Build Coastguard Worker ], 351*c8dee2aaSAndroid Build Coastguard Worker hdrs = [ 352*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:any_codec_hdrs", 353*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:wbmp_public_hdrs", 354*c8dee2aaSAndroid Build Coastguard Worker ], 355*c8dee2aaSAndroid Build Coastguard Worker defines = ["SK_CODEC_DECODES_WBMP"], 356*c8dee2aaSAndroid Build Coastguard Worker features = ["layering_check"], 357*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 358*c8dee2aaSAndroid Build Coastguard Worker deps = [ 359*c8dee2aaSAndroid Build Coastguard Worker ":any_decoder", 360*c8dee2aaSAndroid Build Coastguard Worker ":bmp_decode", # Avoid ODR violations by not duplicating .cpp files 361*c8dee2aaSAndroid Build Coastguard Worker "//modules/skcms", 362*c8dee2aaSAndroid Build Coastguard Worker "//src/base", 363*c8dee2aaSAndroid Build Coastguard Worker "//src/core", 364*c8dee2aaSAndroid Build Coastguard Worker "//src/core:core_priv", 365*c8dee2aaSAndroid Build Coastguard Worker ], 366*c8dee2aaSAndroid Build Coastguard Worker) 367*c8dee2aaSAndroid Build Coastguard Worker 368*c8dee2aaSAndroid Build Coastguard Workerskia_cc_library( 369*c8dee2aaSAndroid Build Coastguard Worker name = "webp_decode", 370*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 371*c8dee2aaSAndroid Build Coastguard Worker "SkWebpCodec.cpp", 372*c8dee2aaSAndroid Build Coastguard Worker "SkWebpCodec.h", 373*c8dee2aaSAndroid Build Coastguard Worker ], 374*c8dee2aaSAndroid Build Coastguard Worker hdrs = [ 375*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:any_codec_hdrs", 376*c8dee2aaSAndroid Build Coastguard Worker "//include/codec:webp_public_hdrs", 377*c8dee2aaSAndroid Build Coastguard Worker ], 378*c8dee2aaSAndroid Build Coastguard Worker defines = ["SK_CODEC_DECODES_WEBP"], 379*c8dee2aaSAndroid Build Coastguard Worker features = ["layering_check"], 380*c8dee2aaSAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 381*c8dee2aaSAndroid Build Coastguard Worker deps = [ 382*c8dee2aaSAndroid Build Coastguard Worker ":any_decoder", 383*c8dee2aaSAndroid Build Coastguard Worker "//modules/skcms", 384*c8dee2aaSAndroid Build Coastguard Worker "//src/base", 385*c8dee2aaSAndroid Build Coastguard Worker "//src/core", 386*c8dee2aaSAndroid Build Coastguard Worker "//src/core:core_priv", 387*c8dee2aaSAndroid Build Coastguard Worker "@libwebp", 388*c8dee2aaSAndroid Build Coastguard Worker ], 389*c8dee2aaSAndroid Build Coastguard Worker) 390*c8dee2aaSAndroid Build Coastguard Worker 391*c8dee2aaSAndroid Build Coastguard Workergenerate_cpp_files_for_headers( 392*c8dee2aaSAndroid Build Coastguard Worker name = "headers_to_compile", 393*c8dee2aaSAndroid Build Coastguard Worker headers = [ 394*c8dee2aaSAndroid Build Coastguard Worker "SkPixmapUtilsPriv.h", 395*c8dee2aaSAndroid Build Coastguard Worker "SkScalingCodec.h", 396*c8dee2aaSAndroid Build Coastguard Worker ], 397*c8dee2aaSAndroid Build Coastguard Worker) 398*c8dee2aaSAndroid Build Coastguard Worker 399*c8dee2aaSAndroid Build Coastguard Worker# The following are not yet incorporated into the Bazel build 400*c8dee2aaSAndroid Build Coastguard Workerskia_filegroup( 401*c8dee2aaSAndroid Build Coastguard Worker name = "xmp_srcs", 402*c8dee2aaSAndroid Build Coastguard Worker srcs = [ 403*c8dee2aaSAndroid Build Coastguard Worker "SkXmp.cpp", 404*c8dee2aaSAndroid Build Coastguard Worker ], 405*c8dee2aaSAndroid Build Coastguard Worker) 406*c8dee2aaSAndroid Build Coastguard Worker 407*c8dee2aaSAndroid Build Coastguard Workersplit_srcs_and_hdrs( 408*c8dee2aaSAndroid Build Coastguard Worker name = "jpeg_xmp", 409*c8dee2aaSAndroid Build Coastguard Worker files = [ 410*c8dee2aaSAndroid Build Coastguard Worker "SkJpegXmp.cpp", 411*c8dee2aaSAndroid Build Coastguard Worker "SkJpegXmp.h", 412*c8dee2aaSAndroid Build Coastguard Worker ], 413*c8dee2aaSAndroid Build Coastguard Worker) 414