summaryrefslogtreecommitdiffstats
path: root/media/ffvpx/libavcodec/moz.build
blob: e85f5edaa72678ef82d9531d7d1b388e778b859a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
# -*- 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/.

# Due to duplicate file names, we compile libavutil/x86 in its own
# moz.build file.
if CONFIG['FFVPX_ASFLAGS']:
    if CONFIG['CPU_ARCH'] == 'x86' or CONFIG['CPU_ARCH'] == 'x86_64':
        DIRS += ['x86']
    elif CONFIG['CPU_ARCH'] == 'aarch64':
        DIRS += ['aarch64']
    elif CONFIG['CPU_ARCH'] == 'arm':
        DIRS += ['arm']

SharedLibrary('mozavcodec')
SOURCES += [
    'allcodecs.c',
    'avdct.c',
    'avpacket.c',
    'bitstream.c',
    'bitstream_filters.c',
    'bsf.c',
    'codec_desc.c',
    'dct.c',
    'dct32_fixed.c',
    'dct32_float.c',
    'decode.c',
    'faandct.c',
    'faanidct.c',
    'fdctdsp.c',
    'fft_fixed.c',
    'fft_fixed_32.c',
    'fft_float.c',
    'fft_init_table.c',
    'flac.c',
    'flacdata.c',
    'flacdec.c',
    'flacdsp.c',
    'idctdsp.c',
    'jfdctfst.c',
    'jfdctint.c',
    'jrevdct.c',
    'log2_tab.c',
    'mpegaudio.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',
    'parsers.c',
    'pthread.c',
    'pthread_frame.c',
    'pthread_slice.c',
    'rdft.c',
    'reverse.c',
    'simple_idct.c',
    'utils.c',
    'vorbis_parser.c',
    'xiph.c'
]

if not CONFIG['MOZ_FFVPX_AUDIOONLY']:
    SOURCES += [
        'avpicture.c',
        'bitstream_filter.c',
        'golomb.c',
        'h264pred.c',
        'imgconvert.c',
        'mathtables.c',
        'profiles.c',
        'qsv_api.c',
        'raw.c',
        'videodsp.c',
        'vp56rac.c',
        'vp8.c',
        'vp8_parser.c',
        'vp8dsp.c',
        'vp9.c',
        'vp9_parser.c',
        'vp9_superframe_split_bsf.c',
        'vp9block.c',
        'vp9data.c',
        'vp9dsp.c',
        'vp9dsp_10bpp.c',
        'vp9dsp_12bpp.c',
        'vp9dsp_8bpp.c',
        'vp9lpf.c',
        'vp9mvs.c',
        'vp9prob.c',
        'vp9recon.c'
    ]
    if CONFIG['MOZ_WAYLAND']:
        SOURCES += [
            'vaapi_decode.c',
            'vaapi_vp8.c',
            'vaapi_vp9.c',
        ]
        USE_LIBS += ['mozva']

if CONFIG['MOZ_LIBAV_FFT']:
    SOURCES += [
        'avfft.c',
    ]

SYMBOLS_FILE = 'avcodec.symbols'
NoVisibilityFlags()

USE_LIBS += [
     'mozavutil'
]

if CONFIG['OS_TARGET'] != 'WINNT':
    OS_LIBS += ['m']

include("../ffvpxcommon.mozbuild")