mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
configure: Add basic valgrind-memcheck support
With the parameter --valgrind-memcheck, the configure script sets reasonable defaults that can be overridden as explained in the documentation. The idea of using set_defaults is from Luca Barbato.
This commit is contained in:
parent
95e8ac60f8
commit
b1ee8eec84
8
configure
vendored
8
configure
vendored
@ -2210,6 +2210,10 @@ case "$toolchain" in
|
||||
add_cflags -fsanitize=thread -pie
|
||||
add_ldflags -fsanitize=thread -pie
|
||||
;;
|
||||
valgrind-memcheck)
|
||||
target_exec_default="valgrind"
|
||||
target_exec_args="--track-origins=yes --leak-check=full"
|
||||
;;
|
||||
msvc)
|
||||
cc_default="c99wrap cl"
|
||||
ld_default="c99wrap link"
|
||||
@ -2226,7 +2230,7 @@ case "$toolchain" in
|
||||
;;
|
||||
esac
|
||||
|
||||
set_default arch cc pkg_config sysinclude target_os
|
||||
set_default arch cc pkg_config sysinclude target_exec target_os
|
||||
enabled cross_compile || host_cc_default=$cc
|
||||
set_default host_cc
|
||||
|
||||
@ -4024,7 +4028,7 @@ HOSTCC_DEPFLAGS=$HOSTCC_DEPFLAGS
|
||||
HOSTCC_C=$HOSTCC_C
|
||||
HOSTCC_O=$HOSTCC_O
|
||||
HOSTLD_O=$HOSTLD_O
|
||||
TARGET_EXEC=$target_exec
|
||||
TARGET_EXEC=$target_exec $target_exec_args
|
||||
TARGET_PATH=$target_path
|
||||
LIBS-avplay=$sdl_libs
|
||||
CFLAGS-avplay=$sdl_cflags
|
||||
|
@ -574,6 +574,18 @@ You can use the command @code{make lcov-reset} to reset the coverage
|
||||
measurements. You will need to rerun @code{make lcov} after running a
|
||||
new test.
|
||||
|
||||
@subsection Using Valgrind
|
||||
|
||||
The configure script provides a shortcut for using valgrind to spot bugs
|
||||
related to memory handling. Just add the option
|
||||
@code{--toolchain=valgrind-memcheck} to your configure line, and
|
||||
reasonable defaults will be set for running FATE under the supervision
|
||||
of the @strong{memcheck} tool of the valgrind suite.
|
||||
|
||||
In case you need finer control over how valgrind is invoked, use the
|
||||
@code{--target-exec='valgrind <your_custom_valgrind_options>} option in
|
||||
your configure line instead.
|
||||
|
||||
@anchor{Release process}
|
||||
@section Release process
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user