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##
10
11
12VP8_CX_EXPORTS += exports_enc
13
14VP8_CX_SRCS-yes += $(VP8_COMMON_SRCS-yes)
15VP8_CX_SRCS-no  += $(VP8_COMMON_SRCS-no)
16VP8_CX_SRCS_REMOVE-yes += $(VP8_COMMON_SRCS_REMOVE-yes)
17VP8_CX_SRCS_REMOVE-no  += $(VP8_COMMON_SRCS_REMOVE-no)
18
19VP8_CX_SRCS-yes += vp8cx.mk
20
21VP8_CX_SRCS-yes += vp8_cx_iface.c
22
23VP8_CX_SRCS-yes += encoder/defaultcoefcounts.h
24VP8_CX_SRCS-yes += encoder/bitstream.c
25VP8_CX_SRCS-yes += encoder/boolhuff.c
26VP8_CX_SRCS-yes += encoder/copy_c.c
27VP8_CX_SRCS-yes += encoder/dct.c
28VP8_CX_SRCS-yes += encoder/encodeframe.c
29VP8_CX_SRCS-yes += encoder/encodeframe.h
30VP8_CX_SRCS-yes += encoder/encodeintra.c
31VP8_CX_SRCS-yes += encoder/encodemb.c
32VP8_CX_SRCS-yes += encoder/encodemv.c
33VP8_CX_SRCS-$(CONFIG_MULTITHREAD) += encoder/ethreading.c
34VP8_CX_SRCS-$(CONFIG_MULTITHREAD) += encoder/ethreading.h
35VP8_CX_SRCS-yes += encoder/firstpass.c
36VP8_CX_SRCS-yes += encoder/block.h
37VP8_CX_SRCS-yes += encoder/boolhuff.h
38VP8_CX_SRCS-yes += encoder/bitstream.h
39VP8_CX_SRCS-$(CONFIG_TEMPORAL_DENOISING) += encoder/denoising.h
40VP8_CX_SRCS-$(CONFIG_TEMPORAL_DENOISING) += encoder/denoising.c
41VP8_CX_SRCS-yes += encoder/encodeintra.h
42VP8_CX_SRCS-yes += encoder/encodemb.h
43VP8_CX_SRCS-yes += encoder/encodemv.h
44VP8_CX_SRCS-yes += encoder/firstpass.h
45VP8_CX_SRCS-yes += encoder/lookahead.c
46VP8_CX_SRCS-yes += encoder/lookahead.h
47VP8_CX_SRCS-yes += encoder/mcomp.h
48VP8_CX_SRCS-yes += encoder/modecosts.h
49VP8_CX_SRCS-yes += encoder/onyx_int.h
50VP8_CX_SRCS-yes += encoder/pickinter.h
51VP8_CX_SRCS-yes += encoder/quantize.h
52VP8_CX_SRCS-yes += encoder/ratectrl.h
53VP8_CX_SRCS-yes += encoder/rdopt.h
54VP8_CX_SRCS-yes += encoder/tokenize.h
55VP8_CX_SRCS-yes += encoder/treewriter.h
56VP8_CX_SRCS-yes += encoder/mcomp.c
57VP8_CX_SRCS-yes += encoder/modecosts.c
58VP8_CX_SRCS-yes += encoder/onyx_if.c
59VP8_CX_SRCS-yes += encoder/pickinter.c
60VP8_CX_SRCS-yes += encoder/picklpf.c
61VP8_CX_SRCS-yes += encoder/picklpf.h
62VP8_CX_SRCS-yes += encoder/vp8_quantize.c
63VP8_CX_SRCS-yes += encoder/ratectrl.c
64VP8_CX_SRCS-yes += encoder/rdopt.c
65VP8_CX_SRCS-yes += encoder/segmentation.c
66VP8_CX_SRCS-yes += encoder/segmentation.h
67VP8_CX_SRCS-yes += common/vp8_skin_detection.c
68VP8_CX_SRCS-yes += common/vp8_skin_detection.h
69VP8_CX_SRCS-yes += encoder/tokenize.c
70VP8_CX_SRCS-yes += encoder/dct_value_cost.h
71VP8_CX_SRCS-yes += encoder/dct_value_tokens.h
72VP8_CX_SRCS-yes += encoder/treewriter.c
73VP8_CX_SRCS-$(CONFIG_INTERNAL_STATS) += common/postproc.h
74VP8_CX_SRCS-$(CONFIG_INTERNAL_STATS) += common/postproc.c
75VP8_CX_SRCS-yes += encoder/temporal_filter.c
76VP8_CX_SRCS-yes += encoder/temporal_filter.h
77VP8_CX_SRCS-$(CONFIG_MULTI_RES_ENCODING) += encoder/mr_dissim.c
78VP8_CX_SRCS-$(CONFIG_MULTI_RES_ENCODING) += encoder/mr_dissim.h
79
80ifeq ($(CONFIG_REALTIME_ONLY),yes)
81VP8_CX_SRCS_REMOVE-yes += encoder/firstpass.c
82VP8_CX_SRCS_REMOVE-yes += encoder/temporal_filter.c
83VP8_CX_SRCS_REMOVE-yes += encoder/temporal_filter.h
84endif
85
86VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/copy_sse2.asm
87VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/copy_sse3.asm
88VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/dct_sse2.asm
89VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/fwalsh_sse2.asm
90VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/vp8_quantize_sse2.c
91VP8_CX_SRCS-$(HAVE_SSSE3) += encoder/x86/vp8_quantize_ssse3.c
92VP8_CX_SRCS-$(HAVE_SSE4_1) += encoder/x86/quantize_sse4.c
93
94ifeq ($(CONFIG_TEMPORAL_DENOISING),yes)
95VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/denoising_sse2.c
96endif
97
98VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/block_error_sse2.asm
99VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/temporal_filter_apply_sse2.asm
100VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/vp8_enc_stubs_sse2.c
101
102ifeq ($(CONFIG_REALTIME_ONLY),yes)
103VP8_CX_SRCS_REMOVE-$(HAVE_SSE2) += encoder/x86/temporal_filter_apply_sse2.asm
104endif
105
106VP8_CX_SRCS-$(HAVE_NEON) += encoder/arm/neon/denoising_neon.c
107VP8_CX_SRCS-$(HAVE_NEON) += encoder/arm/neon/fastquantizeb_neon.c
108VP8_CX_SRCS-$(HAVE_NEON) += encoder/arm/neon/shortfdct_neon.c
109VP8_CX_SRCS-$(HAVE_NEON) += encoder/arm/neon/vp8_shortwalsh4x4_neon.c
110
111VP8_CX_SRCS-$(HAVE_MSA) += encoder/mips/msa/dct_msa.c
112VP8_CX_SRCS-$(HAVE_MSA) += encoder/mips/msa/encodeopt_msa.c
113VP8_CX_SRCS-$(HAVE_MSA) += encoder/mips/msa/quantize_msa.c
114VP8_CX_SRCS-$(HAVE_MSA) += encoder/mips/msa/temporal_filter_msa.c
115
116VP8_CX_SRCS-$(HAVE_MMI) += encoder/mips/mmi/vp8_quantize_mmi.c
117VP8_CX_SRCS-$(HAVE_MMI) += encoder/mips/mmi/dct_mmi.c
118
119ifeq ($(CONFIG_TEMPORAL_DENOISING),yes)
120VP8_CX_SRCS-$(HAVE_MSA) += encoder/mips/msa/denoising_msa.c
121endif
122
123ifeq ($(CONFIG_REALTIME_ONLY),yes)
124VP8_CX_SRCS_REMOVE-$(HAVE_MSA) += encoder/mips/msa/temporal_filter_msa.c
125endif
126
127VP8_CX_SRCS-yes := $(filter-out $(VP8_CX_SRCS_REMOVE-yes),$(VP8_CX_SRCS-yes))
128