diff options
| author | ruki <[email protected]> | 2023-09-25 23:42:14 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2023-09-25 23:42:14 +0800 |
| commit | b065af4d90b86c13b608739fc0564e32b5bdeff9 (patch) | |
| tree | 01f1b63a65bff9b462563730a7740a3786879708 | |
| parent | 9ffa3457c8b7d63006a14b86a937c329fd6cd3de (diff) | |
improve sanitizer policy
| -rw-r--r-- | xmake/rules/c++/build_sanitizer/config.lua | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/xmake/rules/c++/build_sanitizer/config.lua b/xmake/rules/c++/build_sanitizer/config.lua index 7c8d4f0da..4b6bd9845 100644 --- a/xmake/rules/c++/build_sanitizer/config.lua +++ b/xmake/rules/c++/build_sanitizer/config.lua @@ -51,8 +51,11 @@ end function main(target, sourcekind) local sanitizer = false for _, checkmode in ipairs({"address", "thread", "memory", "leak", "undefined"}) do - if target:policy("build.sanitizer." .. checkmode) or - project.policy("build.sanitizer." .. checkmode) then + local enabled = target:policy("build.sanitizer." .. checkmode) + if enabled == nil then + enabled = project.policy("build.sanitizer." .. checkmode) + end + if enabled then _add_build_sanitizer(target, sourcekind, checkmode) sanitizer = true end |
