Merge "WIP: removing predictor buffer usage from decoder" into experimental
[aom.git] / vp8 / vp8cx.mk
blobca9f6a62e8727acf9765bc1a410b3cefe81767a0
1 ##
2 ## Copyright (c) 2010 The WebM project authors. All Rights Reserved.
3 ##
4 ## Use of this source code is governed by a BSD-style license
5 ## that can be found in the LICENSE file in the root of the source
6 ## tree. An additional intellectual property rights grant can be found
7 ## in the file PATENTS. All contributing project authors may
8 ## be found in the AUTHORS file in the root of the source tree.
9 ##
12 VP8_CX_EXPORTS += exports_enc
14 VP8_CX_SRCS-yes += $(VP8_COMMON_SRCS-yes)
15 VP8_CX_SRCS-no += $(VP8_COMMON_SRCS-no)
16 VP8_CX_SRCS_REMOVE-yes += $(VP8_COMMON_SRCS_REMOVE-yes)
17 VP8_CX_SRCS_REMOVE-no += $(VP8_COMMON_SRCS_REMOVE-no)
19 ifeq ($(ARCH_ARM),yes)
20 include $(SRC_PATH_BARE)/$(VP8_PREFIX)vp8cx_arm.mk
21 endif
23 VP8_CX_SRCS-yes += vp8cx.mk
25 VP8_CX_SRCS-yes += vp8_cx_iface.c
27 VP8_CX_SRCS-yes += encoder/defaultcoefcounts.h
28 VP8_CX_SRCS-yes += encoder/bitstream.c
29 VP8_CX_SRCS-yes += encoder/boolhuff.c
30 VP8_CX_SRCS-yes += encoder/dct.c
31 VP8_CX_SRCS-yes += encoder/encodeframe.c
32 VP8_CX_SRCS-yes += encoder/encodeframe.h
33 VP8_CX_SRCS-yes += encoder/encodeintra.c
34 VP8_CX_SRCS-yes += encoder/encodemb.c
35 VP8_CX_SRCS-yes += encoder/encodemv.c
36 VP8_CX_SRCS-$(CONFIG_MULTITHREAD) += encoder/ethreading.c
37 VP8_CX_SRCS-yes += encoder/firstpass.c
38 VP8_CX_SRCS-yes += encoder/block.h
39 VP8_CX_SRCS-yes += encoder/boolhuff.h
40 VP8_CX_SRCS-yes += encoder/bitstream.h
41 VP8_CX_SRCS-$(CONFIG_TEMPORAL_DENOISING) += encoder/denoising.h
42 VP8_CX_SRCS-$(CONFIG_TEMPORAL_DENOISING) += encoder/denoising.c
43 VP8_CX_SRCS-yes += encoder/encodeintra.h
44 VP8_CX_SRCS-yes += encoder/encodemb.h
45 VP8_CX_SRCS-yes += encoder/encodemv.h
46 VP8_CX_SRCS-yes += encoder/firstpass.h
47 VP8_CX_SRCS-yes += encoder/lookahead.c
48 VP8_CX_SRCS-yes += encoder/lookahead.h
49 VP8_CX_SRCS-yes += encoder/mcomp.h
50 VP8_CX_SRCS-yes += encoder/modecosts.h
51 VP8_CX_SRCS-yes += encoder/onyx_int.h
52 VP8_CX_SRCS-yes += encoder/pickinter.h
53 VP8_CX_SRCS-yes += encoder/psnr.h
54 VP8_CX_SRCS-yes += encoder/quantize.h
55 VP8_CX_SRCS-yes += encoder/ratectrl.h
56 VP8_CX_SRCS-yes += encoder/rdopt.h
57 VP8_CX_SRCS-yes += encoder/tokenize.h
58 VP8_CX_SRCS-yes += encoder/treewriter.h
59 VP8_CX_SRCS-yes += encoder/mcomp.c
60 VP8_CX_SRCS-yes += encoder/modecosts.c
61 VP8_CX_SRCS-yes += encoder/onyx_if.c
62 VP8_CX_SRCS-yes += encoder/pickinter.c
63 VP8_CX_SRCS-yes += encoder/picklpf.c
64 VP8_CX_SRCS-yes += encoder/psnr.c
65 VP8_CX_SRCS-yes += encoder/quantize.c
66 VP8_CX_SRCS-yes += encoder/ratectrl.c
67 VP8_CX_SRCS-yes += encoder/rdopt.c
68 VP8_CX_SRCS-yes += encoder/segmentation.c
69 VP8_CX_SRCS-yes += encoder/segmentation.h
70 VP8_CX_SRCS-$(CONFIG_INTERNAL_STATS) += encoder/ssim.c
71 VP8_CX_SRCS-yes += encoder/tokenize.c
72 VP8_CX_SRCS-yes += encoder/dct_value_cost.h
73 VP8_CX_SRCS-yes += encoder/dct_value_tokens.h
74 VP8_CX_SRCS-yes += encoder/treewriter.c
75 VP8_CX_SRCS-$(CONFIG_INTERNAL_STATS) += common/postproc.h
76 VP8_CX_SRCS-$(CONFIG_INTERNAL_STATS) += common/postproc.c
77 VP8_CX_SRCS-yes += encoder/temporal_filter.c
78 VP8_CX_SRCS-$(CONFIG_MULTI_RES_ENCODING) += encoder/mr_dissim.c
79 VP8_CX_SRCS-$(CONFIG_MULTI_RES_ENCODING) += encoder/mr_dissim.h
80 VP8_CX_SRCS-yes += encoder/vp8_asm_enc_offsets.c
82 ifeq ($(CONFIG_REALTIME_ONLY),yes)
83 VP8_CX_SRCS_REMOVE-yes += encoder/firstpass.c
84 VP8_CX_SRCS_REMOVE-yes += encoder/temporal_filter.c
85 endif
87 VP8_CX_SRCS-$(HAVE_MMX) += encoder/x86/dct_mmx.asm
88 VP8_CX_SRCS-$(HAVE_MMX) += encoder/x86/subtract_mmx.asm
89 VP8_CX_SRCS-$(HAVE_MMX) += encoder/x86/vp8_enc_stubs_mmx.c
90 VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/dct_sse2.asm
91 VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/fwalsh_sse2.asm
92 VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/quantize_sse2_intrinsics.c
94 # TODO(johann) make this generic
95 ifeq ($(HAVE_SSE2),yes)
96 vp8/encoder/x86/quantize_sse2_intrinsics.c.o: CFLAGS += -msse2
97 vp8/encoder/x86/quantize_sse2_intrinsics.c.d: CFLAGS += -msse2
98 endif
100 ifeq ($(CONFIG_TEMPORAL_DENOISING),yes)
101 VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/denoising_sse2.c
102 ifeq ($(HAVE_SSE2),yes)
103 vp8/encoder/x86/denoising_sse2.c.o: CFLAGS += -msse2
104 vp8/encoder/x86/denoising_sse2.c.d: CFLAGS += -msse2
105 endif
106 endif
108 VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/subtract_sse2.asm
109 VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/temporal_filter_apply_sse2.asm
110 VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/vp8_enc_stubs_sse2.c
111 VP8_CX_SRCS-$(HAVE_SSSE3) += encoder/x86/quantize_ssse3.asm
112 VP8_CX_SRCS-$(HAVE_SSE4_1) += encoder/x86/quantize_sse4.asm
113 VP8_CX_SRCS-$(ARCH_X86)$(ARCH_X86_64) += encoder/x86/quantize_mmx.asm
114 VP8_CX_SRCS-$(ARCH_X86)$(ARCH_X86_64) += encoder/x86/encodeopt.asm
115 VP8_CX_SRCS-$(ARCH_X86_64) += encoder/x86/ssim_opt.asm
117 ifeq ($(CONFIG_REALTIME_ONLY),yes)
118 VP8_CX_SRCS_REMOVE-$(HAVE_SSE2) += encoder/x86/temporal_filter_apply_sse2.asm
119 endif
121 VP8_CX_SRCS-yes := $(filter-out $(VP8_CX_SRCS_REMOVE-yes),$(VP8_CX_SRCS-yes))
123 $(eval $(call asm_offsets_template,\
124 vp8_asm_enc_offsets.asm, $(VP8_PREFIX)encoder/vp8_asm_enc_offsets.c))