--enable-libwavpack enable wavpack encoding via libwavpack [no]
--enable-libwebp enable WebP encoding via libwebp [no]
--enable-libx264 enable H.264 encoding via x264 [no]
+ --enable-libx265 enable HEVC encoding via x265 [no]
--enable-libxavs enable AVS encoding via xavs [no]
--enable-libxvid enable Xvid encoding via xvidcore,
native MPEG-4/Xvid encoder exists [no]
--disable-sse4 disable SSE4 optimizations
--disable-sse42 disable SSE4.2 optimizations
--disable-avx disable AVX optimizations
+ --disable-xop disable XOP optimizations
+ --disable-fma3 disable FMA3 optimizations
--disable-fma4 disable FMA4 optimizations
--disable-avx2 disable AVX2 optimizations
--disable-armv5te disable armv5te optimizations
"
EXAMPLE_LIST="
+ avcodec_example
+ filter_audio_example
+ metadata_example
output_example
transcode_aac_example
"
libwavpack
libwebp
libx264
+ libx265
libxavs
libxvid
openssl
amd3dnowext
avx
avx2
+ cpunop
+ xop
+ fma3
fma4
i686
mmx
altivec_h
arpa_inet_h
asm_mod_q
- asm_mod_y
atomic_cas_ptr
atomics_native
attribute_may_alias
cdio_paranoia_paranoia_h
closesocket
CommandLineToArgvW
- cpunop
CryptGenRandom
dcbzl
dev_bktr_ioctl_bt848_h
sse4_deps="ssse3"
sse42_deps="sse4"
avx_deps="sse42"
+xop_deps="avx"
+fma3_deps="avx"
fma4_deps="avx"
avx2_deps="avx"
atomics_suncc_if="atomic_cas_ptr machine_rw_barrier"
atomics_win32_if="MemoryBarrier"
atomics_native_if_any="$ATOMICS_LIST"
+w32threads_deps="atomics_native"
threads_if_any="$THREADS_LIST"
# subsystems
# parsers
h264_parser_select="golomb h264chroma h264dsp h264pred h264qpel videodsp"
-mpeg4video_parser_select="error_resilience mpegvideo"
+mpeg4video_parser_select="error_resilience h263dsp mpegvideo"
mpegvideo_parser_select="error_resilience mpegvideo"
vc1_parser_select="mpegvideo"
libwavpack_encoder_deps="libwavpack"
libwebp_encoder_deps="libwebp"
libx264_encoder_deps="libx264"
+libx265_encoder_deps="libx265"
libxavs_encoder_deps="libxavs"
libxvid_encoder_deps="libxvid"
# filters
blackframe_filter_deps="gpl"
boxblur_filter_deps="gpl"
+compand_filter_deps="strtok_r"
cropdetect_filter_deps="gpl"
delogo_filter_deps="gpl"
drawtext_filter_deps="libfreetype"
scale_filter_deps="swscale"
# examples
+avcodec_example_deps="avcodec avutil"
+filter_audio_example_deps="avfilter avutil"
+metadata_example_deps="avformat avutil"
output_example_deps="avcodec avformat avutil swscale"
transcode_aac_example_deps="avcodec avformat avresample"
fps_filter null_filter resample_filter scale_filter
setpts_filter trim_filter"
avplay_deps="avcodec avformat avresample swscale sdl"
+avplay_libs='$sdl_libs'
avplay_select="rdft"
avprobe_deps="avcodec avformat"
avserver_deps="avformat fork !shared"
avserver_select="ffm_muxer rtp_protocol rtsp_demuxer"
-avserver_extralibs='$ldl'
# documentation
pod2man_deps="doc"
add_cflags -fsanitize=thread -pie
add_ldflags -fsanitize=thread -pie
;;
+ clang-usan)
+ cc_default="clang"
+ add_cflags -fsanitize=undefined
+ add_ldflags -fsanitize=undefined
+ ;;
gcc-asan)
cc_default="gcc"
add_cflags -fsanitize=address
add_cflags -fsanitize=thread -pie -fPIC
add_ldflags -fsanitize=thread -pie -fPIC
;;
+ gcc-usan)
+ cc_default="gcc"
+ add_cflags -fsanitize=undefined
+ add_ldflags -fsanitize=undefined
+ ;;
valgrind-massif)
target_exec_default="valgrind"
target_exec_args="--alloc-fn=av_malloc --alloc-fn=av_mallocz"
die_license_disabled gpl libcdio
die_license_disabled gpl libx264
+die_license_disabled gpl libx265
die_license_disabled gpl libxavs
die_license_disabled gpl libxvid
die_license_disabled gpl x11grab
$ARCH_EXT_LIST_ARM
check_inline_asm asm_mod_q '"add r0, %Q0, %R0" :: "r"((long long)0)'
- check_inline_asm asm_mod_y '"vmul.i32 d0, d0, %y0" :: "x"(0)'
[ $target_os != win32 ] && enabled_all armv6t2 shared !pic && enable_weak_pic
check_yasm "movbe ecx, [5]" && enable yasm ||
die "yasm/nasm not found or too old. Use --disable-yasm for a crippled build."
+ 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" && enable cpunop
+ check_yasm "CPU amdnop" || disable cpunop
fi
case "$cpu" in
check_type netinet/sctp.h "struct sctp_event_subscribe"
check_func getaddrinfo $network_extralibs
check_func getservbyport $network_extralibs
+ check_func inet_aton $network_extralibs
# Prefer arpa/inet.h over winsock2
if check_header arpa/inet.h ; then
check_func closesocket
check_func getrusage
check_struct "sys/time.h sys/resource.h" "struct rusage" ru_maxrss
check_func gettimeofday
-check_func inet_aton $network_extralibs
check_func isatty
check_func localtime_r
check_func ${malloc_prefix}memalign && enable memalign
enabled libx264 && require libx264 x264.h x264_encoder_encode -lx264 &&
{ check_cpp_condition x264.h "X264_BUILD >= 118" ||
die "ERROR: libx264 version must be >= 0.118."; }
+enabled libx265 && require_pkg_config x265 x265.h x265_encoder_encode &&
+ { check_cpp_condition x265.h "X265_BUILD >= 7" ||
+ die "ERROR: libx265 version must be >= 7."; }
enabled libxavs && require libxavs xavs.h xavs_encoder_encode -lxavs
enabled libxvid && require libxvid xvid.h xvid_global -lxvidcore
enabled openssl && { check_lib openssl/ssl.h SSL_library_init -lssl -lcrypto ||
disable vdpau
enabled vdpau && enabled xlib &&
- check_lib2 "vdpau/vdpau.h vdpau/vdpau_x11.h" vdp_device_create_x11 -lvdpau &&
+ check_func_headers "vdpau/vdpau.h vdpau/vdpau_x11.h" vdp_device_create_x11 -lvdpau &&
+ prepend avconv_libs $($ldflags_filter "-lvdpau") &&
enable vdpau_x11
enabled debug && add_cflags -g"$debuglevel" && add_asflags -g"$debuglevel"
echo "SSE enabled ${sse-no}"
echo "SSSE3 enabled ${ssse3-no}"
echo "AVX enabled ${avx-no}"
+ echo "XOP enabled ${xop-no}"
+ echo "FMA3 enabled ${fma3-no}"
echo "FMA4 enabled ${fma4-no}"
echo "i686 features enabled ${i686-no}"
echo "CMOV is fast ${fast_cmov-no}"
TARGET_EXEC=$target_exec $target_exec_args
TARGET_PATH=$target_path
TARGET_SAMPLES=${target_samples:-\$(SAMPLES)}
-LIBS-avplay=$sdl_libs
CFLAGS-avplay=$sdl_cflags
ZLIB=$($ldflags_filter -lz)
LIB_INSTALL_EXTRA_CMD=$LIB_INSTALL_EXTRA_CMD
map 'get_version $v' $LIBRARY_LIST
+print_program_libs(){
+ eval "program_libs=\$${1}_libs"
+ eval echo "LIBS-${1}=${program_libs}" >> config.mak
+}
+
+map 'print_program_libs $v' $PROGRAM_LIST
+
cat > $TMPH <<EOF
/* Automatically generated by configure - do not modify! */
#ifndef LIBAV_CONFIG_H