1cpp_sources = [ 2 'core/src/au_set.cpp', 3 'core/src/deblocking.cpp', 4 'core/src/decode_mb_aux.cpp', 5 'core/src/encode_mb_aux.cpp', 6 'core/src/encoder.cpp', 7 'core/src/encoder_data_tables.cpp', 8 'core/src/encoder_ext.cpp', 9 'core/src/get_intra_predictor.cpp', 10 'core/src/md.cpp', 11 'core/src/mv_pred.cpp', 12 'core/src/nal_encap.cpp', 13 'core/src/paraset_strategy.cpp', 14 'core/src/picture_handle.cpp', 15 'core/src/ratectl.cpp', 16 'core/src/ref_list_mgr_svc.cpp', 17 'core/src/sample.cpp', 18 'core/src/set_mb_syn_cabac.cpp', 19 'core/src/set_mb_syn_cavlc.cpp', 20 'core/src/slice_multi_threading.cpp', 21 'core/src/svc_base_layer_md.cpp', 22 'core/src/svc_enc_slice_segment.cpp', 23 'core/src/svc_encode_mb.cpp', 24 'core/src/svc_encode_slice.cpp', 25 'core/src/svc_mode_decision.cpp', 26 'core/src/svc_motion_estimate.cpp', 27 'core/src/svc_set_mb_syn_cabac.cpp', 28 'core/src/svc_set_mb_syn_cavlc.cpp', 29 'core/src/wels_preprocess.cpp', 30 'core/src/wels_task_base.cpp', 31 'core/src/wels_task_encoder.cpp', 32 'core/src/wels_task_management.cpp', 33 'plus/src/welsEncoderExt.cpp', 34] 35 36objs_asm = [] 37if cpu_family in ['x86', 'x86_64'] 38 asm_sources = [ 39 'core/x86/coeff.asm', 40 'core/x86/dct.asm', 41 'core/x86/intra_pred.asm', 42 'core/x86/matrix_transpose.asm', 43 'core/x86/memzero.asm', 44 'core/x86/quant.asm', 45 'core/x86/sample_sc.asm', 46 'core/x86/score.asm', 47 ] 48 objs_asm = asm_gen.process(asm_sources) 49elif cpu_family == 'arm' 50 asm_sources = [ 51 'core/arm/intra_pred_neon.S', 52 'core/arm/intra_pred_sad_3_opt_neon.S', 53 'core/arm/memory_neon.S', 54 'core/arm/pixel_neon.S', 55 'core/arm/reconstruct_neon.S', 56 'core/arm/svc_motion_estimation.S', 57 ] 58 if use_asm_gen 59 objs_asm = asm_gen.process(asm_sources) 60 else 61 cpp_sources += asm_sources 62 endif 63elif cpu_family == 'aarch64' 64 asm_sources = [ 65 'core/arm64/intra_pred_aarch64_neon.S', 66 'core/arm64/intra_pred_sad_3_opt_aarch64_neon.S', 67 'core/arm64/memory_aarch64_neon.S', 68 'core/arm64/pixel_aarch64_neon.S', 69 'core/arm64/reconstruct_aarch64_neon.S', 70 'core/arm64/svc_motion_estimation_aarch64_neon.S', 71 ] 72 if use_asm_gen 73 objs_asm = asm_gen.process(asm_sources) 74 else 75 cpp_sources += asm_sources 76 endif 77else 78 error('Unsupported cpu family @0@'.format(cpu_family)) 79endif 80 81libencoder = static_library('encoder', cpp_sources, objs_asm, 82 include_directories: [inc, processing_inc, encoder_inc, casm_inc], 83 dependencies: deps) 84