Home | History | Annotate | Download | only in libvpx
      1 LOCAL_PATH := $(call my-dir)
      2 include $(CLEAR_VARS)
      3 
      4 LOCAL_SRC_FILES = \
      5     mkvparser/mkvparser.cpp \
      6     vpx/src/vpx_codec.c \
      7     vpx/src/vpx_decoder.c \
      8     vpx/src/vpx_image.c \
      9     vpx_mem/vpx_mem.c \
     10     vpx_scale/generic/vpxscale.c \
     11     vpx_scale/generic/yv12config.c \
     12     vpx_scale/generic/yv12extend.c \
     13     vpx_scale/generic/gen_scalers.c \
     14     vpx_scale/generic/scalesystemdependent.c \
     15     vp8/common/alloccommon.c \
     16     vp8/common/arm/arm_systemdependent.c \
     17     vp8/common/arm/reconintra_arm.c \
     18     vp8/common/blockd.c \
     19     vp8/common/debugmodes.c \
     20     vp8/common/entropy.c \
     21     vp8/common/entropymode.c \
     22     vp8/common/entropymv.c \
     23     vp8/common/extend.c \
     24     vp8/common/filter.c \
     25     vp8/common/findnearmv.c \
     26     vp8/common/generic/systemdependent.c \
     27     vp8/common/idctllm.c \
     28     vp8/common/invtrans.c \
     29     vp8/common/loopfilter.c \
     30     vp8/common/loopfilter_filters.c \
     31     vp8/common/mbpitch.c \
     32     vp8/common/modecont.c \
     33     vp8/common/modecontext.c \
     34     vp8/common/quant_common.c \
     35     vp8/common/recon.c \
     36     vp8/common/reconinter.c \
     37     vp8/common/reconintra.c \
     38     vp8/common/reconintra4x4.c \
     39     vp8/common/setupintrarecon.c \
     40     vp8/common/swapyv12buffer.c \
     41     vp8/common/textblit.c \
     42     vp8/common/treecoder.c \
     43     vp8/common/postproc.c \
     44     vp8/vp8_cx_iface.c \
     45     vp8/vp8_dx_iface.c \
     46     vp8/decoder/arm/arm_dsystemdependent.c \
     47     vp8/decoder/dboolhuff.c \
     48     vp8/decoder/decodemv.c \
     49     vp8/decoder/decodframe.c \
     50     vp8/decoder/dequantize.c \
     51     vp8/decoder/detokenize.c \
     52     vp8/decoder/generic/dsystemdependent.c \
     53     vp8/decoder/onyxd_if.c \
     54     vp8/decoder/reconintra_mt.c \
     55     vp8/decoder/threading.c \
     56     vpx_config.c \
     57     vp8/decoder/arm/neon/idct_blk_neon.c
     58 
     59 LOCAL_CFLAGS := \
     60     -DHAVE_CONFIG_H=vpx_config.h
     61 
     62 LOCAL_MODULE := libvpx
     63 
     64 ifeq ($(TARGET_ARCH),mips)
     65     ifneq ($(ARCH_HAS_BIGENDIAN),true)
     66         ifeq ($(ARCH_MIPS_DSP_REV),2)
     67             LOCAL_SRC_FILES += \
     68                 vp8/common/mips/idct_mips.c \
     69                 vp8/common/mips/mips_systemdependent.c \
     70                 vp8/common/mips/subpixel_mips.c \
     71                 vp8/common/mips/loopfilter_filters_mips.c \
     72                 vp8/common/mips/loopfilter_mips.c \
     73                 vp8/common/mips/reconinter_mips.c \
     74                 vp8/decoder/mips/dequantize_mips.c \
     75                 vp8/decoder/mips/idct_blk_mips.c
     76 
     77                 LOCAL_CFLAGS += -DMIPS_DSP_REV=$(ARCH_MIPS_DSP_REV)
     78 
     79         else
     80             ifeq ($(ARCH_MIPS_DSP_REV),1)
     81                 LOCAL_SRC_FILES += \
     82                     vp8/common/mips/idct_mips.c \
     83                     vp8/common/mips/mips_systemdependent.c \
     84                     vp8/common/mips/reconinter_mips.c \
     85 
     86                     LOCAL_CFLAGS += -DMIPS_DSP_REV=$(ARCH_MIPS_DSP_REV)
     87 
     88             else
     89                     LOCAL_CFLAGS += -DMIPS_DSP_REV=0
     90             endif # mips_dsp_rev1
     91         endif # mips_dsp_rev2
     92 
     93     endif #bigendian
     94 endif #mips
     95 
     96 ifeq ($(TARGET_ARCH),arm)
     97 
     98 LOCAL_MODULE_CLASS := STATIC_LIBRARIES
     99 intermediates := $(call local-intermediates-dir)
    100 
    101 LOCAL_SRC_FILES += \
    102     vp8/common/arm/loopfilter_arm.c \
    103     vp8/decoder/arm/dequantize_arm.c \
    104 
    105 ifeq ($(ARCH_ARM_HAVE_NEON),true)
    106 
    107 LOCAL_CFLAGS += -D__ARM_HAVE_NEON
    108 
    109 ASM_FILES = \
    110     vp8/common/arm/neon/bilinearpredict16x16_neon.s \
    111     vp8/common/arm/neon/bilinearpredict4x4_neon.s \
    112     vp8/common/arm/neon/bilinearpredict8x4_neon.s \
    113     vp8/common/arm/neon/bilinearpredict8x8_neon.s \
    114     vp8/common/arm/neon/buildintrapredictorsmby_neon.s \
    115     vp8/common/arm/neon/copymem16x16_neon.s \
    116     vp8/common/arm/neon/copymem8x4_neon.s \
    117     vp8/common/arm/neon/copymem8x8_neon.s \
    118     vp8/common/arm/neon/iwalsh_neon.s \
    119     vp8/common/arm/neon/loopfiltersimplehorizontaledge_neon.s \
    120     vp8/common/arm/neon/loopfiltersimpleverticaledge_neon.s \
    121     vp8/common/arm/neon/recon16x16mb_neon.s \
    122     vp8/common/arm/neon/recon2b_neon.s \
    123     vp8/common/arm/neon/recon4b_neon.s \
    124     vp8/common/arm/neon/reconb_neon.s \
    125     vp8/common/arm/neon/save_neon_reg.s \
    126     vp8/common/arm/neon/shortidct4x4llm_1_neon.s \
    127     vp8/common/arm/neon/shortidct4x4llm_neon.s \
    128     vp8/common/arm/neon/sixtappredict16x16_neon.s \
    129     vp8/common/arm/neon/sixtappredict4x4_neon.s \
    130     vp8/common/arm/neon/sixtappredict8x4_neon.s \
    131     vp8/common/arm/neon/sixtappredict8x8_neon.s \
    132     vp8/common/arm/neon/dc_only_idct_add_neon.s \
    133     vp8/decoder/arm/neon/dequantizeb_neon.s \
    134     vp8/decoder/arm/neon/dequant_idct_neon.s \
    135     vp8/decoder/arm/neon/idct_dequant_0_2x_neon.s \
    136     vp8/decoder/arm/neon/idct_dequant_dc_0_2x_neon.s \
    137     vp8/decoder/arm/neon/idct_dequant_dc_full_2x_neon.s \
    138     vp8/decoder/arm/neon/idct_dequant_full_2x_neon.s \
    139     vp8/common/arm/neon/loopfilter_neon.s \
    140     vp8/common/arm/neon/mbloopfilter_neon.s \
    141 
    142 else ifeq ($(ARCH_ARM_HAVE_ARMV7A),true)
    143 
    144 # Really, we only need ARMV6 support but I could not find an environment
    145 # variable to query that...
    146 
    147 LOCAL_CFLAGS += -D__ARM_HAVE_ARMV6
    148 
    149 ASM_FILES = \
    150     vp8/common/arm/armv6/bilinearfilter_v6.s \
    151     vp8/common/arm/armv6/copymem8x4_v6.s \
    152     vp8/common/arm/armv6/copymem8x8_v6.s \
    153     vp8/common/arm/armv6/copymem16x16_v6.s \
    154     vp8/common/arm/armv6/dc_only_idct_add_v6.s \
    155     vp8/common/arm/armv6/filter_v6.s \
    156     vp8/common/arm/armv6/iwalsh_v6.s \
    157     vp8/common/arm/armv6/loopfilter_v6.s \
    158     vp8/common/arm/armv6/recon_v6.s \
    159     vp8/common/arm/armv6/simpleloopfilter_v6.s \
    160     vp8/common/arm/armv6/sixtappredict8x4_v6.s \
    161     vp8/decoder/arm/armv6/dequant_dc_idct_v6.s \
    162     vp8/decoder/arm/armv6/dequant_idct_v6.s \
    163     vp8/decoder/arm/armv6/dequantize_v6.s \
    164 
    165 LOCAL_SRC_FILES += \
    166     vp8/common/arm/bilinearfilter_arm.c \
    167     vp8/common/arm/filter_arm.c \
    168     vp8/decoder/arm/armv6/idct_blk_v6.c \
    169 
    170 else
    171 
    172 LOCAL_SRC_FILES += vp8/decoder/idct_blk.c
    173 
    174 endif
    175 
    176 # All the assembly sources must be converted from ADS to GAS compatible format
    177 VPX_GEN := $(addprefix $(intermediates)/, $(ASM_FILES))
    178 $(VPX_GEN) : PRIVATE_PATH := $(LOCAL_PATH)
    179 $(VPX_GEN) : PRIVATE_CUSTOM_TOOL = cat $< | perl external/libvpx/build/make/ads2gas.pl > $@
    180 $(VPX_GEN) : $(intermediates)/%.s : $(LOCAL_PATH)/%.asm
    181 	$(transform-generated-source)
    182 
    183 LOCAL_GENERATED_SOURCES += $(VPX_GEN)
    184 
    185 else # non-ARM
    186 
    187 LOCAL_SRC_FILES += vp8/decoder/idct_blk.c
    188 
    189 endif
    190 
    191 LOCAL_C_INCLUDES := \
    192     $(LOCAL_PATH)/vpx_ports \
    193     $(LOCAL_PATH)/vp8/common \
    194     $(LOCAL_PATH)/vp8/encoder \
    195     $(LOCAL_PATH)/vp8/decoder \
    196     $(LOCAL_PATH)/vp8 \
    197     $(LOCAL_PATH)/vpx_codec
    198 
    199 include $(BUILD_STATIC_LIBRARY)
    200