--disable-neon disable NEON optimizations
--disable-inline-asm disable use of inline assembly
--disable-yasm disable use of nasm/yasm assembly
+ --disable-mips32r5 disable MIPS32R5 optimizations
+ --disable-mips64r6 disable MIPS64R6 optimizations
--disable-mipsdspr1 disable MIPS DSP ASE R1 optimizations
--disable-mipsdspr2 disable MIPS DSP ASE R2 optimizations
+ --disable-msa disable MSA optimizations
--disable-mipsfpu disable floating point MIPS optimizations
--disable-fast-unaligned consider unaligned accesses slow
(group) and PROB the probability associated with
NAME (default 0.5).
--random-seed=VALUE seed value for --enable/disable-random
+ --disable-valgrind-backtrace do not print a backtrace under Valgrind
+ (only applies to --disable-optimizations builds)
NOTE: Object files are built at the place where configure is launched.
EOF
pod2man
raise_major
thumb
+ valgrind_backtrace
xmm_clobber_test
"
ARCH_EXT_LIST_MIPS="
mipsfpu
mips32r2
+ mips32r5
+ mips64r6
mipsdspr1
mipsdspr2
+ msa
"
ARCH_EXT_LIST_X86_SIMD="
termios_h
udplite_h
unistd_h
+ valgrind_valgrind_h
windows_h
winsock2_h
"
map 'eval ${v}_inline_deps=inline_asm' $ARCH_EXT_LIST_ARM
+loongson_deps="mips"
mipsfpu_deps="mips"
mipsdspr1_deps="mips"
mipsdspr2_deps="mips"
+mips32r2_deps="mips"
+mips32r5_deps="mips"
+mips64r6_deps="mips"
+msa_deps="mips"
altivec_deps="ppc"
+dcbzl_deps="ppc"
+ldbrx_deps="ppc"
ppc4xx_deps="ppc"
vsx_deps="ppc"
# system capabilities
symver_if_any="symver_asm_label symver_gnu_asm"
+valgrind_backtrace_deps="!optimizations valgrind_valgrind_h"
# threading support
atomics_gcc_if_any="sync_val_compare_and_swap atomic_compare_exchange"
h263_decoder_select="error_resilience h263_parser h263dsp mpeg_er mpegvideo qpeldsp"
h263_encoder_select="aandcttables h263dsp mpegvideoenc"
h263i_decoder_select="h263_decoder"
+h263p_decoder_select="h263_decoder"
h263p_encoder_select="h263_encoder"
h264_decoder_select="cabac golomb h264chroma h264dsp h264pred h264qpel startcode videodsp"
h264_decoder_suggest="error_resilience"
decklink_indev_deps="decklink pthreads"
decklink_indev_extralibs="-lstdc++"
dshow_indev_deps="IBaseFilter"
-dshow_indev_extralibs="-lpsapi -lole32 -lstrmiids -luuid -loleaut32"
+dshow_indev_extralibs="-lpsapi -lole32 -lstrmiids -luuid -loleaut32 -lshlwapi"
dv1394_indev_deps="dv1394"
dv1394_indev_select="dv_demuxer"
fbdev_indev_deps="linux_fb_h"
enable safe_bitstream_reader
enable static
enable swscale_alpha
+enable valgrind_backtrace
sws_max_filter_size_default=256
set_default sws_max_filter_size
case $cpu in
24kc)
+ disable mips32r5
+ disable mips64r6
disable mipsfpu
disable mipsdspr1
disable mipsdspr2
+ disable msa
;;
24kf*)
+ disable mips32r5
+ disable mips64r6
disable mipsdspr1
disable mipsdspr2
+ disable msa
;;
24kec|34kc|1004kc)
+ disable mips32r5
+ disable mips64r6
disable mipsfpu
disable mipsdspr2
+ disable msa
;;
24kef*|34kf*|1004kf*)
+ disable mips32r5
+ disable mips64r6
disable mipsdspr2
+ disable msa
;;
74kc)
+ disable mips32r5
+ disable mips64r6
disable mipsfpu
+ disable msa
+ ;;
+ 74kf)
+ disable mips32r5
+ disable mips64r6
+ disable msa
+ ;;
+ p5600)
+ disable mips64r6
+ disable mipsdspr1
+ disable mipsdspr2
+
+ check_cflags "-mtune=p5600"
+ ;;
+ i6400)
+ disable mips32r5
+ disable mipsdspr1
+ disable mipsdspr2
+ disable mipsfpu
+
+ check_cflags "-mtune=i6400 -mabi=64"
+ check_ldflags "-mabi=64"
+ ;;
+ generic)
+ disable mips32r5
+ disable mips64r6
+ disable msa
;;
esac
elif enabled mips64 && enabled mipsfpu; then
add_cflags "-mips64"
add_asflags "-mips64"
- elif enabled mipsfpu || enabled mipsdspr1 || enabled mipsdspr2; then
- add_cflags "-mips32r2"
- add_asflags "-mips32r2"
+ elif enabled mipsdspr1 || enabled mipsdspr2; then
+ add_cflags "-mips32r2 -mfp32"
+ add_asflags "-mips32r2 -mfp32"
+ elif enabled mips32r5 || enabled mips64r6; then
+ check_cflags "-mfp64"
+ check_ldflags "-mfp64"
fi
+ enabled mips32r5 && check_cflags "-mips32r5 -msched-weight -mload-store-pairs -funroll-loops" &&
+ check_ldflags "-mips32r5" &&
+ check_inline_asm mips32r5 '"ulw $t0, ($t1)"'
+ enabled mips64r6 && check_cflags "-mips64r6 -msched-weight -mload-store-pairs -funroll-loops" &&
+ check_ldflags "-mips64r6" &&
+ check_inline_asm mips64r6 '"aui $t0, $t1, 1"'
enabled mipsdspr1 && add_cflags "-mdsp" && add_asflags "-mdsp" &&
check_inline_asm mipsdspr1 '"addu.qb $t0, $t1, $t2"'
enabled mipsdspr2 && add_cflags "-mdspr2" && add_asflags "-mdspr2" &&
check_inline_asm mipsdspr2 '"absq_s.qb $t0, $t1"'
enabled mipsfpu && add_cflags "-mhard-float" && add_asflags "-mhard-float" &&
check_inline_asm mipsfpu '"madd.d $f0, $f2, $f4, $f6"'
+ enabled msa && check_cflags "-mmsa" && check_ldflags "-mmsa" &&
+ check_inline_asm msa '"addvi.b $w0, $w1, 1"'
+
+ enabled mips32r5 && add_asflags "-mips32r5 -mfp64"
+ enabled mips64r6 && add_asflags "-mips64r6 -mfp64"
+ enabled msa && add_asflags "-mmsa"
elif enabled parisc; then
check_header sys/un.h
check_header termios.h
check_header unistd.h
+check_header valgrind/valgrind.h
check_header vdpau/vdpau.h
check_header vdpau/vdpau_x11.h
check_header VideoDecodeAcceleration/VDADecoder.h
{ check_lib celt/celt.h celt_decoder_create_custom -lcelt0 ||
die "ERROR: libcelt must be installed and version must be >= 0.11.0."; }
enabled libcaca && require_pkg_config caca caca.h caca_create_canvas
-enabled libdcadec && require libdcadec libdcadec/dca_context.h dcadec_context_create -ldcadec
+enabled libdcadec && require_pkg_config dcadec libdcadec/dca_context.h dcadec_context_create
enabled libfaac && require2 libfaac "stdint.h faac.h" faacEncGetVersion -lfaac
enabled libfdk_aac && require libfdk_aac fdk-aac/aacenc_lib.h aacEncOpen -lfdk-aac
flite_libs="-lflite_cmu_time_awb -lflite_cmu_us_awb -lflite_cmu_us_kal -lflite_cmu_us_kal16 -lflite_cmu_us_rms -lflite_cmu_us_slt -lflite_usenglish -lflite_cmulex -lflite"
fi
if enabled mips; then
echo "MIPS FPU enabled ${mipsfpu-no}"
+ echo "MIPS32R5 enabled ${mips32r5-no}"
+ echo "MIPS64R6 enabled ${mips64r6-no}"
echo "MIPS DSP R1 enabled ${mipsdspr1-no}"
echo "MIPS DSP R2 enabled ${mipsdspr2-no}"
+ echo "MIPS MSA enabled ${msa-no}"
fi
if enabled ppc; then
echo "AltiVec enabled ${altivec-no}"