Make ASAN default option string built-in libruby

The content depends on ruby internal, not responsibility of the
caller.  Revive `RUBY_GLOBAL_SETUP` macro to define the hook function.
This commit is contained in:
Nobuyoshi Nakada 2025-03-14 16:24:31 +09:00 committed by Nobuyoshi Nakada
parent f23146f09f
commit 453f88f7f1
Notes: git 2025-03-16 08:34:23 +00:00
4 changed files with 28 additions and 13 deletions

15
main.c
View file

@ -32,6 +32,8 @@
# undef RUBY_DEBUG_ENV
#endif
RUBY_GLOBAL_SETUP
static int
rb_main(int argc, char **argv)
{
@ -64,16 +66,3 @@ main(int argc, char **argv)
ruby_sysinit(&argc, &argv);
return rb_main(argc, argv);
}
#ifdef RUBY_ASAN_ENABLED
/* Compile in the ASAN options Ruby needs, rather than relying on environment variables, so
* that even tests which fork ruby with a clean environment will run ASAN with the right
* settings */
RUBY_SYMBOL_EXPORT_BEGIN
const char *
__asan_default_options(void)
{
return "use_sigaltstack=0:detect_leaks=0";
}
RUBY_SYMBOL_EXPORT_END
#endif