1 VREF
= tests
/vsynth1
/00.pgm
2 AREF
= tests
/data
/asynth1.sw
4 OBJDIRS
+= tests
/data tests
/vsynth1
6 tests
/vsynth1
/00.pgm
: tests
/videogen
$(HOSTEXESUF
) | tests
/vsynth1
7 $(M
).
/$< 'tests/vsynth1/'
9 tests
/data
/asynth1.sw
: tests
/audiogen
$(HOSTEXESUF
) | tests
/data
12 tests
/data
/asynth-
%.wav
: tests
/audiogen
$(HOSTEXESUF
) | tests
/data
13 $(M
).
/$< $@
$(subst -, ,$*)
15 tests
/data
/vsynth1.yuv
: tests
/videogen
$(HOSTEXESUF
) | tests
/data
18 tests
/data
/vsynth2.yuv
: tests
/rotozoom
$(HOSTEXESUF
) | tests
/data
19 $(M
)$< $(SRC_PATH
)/tests
/lena.pnm
$@
21 tests
/data
/asynth
% tests
/data
/vsynth
%.yuv tests
/vsynth
%/00.pgm
: TAG
= GEN
23 CHKCFG
= $(if
$($(1))$(!$(1)),$($(1)), $(error No such config
: $(1)))
25 ALLYES
= $(strip $(call XYES
, $(1)))
26 XYES
= $(if
$(strip $(1)), \
27 $(if
$(call CHKCFG
,CONFIG_
$(firstword $(1))), \
28 $(call XYES
, $(wordlist
2, $(words $(1)), $(1)))), \
31 ENCDEC
= $(call ALLYES
, $(firstword $(1))_ENCODER
$(lastword
$(1))_DECODER \
32 $(firstword $(2))_MUXER
$(lastword
$(2))_DEMUXER
)
34 ENCDEC2
= $(call ALLYES
, $(firstword $(1))_ENCODER
$(lastword
$(1))_DECODER \
35 $(firstword $(2))_ENCODER
$(lastword
$(2))_DECODER \
36 $(firstword $(3))_MUXER
$(lastword
$(3))_DEMUXER
)
38 DEMDEC
= $(call ALLYES
, $(1)_DEMUXER
$(2:%=%_DECODER
))
39 ENCMUX
= $(call ALLYES
, $(1:%=%_ENCODER
) $(2)_MUXER
)
41 include $(SRC_PATH
)/tests
/fate
/acodec.mak
42 include $(SRC_PATH
)/tests
/fate
/vcodec.mak
43 include $(SRC_PATH
)/tests
/fate
/avformat.mak
44 include $(SRC_PATH
)/tests
/fate
/avfilter.mak
45 include $(SRC_PATH
)/tests
/fate
/seek.mak
47 include $(SRC_PATH
)/tests
/fate
/aac.mak
48 include $(SRC_PATH
)/tests
/fate
/ac3.mak
49 include $(SRC_PATH
)/tests
/fate
/adpcm.mak
50 include $(SRC_PATH
)/tests
/fate
/alac.mak
51 include $(SRC_PATH
)/tests
/fate
/als.mak
52 include $(SRC_PATH
)/tests
/fate
/amrnb.mak
53 include $(SRC_PATH
)/tests
/fate
/amrwb.mak
54 include $(SRC_PATH
)/tests
/fate
/atrac.mak
55 include $(SRC_PATH
)/tests
/fate
/audio.mak
56 include $(SRC_PATH
)/tests
/fate
/bmp.mak
57 include $(SRC_PATH
)/tests
/fate
/cdxl.mak
58 include $(SRC_PATH
)/tests
/fate
/cover-art.mak
59 include $(SRC_PATH
)/tests
/fate
/demux.mak
60 include $(SRC_PATH
)/tests
/fate
/dfa.mak
61 include $(SRC_PATH
)/tests
/fate
/dpcm.mak
62 include $(SRC_PATH
)/tests
/fate
/ea.mak
63 include $(SRC_PATH
)/tests
/fate
/filter.mak
64 include $(SRC_PATH
)/tests
/fate
/flac.mak
65 include $(SRC_PATH
)/tests
/fate
/fft.mak
66 include $(SRC_PATH
)/tests
/fate
/h264.mak
67 include $(SRC_PATH
)/tests
/fate
/image.mak
68 include $(SRC_PATH
)/tests
/fate
/indeo.mak
69 include $(SRC_PATH
)/tests
/fate
/libavcodec.mak
70 include $(SRC_PATH
)/tests
/fate
/libavformat.mak
71 include $(SRC_PATH
)/tests
/fate
/libavutil.mak
72 include $(SRC_PATH
)/tests
/fate
/lossless-audio.mak
73 include $(SRC_PATH
)/tests
/fate
/lossless-video.mak
74 include $(SRC_PATH
)/tests
/fate
/microsoft.mak
75 include $(SRC_PATH
)/tests
/fate
/mp3.mak
76 include $(SRC_PATH
)/tests
/fate
/mpc.mak
77 include $(SRC_PATH
)/tests
/fate
/pcm.mak
78 include $(SRC_PATH
)/tests
/fate
/probe.mak
79 include $(SRC_PATH
)/tests
/fate
/prores.mak
80 include $(SRC_PATH
)/tests
/fate
/qt.mak
81 include $(SRC_PATH
)/tests
/fate
/qtrle.mak
82 include $(SRC_PATH
)/tests
/fate
/real.mak
83 include $(SRC_PATH
)/tests
/fate
/screen.mak
84 include $(SRC_PATH
)/tests
/fate
/utvideo.mak
85 include $(SRC_PATH
)/tests
/fate
/video.mak
86 include $(SRC_PATH
)/tests
/fate
/voice.mak
87 include $(SRC_PATH
)/tests
/fate
/vorbis.mak
88 include $(SRC_PATH
)/tests
/fate
/vpx.mak
89 include $(SRC_PATH
)/tests
/fate
/vqf.mak
90 include $(SRC_PATH
)/tests
/fate
/wavpack.mak
91 include $(SRC_PATH
)/tests
/fate
/wma.mak
93 FATE_AVCONV
+= $(FATE_AVCONV-yes
)
94 FATE-
$(CONFIG_AVCONV
) += $(FATE_AVCONV
)
96 FATE_SAMPLES_AVCONV
+= $(FATE_SAMPLES_AVCONV-yes
)
97 FATE_SAMPLES-
$(CONFIG_AVCONV
) += $(FATE_SAMPLES_AVCONV
)
98 FATE_SAMPLES
+= $(FATE_SAMPLES-yes
)
102 $(FATE_AVCONV
) $(FATE_SAMPLES_AVCONV
): avconv
$(EXESUF
)
105 FATE
+= $(FATE_SAMPLES
)
107 rsync
-vaLW rsync
://fate-suite.libav.org
/fate-suite
/ $(SAMPLES
)
110 @echo
"use 'make fate-rsync SAMPLES=/path/to/samples' to sync the fate suite"
112 @echo
"$@ requires external samples and SAMPLES not specified"; false
115 FATE_UTILS
= base64 tiny_psnr
119 $(FATE
): $(FATE_UTILS
:%=tests
/%$(HOSTEXESUF
))
120 @echo
"TEST $(@:fate-%=%)"
121 $(Q
)$(SRC_PATH
)/tests
/fate-run.sh
$@
"$(SAMPLES)" "$(TARGET_EXEC)" "$(TARGET_PATH)" '$(CMD)' '$(CMP)' '$(REF)' '$(FUZZ)' '$(THREADS)' '$(THREAD_TYPE)' '$(CPUFLAGS)' '$(CMP_SHIFT)' '$(CMP_TARGET)' '$(SIZE_TOLERANCE)' '$(CMP_UNIT)'
124 @printf
'%s\n' $(sort $(FATE
))
129 $(RM
) -r tests
/vsynth1 tests
/data
130 $(RM
) $(CLEANSUFFIXES
:%=tests
/%)
131 $(RM
) $(TESTTOOLS
:%=tests
/%$(HOSTEXESUF
))
133 -include $(wildcard tests
/*.d
)