PR #22705 opened by Kacper Michajłow (kasper93) URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/22705 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/22705.patch
From 30afdeb2410ea5e44b4c75ca528999d9938ba2ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?= <[email protected]> Date: Sat, 4 Apr 2026 12:49:41 +0200 Subject: [PATCH 1/2] configure: check sanitizer flags before adding them MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kacper Michajłow <[email protected]> --- configure | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/configure b/configure index 32db36cee4..72493aa528 100755 --- a/configure +++ b/configure @@ -4871,29 +4871,29 @@ test -n "$valgrind" && toolchain="valgrind-memcheck" add_sanitizer_flags(){ case "$1" in asan) - add_allcflags -fsanitize=address - add_ldflags -fsanitize=address + check_allcflags -fsanitize=address + check_ldflags -fsanitize=address ;; fuzz) - add_allcflags -fsanitize=fuzzer-no-link - add_ldflags -fsanitize=fuzzer-no-link + check_allcflags -fsanitize=fuzzer-no-link + check_ldflags -fsanitize=fuzzer-no-link : "${libfuzzer_path:=-fsanitize=fuzzer}" ;; lsan) - add_allcflags -fsanitize=leak - add_ldflags -fsanitize=leak + check_allcflags -fsanitize=leak + check_ldflags -fsanitize=leak ;; msan) - add_allcflags -fsanitize=memory -fsanitize-memory-track-origins - add_ldflags -fsanitize=memory + check_allcflags -fsanitize=memory -fsanitize-memory-track-origins + check_ldflags -fsanitize=memory ;; tsan) - add_allcflags -fsanitize=thread - add_ldflags -fsanitize=thread + check_allcflags -fsanitize=thread + check_ldflags -fsanitize=thread ;; usan|ubsan) - add_allcflags -fsanitize=undefined - add_ldflags -fsanitize=undefined + check_allcflags -fsanitize=undefined + check_ldflags -fsanitize=undefined ;; ?*) die "Unknown sanitizer $1" @@ -4908,12 +4908,12 @@ add_sanitizers(){ for sanitizer; do add_sanitizer_flags "$sanitizer" done - add_allcflags -fno-omit-frame-pointer + check_allcflags -fno-omit-frame-pointer } case "$toolchain" in clang-*) - add_sanitizers "${toolchain#clang-}" + requested_sanitizers="${toolchain#clang-}" cc_default="clang" cxx_default="clang++" ;; @@ -4925,10 +4925,10 @@ case "$toolchain" in ranlib_default="llvm-ranlib" strip_default="llvm-strip" windres_default="llvm-windres" - test "$toolchain" != "llvm" && add_sanitizers "${toolchain#llvm-}" + test "$toolchain" != "llvm" && requested_sanitizers="${toolchain#llvm-}" ;; gcc-*) - add_sanitizers "${toolchain#gcc-}" + requested_sanitizers="${toolchain#gcc-}" cc_default="gcc" cxx_default="g++" # In case of tsan with gcc, PIC has to be enabled @@ -5487,6 +5487,8 @@ set_ccvars(){ fi } +test -n "$requested_sanitizers" && add_sanitizers "$requested_sanitizers" + probe_cc cc "$cc" "true" cflags_filter=$_flags_filter cflags_speed=$_cflags_speed -- 2.52.0 From 36acf697f8166fa3611faee1699256eda095d3d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?= <[email protected]> Date: Sat, 4 Apr 2026 12:50:00 +0200 Subject: [PATCH 2/2] configure: allow sanitizers for msvc toolchain MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This allows `--toolchain=msvc-asan`. Signed-off-by: Kacper Michajłow <[email protected]> --- configure | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/configure b/configure index 72493aa528..29adea3225 100755 --- a/configure +++ b/configure @@ -4948,7 +4948,7 @@ case "$toolchain" in ;; esac ;; - msvc) + msvc|msvc-*) cl_major_ver=$(cl.exe 2>&1 | sed -n 's/.*Version \([[:digit:]]\{1,\}\)\..*/\1/p') if [ -z "$cl_major_ver" ] || [ $cl_major_ver -ge 18 ]; then cc_default="cl.exe" @@ -4974,6 +4974,7 @@ case "$toolchain" in # issues with msys/win32 path conversion for MSVC parameters # such as -Fo<file> or -out:<file>. TMPDIR=. + test "$toolchain" != "msvc" && requested_sanitizers="${toolchain#msvc-}" ;; icl) cc_default="icl" -- 2.52.0 _______________________________________________ ffmpeg-devel mailing list -- [email protected] To unsubscribe send an email to [email protected]
