X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure;h=7e52abf47b99d9ca29a71d2d0b89b1a1068e3b72;hb=ad7d7d4f6a1347d81c349bfbf16632047264e6bf;hp=1e195d57e2ffdfe724b3d4b1137cfac12b154cfd;hpb=c4bfa098072ba338d83555d6e2199f7e1e64ffff;p=ffmpeg diff --git a/configure b/configure index 1e195d57e2f..7e52abf47b9 100755 --- a/configure +++ b/configure @@ -1974,6 +1974,7 @@ nm_default="nm -g" objformat="elf" pkg_config_default=pkg-config ranlib="ranlib" +strip="strip" yasmexe="yasm" nogas=":" @@ -2232,6 +2233,7 @@ cc_default="${cross_prefix}${cc_default}" nm_default="${cross_prefix}${nm_default}" pkg_config_default="${cross_prefix}${pkg_config_default}" ranlib="${cross_prefix}${ranlib}" +strip="${cross_prefix}${strip}" sysinclude_default="${sysroot}/usr/include" @@ -2372,6 +2374,18 @@ ccc_flags(){ done } +cparser_flags(){ + for flag; do + case $flag in + -Wno-switch) echo -Wno-switch-enum ;; + -Wno-format-zero-length) ;; + -Wdisabled-optimization) ;; + -Wno-pointer-sign) echo -Wno-other ;; + *) echo $flag ;; + esac + done +} + msvc_common_flags(){ for flag; do case $flag in @@ -2405,7 +2419,7 @@ msvc_flags(){ -Wall) echo -W4 -wd4244 -wd4127 -wd4018 -wd4389 \ -wd4146 -wd4057 -wd4204 -wd4706 -wd4305 \ -wd4152 -wd4324 -we4013 -wd4100 -wd4214 \ - -wd4996 -wd4273 ;; + -wd4273 ;; esac done } @@ -2629,7 +2643,7 @@ probe_cc(){ _ld_lib='lib%.a' _ld_path='-libpath:' _flags='-nologo' - _cflags='-D_USE_MATH_DEFINES -Dinline=__inline -FIstdlib.h -Dstrtoll=_strtoi64' + _cflags='-D_USE_MATH_DEFINES -D_CRT_SECURE_NO_WARNINGS -Dinline=__inline -FIstdlib.h -Dstrtoll=_strtoi64' if [ $pfx = hostcc ]; then append _cflags -Dsnprintf=_snprintf fi @@ -2661,6 +2675,13 @@ probe_cc(){ if [ $pfx = hostcc ]; then append _cflags -Dsnprintf=_snprintf fi + elif $_cc --version 2>/dev/null | grep -q ^cparser; then + _type=cparser + _ident=$($_cc --version | head -n1) + _depflags='-MMD' + _cflags_speed='-O4' + _cflags_size='-O2' + _flags_filter=cparser_flags fi eval ${pfx}_type=\$_type @@ -3570,8 +3591,8 @@ EOF elf*) enabled debug && append YASMFLAGS $yasm_debug ;; esac - check_yasm "vextractf128 xmm0, ymm0, 0" && enable yasm || - die "yasm not found, use --disable-yasm for a crippled build" + check_yasm "movbe ecx, [5]" && enable yasm || + die "yasm/nasm not found or too old. Use --disable-yasm for a crippled build." check_yasm "vfmaddps ymm0, ymm1, ymm2, ymm3" || disable fma4_external check_yasm "CPU amdnop" && enable cpunop fi @@ -3981,6 +4002,9 @@ elif enabled clang; then check_cflags -Werror=implicit-function-declaration check_cflags -Werror=missing-prototypes check_cflags -Werror=return-type +elif enabled cparser; then + add_cflags -Wno-missing-variable-declarations + add_cflags -Wno-empty-statement elif enabled armcc; then # 2523: use of inline assembler is deprecated add_cflags -W${armcc_opt},--diag_suppress=2523 @@ -3997,9 +4021,12 @@ elif enabled_any msvc icl; then enabled x86_32 && disable aligned_stack enabled_all x86_32 debug && add_cflags -Oy- enabled debug && add_ldflags -debug + enable pragma_deprecated if enabled icl; then - # basically -fstrict-aliasing that does not work (correctly) on icl 13.x - check_cpp_condition "windows.h" "__ICL < 1300" && add_cflags -Qansi-alias + # -Qansi-alias is basically -fstrict-aliasing, but does not work + # (correctly) on icl 13.x. + check_cpp_condition "windows.h" "__ICL < 1300 || __ICL >= 1400" && + add_cflags -Qansi-alias # icl will pass the inline asm tests but inline asm is currently # not supported (build will fail) disable inline_asm @@ -4141,6 +4168,7 @@ AR=$ar ARFLAGS=$arflags AR_O=$ar_o RANLIB=$ranlib +STRIP=$strip LN_S=$ln_s CPPFLAGS=$CPPFLAGS CFLAGS=$CFLAGS