+tests/data/vsynth1.yuv: tests/videogen$(HOSTEXESUF) | tests/data
+ $(M)$< $@
+
+tests/data/vsynth2.yuv: tests/rotozoom$(HOSTEXESUF) | tests/data
+ $(M)$< $(SRC_PATH)/tests/lena.pnm $@
+
+tests/data/asynth% tests/data/vsynth%.yuv tests/vsynth%/00.pgm: TAG = GEN
+
+CHKCFG = $(if $($(1))$(!$(1)),$($(1)), $(error No such config: $(1)))
+
+ALLYES = $(strip $(call XYES, $(1)))
+XYES = $(if $(strip $(1)), \
+ $(if $(call CHKCFG,CONFIG_$(firstword $(1))), \
+ $(call XYES, $(wordlist 2, $(words $(1)), $(1)))), \
+ yes)
+
+ENCDEC = $(call ALLYES, $(firstword $(1))_ENCODER $(lastword $(1))_DECODER \
+ $(firstword $(2))_MUXER $(lastword $(2))_DEMUXER)
+
+ENCDEC2 = $(call ALLYES, $(firstword $(1))_ENCODER $(lastword $(1))_DECODER \
+ $(firstword $(2))_ENCODER $(lastword $(2))_DECODER \
+ $(firstword $(3))_MUXER $(lastword $(3))_DEMUXER)
+
+DEMDEC = $(call ALLYES, $(1)_DEMUXER $(2:%=%_DECODER))
+ENCMUX = $(call ALLYES, $(1:%=%_ENCODER) $(2)_MUXER)
+
+include $(SRC_PATH)/tests/fate/acodec.mak
+include $(SRC_PATH)/tests/fate/vcodec.mak
+include $(SRC_PATH)/tests/fate/avformat.mak
+include $(SRC_PATH)/tests/fate/avfilter.mak
+include $(SRC_PATH)/tests/fate/seek.mak