load(
    "//bazel:macros.bzl",
    "exports_files_legacy",
    "select_multi",
    "selects",
    "skia_cc_deps",
    "split_srcs_and_hdrs",
    "string_flag_with_values",
)

licenses(["notice"])

exports_files_legacy()

CORE_FILES = [
    "SkCodec.cpp",
    "SkCodecImageGenerator.cpp",
    "SkCodecImageGenerator.h",
    "SkCodecPriv.h",
    "SkColorTable.cpp",
    "SkColorTable.h",
    "SkFrameHolder.h",
    "SkMaskSwizzler.cpp",
    "SkMaskSwizzler.h",
    "SkMasks.cpp",
    "SkMasks.h",
    "SkSampler.cpp",
    "SkSampler.h",
    "SkSwizzler.cpp",
    "SkSwizzler.h",
]

split_srcs_and_hdrs(
    name = "core",
    files = CORE_FILES,
)

DECODE_ANDROID_FILES = [
    "SkAndroidCodec.cpp",
    "SkAndroidCodecAdapter.cpp",
    "SkAndroidCodecAdapter.h",
    "SkSampledCodec.cpp",
    "SkSampledCodec.h",
]

split_srcs_and_hdrs(
    name = "decode_android",
    files = DECODE_ANDROID_FILES,
)

DECODE_BMP_FILES = [
    "SkBmpBaseCodec.cpp",
    "SkBmpBaseCodec.h",
    "SkBmpCodec.cpp",
    "SkBmpCodec.h",
    "SkBmpMaskCodec.cpp",
    "SkBmpMaskCodec.h",
    "SkBmpRLECodec.cpp",
    "SkBmpRLECodec.h",
    "SkBmpStandardCodec.cpp",
    "SkBmpStandardCodec.h",
    "SkWbmpCodec.cpp",
    "SkWbmpCodec.h",
]

split_srcs_and_hdrs(
    name = "decode_bmp",
    files = DECODE_BMP_FILES,
)

DECODE_GIF_FILES = [
    "SkScalingCodec.h",
    "SkWuffsCodec.cpp",
    "SkWuffsCodec.h",
]

split_srcs_and_hdrs(
    name = "decode_gif",
    files = DECODE_GIF_FILES,
)

DECODE_JPEG_FILES = [
    "SkEncodedInfo.cpp",
    "SkJpegCodec.cpp",
    "SkJpegCodec.h",
    "SkJpegDecoderMgr.cpp",
    "SkJpegDecoderMgr.h",
    "SkJpegUtility.cpp",
    "SkJpegUtility.h",
    "SkParseEncodedOrigin.cpp",
    "SkParseEncodedOrigin.h",
]

split_srcs_and_hdrs(
    name = "decode_jpeg",
    files = DECODE_JPEG_FILES,
)

DECODE_PNG_FILES = [
    "SkEncodedInfo.cpp",
    "SkIcoCodec.cpp",
    "SkIcoCodec.h",
    "SkPngCodec.cpp",
    "SkPngCodec.h",
]

split_srcs_and_hdrs(
    name = "decode_png",
    files = DECODE_PNG_FILES,
)

DECODE_RAW_FILES = [
    "SkRawCodec.cpp",
    "SkRawCodec.h",
]

split_srcs_and_hdrs(
    name = "decode_raw",
    files = DECODE_RAW_FILES,
)

DECODE_WEBP_FILES = [
    "SkEncodedInfo.cpp",
    "SkParseEncodedOrigin.cpp",
    "SkParseEncodedOrigin.h",
    "SkScalingCodec.h",
    "SkWebpCodec.cpp",
    "SkWebpCodec.h",
]

split_srcs_and_hdrs(
    name = "decode_webp",
    files = DECODE_WEBP_FILES,
)

string_flag_with_values(
    flag_name = "include_decoder",
    multiple = True,
    values = [
        "gif_decode_codec",
        "jpeg_decode_codec",
        "png_decode_codec",
        "raw_decode_codec",
        "webp_decode_codec",
    ],
)

selects.config_setting_group(
    name = "needs_jpeg",
    match_any = [
        ":jpeg_decode_codec",
        ":raw_decode_codec",
    ],
)

selects.config_setting_group(
    name = "needs_jpeg_priv",
    match_any = [
        ":needs_jpeg",
        "//src/images:jpeg_encode_codec",
    ],
)

selects.config_setting_group(
    name = "needs_png_priv",
    match_any = [
        ":png_decode_codec",
        "//src/images:png_encode_codec",
    ],
)

filegroup(
    name = "srcs",
    srcs = [
        ":decode_android_srcs",
        ":decode_bmp_srcs",
        ":core_srcs",
    ] + select_multi(
        {
            ":gif_decode_codec": [":decode_gif_srcs"],
            ":needs_jpeg": [":decode_jpeg_srcs"],
            ":png_decode_codec": [":decode_png_srcs"],
            ":raw_decode_codec": [":decode_raw_srcs"],
            ":webp_decode_codec": [":decode_webp_srcs"],
        },
    ),
    visibility = ["//src:__pkg__"],
)

filegroup(
    name = "private_hdrs",
    srcs = [
        ":decode_android_hdrs",
        ":decode_bmp_hdrs",
        ":core_hdrs",
    ] + select({
        ":needs_jpeg_priv": ["SkJpegPriv.h"],  # used by src/images/SkJPEGWriteUtility
        "//conditions:default": [],
    }) + select({
        ":needs_png_priv": ["SkPngPriv.h"],  # used by src/images/SkPngEncoder
        "//conditions:default": [],
    }) + select_multi(
        {
            ":gif_decode_codec": [":decode_gif_hdrs"],
            ":needs_jpeg": [":decode_jpeg_hdrs"],
            ":png_decode_codec": [":decode_png_hdrs"],
            ":raw_decode_codec": [":decode_raw_hdrs"],
            ":webp_decode_codec": [":decode_webp_hdrs"],
        },
    ),
    visibility = ["//src:__pkg__"],
)

skia_cc_deps(
    name = "deps",
    visibility = ["//src:__pkg__"],
    deps = select_multi(
        {
            ":gif_decode_codec": ["@wuffs"],
            ":needs_jpeg": ["@libjpeg_turbo"],
            ":png_decode_codec": ["@libpng"],
            ":raw_decode_codec": [
                "@dng_sdk",
                "@piex",
            ],
            ":webp_decode_codec": ["@libwebp"],
        },
    ),
)
