# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- # 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/. # Due to duplicate file names, we compile libavcodec/x86 in its own # moz.build file. if CONFIG['FFVPX_ASFLAGS']: DIRS += ['x86'] if CONFIG['CPU_ARCH'] == 'aarch64': DIRS += ['aarch64'] elif CONFIG['CPU_ARCH'].startswith('ppc'): DIRS += ['ppc'] elif CONFIG['CPU_ARCH'].startswith('loongarch64'): DIRS += ['loongarch'] SharedLibrary('mozavcodec') SOURCES += [ 'aac_ac3_parser.c', 'aac_parser.c', 'aacadtsdec.c', 'aacdec.c', 'aacps_float.c', 'aacpsdsp_float.c', 'aacsbr.c', 'aactab.c', 'allcodecs.c', 'audioconvert.c', 'avdct.c', 'avfft.c', 'avpacket.c', 'avpicture.c', 'bitstream.c', 'bitstream_filter.c', 'bitstream_filters.c', 'bsf.c', 'bswapdsp.c', 'cabac.c', 'cbrt_data.c', 'codec_desc.c', 'dct.c', 'dct32_fixed.c', 'dct32_float.c', 'decode.c', 'dirac.c', 'dummy_funcs.c', 'dv_profile.c', 'encode.c', 'error_resilience.c', 'faandct.c', 'faanidct.c', 'fdctdsp.c', 'fft_fixed.c', 'fft_fixed_32.c', 'fft_float.c', 'fft_init_table.c', 'flac.c', 'flac_parser.c', 'flacdata.c', 'flacdec.c', 'flacdsp.c', 'golomb.c', 'h2645_parse.c', 'h264_cabac.c', 'h264_cavlc.c', 'h264_direct.c', 'h264_loopfilter.c', 'h264_mb.c', 'h264_parse.c', 'h264_parser.c', 'h264_picture.c', 'h264_ps.c', 'h264_refs.c', 'h264_sei.c', 'h264_slice.c', 'h264chroma.c', 'h264data.c', 'h264dec.c', 'h264dsp.c', 'h264idct.c', 'h264pred.c', 'h264qpel.c', 'hevc_cabac.c', 'hevc_data.c', 'hevc_filter.c', 'hevc_mvs.c', 'hevc_parse.c', 'hevc_parser.c', 'hevc_ps.c', 'hevc_refs.c', 'hevc_sei.c', 'hevcdec.c', 'hevcdsp.c', 'hevcpred.c', 'idctdsp.c', 'imgconvert.c', 'jfdctfst.c', 'jfdctint.c', 'jrevdct.c', 'kbdwin.c', 'latm_parser.c', 'log2_tab.c', 'mathtables.c', 'mdct15.c', 'mdct_fixed.c', 'mdct_fixed_32.c', 'mdct_float.c', 'me_cmp.c', 'mediacodec.c', 'mjpegenc_huffman.c', 'mpeg12framerate.c', 'mpeg4audio.c', 'mpegaudio.c', 'mpegaudio_parser.c', 'mpegaudiodata.c', 'mpegaudiodec_fixed.c', 'mpegaudiodecheader.c', 'mpegaudiodsp.c', 'mpegaudiodsp_data.c', 'mpegaudiodsp_fixed.c', 'mpegaudiodsp_float.c', 'null_bsf.c', 'options.c', 'parser.c', 'pixblockdsp.c', 'profiles.c', 'pthread.c', 'pthread_frame.c', 'pthread_slice.c', 'qsv_api.c', 'raw.c', 'rdft.c', 'resample.c', 'resample2.c', 'reverse.c', 'sbrdsp.c', 'simple_idct.c', 'sinewin.c', 'sinewin_fixed.c', 'startcode.c', 'utils.c', 'videodsp.c', 'vorbis_data.c', 'vorbis_parser.c', 'vp56rac.c', 'vp8.c', 'vp8_parser.c', 'vp8dsp.c', 'vp9.c', 'vp9_parser.c', 'vp9block.c', 'vp9data.c', 'vp9dsp.c', 'vp9dsp_10bpp.c', 'vp9dsp_12bpp.c', 'vp9dsp_8bpp.c', 'vp9lpf.c', 'vp9mvs.c', 'vp9prob.c', 'vp9recon.c', 'xiph.c' ] SYMBOLS_FILE = 'avcodec.symbols' NO_VISIBILITY_FLAGS = True if CONFIG['GNU_CXX']: CXXFLAGS += ['-Wno-attributes'] # GCC 10 defaults -fno-common, we don't care to solve this "properly" yet # so use GCC < 10 behavior. if CONFIG['GNU_CC'] and CONFIG['CC_VERSION'] >= '10.0.0': CFLAGS += ['-fcommon'] USE_LIBS += [ 'mozavutil' ] include("../ffvpxcommon.mozbuild")