• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1load("//bazel:skia_rules.bzl", "generate_cpp_files_for_headers", "skia_cc_library", "skia_filegroup")
2
3package(
4    default_applicable_licenses = ["//:license"],
5)
6
7licenses(["notice"])
8
9# In separate skia_filegroups to export these as gni file lists
10skia_filegroup(
11    name = "jpeg_encode_srcs",
12    srcs = [
13        "SkJPEGWriteUtility.cpp",
14        "SkJpegEncoderImpl.cpp",
15    ],
16)
17
18skia_filegroup(
19    name = "jpeg_encode_hdrs",
20    srcs = [
21        "SkJPEGWriteUtility.h",
22        "SkJpegEncoderImpl.h",
23    ],
24)
25
26skia_filegroup(
27    name = "no_jpeg_encode_srcs",
28    srcs = ["SkJpegEncoder_none.cpp"],
29)
30
31skia_filegroup(
32    name = "png_encode_base_hdrs",
33    srcs = ["SkPngEncoderBase.h"],
34)
35
36skia_filegroup(
37    name = "png_encode_base_srcs",
38    srcs = ["SkPngEncoderBase.cpp"],
39)
40
41skia_filegroup(
42    name = "png_encode_hdrs",
43    srcs = ["SkPngEncoderImpl.h"],
44)
45
46skia_filegroup(
47    name = "png_encode_srcs",
48    srcs = ["SkPngEncoderImpl.cpp"],
49)
50
51skia_filegroup(
52    name = "no_png_encode_srcs",
53    srcs = ["SkPngEncoder_none.cpp"],
54)
55
56skia_filegroup(
57    name = "webp_encode_srcs",
58    srcs = ["SkWebpEncoderImpl.cpp"],
59)
60
61skia_filegroup(
62    name = "no_webp_encode_srcs",
63    srcs = ["SkWebpEncoder_none.cpp"],
64)
65
66skia_cc_library(
67    name = "icc_support",
68    srcs = [
69        "SkICC.cpp",
70    ],
71    hdrs = [
72        "SkICCPriv.h",
73        "//include/encode:icc_hdrs",
74    ],
75    features = ["layering_check"],
76    visibility = ["//src/pdf:__pkg__"],
77    deps = [
78        "//:core",
79        "//modules/skcms",
80        "//src/base",
81        "//src/core:core_priv",
82    ],
83)
84
85skia_cc_library(
86    name = "encoder_common",
87    srcs = [
88        "SkEncoder.cpp",
89    ],
90    hdrs = [
91        "SkImageEncoderFns.h",
92        "SkImageEncoderPriv.h",
93        "//include/encode:encode_hdrs",
94    ],
95    features = ["layering_check"],
96    visibility = ["//experimental/rust_png/encoder:__subpackages__"],
97    deps = [
98        ":icc_support",
99        "//:core",
100        "//modules/skcms",
101        "//src/base",
102        "//src/codec:any_decoder",
103        "//src/core:core_priv",
104    ],
105)
106
107skia_cc_library(
108    name = "icc_encode",
109    hdrs = [
110        "//include/encode:icc_hdrs",
111    ],
112    visibility = ["//:__subpackages__"],
113    deps = [
114        ":icc_support",
115    ],
116)
117
118skia_cc_library(
119    name = "png_encode_base",
120    srcs = [":png_encode_base_srcs"],
121    hdrs = [":png_encode_base_hdrs"],
122    features = ["layering_check"],
123    visibility = [
124        "//:__pkg__",
125        "//experimental/rust_png/encoder:__pkg__",
126    ],
127    deps = [
128        ":encoder_common",
129        "//:core",
130        "//src/base",
131        "//src/codec:any_decoder",
132    ],
133)
134
135skia_cc_library(
136    name = "png_encode",
137    srcs = [
138        ":png_encode_hdrs",
139        ":png_encode_srcs",
140        "//src/codec:common_libpng_srcs",
141    ],
142    hdrs = [
143        "//include/encode:encode_hdrs",
144        "//include/encode:png_hdrs",
145    ],
146    defines = [
147        "SK_CODEC_ENCODES_PNG",
148        "SK_CODEC_ENCODES_PNG_WITH_LIBPNG",
149    ],
150    features = ["layering_check"],
151    visibility = ["//:__pkg__"],
152    deps = [
153        ":encoder_common",
154        ":png_encode_base",
155        "//:core",
156        "//modules/skcms",
157        "//src/base",
158        "//src/codec:any_decoder",
159        "//src/core:core_priv",
160        "@libpng",
161    ],
162)
163
164skia_cc_library(
165    name = "jpeg_encode",
166    srcs = [
167        ":jpeg_encode_hdrs",
168        ":jpeg_encode_srcs",
169        "//src/codec:common_jpeg_srcs",
170    ],
171    hdrs = [
172        "//include/encode:encode_hdrs",
173        "//include/encode:jpeg_hdrs",
174    ],
175    defines = ["SK_CODEC_ENCODES_JPEG"],
176    features = ["layering_check"],
177    visibility = ["//:__pkg__"],
178    deps = [
179        ":encoder_common",
180        "//:core",
181        "//src/base",
182        "//src/core:core_priv",
183        "@libjpeg_turbo",
184    ],
185)
186
187skia_cc_library(
188    name = "webp_encode",
189    srcs = [
190        ":webp_encode_srcs",
191    ],
192    hdrs = [
193        "//include/encode:encode_hdrs",
194        "//include/encode:webp_hdrs",
195    ],
196    defines = ["SK_CODEC_ENCODES_WEBP"],
197    features = ["layering_check"],
198    visibility = ["//:__pkg__"],
199    deps = [
200        ":encoder_common",
201        "//:core",
202        "//src/base",
203        "//src/core:core_priv",
204        "@libwebp",
205    ],
206)
207
208generate_cpp_files_for_headers(
209    name = "headers_to_compile",
210    headers = [
211        "SkICCPriv.h",
212        "SkImageEncoderFns.h",
213        "SkImageEncoderPriv.h",
214    ],
215)
216