Add more sanitizers

This commit is contained in:
Wojtek Figat
2024-04-13 19:20:39 +02:00
parent d42e315e55
commit 60ccac31b5
3 changed files with 22 additions and 15 deletions

View File

@@ -105,7 +105,7 @@ namespace Flax.Build.Platforms
commonArgs.Add("objective-c++");
commonArgs.Add("-stdlib=libc++");
AddArgsCommon(options, commonArgs);
AddClangSanitizerArgs(compileEnvironment.Sanitizers, commonArgs);
AddArgsSanitizer(compileEnvironment.Sanitizers, commonArgs);
switch (compileEnvironment.CppVersion)
{
@@ -251,7 +251,7 @@ namespace Flax.Build.Platforms
{
args.Add(string.Format("-o \"{0}\"", outputFilePath));
AddArgsCommon(options, args);
AddClangSanitizerArgs(options.CompileEnv.Sanitizers, args);
AddArgsSanitizer(options.CompileEnv.Sanitizers, args);
if (isArchive)
{
@@ -438,5 +438,15 @@ namespace Flax.Build.Platforms
break;
}
}
protected void AddArgsSanitizer(Sanitizer sanitizers, List<string> args)
{
if (sanitizers.HasFlag(Sanitizer.Address))
args.Add("-fsanitize=address");
if (sanitizers.HasFlag(Sanitizer.Thread))
args.Add("-fsanitize=thread");
if (sanitizers.HasFlag(Sanitizer.Undefined))
args.Add("-fsanitize=undefined");
}
}
}