]> git.sesse.net Git - ffmpeg/blobdiff - configure
using isnan instead of d==d, to signal correctly parsed option
[ffmpeg] / configure
index 10c9c15f9b9b6bc077facb487a4fd65ef9a29b82..01143ce4388a26eaae9d57843757bfccd4edf2d9 100755 (executable)
--- a/configure
+++ b/configure
@@ -77,13 +77,13 @@ show_help(){
   echo
   echo "External library support:"
   echo "  --enable-sunmlib         use Sun medialib [default=no]"
-  echo "  --enable-dc1394          enable IIDC-1394 grabbing using libdc1394"
-  echo "                           and libraw1394 [default=no]"
   echo "  --enable-liba52          enable GPLed liba52 support [default=no]"
   echo "  --enable-liba52bin       open liba52.so.0 at runtime [default=no]"
   echo "  --enable-avisynth        allow reading AVISynth script files [default=no]"
   echo "  --enable-libamr-nb       enable libamr-nb floating point audio codec"
   echo "  --enable-libamr-wb       enable libamr-wb floating point audio codec"
+  echo "  --enable-libdc1394       enable IIDC-1394 grabbing using libdc1394"
+  echo "                           and libraw1394 [default=no]"
   echo "  --enable-libfaac         enable FAAC support via libfaac [default=no]"
   echo "  --enable-libfaad         enable FAAD support via libfaad [default=no]"
   echo "  --enable-libfaadbin      open libfaad.so.0 at runtime [default=no]"
@@ -125,7 +125,6 @@ show_help(){
   echo "  --disable-v4l            disable video4linux grabbing [default=no]"
   echo "  --disable-v4l2           disable video4linux2 grabbing [default=no]"
   echo "  --disable-bktr           disable bktr video grabbing [default=no]"
-  echo "  --disable-dv1394         disable DV1394 grabbing [default=no]"
   echo "  --disable-network        disable network support [default=no]"
   echo "  --disable-ipv6           disable ipv6 support [default=no]"
   echo "  --disable-zlib           disable zlib [default=no]"
@@ -593,8 +592,6 @@ CONFIG_LIST="
     avisynth
     beos_netserver
     bktr
-    dc1394
-    dv1394
     ffmpeg
     ffplay
     ffserver
@@ -607,6 +604,7 @@ CONFIG_LIST="
     libamr
     libamr_nb
     libamr_wb
+    libdc1394
     libfaac
     libfaad
     libfaadbin
@@ -782,8 +780,8 @@ libxvid_encoder_deps="libxvid"
 ac3_demuxer_deps="ac3_parser"
 audio_demuxer_deps_any="audio_oss audio_beos"
 audio_muxer_deps_any="audio_oss audio_beos"
-dc1394_demuxer_deps="dc1394"
 dv1394_demuxer_deps="dv1394"
+libdc1394_demuxer_deps="libdc1394"
 libnut_demuxer_deps="libnut"
 libnut_muxer_deps="libnut"
 mp3_demuxer_deps="mpegaudio_parser"
@@ -854,7 +852,6 @@ targetos=$(tolower $(uname -s))
 # non-library system interfaces
 audio_oss="yes"
 bktr="yes"
-dv1394="yes"
 v4l2="yes"
 v4l="yes"
 
@@ -1112,8 +1109,6 @@ case $targetos in
     esac
     LDCONFIG="echo ignoring ldconfig"
     SHFLAGS=-nostart
-    # disable Linux things
-    dv1394="no"
     # enable BeOS things
     disabled audio_beos || enable_audio_beos
     # no need for libm, but the inet stuff
@@ -1126,17 +1121,14 @@ case $targetos in
         osextralibs="-lnet"
     fi ;;
   sunos)
-    dv1394="no"
     FFSERVERLDFLAGS=""
     SHFLAGS="-shared -Wl,-h,\$@"
     add_extralibs "-lsocket -lnsl"
     ;;
   netbsd)
-    dv1394="no"
     add_extralibs "-lossaudio"
     ;;
   openbsd)
-    dv1394="no"
     need_memalign="no"
     LIBOBJFLAGS="\$(PIC)"
     LDCONFIG="ldconfig -m \$(SHLIBDIR)"
@@ -1147,21 +1139,17 @@ case $targetos in
     add_extralibs "-lossaudio"
     ;;
   freebsd)
-    dv1394="no"
     need_memalign="no"
     add_cflags "-pthread"
     ;;
   gnu/kfreebsd)
-    dv1394="no"
     add_cflags "-pthread"
     ;;
   bsd/os)
