diff options
| author | gingerBill <bill@gingerbill.org> | 2023-09-21 11:20:13 +0100 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2023-09-21 11:20:13 +0100 |
| commit | 4aa9d34b3d8495404d91c18743438671be1a6168 (patch) | |
| tree | d7640fdbe60fa5c5ee1ea37a3ad42c6def956bff /src/build_settings.cpp | |
| parent | 38d2a0ddb9b1e74661dd05fae71e3a2d47e8de2c (diff) | |
Add attributes for sanitize_memory and sanitize_thread
Diffstat (limited to 'src/build_settings.cpp')
| -rw-r--r-- | src/build_settings.cpp | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/src/build_settings.cpp b/src/build_settings.cpp index 08e591a3a..8f495e3c4 100644 --- a/src/build_settings.cpp +++ b/src/build_settings.cpp @@ -1747,11 +1747,40 @@ gb_internal bool init_build_paths(String init_filename) { return false; } + if (build_context.sanitizer_flags & SanitizerFlag_Address) { + switch (build_context.metrics.os) { + case TargetOs_windows: + case TargetOs_linux: + case TargetOs_darwin: + break; + default: + gb_printf_err("-sanitize:memory is only supported on windows, linux, and darwin\n"); + return false; + } + } + if (build_context.sanitizer_flags & SanitizerFlag_Memory) { - if (build_context.metrics.os != TargetOs_linux) { + switch (build_context.metrics.os) { + case TargetOs_linux: + break; + default: gb_printf_err("-sanitize:memory is only supported on linux\n"); return false; } + if (build_context.metrics.os != TargetOs_linux) { + return false; + } + } + + if (build_context.sanitizer_flags & SanitizerFlag_Thread) { + switch (build_context.metrics.os) { + case TargetOs_linux: + case TargetOs_darwin: + break; + default: + gb_printf_err("-sanitize:thread is only supported on linux and darwin\n"); + return false; + } } |