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]

Reply via email to