-    dv1394="no"
     osextralibs="-lpoll -lgnugetopt -lm"
     strip="strip -d"
     ;;
   darwin)
-    dv1394="no"
     need_memalign="no"
     SHFLAGS="-dynamiclib -Wl,-single_module -Wl,-install_name,\$(SHLIBDIR)/\$(SLIBNAME),-current_version,\$(SPPVERSION),-compatibility_version,\$(SPPVERSION) -Wl,-read_only_relocs,suppress"
     VHOOKSHFLAGS='-dynamiclib -Wl,-single_module -flat_namespace -undefined suppress -Wl,-install_name,$(SHLIBDIR)/vhook/$@'
@@ -1176,7 +1164,6 @@ case $targetos in
   mingw32*)
     targetos=mingw32
     shlibdir="$bindir"
-    dv1394="no"
     VHOOKSHFLAGS='-shared -L$(BUILD_ROOT)/libavformat -L$(BUILD_ROOT)/libavcodec -L$(BUILD_ROOT)/libavutil'
     VHOOKLIBS='-lavformat$(BUILDSUF) -lavcodec$(BUILDSUF) -lavutil$(BUILDSUF) $(EXTRALIBS)'
     if enabled swscaler; then
@@ -1192,12 +1179,10 @@ case $targetos in
     SLIB_EXTRA_CMD="-lib /machine:i386 /def:\$(@:${SLIBSUF}=.def)"
     SLIB_INSTALL_EXTRA_CMD="-install -m 644 \$(SLIBNAME_WITH_MAJOR:\$(SLIBSUF)=.lib) \"\$(SHLIBDIR)/\$(SLIBNAME_WITH_MAJOR:\$(SLIBSUF)=.lib)\""
     SHFLAGS="-shared -Wl,--output-def,\$(@:${SLIBSUF}=.def),--out-implib,lib\$(SLIBNAME:\$(SLIBSUF)=.dll.a) -Wl,--enable-runtime-pseudo-reloc -Wl,--enable-auto-image-base"
-    enabled network && add_extralibs -lws2_32
     ;;
   cygwin*)
     targetos=cygwin
     shlibdir="$bindir"
-    dv1394="no"
     VHOOKSHFLAGS='-shared -L$(BUILD_ROOT)/libavformat -L$(BUILD_ROOT)/libavcodec -L$(BUILD_ROOT)/libavutil'
     VHOOKLIBS='-lavformat$(BUILDSUF) -lavcodec$(BUILDSUF) -lavutil$(BUILDSUF) $(EXTRALIBS)'
     if enabled swscaler; then
@@ -1214,6 +1199,7 @@ case $targetos in
     ;;
   linux)
     LDLATEFLAGS="-Wl,--as-needed $LDLATEFLAGS"
+    dv1394="yes"
     ;;
   irix*)
     targetos=irix
@@ -1522,7 +1508,7 @@ EOF
 check_cc <<EOF || die "endian test failed"
 unsigned int endian = 'B' << 24 | 'I' << 16 | 'G' << 8 | 'E';
 EOF
-strings $TMPO | grep -q BIGE && enable bigendian
+grep -q BIGE $TMPO && enable bigendian
 
 # ---
 # check availability of some header files
@@ -1542,9 +1528,6 @@ check_func gethrtime
 check_header termios.h
 check_header conio.h
 
-check_header arpa/inet.h
-check_header winsock2.h
-
 check_func inet_aton
 enabled zlib && check_lib zlib.h zlibVersion -lz || zlib="no"
 
@@ -1590,22 +1573,22 @@ EOF
 enabled_any libamr_nb libamr_wb && enable libamr
 
 # these are off by default, so fail if requested and not available
+enabled avisynth   && require2 vfw32 "windows.h vfw.h" AVIFileInit -lvfw32
 enabled liba52     && require liba52 a52dec/a52.h a52_init -la52
 enabled libamr_nb  && require libamrnb amrnb/interf_dec.h Speech_Decode_Frame_init -lamrnb -lm
 enabled libamr_wb  && require libamrwb amrwb/dec_if.h D_IF_init -lamrwb -lm
+enabled libdc1394  && require libdc1394 libdc1394/dc1394_control.h dc1394_create_handle -ldc1394_control -lraw1394
+enabled libfaac    && require2 libfaac "stdint.h faac.h" faacEncGetVersion -lfaac
+enabled libfaad    && require2 libfaad faad.h faacDecOpen -lfaad
 enabled libgsm     && require libgsm gsm.h gsm_create -lgsm
 enabled libmp3lame && require LAME lame/lame.h lame_init -lmp3lame -lm
