[Tarantool-patches] [PATCH luajit 1/2] build: introduce LUAJIT_USE_ASAN option

Sergey Bronnikov sergeyb at tarantool.org
Thu Jul 13 14:52:53 MSK 2023


Hi, Igor!

Thanks for the patch! This patch LGTM after fixing a typo.

Sergey

On 7/13/23 00:09, Igor Munkin wrote:
> There was nether a special option nor a variable to configure the
Typo: nether -> neither
> sanitizers support via the build system since the commit
> 052c1a32a5e74b337686eee229d089d576775931 ("Add preliminary ASAN
> support") where ASan support had been introduced. We finally decided to
> use this feature in LuaJIT CI, so for convenient build configuration
> LUAJIT_USE_ASAN option is added to the root CMakeLists.txt.
>
> Resolves tarantool/tarantool#5878
>
> Co-authored-by: Sergey Kaplun <skaplun at tarantool.org>
> Signed-off-by: Igor Munkin <imun at tarantool.org>
> ---
>   CMakeLists.txt | 16 +++++++---------
>   1 file changed, 7 insertions(+), 9 deletions(-)
>
> diff --git a/CMakeLists.txt b/CMakeLists.txt
> index 6ef24bba..f113a53d 100644
> --- a/CMakeLists.txt
> +++ b/CMakeLists.txt
> @@ -269,15 +269,13 @@ if(LUA_USE_ASSERT)
>     AppendFlags(TARGET_C_FLAGS -DLUA_USE_ASSERT)
>   endif()
>   
> -# TODO: Implement a configuration option to enable ASAN.
> -# There are two entries of LUAJIT_USE_ASAN define:
> -# $ grep -rnF 'LUAJIT_USE_ASAN' .
> -# ./src/lj_str.c:15:#if LUAJIT_USE_ASAN
> -# ./src/host/buildvm.c:36:#if LUAJIT_USE_ASAN
> -# At the same time this flag is not provided by LuaJIT original
> -# build system (i.e. src/Makefile.original) so there are no
> -# related compiler and linker flags passed. This should be done
> -# the right way later.
> +# Turn on AddressSanitizer support. As a result, all artefacts
> +# (i.e. buildvm, LuaJIT, testing infrastructure) are built with
> +# ASan enabled.
> +option(LUAJIT_USE_ASAN "Build LuaJIT with AddressSanitizer" OFF)
> +if(LUAJIT_USE_ASAN)
> +  AppendFlags(CMAKE_C_FLAGS -DLUAJIT_USE_ASAN -fsanitize=address)
> +endif()
>   
>   # --- Main source tree ---------------------------------------------------------
>   


More information about the Tarantool-patches mailing list