blob: 28deaf276de25fb2924843d0ea0b0598c7e3ab92 [file] [log] [blame]
John Koleszar0ea50ce2010-05-18 11:58:33 -04001##
John Koleszarc2140b82010-09-09 08:16:39 -04002## Copyright (c) 2010 The WebM project authors. All Rights Reserved.
John Koleszar0ea50ce2010-05-18 11:58:33 -04003##
John Koleszar94c52e42010-06-18 12:39:21 -04004## Use of this source code is governed by a BSD-style license
John Koleszar09202d82010-06-04 16:19:40 -04005## 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
John Koleszar94c52e42010-06-18 12:39:21 -04007## in the file PATENTS. All contributing project authors may
John Koleszar09202d82010-06-04 16:19:40 -04008## be found in the AUTHORS file in the root of the source tree.
John Koleszar0ea50ce2010-05-18 11:58:33 -04009##
10
11
12include $(SRC_PATH_BARE)/$(VP8_PREFIX)vp8_common.mk
John Koleszar7aa97a32010-06-03 10:29:04 -040013
14VP8_CX_EXPORTS += exports_enc
15
John Koleszar0ea50ce2010-05-18 11:58:33 -040016VP8_CX_SRCS-yes += $(VP8_COMMON_SRCS-yes)
17VP8_CX_SRCS-no += $(VP8_COMMON_SRCS-no)
18VP8_CX_SRCS_REMOVE-yes += $(VP8_COMMON_SRCS_REMOVE-yes)
19VP8_CX_SRCS_REMOVE-no += $(VP8_COMMON_SRCS_REMOVE-no)
20
21ifeq ($(ARCH_ARM),yes)
22 include $(SRC_PATH_BARE)/$(VP8_PREFIX)vp8cx_arm.mk
23endif
24
John Koleszarb7492342010-05-24 11:39:59 -040025VP8_CX_SRCS-yes += vp8_cx_iface.c
John Koleszar0ea50ce2010-05-18 11:58:33 -040026
27# encoder
28#INCLUDES += algo/vpx_common/vpx_mem/include
29#INCLUDES += common
30#INCLUDES += common
31#INCLUDES += common
32#INCLUDES += algo/vpx_ref/cpu_id/include
33#INCLUDES += common
34#INCLUDES += encoder
35
Johann4be062b2011-03-24 18:12:21 -040036VP8_CX_SRCS-yes += encoder/asm_enc_offsets.c
Scott LaVarnway19987dc2011-08-16 16:21:21 -040037VP8_CX_SRCS-yes += encoder/defaultcoefcounts.h
John Koleszar0ea50ce2010-05-18 11:58:33 -040038VP8_CX_SRCS-yes += encoder/bitstream.c
39VP8_CX_SRCS-yes += encoder/boolhuff.c
40VP8_CX_SRCS-yes += encoder/dct.c
41VP8_CX_SRCS-yes += encoder/encodeframe.c
John Koleszar22f56b92012-05-04 09:46:57 -070042VP8_CX_SRCS-yes += encoder/encodeframe.h
John Koleszar0ea50ce2010-05-18 11:58:33 -040043VP8_CX_SRCS-yes += encoder/encodeintra.c
44VP8_CX_SRCS-yes += encoder/encodemb.c
45VP8_CX_SRCS-yes += encoder/encodemv.c
Gaute Strokkenes315e3c22011-02-05 05:29:25 +000046VP8_CX_SRCS-$(CONFIG_MULTITHREAD) += encoder/ethreading.c
John Koleszar0ea50ce2010-05-18 11:58:33 -040047VP8_CX_SRCS-yes += encoder/firstpass.c
John Koleszar0ea50ce2010-05-18 11:58:33 -040048VP8_CX_SRCS-yes += encoder/block.h
49VP8_CX_SRCS-yes += encoder/boolhuff.h
50VP8_CX_SRCS-yes += encoder/bitstream.h
Stefan Holmer9c411432012-03-06 10:48:18 +010051VP8_CX_SRCS-$(CONFIG_TEMPORAL_DENOISING) += encoder/denoising.h
52VP8_CX_SRCS-$(CONFIG_TEMPORAL_DENOISING) += encoder/denoising.c
John Koleszar0ea50ce2010-05-18 11:58:33 -040053VP8_CX_SRCS-yes += encoder/encodeintra.h
54VP8_CX_SRCS-yes += encoder/encodemb.h
55VP8_CX_SRCS-yes += encoder/encodemv.h
56VP8_CX_SRCS-yes += encoder/firstpass.h
John Koleszar88841f12011-04-13 14:00:18 -040057VP8_CX_SRCS-yes += encoder/lookahead.c
58VP8_CX_SRCS-yes += encoder/lookahead.h
John Koleszar0ea50ce2010-05-18 11:58:33 -040059VP8_CX_SRCS-yes += encoder/mcomp.h
60VP8_CX_SRCS-yes += encoder/modecosts.h
61VP8_CX_SRCS-yes += encoder/onyx_int.h
62VP8_CX_SRCS-yes += encoder/pickinter.h
63VP8_CX_SRCS-yes += encoder/psnr.h
64VP8_CX_SRCS-yes += encoder/quantize.h
65VP8_CX_SRCS-yes += encoder/ratectrl.h
66VP8_CX_SRCS-yes += encoder/rdopt.h
67VP8_CX_SRCS-yes += encoder/tokenize.h
68VP8_CX_SRCS-yes += encoder/treewriter.h
John Koleszar0ea50ce2010-05-18 11:58:33 -040069VP8_CX_SRCS-yes += encoder/mcomp.c
70VP8_CX_SRCS-yes += encoder/modecosts.c
71VP8_CX_SRCS-yes += encoder/onyx_if.c
72VP8_CX_SRCS-yes += encoder/pickinter.c
73VP8_CX_SRCS-yes += encoder/picklpf.c
74VP8_CX_SRCS-yes += encoder/psnr.c
75VP8_CX_SRCS-yes += encoder/quantize.c
76VP8_CX_SRCS-yes += encoder/ratectrl.c
77VP8_CX_SRCS-yes += encoder/rdopt.c
John Koleszar80d39232010-08-13 14:50:51 -040078VP8_CX_SRCS-yes += encoder/segmentation.c
79VP8_CX_SRCS-yes += encoder/segmentation.h
Yaowu Xu57ad1892011-04-29 09:37:59 -070080VP8_CX_SRCS-$(CONFIG_INTERNAL_STATS) += encoder/ssim.c
John Koleszar0ea50ce2010-05-18 11:58:33 -040081VP8_CX_SRCS-yes += encoder/tokenize.c
Attila Nagyb35a0db2012-04-16 14:47:40 +030082VP8_CX_SRCS-yes += encoder/dct_value_cost.h
83VP8_CX_SRCS-yes += encoder/dct_value_tokens.h
John Koleszar0ea50ce2010-05-18 11:58:33 -040084VP8_CX_SRCS-yes += encoder/treewriter.c
Yaowu Xu57ad1892011-04-29 09:37:59 -070085VP8_CX_SRCS-$(CONFIG_INTERNAL_STATS) += common/postproc.h
86VP8_CX_SRCS-$(CONFIG_INTERNAL_STATS) += common/postproc.c
Johanne81e30c2010-10-20 16:27:33 -040087VP8_CX_SRCS-yes += encoder/temporal_filter.c
Yunqing Wangaa7335e2011-10-25 15:14:16 -040088VP8_CX_SRCS-$(CONFIG_MULTI_RES_ENCODING) += encoder/mr_dissim.c
89VP8_CX_SRCS-$(CONFIG_MULTI_RES_ENCODING) += encoder/mr_dissim.h
John Koleszar0ea50ce2010-05-18 11:58:33 -040090
Jim Bankoski98514862012-05-08 07:29:19 -070091VP8_CX_SRCS-$(CONFIG_UNIT_TESTS) += encoder/boolcoder_test.cc
92
John Koleszar0ea50ce2010-05-18 11:58:33 -040093ifeq ($(CONFIG_REALTIME_ONLY),yes)
94VP8_CX_SRCS_REMOVE-yes += encoder/firstpass.c
Attila Nagy7af0d902011-02-22 10:29:23 +020095VP8_CX_SRCS_REMOVE-yes += encoder/temporal_filter.c
John Koleszar0ea50ce2010-05-18 11:58:33 -040096endif
97
John Koleszar0ea50ce2010-05-18 11:58:33 -040098VP8_CX_SRCS-$(HAVE_MMX) += encoder/x86/dct_mmx.asm
99VP8_CX_SRCS-$(HAVE_MMX) += encoder/x86/subtract_mmx.asm
John Koleszar8aae2462012-01-12 16:55:44 -0800100VP8_CX_SRCS-$(HAVE_MMX) += encoder/x86/vp8_enc_stubs_mmx.c
Scott LaVarnwayf1a3b1e2010-06-24 13:11:30 -0400101VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/dct_sse2.asm
John Koleszar0ea50ce2010-05-18 11:58:33 -0400102VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/fwalsh_sse2.asm
Scott LaVarnway48c84d12010-06-14 14:07:56 -0400103VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/quantize_sse2.asm
Christian Duvivier38ddb422012-05-21 07:54:20 -0700104
105ifeq ($(CONFIG_TEMPORAL_DENOISING),yes)
106VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/denoising_sse2.c
107ifeq ($(HAVE_SSE2),yes)
108vp8/encoder/x86/denoising_sse2.c.o: CFLAGS += -msse2
109endif
110endif
111
Yunqing Wang4db20762010-10-18 14:15:15 -0400112VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/subtract_sse2.asm
Johann8b0cf5f2010-12-22 11:23:51 -0500113VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/temporal_filter_apply_sse2.asm
John Koleszar8aae2462012-01-12 16:55:44 -0800114VP8_CX_SRCS-$(HAVE_SSE2) += encoder/x86/vp8_enc_stubs_sse2.c
Scott LaVarnwayff4a71f2010-11-01 16:24:15 -0400115VP8_CX_SRCS-$(HAVE_SSSE3) += encoder/x86/quantize_ssse3.asm
Johann508ae1b2011-04-13 16:38:02 -0400116VP8_CX_SRCS-$(HAVE_SSE4_1) += encoder/x86/quantize_sse4.asm
John Koleszar0ea50ce2010-05-18 11:58:33 -0400117VP8_CX_SRCS-$(ARCH_X86)$(ARCH_X86_64) += encoder/x86/quantize_mmx.asm
118VP8_CX_SRCS-$(ARCH_X86)$(ARCH_X86_64) += encoder/x86/encodeopt.asm
John Koleszar5db0eee2011-03-11 11:27:08 -0500119VP8_CX_SRCS-$(ARCH_X86_64) += encoder/x86/ssim_opt.asm
John Koleszar0ea50ce2010-05-18 11:58:33 -0400120
Attila Nagy7af0d902011-02-22 10:29:23 +0200121ifeq ($(CONFIG_REALTIME_ONLY),yes)
122VP8_CX_SRCS_REMOVE-$(HAVE_SSE2) += encoder/x86/temporal_filter_apply_sse2.asm
123endif
124
125
John Koleszar0ea50ce2010-05-18 11:58:33 -0400126VP8_CX_SRCS-yes := $(filter-out $(VP8_CX_SRCS_REMOVE-yes),$(VP8_CX_SRCS-yes))