cpp_sources = [ 'core/src/au_parser.cpp', 'core/src/bit_stream.cpp', 'core/src/cabac_decoder.cpp', 'core/src/deblocking.cpp', 'core/src/decode_mb_aux.cpp', 'core/src/decode_slice.cpp', 'core/src/decoder.cpp', 'core/src/decoder_core.cpp', 'core/src/decoder_data_tables.cpp', 'core/src/error_concealment.cpp', 'core/src/fmo.cpp', 'core/src/get_intra_predictor.cpp', 'core/src/manage_dec_ref.cpp', 'core/src/memmgr_nal_unit.cpp', 'core/src/mv_pred.cpp', 'core/src/parse_mb_syn_cabac.cpp', 'core/src/parse_mb_syn_cavlc.cpp', 'core/src/pic_queue.cpp', 'core/src/rec_mb.cpp', 'plus/src/welsDecoderExt.cpp', 'core/src/wels_decoder_thread.cpp', ] objs_asm = [] if cpu_family in ['x86', 'x86_64'] asm_sources = [ 'core/x86/dct.asm', 'core/x86/intra_pred.asm', ] objs_asm = asm_gen.process(asm_sources) elif cpu_family == 'arm' asm_sources = [ 'core/arm/block_add_neon.S', 'core/arm/intra_pred_neon.S', ] if use_asm_gen objs_asm = asm_gen.process(asm_sources) else cpp_sources += asm_sources endif elif cpu_family == 'aarch64' asm_sources = [ 'core/arm64/block_add_aarch64_neon.S', 'core/arm64/intra_pred_aarch64_neon.S', ] if use_asm_gen objs_asm = asm_gen.process(asm_sources) else cpp_sources += asm_sources endif elif cpu_family in ['loongarch32', 'loongarch64'] asm_sources = [ 'core/loongarch/mb_aux_lsx.c', ] cpp_sources += asm_sources else error('Unsupported cpu family @0@'.format(cpu_family)) endif libdecoder = static_library('decoder', cpp_sources, objs_asm, include_directories: [inc, decoder_inc, casm_inc], dependencies: deps)