summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorDiego Biurrun <diego@biurrun.de>2007-06-07 22:36:39 +0000
committerDiego Biurrun <diego@biurrun.de>2007-06-07 22:36:39 +0000
commit4fbd52f0b8fc8e2f5ae6b6f74e349961fa4761c1 (patch)
treecdb11b63737941395f1d96d9f50032e54b2dc60c /Makefile
parent46076a95a05a8862315df1f6f8e1db313f80c343 (diff)
Merge tests Makefile into the top-level Makefile.
This gets rid of some recursion and simplifies the code. Originally committed as revision 9255 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile66
1 files changed, 62 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index a70d85ed19..eb740ca58b 100644
--- a/Makefile
+++ b/Makefile
@@ -214,11 +214,12 @@ clean:
$(MAKE) -C libavformat clean
$(MAKE) -C libpostproc clean
$(MAKE) -C libswscale clean
- $(MAKE) -C tests clean
$(MAKE) -C vhook clean
rm -f *.o *.d *~ .libs gmon.out TAGS $(ALLPROGS) $(ALLPROGS_G) \
output_example$(EXESUF) qt-faststart$(EXESUF) cws2fws$(EXESUF)
rm -f doc/*.html doc/*.pod doc/*.1
+ rm -rf tests/vsynth1 tests/vsynth2 tests/data tests/asynth1.sw tests/*~
+ rm -f $(addprefix tests/,$(addsuffix $(EXESUF),audiogen videogen rotozoom seek_test tiny_psnr))
distclean: clean
$(MAKE) -C libavutil distclean
@@ -226,7 +227,6 @@ distclean: clean
$(MAKE) -C libavformat distclean
$(MAKE) -C libpostproc distclean
$(MAKE) -C libswscale distclean
- $(MAKE) -C tests distclean
$(MAKE) -C vhook distclean
rm -f .depend version.h config.* *.pc
@@ -235,11 +235,69 @@ TAGS:
# regression tests
-codectest libavtest seektest test-server fulltest test: $(PROGS)
- $(MAKE) -C tests $@
+fulltest test: codectest libavtest seektest
+#codectest libavtest seektest test-server: $(PROGS)
+
+FFMPEG_REFFILE = $(SRC_PATH)/tests/ffmpeg.regression.ref
+FFSERVER_REFFILE = $(SRC_PATH)/tests/ffserver.regression.ref
+LIBAV_REFFILE = $(SRC_PATH)/tests/libav.regression.ref
+ROTOZOOM_REFFILE = $(SRC_PATH)/tests/rotozoom.regression.ref
+SEEK_REFFILE = $(SRC_PATH)/tests/seek.regression.ref
+
+test-server: tests/vsynth1/00.pgm tests/asynth1.sw
+ @echo
+ @echo "Unfortunately ffserver is broken and therefore its regression"
+ @echo "test fails randomly. Treat the results accordingly."
+ @echo
+ $(SRC_PATH)/tests/server-regression.sh $(FFSERVER_REFFILE) $(SRC_PATH)/tests/test.conf
+
+codectest mpeg4 mpeg ac3 snow snowll: tests/vsynth1/00.pgm tests/vsynth2/00.pgm tests/asynth1.sw tests/tiny_psnr$(EXESUF)
+ $(SRC_PATH)/tests/regression.sh $@ $(FFMPEG_REFFILE) tests/vsynth1
+ $(SRC_PATH)/tests/regression.sh $@ $(ROTOZOOM_REFFILE) tests/vsynth2
+
+ifeq ($(CONFIG_GPL),yes)
+libavtest: tests/vsynth1/00.pgm tests/asynth1.sw
+ $(SRC_PATH)/tests/regression.sh $@ $(LIBAV_REFFILE) tests/vsynth1
+seektest: tests/seek_test$(EXESUF)
+ $(SRC_PATH)/tests/seek_test.sh $(SEEK_REFFILE)
+else
+libavtest seektest:
+ @echo
+ @echo "This test requires FFmpeg to be compiled with --enable-gpl."
+ @echo
+ @exit 1
+endif
+
+ifeq ($(CONFIG_SWSCALER),yes)
+test-server codectest mpeg4 mpeg ac3 snow snowll libavtest: swscale_error
+swscale_error:
+ @echo
+ @echo "This regression test is incompatible with --enable-swscaler."
+ @echo
+ @exit 1
+endif
+
+tests/vsynth1/00.pgm: tests/videogen$(EXESUF)
+ mkdir -p tests/vsynth1
+ $(BUILD_ROOT)/$< 'tests/vsynth1/'
+
+tests/vsynth2/00.pgm: tests/rotozoom$(EXESUF)
+ mkdir -p tests/vsynth2
+ $(BUILD_ROOT)/$< 'tests/vsynth2/' $(SRC_PATH)/tests/lena.pnm
+
+tests/asynth1.sw: tests/audiogen$(EXESUF)
+ $(BUILD_ROOT)/$< $@
+
+%$(EXESUF): %.c
+ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $<
+
+tests/seek_test$(EXESUF): tests/seek_test.c
+ $(CC) $(LDFLAGS) $(CFLAGS) -DHAVE_AV_CONFIG_H -o $@ $< $(EXTRALIBS)
+
.PHONY: all lib videohook documentation install* wininstaller uninstall*
.PHONY: dep depend clean distclean TAGS
.PHONY: codectest libavtest seektest test-server fulltest test
+.PHONY: mpeg4 mpeg ac3 snow snowll swscale-error
-include .depend