codec_names: invoke preprocessor on avcodec.h.
authorNicolas George <nicolas.george@normalesup.org>
Sat, 22 Oct 2011 08:55:44 +0000 (10:55 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sat, 22 Oct 2011 14:49:49 +0000 (16:49 +0200)
This fixes failures when codec IDs are defined conditionally,
for example when scheduling for a major bump.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/Makefile
libavcodec/codec_names.sh

index 147b37f..4941b6f 100644 (file)
@@ -756,5 +756,6 @@ endif
 CODEC_NAMES_SH := $(SRC_PATH)/$(SUBDIR)codec_names.sh
 AVCODEC_H      := $(SRC_PATH)/$(SUBDIR)avcodec.h
 $(SUBDIR)codec_names.h: $(CODEC_NAMES_SH) config.h $(AVCODEC_H)
-       $(M)$(CODEC_NAMES_SH) config.h $(AVCODEC_H) $@
+       $(CC) $(CPPFLAGS) $(CFLAGS) -E $(AVCODEC_H) | \
+       $(CODEC_NAMES_SH) config.h $@
 $(SUBDIR)utils.o: $(SUBDIR)codec_names.h
index 167d297..0e499c9 100755 (executable)
@@ -21,8 +21,7 @@
 set -e
 
 config="$1"
-codecs="$2"
-out="$3"
+out="$2"
 test -n "$out"
 
 outval=""
@@ -63,7 +62,7 @@ parse_enum_codecid () {
   while read line; do
     case "$line" in
       "};") break;;
-      *CODEC_ID_FIRST*///*dummy*) ;;
+      *CODEC_ID_FIRST*=*) ;;
       CODEC_ID_*) define_codecid ${line%%[=,]*};;
     esac
   done
@@ -78,7 +77,7 @@ parse_avcodec_h () {
 }
 
 parse_config_h  < "$config"
-parse_avcodec_h < "$codecs"
+parse_avcodec_h # use stdin
 sed -e '/case.*:/!y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/' \
     -e 's/extern avcodec /extern AVCodec /' > "$out" <<EOF
 $outval