X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure;h=50113875e39449fe34ee9cc32c616d5159db52e2;hb=77eb5504d3b3e1047900382350e0bc5e0bfb16b5;hp=d08deb0d0bc3e90cadd8dbec2b5a328a7094d4e7;hpb=b6c06894560b9ed11bb6bf6d3036e7c278e1becf;p=ffmpeg diff --git a/configure b/configure index d08deb0d0bc..50113875e39 100755 --- a/configure +++ b/configure @@ -86,7 +86,6 @@ Configuration options: --disable-ffserver disable ffserver build --disable-avdevice disable libavdevice build --disable-avcodec disable libavcodec build - --disable-avcore disable libavcore build --disable-avformat disable libavformat build --disable-swscale disable libswscale build --enable-postproc enable GPLed postprocessing support [no] @@ -223,6 +222,7 @@ Advanced options (experts only): --disable-mmx2 disable MMX2 optimizations --disable-sse disable SSE optimizations --disable-ssse3 disable SSSE3 optimizations + --disable-avx disable AVX optimizations --disable-armv5te disable armv5te optimizations --disable-armv6 disable armv6 optimizations --disable-armv6t2 disable armv6t2 optimizations @@ -235,6 +235,7 @@ Advanced options (experts only): --enable-pic build position-independent code --malloc-prefix=PFX prefix malloc and related names with PFX --enable-sram allow use of on-chip SRAM + --disable-symver disable symbol versioning Developer options (useful when working on FFmpeg itself): --disable-debug disable debugging symbols @@ -276,7 +277,7 @@ die(){ cat < $TMPSH 2>> $logfile <&1 | grep -q '^gcc.*LLVM'; then elif $cc -v 2>&1 | grep -qi ^gcc; then cc_type=gcc cc_version=__VERSION__ - gcc_extra_ver=$(expr "$($cc --version | head -n1)" : '.*\((.*)\)') - cc_ident="gcc $($cc -dumpversion) $gcc_extra_ver" + gcc_version=$($cc --version | head -n1) + gcc_basever=$($cc -dumpversion) + gcc_pkg_ver=$(expr "$gcc_version" : '[^ ]* \(([^)]*)\)') + gcc_ext_ver=$(expr "$gcc_version" : ".*$gcc_pkg_ver $gcc_basever \\(.*\\)") + cc_ident=$(cleanws "gcc $gcc_basever $gcc_pkg_ver $gcc_ext_ver") if ! $cc -dumpversion | grep -q '^2\.'; then CC_DEPFLAGS='-MMD -MF $(@:.o=.d) -MT $@' AS_DEPFLAGS='-MMD -MF $(@:.o=.d) -MT $@' @@ -1886,6 +1919,7 @@ elif $cc --vsn 2>/dev/null | grep -q "ARM C/C++ Compiler"; then AS_DEPFLAGS='-MMD' speed_cflags='-O3' size_cflags='-Os' + filter_asflags="filter_out -W${armcc_opt}*" elif $cc -version 2>/dev/null | grep -q TMS470; then cc_type=tms470 cc_version="AV_STRINGIFY(__TI_COMPILER_VERSION__)" @@ -2082,7 +2116,7 @@ case "$arch" in arch="sparc" subarch="sparc64" ;; - i[3-6]86|i86pc|BePC|x86_64|amd64) + i[3-6]86|i86pc|BePC|x86pc|x86_64|amd64) arch="x86" ;; esac @@ -2278,6 +2312,7 @@ case $target_os in haiku) prefix_default="/boot/common" network_extralibs="-lnetwork" + host_libs= ;; sunos) FFSERVERLDFLAGS="" @@ -2288,6 +2323,7 @@ case $target_os in nm_opts='-P -g' ;; netbsd) + disable symver oss_indev_extralibs="-lossaudio" oss_outdev_extralibs="-lossaudio" add_cppflags -D_XOPEN_SOURCE=600 @@ -2300,11 +2336,16 @@ case $target_os in # (simply quits with exit-code 1, no crash, no output). # Thus explicitly enable PIC here. enable pic + disable symver SHFLAGS='-shared' oss_indev_extralibs="-lossaudio" oss_outdev_extralibs="-lossaudio" ;; - freebsd|dragonfly) + dragonfly) + enable malloc_aligned + disable symver + ;; + freebsd) enable malloc_aligned ;; bsd/os) @@ -2413,6 +2454,10 @@ case $target_os in ;; gnu) ;; + qnx) + add_cppflags -D_QNX_SOURCE + network_extralibs="-lsocket" + ;; none) ;; *) @@ -2456,8 +2501,6 @@ die_license_disabled version3 libopencore_amrwb enabled version3 && { enabled gpl && enable gplv3 || enable lgplv3; } -check_deps $ARCH_EXT_LIST - disabled optimizations || check_cflags -fomit-frame-pointer enable_pic() { @@ -2508,10 +2551,18 @@ elif enabled arm; then check_cflags -marm nogas=die - check_ld <= 3.98.3" lame/lame.h hip_decode_init -lmp3lame +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 @@ -2763,8 +2846,8 @@ enabled libvpx && { enabled libvpx_encoder && { check_lib2 "vpx/vpx_encoder.h vpx/vp8cx.h" vpx_codec_enc_init_ver -lvpx || die "ERROR: libvpx encoder version must be >=0.9.1"; } } enabled libx264 && require libx264 x264.h x264_encoder_encode -lx264 && - { check_cpp_condition x264.h "X264_BUILD >= 98" || - die "ERROR: libx264 version must be >= 0.98."; } + { check_cpp_condition x264.h "X264_BUILD >= 99" || + die "ERROR: libx264 version must be >= 0.99."; } enabled libxavs && require libxavs xavs.h xavs_encoder_encode -lxavs enabled libxvid && require libxvid xvid.h xvid_global -lxvidcore enabled mlib && require mediaLib mlib_types.h mlib_VectorSub_S16_U8_Mod -lmlib @@ -2790,32 +2873,6 @@ fi texi2html -version > /dev/null 2>&1 && enable texi2html || disable texi2html -if enabled network; then - check_type "sys/types.h sys/socket.h" socklen_t - check_type netdb.h "struct addrinfo" - check_type netinet/in.h "struct ipv6_mreq" - 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 - # Prefer arpa/inet.h over winsock2 - if check_header arpa/inet.h ; then - check_func closesocket - elif check_header winsock2.h ; then - check_func_headers winsock2.h closesocket -lws2 && \ - network_extralibs="-lws2" || \ - { check_func_headers winsock2.h closesocket -lws2_32 && \ - network_extralibs="-lws2_32"; } - check_type ws2tcpip.h socklen_t - check_type ws2tcpip.h "struct addrinfo" - check_type ws2tcpip.h "struct ipv6_mreq" - check_type ws2tcpip.h "struct sockaddr_in6" - check_type ws2tcpip.h "struct sockaddr_storage" - check_struct winsock2.h "struct sockaddr" sa_len - else - disable network - fi -fi - check_header linux/videodev.h check_header linux/videodev2.h check_header sys/videoio.h @@ -2877,8 +2934,8 @@ enabled extra_warnings && check_cflags -Winline # add some linker flags check_ldflags -Wl,--warn-common check_ldflags -Wl,--as-needed -check_ldflags '-Wl,-rpath-link,\$(BUILD_ROOT)/libpostproc -Wl,-rpath-link,\$(BUILD_ROOT)/libswscale -Wl,-rpath-link,\$(BUILD_ROOT)/libavfilter -Wl,-rpath-link,\$(BUILD_ROOT)/libavdevice -Wl,-rpath-link,\$(BUILD_ROOT)/libavformat -Wl,-rpath-link,\$(BUILD_ROOT)/libavcodec -Wl,-rpath-link,\$(BUILD_ROOT)/libavcore -Wl,-rpath-link,\$(BUILD_ROOT)/libavutil' -check_ldflags -Wl,-Bsymbolic +check_ldflags '-Wl,-rpath-link,\$(BUILD_ROOT)/libpostproc -Wl,-rpath-link,\$(BUILD_ROOT)/libswscale -Wl,-rpath-link,\$(BUILD_ROOT)/libavfilter -Wl,-rpath-link,\$(BUILD_ROOT)/libavdevice -Wl,-rpath-link,\$(BUILD_ROOT)/libavformat -Wl,-rpath-link,\$(BUILD_ROOT)/libavcodec -Wl,-rpath-link,\$(BUILD_ROOT)/libavutil' +test_ldflags -Wl,-Bsymbolic && append SHFLAGS -Wl,-Bsymbolic echo "X{};" > $TMPV if test_ldflags -Wl,--version-script,$TMPV; then @@ -2910,8 +2967,9 @@ if enabled icc; then # -wd: Disable following warnings # 144, 167, 556: -Wno-pointer-sign # 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,10006,10156 + check_cflags -wd144,167,556,10006,10148,10156 # 11030: Warning unknown option --as-needed # 10156: ignoring option '-export'; no argument required check_ldflags -wd10156,11030 @@ -2945,8 +3003,12 @@ elif enabled armcc; then # 2523: use of inline assembler 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 + add_cflags -W${armcc_opt},--diag_suppress=3343 # hardfp compat elif enabled tms470; then add_cflags -pds=824 -pds=837 +elif enabled pathscale; then + add_cflags -fstrict-overflow -OPT:wrap_around_unsafe_opt=OFF fi enabled_any $THREADS_LIST && enable threads @@ -3082,7 +3144,6 @@ if enabled source_path_used; then doc libavcodec libavcodec/$arch - libavcore libavdevice libavfilter libavfilter/$arch @@ -3102,9 +3163,9 @@ if enabled source_path_used; then doc/texi2pod.pl libavcodec/Makefile libavcodec/${arch}/Makefile - libavcore/Makefile libavdevice/Makefile libavfilter/Makefile + libavfilter/${arch}/Makefile libavformat/Makefile libavutil/Makefile libpostproc/Makefile @@ -3204,9 +3265,8 @@ get_version(){ get_version LIBSWSCALE libswscale/swscale.h get_version LIBPOSTPROC libpostproc/postprocess.h get_version LIBAVCODEC libavcodec/avcodec.h -get_version LIBAVCORE libavcore/avcore.h get_version LIBAVDEVICE libavdevice/avdevice.h -get_version LIBAVFORMAT libavformat/avformat.h +get_version LIBAVFORMAT libavformat/version.h get_version LIBAVUTIL libavutil/avutil.h get_version LIBAVFILTER libavfilter/avfilter.h @@ -3220,9 +3280,9 @@ cat > $TMPH <> $TMPH - echo "#define av_always_inline" >> $TMPH + if enabled small; then + echo "#define av_always_inline inline" >> $TMPH + else + echo "#define av_always_inline av_unused" >> $TMPH + fi fi if enabled yasm; then @@ -3328,10 +3392,9 @@ EOF } pkgconfig_generate libavutil "FFmpeg utility library" "$LIBAVUTIL_VERSION" -pkgconfig_generate libavcore "FFmpeg multimedia shared core utilities library" "$LIBAVCORE_VERSION" "" "libavutil = $LIBAVUTIL_VERSION" -pkgconfig_generate libavcodec "FFmpeg codec library" "$LIBAVCODEC_VERSION" "$extralibs" "libavcore = $LIBAVCORE_VERSION" +pkgconfig_generate libavcodec "FFmpeg codec library" "$LIBAVCODEC_VERSION" "$extralibs" pkgconfig_generate libavformat "FFmpeg container format library" "$LIBAVFORMAT_VERSION" "$extralibs" "libavcodec = $LIBAVCODEC_VERSION" pkgconfig_generate libavdevice "FFmpeg device handling library" "$LIBAVDEVICE_VERSION" "$extralibs" "libavformat = $LIBAVFORMAT_VERSION" -pkgconfig_generate libavfilter "FFmpeg video filtering library" "$LIBAVFILTER_VERSION" "$extralibs" "libavcore = $LIBAVCORE_VERSION" +pkgconfig_generate libavfilter "FFmpeg video filtering library" "$LIBAVFILTER_VERSION" "$extralibs" pkgconfig_generate libpostproc "FFmpeg post processing library" "$LIBPOSTPROC_VERSION" pkgconfig_generate libswscale "FFmpeg image rescaling library" "$LIBSWSCALE_VERSION" "" "libavutil = $LIBAVUTIL_VERSION"