• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1cpp_sources = [
2  'core/src/au_parser.cpp',
3  'core/src/bit_stream.cpp',
4  'core/src/cabac_decoder.cpp',
5  'core/src/deblocking.cpp',
6  'core/src/decode_mb_aux.cpp',
7  'core/src/decode_slice.cpp',
8  'core/src/decoder.cpp',
9  'core/src/decoder_core.cpp',
10  'core/src/decoder_data_tables.cpp',
11  'core/src/error_concealment.cpp',
12  'core/src/fmo.cpp',
13  'core/src/get_intra_predictor.cpp',
14  'core/src/manage_dec_ref.cpp',
15  'core/src/memmgr_nal_unit.cpp',
16  'core/src/mv_pred.cpp',
17  'core/src/parse_mb_syn_cabac.cpp',
18  'core/src/parse_mb_syn_cavlc.cpp',
19  'core/src/pic_queue.cpp',
20  'core/src/rec_mb.cpp',
21  'plus/src/welsDecoderExt.cpp',
22  'core/src/wels_decoder_thread.cpp',
23]
24
25objs_asm = []
26if cpu_family in ['x86', 'x86_64']
27  asm_sources = [
28    'core/x86/dct.asm',
29    'core/x86/intra_pred.asm',
30  ]
31  objs_asm = asm_gen.process(asm_sources)
32elif cpu_family == 'arm'
33  asm_sources = [
34    'core/arm/block_add_neon.S',
35    'core/arm/intra_pred_neon.S',
36  ]
37  if use_asm_gen
38    objs_asm = asm_gen.process(asm_sources)
39  else
40    cpp_sources += asm_sources
41  endif
42elif cpu_family == 'aarch64'
43  asm_sources = [
44    'core/arm64/block_add_aarch64_neon.S',
45    'core/arm64/intra_pred_aarch64_neon.S',
46  ]
47  if use_asm_gen
48    objs_asm = asm_gen.process(asm_sources)
49  else
50    cpp_sources += asm_sources
51  endif
52elif cpu_family in ['loongarch32', 'loongarch64']
53  asm_sources = [
54    'core/loongarch/mb_aux_lsx.c',
55  ]
56  cpp_sources += asm_sources
57else
58  error('Unsupported cpu family @0@'.format(cpu_family))
59endif
60
61libdecoder = static_library('decoder', cpp_sources, objs_asm,
62  include_directories: [inc, decoder_inc, casm_inc],
63  dependencies: deps)
64