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