X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure;h=5a27dd628df78b4bf1c00e1c26c268850d70d2f7;hb=3bd0221bc1a0b22b190d08758d128eb18c765aaf;hp=8537e03260ef83d21b353afd7abcfaea59cd8a41;hpb=83d100baea7ae9549ac189772a62d83dc6bc48e4;p=ffmpeg diff --git a/configure b/configure index 8537e03260e..5a27dd628df 100755 --- a/configure +++ b/configure @@ -274,7 +274,6 @@ Toolchain options: --target-samples=DIR path to samples directory on target --tempprefix=PATH force fixed dir/prefix instead of mktemp for checks --toolchain=NAME set tool defaults according to NAME - --pkg-config=PKGCONFIG use pkg-config tool PKGCONFIG [$pkg_config_default] --nm=NM use nm tool NM [$nm_default] --ar=AR use archive tool AR [$ar_default] --as=AS use assembler AS [$as_default] @@ -284,7 +283,7 @@ Toolchain options: --cxx=CXX use C compiler CXX [$cxx_default] --dep-cc=DEPCC use dependency generator DEPCC [$cc_default] --ld=LD use linker LD [$ld_default] - --pkg-config=PKGCONF use pkg-config PKGCONF [$pkg_config_default] + --pkg-config=PKGCONFIG use pkg-config tool PKGCONFIG [$pkg_config_default] --pkg-config-flags=FLAGS pass additional flags to pkgconf [] --ranlib=RANLIB use ranlib RANLIB [$ranlib_default] --host-cc=HOSTCC use host C compiler HOSTCC @@ -317,7 +316,7 @@ Advanced options (experts only): --sws-max-filter-size=N the max filter size swscale uses [$sws_max_filter_size_default] Optimization options (experts only): - --disable-asm disable all assembler optimizations + --disable-asm disable all assembly optimizations --disable-altivec disable AltiVec optimizations --disable-amd3dnow disable 3DNow! optimizations --disable-amd3dnowext disable 3DNow! extended optimizations @@ -339,8 +338,8 @@ Optimization options (experts only): --disable-armv6t2 disable armv6t2 optimizations --disable-vfp disable VFP optimizations --disable-neon disable NEON optimizations - --disable-inline-asm disable use of inline assembler - --disable-yasm disable use of yasm assembler + --disable-inline-asm disable use of inline assembly + --disable-yasm disable use of nasm/yasm assembly --disable-mips32r2 disable MIPS32R2 optimizations --disable-mipsdspr1 disable MIPS DSP ASE R1 optimizations --disable-mipsdspr2 disable MIPS DSP ASE R2 optimizations @@ -1548,6 +1547,7 @@ ARCH_EXT_LIST_PPC=" dcbzl ldbrx ppc4xx + vsx " ARCH_EXT_LIST_X86=" @@ -1795,6 +1795,9 @@ CONFIG_EXTRA=" aandcttables ac3dsp audio_frame_queue + audiodsp + blockdsp + bswapdsp cabac dsputil exif @@ -1816,6 +1819,7 @@ CONFIG_EXTRA=" llauddsp llviddsp lpc + mpeg_er mpegaudio mpegaudiodsp mpegvideo @@ -1933,6 +1937,7 @@ mipsdspr2_deps="mips" altivec_deps="ppc" ppc4xx_deps="ppc" +vsx_deps="ppc" cpunop_deps="i686" x86_64_select="i686" @@ -1989,58 +1994,61 @@ threads_if_any="$THREADS_LIST" dct_select="rdft" error_resilience_select="dsputil" frame_thread_encoder_deps="encoders threads" +intrax8_select="error_resilience" mdct_select="fft" rdft_select="fft" +mpeg_er_select="error_resilience" mpegaudio_select="mpegaudiodsp" mpegaudiodsp_select="dct" -mpegvideo_select="dsputil h264chroma hpeldsp videodsp" +mpegvideo_select="blockdsp dsputil h264chroma hpeldsp videodsp" mpegvideoenc_select="dsputil mpegvideo qpeldsp" # decoders / encoders aac_decoder_select="mdct sinewin" aac_encoder_select="audio_frame_queue mdct sinewin" aac_latm_decoder_select="aac_decoder aac_latm_parser" -ac3_decoder_select="mdct ac3dsp ac3_parser dsputil" -ac3_fixed_decoder_select="mdct ac3dsp ac3_parser dsputil" -ac3_encoder_select="mdct ac3dsp dsputil" -ac3_fixed_encoder_select="mdct ac3dsp dsputil" +ac3_decoder_select="ac3_parser ac3dsp bswapdsp mdct" +ac3_fixed_decoder_select="ac3_parser ac3dsp bswapdsp mdct" +ac3_encoder_select="ac3dsp audiodsp dsputil mdct" +ac3_fixed_encoder_select="ac3dsp audiodsp dsputil mdct" aic_decoder_select="dsputil golomb" alac_encoder_select="lpc" -als_decoder_select="dsputil" +als_decoder_select="bswapdsp" amrnb_decoder_select="lsp" amrwb_decoder_select="lsp" amv_decoder_select="sp5x_decoder exif" amv_encoder_select="aandcttables" -ape_decoder_select="dsputil llauddsp" -asv1_decoder_select="dsputil" -asv1_encoder_select="dsputil" -asv2_decoder_select="dsputil" -asv2_encoder_select="dsputil" +ape_decoder_select="bswapdsp llauddsp" +ape_decoder_select="bswapdsp" +asv1_decoder_select="blockdsp bswapdsp dsputil" +asv1_encoder_select="bswapdsp dsputil" +asv2_decoder_select="blockdsp bswapdsp dsputil" +asv2_encoder_select="bswapdsp dsputil" atrac1_decoder_select="mdct sinewin" atrac3_decoder_select="mdct" atrac3p_decoder_select="mdct sinewin" avrn_decoder_select="exif" -bink_decoder_select="dsputil hpeldsp" +bink_decoder_select="blockdsp hpeldsp" binkaudio_dct_decoder_select="mdct rdft dct sinewin" binkaudio_rdft_decoder_select="mdct rdft sinewin" -cavs_decoder_select="dsputil golomb h264chroma qpeldsp videodsp" -cllc_decoder_select="dsputil" +cavs_decoder_select="blockdsp dsputil golomb h264chroma qpeldsp videodsp" +cllc_decoder_select="bswapdsp" comfortnoise_encoder_select="lpc" -cook_decoder_select="dsputil mdct sinewin" +cook_decoder_select="audiodsp mdct sinewin" cscd_decoder_select="lzo" cscd_decoder_suggest="zlib" dca_decoder_select="mdct" dirac_decoder_select="dsputil dwt golomb videodsp" -dnxhd_decoder_select="dsputil" -dnxhd_encoder_select="aandcttables dsputil mpegvideoenc" +dnxhd_decoder_select="blockdsp dsputil" +dnxhd_encoder_select="aandcttables blockdsp dsputil mpegvideoenc" dvvideo_decoder_select="dsputil" dvvideo_encoder_select="dsputil" dxa_decoder_select="zlib" eac3_decoder_select="ac3_decoder" eac3_encoder_select="ac3_encoder" -eamad_decoder_select="aandcttables dsputil mpegvideo" +eamad_decoder_select="aandcttables blockdsp bswapdsp dsputil mpegvideo" eatgq_decoder_select="aandcttables" -eatqi_decoder_select="aandcttables dsputil error_resilience mpegvideo" +eatqi_decoder_select="aandcttables blockdsp bswapdsp dsputil mpeg1video_decoder" exr_decoder_select="zlib" ffv1_decoder_select="golomb rangecoder" ffv1_encoder_select="rangecoder" @@ -2048,46 +2056,46 @@ ffvhuff_decoder_select="huffyuv_decoder" ffvhuff_encoder_select="huffyuv_encoder" fic_decoder_select="golomb" flac_decoder_select="golomb" -flac_encoder_select="dsputil golomb lpc" +flac_encoder_select="bswapdsp golomb lpc" flashsv_decoder_select="zlib" flashsv_encoder_select="zlib" flashsv2_encoder_select="zlib" flashsv2_decoder_select="zlib" flv_decoder_select="h263_decoder" flv_encoder_select="h263_encoder" -fourxm_decoder_select="dsputil" -fraps_decoder_select="dsputil huffman" -g2m_decoder_select="dsputil zlib" +fourxm_decoder_select="blockdsp bswapdsp" +fraps_decoder_select="bswapdsp huffman" +g2m_decoder_select="blockdsp dsputil zlib" g729_decoder_select="dsputil" -h261_decoder_select="error_resilience mpegvideo" +h261_decoder_select="mpeg_er mpegvideo" h261_encoder_select="aandcttables mpegvideoenc" -h263_decoder_select="error_resilience h263_parser h263dsp mpegvideo qpeldsp" +h263_decoder_select="error_resilience h263_parser h263dsp mpeg_er mpegvideo qpeldsp" h263_encoder_select="aandcttables h263dsp mpegvideoenc" h263i_decoder_select="h263_decoder" h263p_encoder_select="h263_encoder" h264_decoder_select="cabac golomb h264chroma h264dsp h264pred h264qpel videodsp" h264_decoder_suggest="error_resilience" -hevc_decoder_select="cabac dsputil golomb videodsp" -huffyuv_decoder_select="dsputil huffyuvdsp llviddsp" -huffyuv_encoder_select="dsputil huffman huffyuvencdsp llviddsp" +hevc_decoder_select="bswapdsp cabac golomb videodsp" +huffyuv_decoder_select="bswapdsp huffyuvdsp llviddsp" +huffyuv_encoder_select="bswapdsp huffman huffyuvencdsp llviddsp" iac_decoder_select="imc_decoder" -imc_decoder_select="dsputil fft mdct sinewin" +imc_decoder_select="bswapdsp fft mdct sinewin" indeo3_decoder_select="hpeldsp" interplay_video_decoder_select="hpeldsp" jpegls_decoder_select="golomb mjpeg_decoder" jpegls_encoder_select="golomb" -jv_decoder_select="dsputil" +jv_decoder_select="blockdsp" lagarith_decoder_select="huffyuvdsp" ljpeg_encoder_select="aandcttables mpegvideoenc" loco_decoder_select="golomb" -mdec_decoder_select="dsputil error_resilience mpegvideo" +mdec_decoder_select="blockdsp dsputil mpegvideo" metasound_decoder_select="lsp mdct sinewin" -mimic_decoder_select="dsputil hpeldsp" -mjpeg_decoder_select="dsputil hpeldsp exif" +mimic_decoder_select="blockdsp bswapdsp dsputil hpeldsp" +mjpeg_decoder_select="blockdsp dsputil hpeldsp exif" mjpeg_encoder_select="aandcttables mpegvideoenc" mjpegb_decoder_select="mjpeg_decoder" mlp_decoder_select="mlp_parser" -motionpixels_decoder_select="dsputil" +motionpixels_decoder_select="bswapdsp" mp1_decoder_select="mpegaudio" mp1float_decoder_select="mpegaudio" mp2_decoder_select="mpegaudio" @@ -2098,13 +2106,13 @@ mp3adufloat_decoder_select="mpegaudio" mp3float_decoder_select="mpegaudio" mp3on4_decoder_select="mpegaudio" mp3on4float_decoder_select="mpegaudio" -mpc7_decoder_select="dsputil mpegaudiodsp" +mpc7_decoder_select="bswapdsp mpegaudiodsp" mpc8_decoder_select="mpegaudiodsp" mpeg_xvmc_decoder_deps="X11_extensions_XvMClib_h" mpeg_xvmc_decoder_select="mpeg2video_decoder" -mpeg1video_decoder_select="error_resilience mpegvideo" +mpeg1video_decoder_select="error_resilience mpeg_er mpegvideo" mpeg1video_encoder_select="aandcttables mpegvideoenc h263dsp" -mpeg2video_decoder_select="error_resilience mpegvideo" +mpeg2video_decoder_select="error_resilience mpeg_er mpegvideo" mpeg2video_encoder_select="aandcttables mpegvideoenc h263dsp" mpeg4_decoder_select="h263_decoder mpeg4video_parser" mpeg4_encoder_select="h263_encoder" @@ -2113,7 +2121,7 @@ msmpeg4v2_decoder_select="h263_decoder" msmpeg4v2_encoder_select="h263_encoder" msmpeg4v3_decoder_select="h263_decoder" msmpeg4v3_encoder_select="h263_encoder" -mss2_decoder_select="error_resilience qpeldsp vc1_decoder" +mss2_decoder_select="error_resilience mpeg_er qpeldsp vc1_decoder" mxpeg_decoder_select="mjpeg_decoder" nellymoser_decoder_select="mdct sinewin" nellymoser_encoder_select="audio_frame_queue mdct sinewin" @@ -2122,7 +2130,7 @@ on2avc_decoder_select="mdct" opus_decoder_deps="swresample" png_decoder_select="zlib" png_encoder_select="huffyuvencdsp zlib" -prores_decoder_select="dsputil" +prores_decoder_select="blockdsp dsputil" prores_encoder_select="dsputil" qcelp_decoder_select="lsp" qdm2_decoder_select="mdct rdft mpegaudiodsp" @@ -2130,12 +2138,12 @@ ra_144_encoder_select="audio_frame_queue lpc" ralf_decoder_select="golomb" rawvideo_decoder_select="dsputil" rtjpeg_decoder_select="dsputil" -rv10_decoder_select="error_resilience h263_decoder h263dsp" +rv10_decoder_select="error_resilience h263_decoder h263dsp mpeg_er" rv10_encoder_select="h263_encoder" -rv20_decoder_select="error_resilience h263_decoder h263dsp" +rv20_decoder_select="error_resilience h263_decoder h263dsp mpeg_er" rv20_encoder_select="h263_encoder" -rv30_decoder_select="error_resilience golomb h264chroma h264pred h264qpel mpegvideo videodsp" -rv40_decoder_select="error_resilience golomb h264chroma h264pred h264qpel mpegvideo videodsp" +rv30_decoder_select="error_resilience golomb h264chroma h264pred h264qpel mpeg_er mpegvideo videodsp" +rv40_decoder_select="error_resilience golomb h264chroma h264pred h264qpel mpeg_er mpegvideo videodsp" shorten_decoder_select="golomb" sipr_decoder_select="lsp" snow_decoder_select="dsputil dwt h264qpel hpeldsp rangecoder" @@ -2148,20 +2156,20 @@ svq1_decoder_select="hpeldsp" svq1_encoder_select="aandcttables dsputil hpeldsp mpegvideoenc" svq3_decoder_select="h264_decoder hpeldsp tpeldsp" svq3_decoder_suggest="zlib" -tak_decoder_select="dsputil" +tak_decoder_select="audiodsp" theora_decoder_select="vp3_decoder" thp_decoder_select="mjpeg_decoder" tiff_decoder_suggest="zlib" tiff_encoder_suggest="zlib" truehd_decoder_select="mlp_parser" -truemotion2_decoder_select="dsputil" -truespeech_decoder_select="dsputil" +truemotion2_decoder_select="bswapdsp" +truespeech_decoder_select="bswapdsp" tscc_decoder_select="zlib" twinvq_decoder_select="mdct lsp sinewin" -utvideo_decoder_select="dsputil" -utvideo_encoder_select="dsputil huffman huffyuvencdsp" +utvideo_decoder_select="bswapdsp" +utvideo_encoder_select="bswapdsp huffman huffyuvencdsp" vble_decoder_select="huffyuvdsp" -vc1_decoder_select="error_resilience h263_decoder h264chroma h264qpel intrax8 qpeldsp" +vc1_decoder_select="blockdsp error_resilience h263_decoder h264chroma h264qpel intrax8 mpeg_er qpeldsp" vc1image_decoder_select="vc1_decoder" vorbis_decoder_select="mdct" vorbis_encoder_select="mdct" @@ -2183,7 +2191,7 @@ wmav2_encoder_select="mdct sinewin" wmavoice_decoder_select="lsp rdft dct mdct sinewin" wmv1_decoder_select="h263_decoder" wmv1_encoder_select="h263_encoder" -wmv2_decoder_select="h263_decoder intrax8 videodsp" +wmv2_decoder_select="blockdsp h263_decoder intrax8 videodsp" wmv2_encoder_select="h263_encoder" wmv3_decoder_select="vc1_decoder" wmv3image_decoder_select="wmv3_decoder" @@ -2266,8 +2274,8 @@ wmv3_vdpau_hwaccel_select="vc1_vdpau_hwaccel" # parsers h264_parser_select="h264_decoder" hevc_parser_select="hevc_decoder" -mpegvideo_parser_select="error_resilience mpegvideo" -mpeg4video_parser_select="error_resilience h263dsp mpegvideo qpeldsp" +mpegvideo_parser_select="mpegvideo" +mpeg4video_parser_select="error_resilience h263dsp mpeg_er mpegvideo qpeldsp" vc1_parser_select="mpegvideo vc1_decoder" # external libraries @@ -2627,6 +2635,7 @@ host_os=$target_os_default # machine if test "$target_os_default" = aix; then arch_default=$(uname -p) + strip_default="strip -X32_64" else arch_default=$(uname -m) fi @@ -3690,6 +3699,7 @@ elif enabled mips; then elif enabled ppc; then disable ldbrx + disable vsx case $(tolower $cpu) in 601|ppc601|powerpc601) @@ -3717,7 +3727,7 @@ elif enabled ppc; then g5|970|ppc970|powerpc970) cpuflags="-mcpu=970" ;; - power[3-7]*) + power[3-8]*) cpuflags="-mcpu=$cpu" ;; cell) @@ -3868,6 +3878,13 @@ case $target_os in add_cppflags '-I\$(SRC_PATH)/compat/aix' enabled shared && add_ldflags -Wl,-brtl ;; + android) + disable symver + SLIB_INSTALL_NAME='$(SLIBNAME)' + SLIB_INSTALL_LINKS= + # soname not set on purpose + SHFLAGS=-shared + ;; haiku) prefix_default="/boot/common" network_extralibs="-lnetwork" @@ -4278,8 +4295,14 @@ unsigned int endian = 'B' << 24 | 'I' << 16 | 'G' << 8 | 'E'; EOF od -t x1 $TMPO | grep -q '42 *49 *47 *45' && enable bigendian +if [ "$cpu" = "power7" ] || [ "$cpu" = "power8" ] ;then + if ! enabled bigendian ;then + enable vsx + fi +fi + -if enabled asm && ! enabled_any ppc64 pic; then +if enabled asm; then enabled arm && nogas=die enabled_all ppc altivec && [ $target_os_default != aix ] && nogas=warn as=${gas:=$as} @@ -4407,6 +4430,9 @@ EOF enabled altivec || warn "Altivec disabled, possibly missing --cpu flag" fi + if enabled vsx; then + check_cflags -mvsx + fi elif enabled x86; then check_builtin rdtsc intrin.h "__rdtsc()" @@ -4446,7 +4472,12 @@ EOF elif check_cmd nasm -v; then yasmexe=nasm yasm_debug="-g -F dwarf" - enabled x86_64 && test "$objformat" = elf && objformat=elf64 + if enabled x86_64; then + case "$objformat" in + elf) objformat=elf64 ;; + win32) objformat=win64 ;; + esac + fi fi YASMFLAGS="-f $objformat $yasm_extra" @@ -4458,10 +4489,8 @@ EOF check_yasm "movbe ecx, [5]" && enable yasm || die "yasm/nasm not found or too old. Use --disable-yasm for a crippled build." - check_yasm "vextractf128 xmm0, ymm0, 0" || disable avx_external avresample check_yasm "vextracti128 xmm0, ymm0, 0" || disable avx2_external check_yasm "vpmacsdd xmm0, xmm1, xmm2, xmm3" || disable xop_external - check_yasm "vfmadd132ps ymm0, ymm1, ymm2" || disable fma3_external check_yasm "vfmaddps ymm0, ymm1, ymm2, ymm3" || disable fma4_external check_yasm "CPU amdnop" || disable cpunop fi @@ -5039,7 +5068,7 @@ elif enabled cparser; then elif enabled armcc; then add_cflags -W${armcc_opt},--diag_suppress=4343 # hardfp compat add_cflags -W${armcc_opt},--diag_suppress=3036 # using . as system include dir - # 2523: use of inline assembler is deprecated + # 2523: use of inline assembly is deprecated add_cflags -W${armcc_opt},--diag_suppress=2523 add_cflags -W${armcc_opt},--diag_suppress=1207 add_cflags -W${armcc_opt},--diag_suppress=1293 # assignment in condition @@ -5248,6 +5277,7 @@ fi if enabled ppc; then echo "AltiVec enabled ${altivec-no}" echo "PPC 4xx optimizations ${ppc4xx-no}" + echo "PPC VSX optimizations ${vsx-no}" echo "dcbzl available ${dcbzl-no}" fi echo "debug symbols ${debug-no}" @@ -5263,7 +5293,6 @@ echo "threading support ${thread_type-no}" echo "safe bitstream reader ${safe_bitstream_reader-no}" echo "SDL support ${sdl-no}" echo "opencl enabled ${opencl-no}" -echo "libzvbi enabled ${libzvbi-no}" echo "texi2html enabled ${texi2html-no}" echo "perl enabled ${perl-no}" echo "pod2man enabled ${pod2man-no}"