test.mk revision 7bc9febe8749e98a3812a0dc4380ceae75c29450
1LIBVPX_TEST_SRCS-yes += acm_random.h
2LIBVPX_TEST_SRCS-yes += clear_system_state.h
3LIBVPX_TEST_SRCS-yes += codec_factory.h
4LIBVPX_TEST_SRCS-yes += md5_helper.h
5LIBVPX_TEST_SRCS-yes += register_state_check.h
6LIBVPX_TEST_SRCS-yes += test.mk
7LIBVPX_TEST_SRCS-yes += test_libvpx.cc
8LIBVPX_TEST_SRCS-yes += test_vectors.cc
9LIBVPX_TEST_SRCS-yes += test_vectors.h
10LIBVPX_TEST_SRCS-yes += util.h
11LIBVPX_TEST_SRCS-yes += video_source.h
12
13##
14## BLACK BOX TESTS
15##
16## Black box tests only use the public API.
17##
18LIBVPX_TEST_SRCS-yes                   += ../md5_utils.h ../md5_utils.c
19LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += ivf_video_source.h
20LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += ../y4minput.h ../y4minput.c
21LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += altref_test.cc
22LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += aq_segment_test.cc
23LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += alt_ref_aq_segment_test.cc
24LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += datarate_test.cc
25LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += encode_api_test.cc
26LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += error_resilience_test.cc
27LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += i420_video_source.h
28LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += realtime_test.cc
29LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += resize_test.cc
30LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += y4m_video_source.h
31LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += yuv_video_source.h
32
33LIBVPX_TEST_SRCS-$(CONFIG_VP8_ENCODER) += config_test.cc
34LIBVPX_TEST_SRCS-$(CONFIG_VP8_ENCODER) += cq_test.cc
35LIBVPX_TEST_SRCS-$(CONFIG_VP8_ENCODER) += keyframe_test.cc
36
37LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += byte_alignment_test.cc
38LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += decode_svc_test.cc
39LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += external_frame_buffer_test.cc
40LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += user_priv_test.cc
41LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += vp9_frame_parallel_test.cc
42LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += active_map_refresh_test.cc
43LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += active_map_test.cc
44LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += borders_test.cc
45LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += cpu_speed_test.cc
46LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += frame_size_tests.cc
47LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_lossless_test.cc
48LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_end_to_end_test.cc
49LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_ethread_test.cc
50LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += level_test.cc
51
52LIBVPX_TEST_SRCS-yes                   += decode_test_driver.cc
53LIBVPX_TEST_SRCS-yes                   += decode_test_driver.h
54LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += encode_test_driver.cc
55LIBVPX_TEST_SRCS-yes                   += encode_test_driver.h
56
57## IVF writing.
58LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += ../ivfenc.c ../ivfenc.h
59
60## Y4m parsing.
61LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += y4m_test.cc ../y4menc.c ../y4menc.h
62
63## WebM Parsing
64ifeq ($(CONFIG_WEBM_IO), yes)
65LIBWEBM_PARSER_SRCS += ../third_party/libwebm/mkvparser/mkvparser.cc
66LIBWEBM_PARSER_SRCS += ../third_party/libwebm/mkvparser/mkvreader.cc
67LIBWEBM_PARSER_SRCS += ../third_party/libwebm/mkvparser/mkvparser.h
68LIBWEBM_PARSER_SRCS += ../third_party/libwebm/mkvparser/mkvreader.h
69LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += $(LIBWEBM_PARSER_SRCS)
70LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += ../tools_common.h
71LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += ../webmdec.cc
72LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += ../webmdec.h
73LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += webm_video_source.h
74LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += vp9_skip_loopfilter_test.cc
75endif
76
77LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += decode_api_test.cc
78LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += test_vector_test.cc
79
80# Currently we only support decoder perf tests for vp9. Also they read from WebM
81# files, so WebM IO is required.
82ifeq ($(CONFIG_DECODE_PERF_TESTS)$(CONFIG_VP9_DECODER)$(CONFIG_WEBM_IO), \
83      yesyesyes)
84LIBVPX_TEST_SRCS-yes                   += decode_perf_test.cc
85endif
86
87# encode perf tests are vp9 only
88ifeq ($(CONFIG_ENCODE_PERF_TESTS)$(CONFIG_VP9_ENCODER), yesyes)
89LIBVPX_TEST_SRCS-yes += encode_perf_test.cc
90endif
91
92## Multi-codec blackbox tests.
93ifeq ($(findstring yes,$(CONFIG_VP8_DECODER)$(CONFIG_VP9_DECODER)), yes)
94LIBVPX_TEST_SRCS-yes += invalid_file_test.cc
95endif
96
97##
98## WHITE BOX TESTS
99##
100## Whitebox tests invoke functions not exposed via the public API. Certain
101## shared library builds don't make these functions accessible.
102##
103ifeq ($(CONFIG_SHARED),)
104
105## VP8
106ifeq ($(CONFIG_VP8),yes)
107
108# These tests require both the encoder and decoder to be built.
109ifeq ($(CONFIG_VP8_ENCODER)$(CONFIG_VP8_DECODER),yesyes)
110LIBVPX_TEST_SRCS-yes                   += vp8_boolcoder_test.cc
111LIBVPX_TEST_SRCS-yes                   += vp8_fragments_test.cc
112endif
113
114LIBVPX_TEST_SRCS-$(CONFIG_POSTPROC)    += add_noise_test.cc
115LIBVPX_TEST_SRCS-$(CONFIG_POSTPROC)    += pp_filter_test.cc
116LIBVPX_TEST_SRCS-$(CONFIG_VP8_DECODER) += vp8_decrypt_test.cc
117LIBVPX_TEST_SRCS-$(CONFIG_VP8_ENCODER) += quantize_test.cc
118LIBVPX_TEST_SRCS-$(CONFIG_VP8_ENCODER) += set_roi.cc
119LIBVPX_TEST_SRCS-$(CONFIG_VP8_ENCODER) += variance_test.cc
120LIBVPX_TEST_SRCS-$(CONFIG_VP8_ENCODER) += vp8_fdct4x4_test.cc
121
122LIBVPX_TEST_SRCS-yes                   += idct_test.cc
123LIBVPX_TEST_SRCS-yes                   += predict_test.cc
124LIBVPX_TEST_SRCS-yes                   += vpx_scale_test.cc
125
126ifeq ($(CONFIG_VP8_ENCODER)$(CONFIG_TEMPORAL_DENOISING),yesyes)
127LIBVPX_TEST_SRCS-$(HAVE_SSE2) += vp8_denoiser_sse2_test.cc
128endif
129
130endif # VP8
131
132## VP9
133ifeq ($(CONFIG_VP9),yes)
134
135# These tests require both the encoder and decoder to be built.
136ifeq ($(CONFIG_VP9_ENCODER)$(CONFIG_VP9_DECODER),yesyes)
137# IDCT test currently depends on FDCT function
138LIBVPX_TEST_SRCS-yes                   += idct8x8_test.cc
139LIBVPX_TEST_SRCS-yes                   += partial_idct_test.cc
140LIBVPX_TEST_SRCS-yes                   += superframe_test.cc
141LIBVPX_TEST_SRCS-yes                   += tile_independence_test.cc
142LIBVPX_TEST_SRCS-yes                   += vp9_boolcoder_test.cc
143LIBVPX_TEST_SRCS-yes                   += vp9_encoder_parms_get_to_decoder.cc
144endif
145
146LIBVPX_TEST_SRCS-yes                   += convolve_test.cc
147LIBVPX_TEST_SRCS-yes                   += lpf_test.cc
148LIBVPX_TEST_SRCS-yes                   += vp9_intrapred_test.cc
149LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += vp9_decrypt_test.cc
150LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += vp9_thread_test.cc
151LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += avg_test.cc
152LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += dct16x16_test.cc
153LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += dct32x32_test.cc
154LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += fdct4x4_test.cc
155LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += fdct8x8_test.cc
156LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += hadamard_test.cc
157LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += minmax_test.cc
158LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += variance_test.cc
159LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_error_block_test.cc
160LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_quantize_test.cc
161LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_subtract_test.cc
162
163ifeq ($(CONFIG_VP9_ENCODER),yes)
164LIBVPX_TEST_SRCS-$(CONFIG_SPATIAL_SVC) += svc_test.cc
165LIBVPX_TEST_SRCS-$(CONFIG_INTERNAL_STATS) += blockiness_test.cc
166LIBVPX_TEST_SRCS-$(CONFIG_INTERNAL_STATS) += consistency_test.cc
167endif
168
169ifeq ($(CONFIG_VP9_ENCODER)$(CONFIG_VP9_TEMPORAL_DENOISING),yesyes)
170LIBVPX_TEST_SRCS-$(HAVE_SSE2) += vp9_denoiser_sse2_test.cc
171endif
172LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_arf_freq_test.cc
173
174endif # VP9
175
176## Multi-codec / unconditional whitebox tests.
177
178LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS) += sad_test.cc
179LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS) += sum_squares_test.cc
180
181TEST_INTRA_PRED_SPEED_SRCS-yes := test_intra_pred_speed.cc
182TEST_INTRA_PRED_SPEED_SRCS-yes += ../md5_utils.h ../md5_utils.c
183
184endif # CONFIG_SHARED
185
186include $(SRC_PATH_BARE)/test/test-data.mk
187