1LOCAL_PATH := $(call my-dir)
2include $(CLEAR_VARS)
3
4libhevc_source_dir := $(LOCAL_PATH)
5
6## Arch-common settings
7LOCAL_MODULE := libhevcdec
8#LOCAL_32_BIT_ONLY := true
9
10LOCAL_MODULE_CLASS := STATIC_LIBRARIES
11
12LOCAL_CFLAGS += -D_LIB -DMULTICORE -fPIC
13LOCAL_CFLAGS += -O3 -DANDROID
14
15LOCAL_C_INCLUDES := $(LOCAL_PATH)/decoder $(LOCAL_PATH)/common
16
17libhevcd_srcs_c   +=  common/ihevc_quant_tables.c
18libhevcd_srcs_c   +=  common/ihevc_inter_pred_filters.c
19libhevcd_srcs_c   +=  common/ihevc_weighted_pred.c
20libhevcd_srcs_c   +=  common/ihevc_padding.c
21libhevcd_srcs_c   +=  common/ihevc_deblk_edge_filter.c
22libhevcd_srcs_c   +=  common/ihevc_deblk_tables.c
23libhevcd_srcs_c   +=  common/ihevc_cabac_tables.c
24libhevcd_srcs_c   +=  common/ihevc_common_tables.c
25libhevcd_srcs_c   +=  common/ihevc_intra_pred_filters.c
26libhevcd_srcs_c   +=  common/ihevc_chroma_intra_pred_filters.c
27libhevcd_srcs_c   +=  common/ihevc_mem_fns.c
28libhevcd_srcs_c   +=  common/ihevc_sao.c
29libhevcd_srcs_c   +=  common/ihevc_trans_tables.c
30libhevcd_srcs_c   +=  common/ihevc_recon.c
31libhevcd_srcs_c   +=  common/ihevc_itrans.c
32libhevcd_srcs_c   +=  common/ihevc_itrans_recon.c
33libhevcd_srcs_c   +=  common/ihevc_iquant_recon.c
34libhevcd_srcs_c   +=  common/ihevc_iquant_itrans_recon.c
35libhevcd_srcs_c   +=  common/ihevc_itrans_recon_32x32.c
36libhevcd_srcs_c   +=  common/ihevc_itrans_recon_16x16.c
37libhevcd_srcs_c   +=  common/ihevc_itrans_recon_8x8.c
38libhevcd_srcs_c   +=  common/ihevc_chroma_itrans_recon.c
39libhevcd_srcs_c   +=  common/ihevc_chroma_iquant_recon.c
40libhevcd_srcs_c   +=  common/ihevc_chroma_iquant_itrans_recon.c
41libhevcd_srcs_c   +=  common/ihevc_chroma_recon.c
42libhevcd_srcs_c   +=  common/ihevc_chroma_itrans_recon_16x16.c
43libhevcd_srcs_c   +=  common/ihevc_chroma_itrans_recon_8x8.c
44libhevcd_srcs_c   +=  common/ihevc_buf_mgr.c
45libhevcd_srcs_c   +=  common/ihevc_disp_mgr.c
46libhevcd_srcs_c   +=  common/ihevc_dpb_mgr.c
47libhevcd_srcs_c   +=  common/ithread.c
48
49
50
51libhevcd_srcs_c   +=  decoder/ihevcd_version.c
52libhevcd_srcs_c   +=  decoder/ihevcd_api.c
53libhevcd_srcs_c   +=  decoder/ihevcd_decode.c
54libhevcd_srcs_c   +=  decoder/ihevcd_nal.c
55libhevcd_srcs_c   +=  decoder/ihevcd_bitstream.c
56libhevcd_srcs_c   +=  decoder/ihevcd_parse_headers.c
57libhevcd_srcs_c   +=  decoder/ihevcd_parse_slice_header.c
58libhevcd_srcs_c   +=  decoder/ihevcd_parse_slice.c
59libhevcd_srcs_c   +=  decoder/ihevcd_parse_residual.c
60libhevcd_srcs_c   +=  decoder/ihevcd_cabac.c
61libhevcd_srcs_c   +=  decoder/ihevcd_intra_pred_mode_prediction.c
62libhevcd_srcs_c   +=  decoder/ihevcd_process_slice.c
63libhevcd_srcs_c   +=  decoder/ihevcd_utils.c
64libhevcd_srcs_c   +=  decoder/ihevcd_job_queue.c
65libhevcd_srcs_c   +=  decoder/ihevcd_ref_list.c
66libhevcd_srcs_c   +=  decoder/ihevcd_get_mv.c
67libhevcd_srcs_c   +=  decoder/ihevcd_mv_pred.c
68libhevcd_srcs_c   +=  decoder/ihevcd_mv_merge.c
69libhevcd_srcs_c   +=  decoder/ihevcd_iquant_itrans_recon_ctb.c
70libhevcd_srcs_c   +=  decoder/ihevcd_itrans_recon_dc.c
71libhevcd_srcs_c   +=  decoder/ihevcd_common_tables.c
72libhevcd_srcs_c   +=  decoder/ihevcd_boundary_strength.c
73libhevcd_srcs_c   +=  decoder/ihevcd_deblk.c
74libhevcd_srcs_c   +=  decoder/ihevcd_inter_pred.c
75libhevcd_srcs_c   +=  decoder/ihevcd_sao.c
76libhevcd_srcs_c   +=  decoder/ihevcd_ilf_padding.c
77libhevcd_srcs_c   +=  decoder/ihevcd_fmt_conv.c
78
79LOCAL_SRC_FILES := $(libhevcd_srcs_c) $(libhevcd_srcs_asm)
80
81
82# Load the arch-specific settings
83include $(LOCAL_PATH)/decoder.arm.mk
84include $(LOCAL_PATH)/decoder.arm64.mk
85include $(LOCAL_PATH)/decoder.x86.mk
86include $(LOCAL_PATH)/decoder.x86_64.mk
87include $(LOCAL_PATH)/decoder.mips.mk
88include $(LOCAL_PATH)/decoder.mips64.mk
89
90include $(BUILD_STATIC_LIBRARY)
91