+enabled libnut     && require libnut libnut.h nut_demuxer_init -lnut
+enabled libogg     && require libogg ogg/ogg.h ogg_sync_init -logg
 enabled libtheora  && require libtheora theora/theora.h theora_info_init -ltheora -logg
 enabled libvorbis  && require libvorbis vorbis/vorbisenc.h vorbis_info_init -lvorbis -lvorbisenc -logg
-enabled libogg     && require libogg ogg/ogg.h ogg_sync_init -logg
-enabled libnut     && require libnut libnut.h nut_demuxer_init -lnut
 enabled libx264    && require x264 x264.h x264_encoder_open -lx264
 enabled libxvid    && require Xvid xvid.h xvid_global -lxvidcore
-enabled dc1394     && require libdc1394 libdc1394/dc1394_control.h dc1394_create_handle -ldc1394_control -lraw1394
 enabled mlib       && require mediaLib mlib_types.h mlib_VectorSub_S16_U8_Mod -lmlib
-enabled libfaac    && require2 libfaac "stdint.h faac.h" faacEncGetVersion -lfaac
-enabled libfaad    && require2 libfaad faad.h faacDecOpen -lfaad
-enabled avisynth   && require2 vfw32 "windows.h vfw.h" AVIFileInit -lvfw32
 
 # disable the native AC-3 decoder if liba52 is enabled
 enabled liba52 && disable ac3_decoder
@@ -1631,8 +1614,6 @@ check_func getrusage
 check_func2 windows.h GetProcessTimes
 
 check_func fork
-check_func closesocket ||
-    check_func2 winsock2.h closesocket
 
 test "$vhook" = "default" && vhook="$dlopen"
 
@@ -1687,6 +1668,19 @@ fi
 
 texi2html -version >/dev/null 2>&1 && enable texi2html || disable texi2html
 
+##########################################
+# Network check
+
+if enabled network; then
+    # Prefer arpa/inet.h over winsock2
+    if check_header arpa/inet.h ; then
+        check_func closesocket
+    elif check_header winsock2.h ; then
+        add_extralibs -lws2_32
+        check_func2 winsock2.h closesocket
+    fi
+fi
+
 ##########################################
 # IPv6 check
 
@@ -1798,10 +1792,10 @@ enabled_any $THREADS_LIST  && enable threads
 check_deps $CONFIG_LIST $HAVE_LIST $DECODER_LIST $ENCODER_LIST $PARSER_LIST \
     $BSF_LIST $DEMUXER_LIST $MUXER_LIST $PROTOCOL_LIST
 
+enabled libdc1394 && append pkg_requires "libraw1394"
 enabled libogg    && append pkg_requires "ogg >= 1.1"
 enabled libtheora && append pkg_requires "theora"
 enabled libvorbis && append pkg_requires "vorbis vorbisenc"
-enabled dc1394    && append pkg_requires "libraw1394"
 
 echo "install prefix            $PREFIX"
 echo "source path               $source_path"
@@ -1817,6 +1811,8 @@ if test $arch = "x86_32" -o $arch = "x86_64"; then
     echo "MMX enabled               ${mmx-no}"
     echo "CMOV enabled              ${cmov-no}"
     echo "CMOV is fast              ${fast_cmov-no}"
+    echo "EBX available             ${ebx_available-no}"
+    echo "EBP available             ${ebp_available-no}"
 fi
 if test $arch = "armv4l"; then
     echo "ARMv5TE enabled           ${armv5te-no}"
@@ -1858,6 +1854,7 @@ echo "liba52 support            ${liba52-no}"
 echo "liba52 dlopened           ${liba52bin-no}"
 echo "libamr-nb support         ${libamr_nb-no}"
 echo "libamr-wb support         ${libamr_wb-no}"
+echo "libdc1394 support         ${libdc1394-no}"
 echo "libfaac enabled           ${libfaac-no}"
 echo "libfaad enabled           ${libfaad-no}"
 echo "libfaad dlopened          ${libfaadbin-no}"
@@ -1974,10 +1971,6 @@ print_config CONFIG_ $TMPH config.mak $CONFIG_LIST   \
                                       $MUXER_LIST    \
                                       $PROTOCOL_LIST \
 
-if test "$targetos" = darwin; then
-  echo "#define SYS_DARWIN 1"  >> $TMPH
-fi
-
 echo "#define restrict $_restrict" >> $TMPH
 
 if enabled small; then