diff options
author | Måns Rullgård <mans@mansr.com> | 2010-07-08 18:44:06 +0000 |
---|---|---|
committer | Måns Rullgård <mans@mansr.com> | 2010-07-08 18:44:06 +0000 |
commit | 57442411d7ef799b853aecf0904cef14957d0d66 (patch) | |
tree | f1662ac85785df041c8b1d633d4ad2538b32df2d | |
parent | 31c0121db7829727a30c859a38cdb14e404e9547 (diff) | |
download | ffmpeg-57442411d7ef799b853aecf0904cef14957d0d66.tar.gz |
Move regression test dependencies to configure
This allows expressing complex dependencies more easily.
Originally committed as revision 24120 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r-- | Makefile | 81 | ||||
-rwxr-xr-x | configure | 110 |
2 files changed, 109 insertions, 82 deletions
@@ -176,87 +176,6 @@ fulltest test: codectest lavftest seektest FFSERVER_REFFILE = $(SRC_PATH)/tests/ffserver.regression.ref SEEK_REFFILE = $(SRC_PATH)/tests/seek.regression.ref -ENCDEC = $(and $(CONFIG_$(1)_ENCODER),$(CONFIG_$(1)_DECODER)) -MUXDEM = $(and $(CONFIG_$(1)_MUXER),$(CONFIG_$(or $(2),$(1))_DEMUXER)) - -VCODEC_TESTS = -VCODEC_TESTS-$(call ENCDEC,ASV1) += asv1 -VCODEC_TESTS-$(call ENCDEC,ASV2) += asv2 -VCODEC_TESTS-$(call ENCDEC,DNXHD) += dnxhd_1080i dnxhd_720p dnxhd_720p_rd -VCODEC_TESTS-$(call ENCDEC,DVVIDEO) += dv dv50 -VCODEC_TESTS-$(call ENCDEC,FFV1) += ffv1 -VCODEC_TESTS-$(call ENCDEC,FLASHSV) += flashsv -VCODEC_TESTS-$(call ENCDEC,FLV) += flv -VCODEC_TESTS-$(call ENCDEC,H261) += h261 -VCODEC_TESTS-$(call ENCDEC,H263) += h263 h263p -VCODEC_TESTS-$(call ENCDEC,HUFFYUV) += huffyuv -VCODEC_TESTS-$(call ENCDEC,JPEGLS) += jpegls -VCODEC_TESTS-$(call ENCDEC,MJPEG) += mjpeg ljpeg -VCODEC_TESTS-$(call ENCDEC,MPEG1VIDEO) += mpeg mpeg1b -VCODEC_TESTS-$(call ENCDEC,MPEG2VIDEO) += mpeg2 mpeg2thread -VCODEC_TESTS-$(call ENCDEC,MPEG4) += mpeg4 mpeg4adv mpeg4nr mpeg4thread error rc -VCODEC_TESTS-$(call ENCDEC,MSMPEG4V1) += msmpeg4 -VCODEC_TESTS-$(call ENCDEC,MSMPEG4V2) += msmpeg4v2 -VCODEC_TESTS-$(call ENCDEC,RAWVIDEO) += rgb yuv -VCODEC_TESTS-$(call ENCDEC,ROQ) += roq -VCODEC_TESTS-$(call ENCDEC,RV10) += rv10 -VCODEC_TESTS-$(call ENCDEC,RV20) += rv20 -VCODEC_TESTS-$(call ENCDEC,SNOW) += snow snowll -VCODEC_TESTS-$(call ENCDEC,SVQ1) += svq1 -VCODEC_TESTS-$(call ENCDEC,WMV1) += wmv1 -VCODEC_TESTS-$(call ENCDEC,WMV2) += wmv2 - -ACODEC_TESTS = -ACODEC_TESTS-$(call ENCDEC,AC3) += ac3 -ACODEC_TESTS-$(call ENCDEC,ADPCM_G726) += g726 -ACODEC_TESTS-$(call ENCDEC,ADPCM_IMA_QT) += adpcm_ima_qt -ACODEC_TESTS-$(call ENCDEC,ADPCM_IMA_WAV) += adpcm_ima_wav -ACODEC_TESTS-$(call ENCDEC,ADPCM_MS) += adpcm_ms -ACODEC_TESTS-$(call ENCDEC,ADPCM_SWF) += adpcm_swf -ACODEC_TESTS-$(call ENCDEC,ADPCM_YAMAHA) += adpcm_yam -ACODEC_TESTS-$(call ENCDEC,ALAC) += alac -ACODEC_TESTS-$(call ENCDEC,FLAC) += flac -ACODEC_TESTS-$(call ENCDEC,MP2) += mp2 -ACODEC_TESTS-$(call ENCDEC,PCM_S16LE) += pcm # fixme -ACODEC_TESTS-$(call ENCDEC,WMAV1) += wmav1 -ACODEC_TESTS-$(call ENCDEC,WMAV1) += wmav2 - -LAVF_TESTS = -LAVF_TESTS-$(call MUXDEM,AIFF) += aiff -LAVF_TESTS-$(call MUXDEM,PCM_ALAW) += alaw -LAVF_TESTS-$(call MUXDEM,ASF) += asf -LAVF_TESTS-$(call MUXDEM,AU) += au -LAVF_TESTS-$(call MUXDEM,AVI) += avi -LAVF_TESTS-$(call ENCDEC,BMP) += bmp -LAVF_TESTS-$(call MUXDEM,DV) += dv_fmt -LAVF_TESTS-$(call MUXDEM,FFM) += ffm -LAVF_TESTS-$(call MUXDEM,FLV) += flv_fmt -LAVF_TESTS-$(call ENCDEC,GIF) += gif -LAVF_TESTS-$(call MUXDEM,GXF) += gxf -LAVF_TESTS-$(call ENCDEC,MJPEG) += jpg -LAVF_TESTS-$(call MUXDEM,MATROSKA) += mkv -LAVF_TESTS-$(call MUXDEM,MMF) += mmf -LAVF_TESTS-$(call MUXDEM,MOV) += mov -LAVF_TESTS-$(call MUXDEM,MPEG1SYSTEM,MPEGPS) += mpg -LAVF_TESTS-$(call MUXDEM,PCM_MULAW) += mulaw -LAVF_TESTS-$(call MUXDEM,MXF) += mxf -LAVF_TESTS-$(call MUXDEM,NUT) += nut -LAVF_TESTS-$(call MUXDEM,OGG) += ogg -LAVF_TESTS-$(call ENCDEC,PBM) += pbmpipe -LAVF_TESTS-$(call ENCDEC,PCX) += pcx -LAVF_TESTS-$(call ENCDEC,PGM) += pgm pgmpipe -LAVF_TESTS-$(call MUXDEM,RAWVIDEO) += pixfmt -LAVF_TESTS-$(call ENCDEC,PPM) += ppm ppmpipe -LAVF_TESTS-$(call MUXDEM,RM) += rm -LAVF_TESTS-$(call ENCDEC,SGI) += sgi -LAVF_TESTS-$(call MUXDEM,SWF) += swf -LAVF_TESTS-$(call ENCDEC,TARGA) += tga -LAVF_TESTS-$(call ENCDEC,TIFF) += tiff -LAVF_TESTS-$(call MUXDEM,MPEGTS) += ts -LAVF_TESTS-$(call MUXDEM,VOC) += voc -LAVF_TESTS-$(call MUXDEM,WAV) += wav -LAVF_TESTS-$(call MUXDEM,YUV4MPEGPIPE) += yuv4mpeg - LAVFI_TESTS = \ crop \ crop_scale \ @@ -1396,6 +1396,97 @@ ffserver_extralibs='$ldl' doc_deps="texi2html" +# tests + +test_deps(){ + suf1=$1 + suf2=$2 + shift 2 + for v; do + dep=${v%=*} + tests=${v#*=} + for name in ${tests}; do + eval ${name}_test_deps="'${dep}$suf1 ${dep}$suf2'" + done + done +} + +test_deps _encoder _decoder \ + ac3 \ + adpcm_g726=g726 \ + adpcm_ima_qt \ + adpcm_ima_wav \ + adpcm_ms \ + adpcm_swf \ + adpcm_yamaha=adpcm_yam \ + alac \ + asv1 \ + asv2 \ + bmp \ + dnxhd="hdxhd_1080i dnxhd_720p dnxhd_720p_rd" \ + dvvideo="dv dv50" \ + ffv1 \ + flac \ + flashsv \ + flv \ + gif \ + h261 \ + h263="h263 h263p" \ + huffyuv \ + jpegls \ + mjpeg="jpg mjpeg ljpeg" \ + mp2 \ + mpeg1video="mpeg mpeg1b" \ + mpeg2video="mpeg2 mpeg2thread" \ + mpeg4="mpeg4 mpeg4adv mpeg4nr mpeg4thread error rc" \ + msmpeg4v1=msmpeg4 \ + msmpeg4v2 \ + pbm=pbmpipe \ + pcx \ + pgm="pgm pgmpipe" \ + ppm="ppm ppmpipe" \ + rawvideo="rgb yuv" \ + roq \ + rv10 \ + rv20 \ + sgi \ + snow="snow snowll" \ + svq1 \ + targa=tga \ + tiff \ + wmav1 \ + wmav2 \ + wmv1 \ + wmv2 \ + +test_deps _muxer _demuxer \ + aiff \ + pcm_alaw=alaw \ + asf \ + au \ + avi \ + dv=dv_fmt \ + ffm \ + flv=flv_fmt \ + gxf \ + matroska=mkv \ + mmf \ + mov \ + pcm_mulaw=mulaw \ + mxf \ + nut \ + ogg \ + rawvideo=pixfmt \ + rm \ + swf \ + mpegts=ts \ + voc \ + wav \ + yuv4mpegpipe=yuv4mpeg \ + +mpg_test_deps="mpeg1system_muxer mpegps_demuxer" +pcm_test_deps=$(echo pcm_{{a,mu}law,u8,s8,{s{16,24,32},f{32,64}}{be,le},s24daud,zork}_{en,de}coder) + # default parameters logfile="config.log" @@ -1521,13 +1612,21 @@ INDEV_LIST=$(find_things indev _IN libavdevice/alldevices.c) PROTOCOL_LIST=$(find_things protocol PROTOCOL libavformat/allformats.c) FILTER_LIST=$(find_things filter FILTER libavfilter/allfilters.c) +find_tests(){ + map 'echo ${v}_test' $(ls "$source_path"/tests/ref/$1) +} + +ACODEC_TESTS=$(find_tests acodec) +VCODEC_TESTS=$(find_tests vsynth1) +LAVF_TESTS=$(find_tests lavf) + for n in $COMPONENT_LIST; do v=$(toupper ${n%s})_LIST eval enable \$$v eval ${n}_if_any="\$$v" done -enable $ARCH_EXT_LIST +enable $ARCH_EXT_LIST $ACODEC_TESTS $VCODEC_TESTS $LAVF_TESTS die_unknown(){ echo "Unknown option \"$1\"." @@ -2753,6 +2852,9 @@ check_deps $CONFIG_LIST \ $INDEV_LIST \ $OUTDEV_LIST \ $PROTOCOL_LIST \ + $ACODEC_TESTS \ + $VCODEC_TESTS \ + $LAVF_TESTS \ enabled asm || { arch=c; disable $ARCH_LIST $ARCH_EXT_LIST; } @@ -3023,6 +3125,12 @@ print_config CONFIG_ $TMPH config.mak $CONFIG_LIST \ $INDEV_LIST \ $OUTDEV_LIST \ +cat >>config.mak <<EOF +ACODEC_TESTS=$(print_enabled -n _test $ACODEC_TESTS) +VCODEC_TESTS=$(print_enabled -n _test $VCODEC_TESTS) +LAVF_TESTS=$(print_enabled -n _test $LAVF_TESTS) +EOF + echo "#endif /* FFMPEG_CONFIG_H */" >> $TMPH echo "endif # FFMPEG_CONFIG_MAK" >> config.mak |