Bug 1764201 Part 2: Make Gecko_MediaFeatures_VideoDynamicRange check per-screen HDR...
[gecko.git] / media / libjxl / moz.build
blob11469995e74aea9cb7dd6b5e75156c534391a9b1
1 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
2 # vim: set filetype=python:
3 # This Source Code Form is subject to the terms of the Mozilla Public
4 # License, v. 2.0. If a copy of the MPL was not distributed with this
5 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
7 LOCAL_INCLUDES += [
8     "./include/",
9     "/third_party/jpeg-xl/",
10     "/third_party/jpeg-xl/lib/include/",
13 SOURCES += [
14     "/third_party/jpeg-xl/lib/jxl/ac_strategy.cc",
15     "/third_party/jpeg-xl/lib/jxl/alpha.cc",
16     "/third_party/jpeg-xl/lib/jxl/ans_common.cc",
17     "/third_party/jpeg-xl/lib/jxl/blending.cc",
18     "/third_party/jpeg-xl/lib/jxl/cache_aligned.cc",
19     "/third_party/jpeg-xl/lib/jxl/chroma_from_luma.cc",
20     "/third_party/jpeg-xl/lib/jxl/coeff_order.cc",
21     "/third_party/jpeg-xl/lib/jxl/color_encoding_internal.cc",
22     "/third_party/jpeg-xl/lib/jxl/compressed_dc.cc",
23     "/third_party/jpeg-xl/lib/jxl/convolve_separable5.cc",
24     "/third_party/jpeg-xl/lib/jxl/convolve_slow.cc",
25     "/third_party/jpeg-xl/lib/jxl/convolve_symmetric3.cc",
26     "/third_party/jpeg-xl/lib/jxl/convolve_symmetric5.cc",
27     "/third_party/jpeg-xl/lib/jxl/dct_scales.cc",
28     "/third_party/jpeg-xl/lib/jxl/dec_ans.cc",
29     "/third_party/jpeg-xl/lib/jxl/dec_cache.cc",
30     "/third_party/jpeg-xl/lib/jxl/dec_context_map.cc",
31     "/third_party/jpeg-xl/lib/jxl/dec_external_image.cc",
32     "/third_party/jpeg-xl/lib/jxl/dec_frame.cc",
33     "/third_party/jpeg-xl/lib/jxl/dec_group.cc",
34     "/third_party/jpeg-xl/lib/jxl/dec_group_border.cc",
35     "/third_party/jpeg-xl/lib/jxl/dec_huffman.cc",
36     "/third_party/jpeg-xl/lib/jxl/dec_modular.cc",
37     "/third_party/jpeg-xl/lib/jxl/dec_noise.cc",
38     "/third_party/jpeg-xl/lib/jxl/dec_patch_dictionary.cc",
39     "/third_party/jpeg-xl/lib/jxl/dec_xyb.cc",
40     "/third_party/jpeg-xl/lib/jxl/decode.cc",
41     "/third_party/jpeg-xl/lib/jxl/entropy_coder.cc",
42     "/third_party/jpeg-xl/lib/jxl/epf.cc",
43     "/third_party/jpeg-xl/lib/jxl/fields.cc",
44     "/third_party/jpeg-xl/lib/jxl/frame_header.cc",
45     "/third_party/jpeg-xl/lib/jxl/headers.cc",
46     "/third_party/jpeg-xl/lib/jxl/huffman_table.cc",
47     "/third_party/jpeg-xl/lib/jxl/icc_codec.cc",
48     "/third_party/jpeg-xl/lib/jxl/icc_codec_common.cc",
49     "/third_party/jpeg-xl/lib/jxl/image.cc",
50     "/third_party/jpeg-xl/lib/jxl/image_bundle.cc",
51     "/third_party/jpeg-xl/lib/jxl/image_metadata.cc",
52     "/third_party/jpeg-xl/lib/jxl/image_ops.cc",
53     "/third_party/jpeg-xl/lib/jxl/loop_filter.cc",
54     "/third_party/jpeg-xl/lib/jxl/luminance.cc",
55     "/third_party/jpeg-xl/lib/jxl/memory_manager_internal.cc",
56     "/third_party/jpeg-xl/lib/jxl/modular/encoding/dec_ma.cc",
57     "/third_party/jpeg-xl/lib/jxl/modular/encoding/encoding.cc",
58     "/third_party/jpeg-xl/lib/jxl/modular/modular_image.cc",
59     "/third_party/jpeg-xl/lib/jxl/modular/transform/palette.cc",
60     "/third_party/jpeg-xl/lib/jxl/modular/transform/rct.cc",
61     "/third_party/jpeg-xl/lib/jxl/modular/transform/squeeze.cc",
62     "/third_party/jpeg-xl/lib/jxl/modular/transform/transform.cc",
63     "/third_party/jpeg-xl/lib/jxl/opsin_params.cc",
64     "/third_party/jpeg-xl/lib/jxl/passes_state.cc",
65     "/third_party/jpeg-xl/lib/jxl/quant_weights.cc",
66     "/third_party/jpeg-xl/lib/jxl/quantizer.cc",
67     "/third_party/jpeg-xl/lib/jxl/render_pipeline/low_memory_render_pipeline.cc",
68     "/third_party/jpeg-xl/lib/jxl/render_pipeline/render_pipeline.cc",
69     "/third_party/jpeg-xl/lib/jxl/render_pipeline/simple_render_pipeline.cc",
70     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_blending.cc",
71     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_chroma_upsampling.cc",
72     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_cms.cc",
73     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_epf.cc",
74     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_from_linear.cc",
75     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_gaborish.cc",
76     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_noise.cc",
77     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_patches.cc",
78     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_splines.cc",
79     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_spot.cc",
80     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_to_linear.cc",
81     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_tone_mapping.cc",
82     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_upsampling.cc",
83     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_write.cc",
84     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_xyb.cc",
85     "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_ycbcr.cc",
86     "/third_party/jpeg-xl/lib/jxl/simd_util.cc",
87     "/third_party/jpeg-xl/lib/jxl/splines.cc",
88     "/third_party/jpeg-xl/lib/jxl/toc.cc",
91 SOURCES += [
92     "/third_party/jpeg-xl/lib/threads/thread_parallel_runner.cc",
93     "/third_party/jpeg-xl/lib/threads/thread_parallel_runner_internal.cc",
96 EXPORTS.jxl += [
97     "./include/jxl/jxl_export.h",
98     "./include/jxl/jxl_threads_export.h",
99     "./include/jxl/version.h",
100     "/third_party/jpeg-xl/lib/include/jxl/cms_interface.h",
101     "/third_party/jpeg-xl/lib/include/jxl/codestream_header.h",
102     "/third_party/jpeg-xl/lib/include/jxl/color_encoding.h",
103     "/third_party/jpeg-xl/lib/include/jxl/decode.h",
104     "/third_party/jpeg-xl/lib/include/jxl/decode_cxx.h",
105     "/third_party/jpeg-xl/lib/include/jxl/encode.h",
106     "/third_party/jpeg-xl/lib/include/jxl/encode_cxx.h",
107     "/third_party/jpeg-xl/lib/include/jxl/memory_manager.h",
108     "/third_party/jpeg-xl/lib/include/jxl/parallel_runner.h",
109     "/third_party/jpeg-xl/lib/include/jxl/thread_parallel_runner.h",
110     "/third_party/jpeg-xl/lib/include/jxl/thread_parallel_runner_cxx.h",
111     "/third_party/jpeg-xl/lib/include/jxl/types.h",
114 DEFINES["JPEGXL_ENABLE_BOXES"] = "0"
115 DEFINES["JPEGXL_ENABLE_TRANSCODE_JPEG"] = "0"
117 FINAL_LIBRARY = "gkmedias"
119 # We allow warnings for third-party code that can be updated from upstream.
120 AllowCompilerWarnings()
122 # Clang 5.0 has a compiler bug that prevents build in c++17
123 # See https://gitlab.com/wg1/jpeg-xl/-/issues/227
124 # This should be okay since we are using the C API.
125 if CONFIG["CC_TYPE"] == "clang":
126     CXXFLAGS += ["-std=c++11"]