You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-10 06:10:52 +02:00
configure: Move x86 assembler sanity check into assembler probe function
This allows for more graceful fallback from NASM to Yasm if the available
NASM version is too old.
(Cherry-picked from libav commit adfd7892e3
)
Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
committed by
James Almer
parent
4f9297ac3b
commit
5cae5a1def
8
configure
vendored
8
configure
vendored
@@ -5503,13 +5503,15 @@ EOF
|
|||||||
x86asm_debug="-g dwarf2"
|
x86asm_debug="-g dwarf2"
|
||||||
X86ASMDEP='$(DEPX86ASM) $(X86ASMFLAGS) -M $(X86ASM_O) $< > $(@:.o=.d)'
|
X86ASMDEP='$(DEPX86ASM) $(X86ASMFLAGS) -M $(X86ASM_O) $< > $(@:.o=.d)'
|
||||||
fi
|
fi
|
||||||
|
check_x86asm "movbe ecx, [5]" && enable x86asm
|
||||||
}
|
}
|
||||||
|
|
||||||
if ! disabled_any asm mmx x86asm; then
|
if ! disabled_any asm mmx x86asm; then
|
||||||
|
disable x86asm
|
||||||
for program in $x86asmexe nasm yasm; do
|
for program in $x86asmexe nasm yasm; do
|
||||||
probe_x86asm $program
|
probe_x86asm $program && break
|
||||||
test -n "$x86asm_type" && break
|
|
||||||
done
|
done
|
||||||
|
disabled x86asm && die "nasm/yasm not found or too old. Use --disable-x86asm for a crippled build."
|
||||||
X86ASMFLAGS="-f $objformat"
|
X86ASMFLAGS="-f $objformat"
|
||||||
enabled pic && append X86ASMFLAGS "-DPIC"
|
enabled pic && append X86ASMFLAGS "-DPIC"
|
||||||
test -n "$extern_prefix" && append X86ASMFLAGS "-DPREFIX"
|
test -n "$extern_prefix" && append X86ASMFLAGS "-DPREFIX"
|
||||||
@@ -5517,8 +5519,6 @@ EOF
|
|||||||
elf*) enabled debug && append X86ASMFLAGS $x86asm_debug ;;
|
elf*) enabled debug && append X86ASMFLAGS $x86asm_debug ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
check_x86asm "movbe ecx, [5]" && enable x86asm ||
|
|
||||||
die "nasm/yasm not found or too old. Use --disable-x86asm for a crippled build."
|
|
||||||
check_x86asm "vextracti128 xmm0, ymm0, 0" || disable avx2_external
|
check_x86asm "vextracti128 xmm0, ymm0, 0" || disable avx2_external
|
||||||
check_x86asm "vpmacsdd xmm0, xmm1, xmm2, xmm3" || disable xop_external
|
check_x86asm "vpmacsdd xmm0, xmm1, xmm2, xmm3" || disable xop_external
|
||||||
check_x86asm "vfmaddps ymm0, ymm1, ymm2, ymm3" || disable fma4_external
|
check_x86asm "vfmaddps ymm0, ymm1, ymm2, ymm3" || disable fma4_external
|
||||||
|
Reference in New Issue
Block a user