--enable/disable-codec / --disable-encoders (configure part only, no actual #ifdefs)
authorMichael Niedermayer <michaelni@gmx.at>
Mon, 2 May 2005 09:47:46 +0000 (09:47 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Mon, 2 May 2005 09:47:46 +0000 (09:47 +0000)
Originally committed as revision 4169 to svn://svn.ffmpeg.org/ffmpeg/trunk

configure

index 8b8ce6c..587cba7 100755 (executable)
--- a/configure
+++ b/configure
@@ -70,6 +70,9 @@ echo "  --disable-ffplay         disable ffplay build"
 echo "  --enable-small           optimize for size instead of speed"
 echo "  --enable-memalign-hack   emulate memalign, interferes with memory debuggers"
 echo "  --disable-strip          disable stripping of executables and shared libraries"
+echo "  --enable-code=codec      enables codec"
+echo "  --disable-code=codec     disables codec"
+echo "  --disable-encoders       disables all encoders"
 echo ""
 echo "NOTE: The object files are build at the place where configure is launched"
 exit 1
@@ -376,6 +379,8 @@ for opt do
   FFMPEG_CONFIGURATION="$FFMPEG_CONFIGURATION""$opt "
 done
 
+CODEC_LIST=`grep 'register_avcodec(&[a-z]' libavcodec/allcodecs.c  | sed 's/.*&\(.*\)).*/\1/'`
+
 for opt do
   case "$opt" in
   --prefix=*) prefix=`echo $opt | cut -d '=' -f 2`
@@ -490,6 +495,12 @@ for opt do
   ;;
   --disable-strip) dostrip="no"
   ;;
+  --enable-codec=*) CODEC_LIST="$CODEC_LIST ${opt#--enable-codec=}"
+  ;;
+  --disable-codec=*) CODEC_LIST="`echo $CODEC_LIST | sed -e \"s#${opt#--disable-codec=}##\"`"
+  ;;
+  --disable-encoders) CODEC_LIST="`echo $CODEC_LIST | sed 's/[-_a-zA-Z0-9]*encoder//g'`"
+  ;;
   esac
 done
 
@@ -1577,6 +1588,10 @@ fi
 
 fi
 
+for codec in $CODEC_LIST ; do
+    echo "#define CONFIG_`echo $codec | awk '{$1=toupper($1)}1'` 1" >> $TMPH
+done
+
 diff $TMPH config.h >/dev/null 2>&1
 if test $? -ne 0 ; then
        mv -f $TMPH config.h