X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure;h=07baa2f0c0fa785d9755ba584fb9aec9d86b14fa;hb=ed7bdd8647a3d0f534c2af0d244fc8744ff262a0;hp=7418bcadd520d41499b475a97dfabcda37460fff;hpb=9f43fdda3ed0dd5812e59bc404dd740578a72e41;p=ffmpeg diff --git a/configure b/configure index 7418bcadd52..07baa2f0c0f 100755 --- a/configure +++ b/configure @@ -110,6 +110,7 @@ Component options: --disable-avformat disable libavformat build --disable-swscale disable libswscale build --disable-avfilter disable video filter support [no] + --disable-avresample disable libavresample build [no] --disable-pthreads disable pthreads [auto] --disable-w32threads disable Win32 threads [auto] --enable-x11grab enable X11 grabbing [no] @@ -171,13 +172,10 @@ External library support: --enable-libcdio enable audio CD grabbing with libcdio --enable-libdc1394 enable IIDC-1394 grabbing using libdc1394 and libraw1394 [no] - --enable-libdirac enable Dirac support via libdirac [no] --enable-libfaac enable FAAC support via libfaac [no] --enable-libfreetype enable libfreetype [no] --enable-libgsm enable GSM support via libgsm [no] --enable-libmp3lame enable MP3 encoding via libmp3lame [no] - --enable-libnut enable NUT (de)muxing via libnut, - native (de)muxer exists [no] --enable-libopenjpeg enable JPEG 2000 decoding via OpenJPEG [no] --enable-libpulse enable Pulseaudio input via libpulse [no] --enable-librtmp enable RTMP[E] support via librtmp [no] @@ -258,7 +256,7 @@ Developer options (useful when working on Libav itself): --disable-optimizations disable compiler optimizations --enable-extra-warnings enable more compiler warnings --samples=PATH location of test samples for FATE, if not set use - \$FATE_SAMPLES at make invocation time. + \$LIBAV_SAMPLES at make invocation time. --enable-xmm-clobber-test check XMM registers for clobbering (Win64-only; should be used only for debugging purposes) @@ -928,6 +926,7 @@ CONFIG_LIST=" avdevice avfilter avformat + avresample avisynth bzlib dct @@ -943,12 +942,10 @@ CONFIG_LIST=" hardcoded_tables libcdio libdc1394 - libdirac libfaac libfreetype libgsm libmp3lame - libnut libopencore_amrnb libopencore_amrwb libopencv @@ -1110,6 +1107,7 @@ HAVE_LIST=" memalign mkstemp mmap + netinet_sctp_h poll_h posix_memalign round @@ -1422,7 +1420,6 @@ vdpau_deps="vdpau_vdpau_h vdpau_vdpau_x11_h" h264_parser_select="golomb h264dsp h264pred" # external libraries -libdirac_decoder_deps="libdirac !libschroedinger" libfaac_encoder_deps="libfaac" libgsm_decoder_deps="libgsm" libgsm_encoder_deps="libgsm" @@ -1455,8 +1452,6 @@ dirac_demuxer_select="dirac_parser" eac3_demuxer_select="ac3_parser" flac_demuxer_select="flac_parser" ipod_muxer_select="mov_muxer" -libnut_demuxer_deps="libnut" -libnut_muxer_deps="libnut" matroska_audio_muxer_select="matroska_muxer" matroska_demuxer_suggest="zlib bzlib" mov_demuxer_suggest="zlib" @@ -1514,6 +1509,7 @@ mmst_protocol_deps="network" rtmp_protocol_deps="!librtmp_protocol" rtmp_protocol_select="tcp_protocol" rtp_protocol_select="udp_protocol" +sctp_protocol_deps="network netinet_sctp_h" tcp_protocol_deps="network" tls_protocol_deps_any="openssl gnutls" tls_protocol_select="tcp_protocol" @@ -1526,18 +1522,21 @@ cropdetect_filter_deps="gpl" delogo_filter_deps="gpl" drawtext_filter_deps="libfreetype" frei0r_filter_deps="frei0r dlopen strtok_r" +frei0r_filter_extralibs='$ldl' frei0r_src_filter_deps="frei0r dlopen strtok_r" +frei0r_src_filter_extralibs='$ldl' hqdn3d_filter_deps="gpl" +resample_filter_deps="avresample" ocv_filter_deps="libopencv" -scale_filter_deps="swscale" yadif_filter_deps="gpl" # libraries avdevice_deps="avcodec avformat" +avfilter_deps="swscale" avformat_deps="avcodec" # programs -avconv_deps="avcodec avformat swscale" +avconv_deps="avcodec avfilter avformat avresample swscale format_filter" avplay_deps="avcodec avformat swscale sdl" avplay_select="rdft" avprobe_deps="avcodec avformat" @@ -1685,6 +1684,7 @@ enable avcodec enable avdevice enable avfilter enable avformat +enable avresample enable avutil enable swscale @@ -2138,6 +2138,24 @@ elif $cc -v 2>&1 | grep -q Open64; then speed_cflags='-O2' size_cflags='-Os' filter_cflags='filter_out -Wdisabled-optimization|-Wtype-limits|-fno-signed-zeros' +elif $cc -V 2>&1 | grep -q Portland; then + cc_type=pgi + cc_version='AV_STRINGIFY(__PGIC__.__PGIC_MINOR__.__PGIC_PATCHLEVEL__)' + cc_ident="PGI $($cc -V 2>&1 | awk '/^pgcc/ { print $2; exit }')" + opt_common='-alias=ansi -Mlre -Mpre' + speed_cflags="-O3 -Mautoinline -Munroll=c:4 $opt_common" + size_cflags="-O2 -Munroll=c:1 $opt_common" + noopt_cflags="-O1" + filter_cflags=pgi_flags + pgi_flags(){ + for flag; do + case $flag in + -fomit-frame-pointer) echo -Mnoframe ;; + -g) echo -gopt ;; + *) echo $flag ;; + esac + done + } fi test -n "$cc_type" && enable $cc_type || @@ -2259,9 +2277,12 @@ elif enabled ppc; then 74*|ppc74*|powerpc74*) cpuflags="-mcpu=7400 -mpowerpc-gfxopt" ;; - g5|970|ppc970|powerpc970|power4*) + g5|970|ppc970|powerpc970) cpuflags="-mcpu=970 -mpowerpc-gfxopt -mpowerpc64" ;; + power[3-7]*) + cpuflags="-mcpu=$cpu -mpowerpc-gfxopt -mpowerpc64" + ;; cell) cpuflags="-mcpu=cell" enable ldbrx @@ -2427,7 +2448,7 @@ case $target_os in SHFLAGS='-shared -Wl,-h,$$(@F)' enabled x86 && SHFLAGS="-mimpure-text $SHFLAGS" network_extralibs="-lsocket -lnsl" - add_cppflags -D__EXTENSIONS__ + add_cppflags -D__EXTENSIONS__ -D_XOPEN_SOURCE=600 # When using suncc to build, the Solaris linker will mark # an executable with each instruction set encountered by # the Solaris assembler. As our libraries contain their own @@ -2442,7 +2463,6 @@ case $target_os in oss_outdev_extralibs="-lossaudio" ;; openbsd) - enable malloc_aligned # On OpenBSD 4.5. the compiler does not use PIC unless # explicitly using -fPIC. Libav builds fine without PIC, # however the generated executable will not do anything @@ -2455,17 +2475,14 @@ case $target_os in oss_outdev_extralibs="-lossaudio" ;; dragonfly) - enable malloc_aligned disable symver ;; freebsd) - enable malloc_aligned ;; bsd/os) add_extralibs -lpoll -lgnugetopt ;; darwin) - enable malloc_aligned gas="gas-preprocessor.pl $cc" enabled ppc && add_asflags -force_cpusubtype_ALL SHFLAGS='-dynamiclib -Wl,-single_module -Wl,-install_name,$(SHLIBDIR)/$(SLIBNAME_WITH_MAJOR),-current_version,$(LIBVERSION),-compatibility_version,$(LIBMAJOR)' @@ -2488,7 +2505,6 @@ case $target_os in fi LIBTARGET=i386 if enabled x86_64; then - enable malloc_aligned LIBTARGET="i386:x86-64" elif enabled arm; then LIBTARGET=arm-wince @@ -2592,7 +2608,11 @@ case $target_os in ;; esac -echo "config:$arch:$subarch:$cpu:$target_os:$cc_ident:$LIBAV_CONFIGURATION" >config.fate +esc(){ + echo "$*" | sed 's/%/%25/g;s/:/%3a/g' +} + +echo "config:$arch:$subarch:$cpu:$target_os:$(esc $cc_ident):$(esc $LIBAV_CONFIGURATION)" >config.fate check_cpp_condition stdlib.h "defined(__PIC__) || defined(__pic__) || defined(PIC)" && enable pic @@ -2824,6 +2844,7 @@ if enabled network; then check_type netinet/in.h "struct sockaddr_in6" check_type "sys/types.h sys/socket.h" "struct sockaddr_storage" check_struct "sys/types.h sys/socket.h" "struct sockaddr" sa_len + check_header netinet/sctp.h # Prefer arpa/inet.h over winsock2 if check_header arpa/inet.h ; then check_func closesocket @@ -2939,14 +2960,10 @@ check_mathfunc truncf enabled avisynth && require2 vfw32 "windows.h vfw.h" AVIFileInit -lavifil32 enabled frei0r && { check_header frei0r.h || die "ERROR: frei0r.h header not found"; } enabled gnutls && require_pkg_config gnutls gnutls/gnutls.h gnutls_global_init -enabled libdirac && require_pkg_config dirac \ - "libdirac_decoder/dirac_parser.h" \ - "dirac_decoder_init" enabled libfaac && require2 libfaac "stdint.h faac.h" faacEncGetVersion -lfaac enabled libfreetype && require_pkg_config freetype2 "ft2build.h freetype/freetype.h" FT_Init_FreeType enabled libgsm && require libgsm gsm/gsm.h gsm_create -lgsm enabled libmp3lame && require "libmp3lame >= 3.98.3" lame/lame.h lame_set_VBR_quality -lmp3lame -enabled libnut && require libnut libnut.h nut_demuxer_init -lnut enabled libopencore_amrnb && require libopencore_amrnb opencore-amrnb/interf_dec.h Decoder_Interface_init -lopencore-amrnb enabled libopencore_amrwb && require libopencore_amrwb opencore-amrwb/dec_if.h D_IF_init -lopencore-amrwb enabled libopencv && require_pkg_config opencv opencv/cv.h cvCreateImageHeader @@ -2983,7 +3000,7 @@ if enabled libdc1394; then die "ERROR: No version of libdc1394 found " fi -if check_pkg_config sdl SDL_version.h SDL_Linked_Version; then +if check_pkg_config sdl SDL_events.h SDL_PollEvent; then check_cpp_condition SDL.h "(SDL_MAJOR_VERSION<<16 | SDL_MINOR_VERSION<<8 | SDL_PATCHLEVEL) >= 0x010201" $sdl_cflags && enable sdl && check_struct SDL.h SDL_VideoInfo current_w $sdl_cflags && enable sdl_video_size @@ -3063,7 +3080,7 @@ enabled extra_warnings && check_cflags -Winline # add some linker flags check_ldflags -Wl,--warn-common -check_ldflags -Wl,-rpath-link=libswscale:libavfilter:libavdevice:libavformat:libavcodec:libavutil +check_ldflags -Wl,-rpath-link=libswscale:libavfilter:libavdevice:libavformat:libavcodec:libavutil:libavresample test_ldflags -Wl,-Bsymbolic && append SHFLAGS -Wl,-Bsymbolic enabled xmm_clobber_test && \ @@ -3108,10 +3125,11 @@ if enabled icc; then # -wd: Disable following warnings # 144, 167, 556: -Wno-pointer-sign # 1292: attribute "foo" ignored + # 1419: external declaration in primary source file # 10006: ignoring unknown option -fno-signed-zeros # 10148: ignoring unknown option -Wno-parentheses # 10156: ignoring option '-W'; no argument required - check_cflags -wd144,167,556,1292,10006,10148,10156 + check_cflags -wd144,167,556,1292,1419,10006,10148,10156 # 11030: Warning unknown option --as-needed # 10156: ignoring option '-export'; no argument required check_ldflags -wd10156,11030 @@ -3166,7 +3184,7 @@ check_deps $CONFIG_LIST \ enabled asm || { arch=c; disable $ARCH_LIST $ARCH_EXT_LIST; } -! enabled_any memalign posix_memalign malloc_aligned && +! enabled_any memalign posix_memalign && enabled_any $need_memalign && enable memalign_hack echo "install prefix $prefix" @@ -3231,11 +3249,9 @@ echo "frei0r enabled ${frei0r-no}" echo "gnutls enabled ${gnutls-no}" echo "libcdio support ${libcdio-no}" echo "libdc1394 support ${libdc1394-no}" -echo "libdirac enabled ${libdirac-no}" echo "libfaac enabled ${libfaac-no}" echo "libgsm enabled ${libgsm-no}" echo "libmp3lame enabled ${libmp3lame-no}" -echo "libnut enabled ${libnut-no}" echo "libopencore-amrnb support ${libopencore_amrnb-no}" echo "libopencore-amrwb support ${libopencore_amrwb-no}" echo "libopencv support ${libopencv-no}" @@ -3351,7 +3367,7 @@ SLIB_INSTALL_NAME=${SLIB_INSTALL_NAME} SLIB_INSTALL_LINKS=${SLIB_INSTALL_LINKS} SLIB_INSTALL_EXTRA_LIB=${SLIB_INSTALL_EXTRA_LIB} SLIB_INSTALL_EXTRA_SHLIB=${SLIB_INSTALL_EXTRA_SHLIB} -SAMPLES:=${samples:-\$(FATE_SAMPLES)} +SAMPLES:=${samples:-\$(LIBAV_SAMPLES)} EOF get_version(){ @@ -3368,6 +3384,7 @@ get_version LIBAVCODEC libavcodec/version.h get_version LIBAVDEVICE libavdevice/avdevice.h get_version LIBAVFILTER libavfilter/version.h get_version LIBAVFORMAT libavformat/version.h +get_version LIBAVRESAMPLE libavresample/version.h get_version LIBAVUTIL libavutil/avutil.h get_version LIBSWSCALE libswscale/swscale.h @@ -3487,4 +3504,5 @@ pkgconfig_generate libavcodec "Libav codec library" "$LIBAVCODEC_VERSION" "$extr pkgconfig_generate libavformat "Libav container format library" "$LIBAVFORMAT_VERSION" "$extralibs" "libavcodec = $LIBAVCODEC_VERSION" pkgconfig_generate libavdevice "Libav device handling library" "$LIBAVDEVICE_VERSION" "$extralibs" "libavformat = $LIBAVFORMAT_VERSION" pkgconfig_generate libavfilter "Libav video filtering library" "$LIBAVFILTER_VERSION" "$extralibs" +pkgconfig_generate libavresample "Libav audio resampling library" "$LIBAVRESAMPLE_VERSION" "$extralibs" pkgconfig_generate libswscale "Libav image rescaling library" "$LIBSWSCALE_VERSION" "$LIBM" "libavutil = $LIBAVUTIL_VERSION"