Standard options:
--logfile=FILE log tests and output to FILE [config.log]
--disable-logging do not log configure debug information
+ --fatal-warnings fail if any configure warning is generated
--prefix=PREFIX install in PREFIX [$prefix]
--bindir=DIR install binaries in DIR [PREFIX/bin]
--datadir=DIR install data files in DIR [PREFIX/share/ffmpeg]
--enable-gray enable full grayscale support (slower color)
--disable-swscale-alpha disable alpha channel support in swscale
+Program options:
+ --disable-programs do not build command line programs
+ --disable-ffmpeg disable ffmpeg build
+ --disable-ffplay disable ffplay build
+ --disable-ffprobe disable ffprobe build
+ --disable-ffserver disable ffserver build
+
Documentation options:
--disable-doc do not build documentation
--disable-htmlpages do not build HTML documentation pages
--disable-txtpages do not build text documentation pages
Component options:
- --disable-ffmpeg disable ffmpeg build
- --disable-ffplay disable ffplay build
- --disable-ffprobe disable ffprobe build
- --disable-ffserver disable ffserver build
--disable-avdevice disable libavdevice build
--disable-avcodec disable libavcodec build
--disable-avformat disable libavformat build
}
print_enabled(){
- test x"$1" = x-n && end=" " && shift || end="\n"
suf=$1
shift
for v; do
- enabled $v && printf "%s$end" ${v%$suf};
+ enabled $v && printf "%s\n" ${v%$suf};
done
}
'
ARCH_LIST='
+ aarch64
alpha
arm
avr32
frei0r_filter_extralibs='$ldl'
frei0r_src_filter_deps="frei0r dlopen"
frei0r_src_filter_extralibs='$ldl'
+geq_filter_deps="gpl"
hqdn3d_filter_deps="gpl"
hue_filter_deps="gpl"
movie_filter_deps="avcodec avformat"
;;
--enable-debug=*) debuglevel="$optval"
;;
+ --disable-programs)
+ disable $PROGRAM_LIST
+ ;;
--disable-everything)
map 'eval unset \${$(toupper ${v%s})_LIST}' $COMPONENT_LIST
;;
is_in "${thing}s" $COMPONENT_LIST || die_unknown "$opt"
eval list=\$$(toupper $thing)_LIST
name=$(echo "${optval}" | sed "s/,/_${thing}|/g")_${thing}
- $action $(filter "$name" $list)
+ list=$(filter "$name" $list)
+ [ "$list" = "" ] && warn "Option $opt did not match anything"
+ $action $list
;;
--enable-?*|--disable-?*)
eval $(echo "$opt" | sed 's/--/action=/;s/-/ option=/;s/-/_/g')
;;
--help|-h) show_help
;;
+ --fatal-warnings) enable fatal_warnings
+ ;;
*)
optname="${opt%%=*}"
optname="${optname#--}"
# Deal with common $arch aliases
case "$arch" in
+ aarch64|arm64)
+ arch="aarch64"
+ ;;
arm*|iPad*)
arch="arm"
;;
disable altivec
;;
g3|75*|ppc75*|powerpc75*)
- cpuflags="-mcpu=750 -mpowerpc-gfxopt"
+ cpuflags="-mcpu=750"
disable altivec
;;
g4|745*|ppc745*|powerpc745*)
- cpuflags="-mcpu=7450 -mpowerpc-gfxopt"
+ cpuflags="-mcpu=7450"
;;
74*|ppc74*|powerpc74*)
- cpuflags="-mcpu=7400 -mpowerpc-gfxopt"
+ cpuflags="-mcpu=7400"
;;
g5|970|ppc970|powerpc970)
- cpuflags="-mcpu=970 -mpowerpc-gfxopt -mpowerpc64"
+ cpuflags="-mcpu=970"
;;
power[3-7]*)
- cpuflags="-mcpu=$cpu -mpowerpc-gfxopt -mpowerpc64"
+ cpuflags="-mcpu=$cpu"
;;
cell)
cpuflags="-mcpu=cell"
;;
esac
+elif enabled aarch64; then
+
+ case $cpu in
+ armv*)
+ cpuflags="-march=$cpu"
+ ;;
+ *)
+ cpuflags="-mcpu=$cpu"
+ ;;
+ esac
+
fi
add_cflags $cpuflags
SHFLAGS='-shared -Wl,--out-implib,$(SUBDIR)lib$(FULLNAME).dll.a'
objformat="win32"
enable dos_paths
- add_cppflags -U__STRICT_ANSI__
;;
*-dos|freedos|opendos)
network_extralibs="-lsocket"
add_cppflags -U__STRICT_ANSI__
;;
linux)
- add_cppflags -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600
enable dv1394
;;
irix*)
enable_weak os2threads
;;
gnu/kfreebsd)
- add_cppflags -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -D_BSD_SOURCE
+ add_cppflags -D_BSD_SOURCE
;;
gnu)
- add_cppflags -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600
;;
qnx)
add_cppflags -D_QNX_SOURCE
if check_cpp_condition features.h "defined __UCLIBC__"; then
libc_type=uclibc
+ add_cppflags -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600
elif check_cpp_condition features.h "defined __GLIBC__"; then
libc_type=glibc
+ add_cppflags -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600
elif check_header _mingw.h; then
libc_type=mingw
check_cpp_condition _mingw.h \
fi
elif check_cpp_condition newlib.h "defined _NEWLIB_VERSION"; then
libc_type=newlib
+ add_cppflags -U__STRICT_ANSI__
elif check_func_headers stdlib.h _get_doserrno; then
libc_type=msvcrt
add_compat strtod.o strtod=avpriv_strtod
enabled mipsfpu && add_cflags "-mhard-float" && add_asflags "-mhard-float" &&
check_inline_asm mipsfpu '"madd.d $f0, $f2, $f4, $f6"'
+elif enabled parisc; then
+
+ if enabled gcc; then
+ case $($cc -dumpversion) in
+ 4.[3-8].*) check_cflags -fno-optimize-sibling-calls ;;
+ esac
+ fi
+
elif enabled ppc; then
enable local_aligned_8 local_aligned_16
elif enabled clang; then
check_cflags -mllvm -stack-alignment=16
check_cflags -Qunused-arguments
+ check_cflags -Werror=implicit-function-declaration
+ check_cflags -Werror=missing-prototypes
elif enabled armcc; then
# 2523: use of inline assembler is deprecated
add_cflags -W${armcc_opt},--diag_suppress=2523
cp_if_changed $TMPH libavutil/avconfig.h
-test -n "$WARNINGS" && printf "\n$WARNINGS"
+if test -n "$WARNINGS"; then
+ printf "\n$WARNINGS"
+ enabled fatal_warnings && exit 1
+fi
# build pkg-config files
EOF
}
-libavfilter_pc_deps=""
+libavfilter_pc_deps="libavutil = $LIBAVUTIL_VERSION"
enabled libavfilter_deps_avcodec && prepend libavfilter_pc_deps "libavcodec = $LIBAVCODEC_VERSION,"
enabled libavfilter_deps_avformat && prepend libavfilter_pc_deps "libavformat = $LIBAVFORMAT_VERSION,"
enabled libavfilter_deps_swscale && prepend libavfilter_pc_deps "libswscale = $LIBSWSCALE_VERSION,"
pkgconfig_generate libavdevice "FFmpeg device handling library" "$LIBAVDEVICE_VERSION" "$extralibs" "$libavdevice_pc_deps"
pkgconfig_generate libavfilter "FFmpeg video filtering library" "$LIBAVFILTER_VERSION" "$extralibs" "$libavfilter_pc_deps"
pkgconfig_generate libpostproc "FFmpeg postprocessing library" "$LIBPOSTPROC_VERSION" "" "libavutil = $LIBAVUTIL_VERSION"
-pkgconfig_generate libavresample "Libav audio resampling library" "$LIBAVRESAMPLE_VERSION" "$extralibs"
+pkgconfig_generate libavresample "Libav audio resampling library" "$LIBAVRESAMPLE_VERSION" "$extralibs" "libavutil = $LIBAVUTIL_VERSION"
pkgconfig_generate libswscale "FFmpeg image rescaling library" "$LIBSWSCALE_VERSION" "$LIBM" "libavutil = $LIBAVUTIL_VERSION"
pkgconfig_generate libswresample "FFmpeg audio rescaling library" "$LIBSWRESAMPLE_VERSION" "$LIBM" "libavutil = $LIBAVUTIL_VERSION"