diff options
Diffstat (limited to 'media/libjxl')
-rw-r--r-- | media/libjxl/include/jxl/jxl_export.h | 14 | ||||
-rw-r--r-- | media/libjxl/include/jxl/jxl_threads_export.h | 12 | ||||
-rw-r--r-- | media/libjxl/include/jxl/version.h | 14 | ||||
-rw-r--r-- | media/libjxl/moz.build | 133 | ||||
-rw-r--r-- | media/libjxl/moz.yaml | 38 |
5 files changed, 211 insertions, 0 deletions
diff --git a/media/libjxl/include/jxl/jxl_export.h b/media/libjxl/include/jxl/jxl_export.h new file mode 100644 index 0000000000..6745cf1891 --- /dev/null +++ b/media/libjxl/include/jxl/jxl_export.h @@ -0,0 +1,14 @@ +/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* vim: set ts=8 sts=2 et sw=2 tw=80: */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#ifndef JXL_EXPORT_H +#define JXL_EXPORT_H + +#define JXL_EXPORT + +#define JXL_DEPRECATED [[deprecated]] + +#endif /* JXL_EXPORT_H */ diff --git a/media/libjxl/include/jxl/jxl_threads_export.h b/media/libjxl/include/jxl/jxl_threads_export.h new file mode 100644 index 0000000000..b08aabe760 --- /dev/null +++ b/media/libjxl/include/jxl/jxl_threads_export.h @@ -0,0 +1,12 @@ +/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* vim: set ts=8 sts=2 et sw=2 tw=80: */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#ifndef JXL_THREADS_EXPORT_H +#define JXL_THREADS_EXPORT_H + +#define JXL_THREADS_EXPORT + +#endif /* JXL_THREADS_EXPORT_H */ diff --git a/media/libjxl/include/jxl/version.h b/media/libjxl/include/jxl/version.h new file mode 100644 index 0000000000..af90dea873 --- /dev/null +++ b/media/libjxl/include/jxl/version.h @@ -0,0 +1,14 @@ +/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* vim: set ts=8 sts=2 et sw=2 tw=80: */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#ifndef JXL_VERSION_H_ +#define JXL_VERSION_H_ + +#define JPEGXL_MAJOR_VERSION 0 +#define JPEGXL_MINOR_VERSION 0 +#define JPEGXL_PATCH_VERSION 0 + +#endif /* JXL_VERSION_H_ */ diff --git a/media/libjxl/moz.build b/media/libjxl/moz.build new file mode 100644 index 0000000000..d3dbec00f8 --- /dev/null +++ b/media/libjxl/moz.build @@ -0,0 +1,133 @@ +# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- +# vim: set filetype=python: +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +LOCAL_INCLUDES += [ + "./include/", + "/third_party/jpeg-xl/", + "/third_party/jpeg-xl/lib/include/", +] + +SOURCES += [ + "/third_party/jpeg-xl/lib/jxl/ac_strategy.cc", + "/third_party/jpeg-xl/lib/jxl/alpha.cc", + "/third_party/jpeg-xl/lib/jxl/ans_common.cc", + "/third_party/jpeg-xl/lib/jxl/base/cache_aligned.cc", + "/third_party/jpeg-xl/lib/jxl/base/data_parallel.cc", + "/third_party/jpeg-xl/lib/jxl/base/padded_bytes.cc", + "/third_party/jpeg-xl/lib/jxl/base/profiler.cc", + "/third_party/jpeg-xl/lib/jxl/base/random.cc", + "/third_party/jpeg-xl/lib/jxl/blending.cc", + "/third_party/jpeg-xl/lib/jxl/chroma_from_luma.cc", + "/third_party/jpeg-xl/lib/jxl/coeff_order.cc", + "/third_party/jpeg-xl/lib/jxl/color_encoding_internal.cc", + "/third_party/jpeg-xl/lib/jxl/color_management.cc", + "/third_party/jpeg-xl/lib/jxl/compressed_dc.cc", + "/third_party/jpeg-xl/lib/jxl/convolve_separable5.cc", + "/third_party/jpeg-xl/lib/jxl/convolve_separable7.cc", + "/third_party/jpeg-xl/lib/jxl/convolve_slow.cc", + "/third_party/jpeg-xl/lib/jxl/convolve_symmetric3.cc", + "/third_party/jpeg-xl/lib/jxl/convolve_symmetric5.cc", + "/third_party/jpeg-xl/lib/jxl/dct_scales.cc", + "/third_party/jpeg-xl/lib/jxl/dec_ans.cc", + "/third_party/jpeg-xl/lib/jxl/dec_cache.cc", + "/third_party/jpeg-xl/lib/jxl/dec_context_map.cc", + "/third_party/jpeg-xl/lib/jxl/dec_external_image.cc", + "/third_party/jpeg-xl/lib/jxl/dec_frame.cc", + "/third_party/jpeg-xl/lib/jxl/dec_group.cc", + "/third_party/jpeg-xl/lib/jxl/dec_group_border.cc", + "/third_party/jpeg-xl/lib/jxl/dec_huffman.cc", + "/third_party/jpeg-xl/lib/jxl/dec_modular.cc", + "/third_party/jpeg-xl/lib/jxl/dec_noise.cc", + "/third_party/jpeg-xl/lib/jxl/dec_patch_dictionary.cc", + "/third_party/jpeg-xl/lib/jxl/dec_xyb.cc", + "/third_party/jpeg-xl/lib/jxl/decode.cc", + "/third_party/jpeg-xl/lib/jxl/entropy_coder.cc", + "/third_party/jpeg-xl/lib/jxl/epf.cc", + "/third_party/jpeg-xl/lib/jxl/fast_dct.cc", + "/third_party/jpeg-xl/lib/jxl/fields.cc", + "/third_party/jpeg-xl/lib/jxl/frame_header.cc", + "/third_party/jpeg-xl/lib/jxl/gauss_blur.cc", + "/third_party/jpeg-xl/lib/jxl/headers.cc", + "/third_party/jpeg-xl/lib/jxl/huffman_table.cc", + "/third_party/jpeg-xl/lib/jxl/icc_codec.cc", + "/third_party/jpeg-xl/lib/jxl/icc_codec_common.cc", + "/third_party/jpeg-xl/lib/jxl/image.cc", + "/third_party/jpeg-xl/lib/jxl/image_bundle.cc", + "/third_party/jpeg-xl/lib/jxl/image_metadata.cc", + "/third_party/jpeg-xl/lib/jxl/loop_filter.cc", + "/third_party/jpeg-xl/lib/jxl/luminance.cc", + "/third_party/jpeg-xl/lib/jxl/memory_manager_internal.cc", + "/third_party/jpeg-xl/lib/jxl/modular/encoding/dec_ma.cc", + "/third_party/jpeg-xl/lib/jxl/modular/encoding/encoding.cc", + "/third_party/jpeg-xl/lib/jxl/modular/modular_image.cc", + "/third_party/jpeg-xl/lib/jxl/modular/transform/palette.cc", + "/third_party/jpeg-xl/lib/jxl/modular/transform/rct.cc", + "/third_party/jpeg-xl/lib/jxl/modular/transform/squeeze.cc", + "/third_party/jpeg-xl/lib/jxl/modular/transform/transform.cc", + "/third_party/jpeg-xl/lib/jxl/opsin_params.cc", + "/third_party/jpeg-xl/lib/jxl/passes_state.cc", + "/third_party/jpeg-xl/lib/jxl/quant_weights.cc", + "/third_party/jpeg-xl/lib/jxl/quantizer.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/low_memory_render_pipeline.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/render_pipeline.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/simple_render_pipeline.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_blending.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_chroma_upsampling.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_epf.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_from_linear.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_gaborish.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_noise.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_patches.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_splines.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_spot.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_to_linear.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_tone_mapping.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_upsampling.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_write.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_xyb.cc", + "/third_party/jpeg-xl/lib/jxl/render_pipeline/stage_ycbcr.cc", + "/third_party/jpeg-xl/lib/jxl/splines.cc", + "/third_party/jpeg-xl/lib/jxl/toc.cc", +] + +SOURCES += [ + "/third_party/jpeg-xl/lib/threads/thread_parallel_runner.cc", + "/third_party/jpeg-xl/lib/threads/thread_parallel_runner_internal.cc", +] + +EXPORTS.jxl += [ + "./include/jxl/jxl_export.h", + "./include/jxl/jxl_threads_export.h", + "./include/jxl/version.h", + "/third_party/jpeg-xl/lib/include/jxl/butteraugli.h", + "/third_party/jpeg-xl/lib/include/jxl/butteraugli_cxx.h", + "/third_party/jpeg-xl/lib/include/jxl/cms_interface.h", + "/third_party/jpeg-xl/lib/include/jxl/codestream_header.h", + "/third_party/jpeg-xl/lib/include/jxl/color_encoding.h", + "/third_party/jpeg-xl/lib/include/jxl/decode.h", + "/third_party/jpeg-xl/lib/include/jxl/decode_cxx.h", + "/third_party/jpeg-xl/lib/include/jxl/encode.h", + "/third_party/jpeg-xl/lib/include/jxl/encode_cxx.h", + "/third_party/jpeg-xl/lib/include/jxl/memory_manager.h", + "/third_party/jpeg-xl/lib/include/jxl/parallel_runner.h", + "/third_party/jpeg-xl/lib/include/jxl/thread_parallel_runner.h", + "/third_party/jpeg-xl/lib/include/jxl/thread_parallel_runner_cxx.h", + "/third_party/jpeg-xl/lib/include/jxl/types.h", +] + +DEFINES["JPEGXL_ENABLE_BOXES"] = "0" +DEFINES["JPEGXL_ENABLE_TRANSCODE_JPEG"] = "0" + +FINAL_LIBRARY = "gkmedias" + +# We allow warnings for third-party code that can be updated from upstream. +AllowCompilerWarnings() + +# Clang 5.0 has a compiler bug that prevents build in c++17 +# See https://gitlab.com/wg1/jpeg-xl/-/issues/227 +# This should be okay since we are using the C API. +if CONFIG["CC_TYPE"] == "clang": + CXXFLAGS += ["-std=c++11"] diff --git a/media/libjxl/moz.yaml b/media/libjxl/moz.yaml new file mode 100644 index 0000000000..95700781be --- /dev/null +++ b/media/libjxl/moz.yaml @@ -0,0 +1,38 @@ +schema: 1 + +bugzilla: + product: Core + component: "Graphics: ImageLib" + +origin: + name: libjxl + description: JPEG XL image format reference implementation + + url: https://github.com/libjxl/libjxl + + release: 91760e31a40fb811867fbe9bda6ddf73c962389e (2023-05-16T11:48:39Z). + + revision: 91760e31a40fb811867fbe9bda6ddf73c962389e + + license: Apache-2.0 + + license-file: LICENSE + +updatebot: + maintainer-phab: saschanaz + maintainer-bz: krosylight@mozilla.com + tasks: + - type: vendoring + enabled: True + frequency: 3 weeks + +vendoring: + url: https://github.com/libjxl/libjxl + source-hosting: github + vendor-directory: third_party/jpeg-xl + + exclude: + - doc + - third_party/testdata + - tools + - lib/lib.gni # Symlink is not permitted in mozilla-central |