1
AREF = fate-acodec-aref
2
VREF = fate-vsynth1-vref fate-vsynth2-vref
5
$(VREF): avconv$(EXESUF) tests/vsynth1/00.pgm tests/vsynth2/00.pgm
6
$(AREF): avconv$(EXESUF) tests/data/asynth1.sw
8
tests/vsynth1/00.pgm: tests/videogen$(HOSTEXESUF)
9
@mkdir -p tests/vsynth1
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
10
7
$(M)./$< 'tests/vsynth1/'
12
tests/vsynth2/00.pgm: tests/rotozoom$(HOSTEXESUF)
13
@mkdir -p tests/vsynth2
14
$(M)./$< 'tests/vsynth2/' $(SRC_PATH)/tests/lena.pnm
16
tests/data/asynth1.sw: tests/audiogen$(HOSTEXESUF)
9
tests/data/asynth1.sw: tests/audiogen$(HOSTEXESUF) | tests/data
20
tests/data/asynth-16000-1.sw: tests/audiogen$(HOSTEXESUF)
24
tests/data/asynth%.sw tests/vsynth%/00.pgm: TAG = GEN
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
26
47
include $(SRC_PATH)/tests/fate/aac.mak
27
48
include $(SRC_PATH)/tests/fate/ac3.mak
28
49
include $(SRC_PATH)/tests/fate/adpcm.mak
50
include $(SRC_PATH)/tests/fate/alac.mak
29
51
include $(SRC_PATH)/tests/fate/als.mak
30
52
include $(SRC_PATH)/tests/fate/amrnb.mak
31
53
include $(SRC_PATH)/tests/fate/amrwb.mak
32
54
include $(SRC_PATH)/tests/fate/atrac.mak
33
55
include $(SRC_PATH)/tests/fate/audio.mak
34
include $(SRC_PATH)/tests/fate/dct.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
35
59
include $(SRC_PATH)/tests/fate/demux.mak
36
60
include $(SRC_PATH)/tests/fate/dfa.mak
37
61
include $(SRC_PATH)/tests/fate/dpcm.mak
38
62
include $(SRC_PATH)/tests/fate/ea.mak
63
include $(SRC_PATH)/tests/fate/filter.mak
64
include $(SRC_PATH)/tests/fate/flac.mak
39
65
include $(SRC_PATH)/tests/fate/fft.mak
40
66
include $(SRC_PATH)/tests/fate/h264.mak
41
67
include $(SRC_PATH)/tests/fate/image.mak
42
68
include $(SRC_PATH)/tests/fate/indeo.mak
43
69
include $(SRC_PATH)/tests/fate/libavcodec.mak
70
include $(SRC_PATH)/tests/fate/libavformat.mak
44
71
include $(SRC_PATH)/tests/fate/libavutil.mak
45
72
include $(SRC_PATH)/tests/fate/lossless-audio.mak
46
73
include $(SRC_PATH)/tests/fate/lossless-video.mak
59
87
include $(SRC_PATH)/tests/fate/vorbis.mak
60
88
include $(SRC_PATH)/tests/fate/vpx.mak
61
89
include $(SRC_PATH)/tests/fate/vqf.mak
90
include $(SRC_PATH)/tests/fate/wavpack.mak
62
91
include $(SRC_PATH)/tests/fate/wma.mak
64
FATE_ACODEC = $(ACODEC_TESTS:%=fate-acodec-%)
65
FATE_VSYNTH1 = $(VCODEC_TESTS:%=fate-vsynth1-%)
66
FATE_VSYNTH2 = $(VCODEC_TESTS:%=fate-vsynth2-%)
67
FATE_VCODEC = $(FATE_VSYNTH1) $(FATE_VSYNTH2)
68
FATE_LAVF = $(LAVF_TESTS:%=fate-lavf-%)
69
FATE_LAVFI = $(LAVFI_TESTS:%=fate-lavfi-%)
70
FATE_SEEK = $(SEEK_TESTS:seek_%=fate-seek-%)
72
FATE = $(FATE_ACODEC) \
77
FATE-$(CONFIG_AVFILTER) += $(FATE_LAVFI)
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)
79
100
FATE += $(FATE-yes)
81
$(filter-out %-aref,$(FATE_ACODEC)): $(AREF)
82
$(filter-out %-vref,$(FATE_VSYNTH1)): fate-vsynth1-vref
83
$(filter-out %-vref,$(FATE_VSYNTH2)): fate-vsynth2-vref
85
$(FATE_LAVFI): $(REFS) tools/lavfi-showfiltfmts$(EXESUF)
86
$(FATE_SEEK): fate-codec fate-lavf libavformat/seek-test$(EXESUF)
88
$(FATE_ACODEC): CMD = codectest acodec
89
$(FATE_VSYNTH1): CMD = codectest vsynth1
90
$(FATE_VSYNTH2): CMD = codectest vsynth2
91
$(FATE_LAVF): CMD = lavftest
92
$(FATE_LAVFI): CMD = lavfitest
93
$(FATE_SEEK): CMD = seektest
95
fate-codec: fate-acodec fate-vcodec
96
fate-acodec: $(FATE_ACODEC)
97
fate-vcodec: $(FATE_VCODEC)
98
fate-lavf: $(FATE_LAVF)
99
fate-lavfi: $(FATE_LAVFI)
100
fate-seek: $(FATE_SEEK)
102
$(FATE_AVCONV) $(FATE_SAMPLES_AVCONV): avconv$(EXESUF)
103
FATE += $(FATE_TESTS) $(FATE_TESTS-yes)
105
FATE += $(FATE_SAMPLES)
105
rsync -vaLW rsync://fate-suite.libav.org/fate-suite-0.8/ $(SAMPLES)
107
rsync -vaLW rsync://fate-suite.libav.org/fate-suite-9/ $(SAMPLES)
108
110
@echo "use 'make fate-rsync SAMPLES=/path/to/samples' to sync the fate suite"
110
@echo "SAMPLES not specified, cannot run FATE"
112
@echo "$@ requires external samples and SAMPLES not specified"; false
113
115
FATE_UTILS = base64 tiny_psnr
117
$(FATE): avconv$(EXESUF) $(FATE_UTILS:%=tests/%$(HOSTEXESUF))
119
$(FATE): $(FATE_UTILS:%=tests/%$(HOSTEXESUF))
118
120
@echo "TEST $(@:fate-%=%)"
119
$(Q)$(SRC_PATH)/tests/fate-run.sh $@ "$(SAMPLES)" "$(TARGET_EXEC)" "$(TARGET_PATH)" '$(CMD)' '$(CMP)' '$(REF)' '$(FUZZ)' '$(THREADS)' '$(THREAD_TYPE)'
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)'
122
124
@printf '%s\n' $(sort $(FATE))