xref: /aosp_15_r20/external/skia/bazel/external/libjxl/BUILD.bazel (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Worker# This file will be copied into //third_party/externals/libjxl via the new_local_repository
2*c8dee2aaSAndroid Build Coastguard Worker# rule in WORKSPACE.bazel, so all files should be relative to that path.
3*c8dee2aaSAndroid Build Coastguard Worker
4*c8dee2aaSAndroid Build Coastguard Worker# jxl_export.h appears to be a configuration file where clients can override what JXL_EXPORT
5*c8dee2aaSAndroid Build Coastguard Worker# and JXL_DEPRECATED are. Our GN rules defined these as empty macros. Instead of doing that,
6*c8dee2aaSAndroid Build Coastguard Worker# we just make a blank file here and define those empty macros in the cc_library rule.
7*c8dee2aaSAndroid Build Coastguard Workergenrule(
8*c8dee2aaSAndroid Build Coastguard Worker    name = "generate_jxl_export",
9*c8dee2aaSAndroid Build Coastguard Worker    outs = ["lib/include/jxl/jxl_export.h"],
10*c8dee2aaSAndroid Build Coastguard Worker    cmd = "echo '' > $@",
11*c8dee2aaSAndroid Build Coastguard Worker)
12*c8dee2aaSAndroid Build Coastguard Worker
13*c8dee2aaSAndroid Build Coastguard WorkerJPEG_XL_SRCS = [
14*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/ac_context.h",
15*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/ac_strategy.cc",
16*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/ac_strategy.h",
17*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/alpha.cc",
18*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/alpha.h",
19*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/ans_common.cc",
20*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/ans_common.h",
21*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/ans_params.h",
22*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/aux_out.cc",
23*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/aux_out.h",
24*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/aux_out_fwd.h",
25*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/arch_macros.h",
26*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/bits.h",
27*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/byte_order.h",
28*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/cache_aligned.cc",
29*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/cache_aligned.h",
30*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/compiler_specific.h",
31*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/data_parallel.cc",
32*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/data_parallel.h",
33*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/descriptive_statistics.cc",
34*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/descriptive_statistics.h",
35*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/file_io.h",
36*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/iaca.h",
37*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/os_macros.h",
38*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/override.h",
39*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/padded_bytes.cc",
40*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/padded_bytes.h",
41*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/profiler.h",
42*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/robust_statistics.h",
43*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/span.h",
44*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/status.cc",
45*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/status.h",
46*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/base/thread_pool_internal.h",
47*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/blending.cc",
48*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/blending.h",
49*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/chroma_from_luma.cc",
50*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/chroma_from_luma.h",
51*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/codec_in_out.h",
52*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/coeff_order.cc",
53*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/coeff_order.h",
54*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/coeff_order_fwd.h",
55*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/color_encoding_internal.cc",
56*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/color_encoding_internal.h",
57*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/color_management.cc",
58*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/color_management.h",
59*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/common.h",
60*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/compressed_dc.cc",
61*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/compressed_dc.h",
62*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/convolve-inl.h",
63*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/convolve.cc",
64*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/convolve.h",
65*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dct-inl.h",
66*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dct_block-inl.h",
67*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dct_for_test.h",
68*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dct_scales.cc",
69*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dct_scales.h",
70*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dct_util.h",
71*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_ans.cc",
72*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_ans.h",
73*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_bit_reader.h",
74*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_cache.cc",
75*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_cache.h",
76*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_context_map.cc",
77*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_context_map.h",
78*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_external_image.cc",
79*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_external_image.h",
80*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_file.h",
81*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_frame.cc",
82*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_frame.h",
83*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_group.cc",
84*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_group.h",
85*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_group_border.cc",
86*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_group_border.h",
87*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_huffman.cc",
88*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_huffman.h",
89*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_modular.cc",
90*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_modular.h",
91*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_noise.cc",
92*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_noise.h",
93*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_params.h",
94*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_patch_dictionary.cc",
95*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_patch_dictionary.h",
96*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_reconstruct.cc",
97*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_reconstruct.h",
98*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_render_pipeline.h",
99*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_transforms-inl.h",
100*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_transforms_testonly.h",
101*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_upsample.cc",
102*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_upsample.h",
103*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_xyb-inl.h",
104*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_xyb.cc",
105*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/dec_xyb.h",
106*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/decode.cc",
107*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/decode_to_jpeg.cc",
108*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/decode_to_jpeg.h",
109*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_ac_strategy.h",
110*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_adaptive_quantization.h",
111*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_ans.h",
112*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_ans_params.h",
113*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_ar_control_field.h",
114*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_bit_writer.cc",
115*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_bit_writer.h",
116*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_butteraugli_comparator.h",
117*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_butteraugli_pnorm.h",
118*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_cache.h",
119*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_chroma_from_luma.h",
120*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_cluster.h",
121*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_coeff_order.h",
122*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_color_management.h",
123*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_comparator.h",
124*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_context_map.h",
125*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_detect_dots.h",
126*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_dot_dictionary.h",
127*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_entropy_coder.h",
128*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_external_image.h",
129*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_file.h",
130*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_frame.h",
131*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_gamma_correct.h",
132*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_group.h",
133*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_heuristics.h",
134*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_huffman.h",
135*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_icc_codec.h",
136*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_image_bundle.h",
137*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_jxl_skcms.h",
138*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_modular.h",
139*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_noise.h",
140*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_params.h",
141*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_patch_dictionary.h",
142*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_photon_noise.h",
143*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_quant_weights.h",
144*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_splines.h",
145*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_toc.h",
146*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_transforms-inl.h",
147*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_transforms.h",
148*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/enc_xyb.h",
149*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/encode_internal.h",
150*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/entropy_coder.cc",
151*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/entropy_coder.h",
152*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/epf.cc",
153*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/epf.h",
154*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/fake_parallel_runner_testonly.h",
155*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/fast_math-inl.h",
156*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/field_encodings.h",
157*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/fields.cc",
158*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/fields.h",
159*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/filters.cc",
160*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/filters.h",
161*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/filters_internal.h",
162*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/frame_header.cc",
163*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/frame_header.h",
164*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/gaborish.h",
165*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/gauss_blur.cc",
166*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/gauss_blur.h",
167*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/headers.cc",
168*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/headers.h",
169*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/huffman_table.cc",
170*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/huffman_table.h",
171*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/huffman_tree.h",
172*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/icc_codec.cc",
173*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/icc_codec.h",
174*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/icc_codec_common.cc",
175*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/icc_codec_common.h",
176*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/image.cc",
177*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/image.h",
178*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/image_bundle.cc",
179*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/image_bundle.h",
180*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/image_metadata.cc",
181*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/image_metadata.h",
182*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/image_ops.h",
183*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/image_test_utils.h",
184*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/jpeg/dec_jpeg_data.cc",
185*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/jpeg/dec_jpeg_data.h",
186*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/jpeg/dec_jpeg_data_writer.cc",
187*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/jpeg/dec_jpeg_data_writer.h",
188*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/jpeg/jpeg_data.cc",
189*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/jpeg/jpeg_data.h",
190*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/jpeg/dec_jpeg_serialization_state.h",
191*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/jpeg/dec_jpeg_output_chunk.h",
192*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/jxl_inspection.h",
193*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/lehmer_code.h",
194*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/linalg.h",
195*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/loop_filter.cc",
196*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/loop_filter.h",
197*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/luminance.cc",
198*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/luminance.h",
199*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/memory_manager_internal.cc",
200*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/memory_manager_internal.h",
201*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/encoding/context_predict.h",
202*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/encoding/dec_ma.cc",
203*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/encoding/dec_ma.h",
204*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/encoding/encoding.cc",
205*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/encoding/encoding.h",
206*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/encoding/ma_common.h",
207*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/modular_image.cc",
208*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/modular_image.h",
209*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/options.h",
210*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/transform/palette.h",
211*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/transform/rct.h",
212*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/transform/squeeze.cc",
213*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/transform/squeeze.h",
214*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/transform/transform.cc",
215*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/modular/transform/transform.h",
216*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/noise.h",
217*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/noise_distributions.h",
218*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/opsin_params.cc",
219*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/opsin_params.h",
220*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/optimize.h",
221*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/passes_state.cc",
222*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/passes_state.h",
223*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/patch_dictionary_internal.h",
224*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/progressive_split.h",
225*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/quant_weights.cc",
226*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/quant_weights.h",
227*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/quantizer-inl.h",
228*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/quantizer.cc",
229*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/quantizer.h",
230*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/rational_polynomial-inl.h",
231*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/sanitizers.h",
232*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/splines.cc",
233*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/splines.h",
234*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/test_utils.h",
235*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/testdata.h",
236*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/toc.cc",
237*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/toc.h",
238*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/transfer_functions-inl.h",
239*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/transpose-inl.h",
240*c8dee2aaSAndroid Build Coastguard Worker    "lib/jxl/xorshift128plus-inl.h",
241*c8dee2aaSAndroid Build Coastguard Worker]
242*c8dee2aaSAndroid Build Coastguard Worker
243*c8dee2aaSAndroid Build Coastguard WorkerJPEG_XL_HDRS = [
244*c8dee2aaSAndroid Build Coastguard Worker    "lib/include/jxl/decode.h",
245*c8dee2aaSAndroid Build Coastguard Worker    "lib/include/jxl/decode_cxx.h",
246*c8dee2aaSAndroid Build Coastguard Worker    "lib/include/jxl/codestream_header.h",
247*c8dee2aaSAndroid Build Coastguard Worker    "lib/include/jxl/color_encoding.h",
248*c8dee2aaSAndroid Build Coastguard Worker    "lib/include/jxl/memory_manager.h",
249*c8dee2aaSAndroid Build Coastguard Worker    "lib/include/jxl/parallel_runner.h",
250*c8dee2aaSAndroid Build Coastguard Worker    "lib/include/jxl/types.h",
251*c8dee2aaSAndroid Build Coastguard Worker    "lib/include/jxl/jxl_export.h",
252*c8dee2aaSAndroid Build Coastguard Worker]
253*c8dee2aaSAndroid Build Coastguard Worker
254*c8dee2aaSAndroid Build Coastguard WorkerJPEG_XL_LOCAL_DEFINES = [
255*c8dee2aaSAndroid Build Coastguard Worker    # Does not really matter.
256*c8dee2aaSAndroid Build Coastguard Worker    "JPEGXL_MAJOR_VERSION=1",
257*c8dee2aaSAndroid Build Coastguard Worker    "JPEGXL_MINOR_VERSION=0",
258*c8dee2aaSAndroid Build Coastguard Worker    "JPEGXL_PATCH_VERSION=0",
259*c8dee2aaSAndroid Build Coastguard Worker    "JPEGXL_ENABLE_SKCMS=1",
260*c8dee2aaSAndroid Build Coastguard Worker]
261*c8dee2aaSAndroid Build Coastguard Worker
262*c8dee2aaSAndroid Build Coastguard WorkerJPEG_XL_PUBLIC_DEFINES = [
263*c8dee2aaSAndroid Build Coastguard Worker    # This impacts some of the header files, so it must be public
264*c8dee2aaSAndroid Build Coastguard Worker    "JPEGXL_ENABLE_TRANSCODE_JPEG=0",
265*c8dee2aaSAndroid Build Coastguard Worker    "JXL_DEPRECATED=",
266*c8dee2aaSAndroid Build Coastguard Worker    "JXL_EXPORT=",
267*c8dee2aaSAndroid Build Coastguard Worker]
268*c8dee2aaSAndroid Build Coastguard Worker
269*c8dee2aaSAndroid Build Coastguard Workercc_library(
270*c8dee2aaSAndroid Build Coastguard Worker    name = "libjxl",
271*c8dee2aaSAndroid Build Coastguard Worker    srcs = JPEG_XL_SRCS,
272*c8dee2aaSAndroid Build Coastguard Worker    hdrs = JPEG_XL_HDRS,
273*c8dee2aaSAndroid Build Coastguard Worker    copts = [
274*c8dee2aaSAndroid Build Coastguard Worker        # jxl includes highway with angle brackets, but highway does not have an "includes"
275*c8dee2aaSAndroid Build Coastguard Worker        # attribute. This makes Bazel add the include folders of the dependency using -iquote
276*c8dee2aaSAndroid Build Coastguard Worker        # and thus clang throws an error about that. It is easier to add an extra include
277*c8dee2aaSAndroid Build Coastguard Worker        # path than figuring out if we should upstream the change to libjxl and/or highway.
278*c8dee2aaSAndroid Build Coastguard Worker        "-isystem external/highway",
279*c8dee2aaSAndroid Build Coastguard Worker        "-Wno-unused-function",
280*c8dee2aaSAndroid Build Coastguard Worker    ],
281*c8dee2aaSAndroid Build Coastguard Worker    defines = JPEG_XL_PUBLIC_DEFINES,
282*c8dee2aaSAndroid Build Coastguard Worker    includes = ["lib/include"],  # We include jxl files from this folder
283*c8dee2aaSAndroid Build Coastguard Worker    local_defines = JPEG_XL_LOCAL_DEFINES,
284*c8dee2aaSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
285*c8dee2aaSAndroid Build Coastguard Worker    deps = [
286*c8dee2aaSAndroid Build Coastguard Worker        "@brotli//:brotlidec",
287*c8dee2aaSAndroid Build Coastguard Worker        "@highway//:hwy",
288*c8dee2aaSAndroid Build Coastguard Worker    ],
289*c8dee2aaSAndroid Build Coastguard Worker)
290