diff options
author | Adam Buchbinder <abuchbinder@google.com> | 2017-07-12 13:04:49 -0700 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2017-07-20 17:43:43 +0200 |
commit | 18aed6a623f86f02eb342205d4fc9c7f6928805d (patch) | |
tree | 8aba3d8f400256aaf4b90c8f635428dad8d6040e | |
parent | e2fd79c243f9939851d69d369a588953a6d070f7 (diff) |
btrfs-progs: build: Enable ThreadSanitizer, using D=tsan
Tested with clang-3.9. We have to enable PIE,
(https://clang.llvm.org/docs/ThreadSanitizer.html)
Signed-off-by: Adam Buchbinder <abuchbinder@google.com>
Signed-off-by: David Sterba <dsterba@suse.com>
-rw-r--r-- | Makefile | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -17,6 +17,7 @@ # abort - call abort() on first error (dumps core) # all - shortcut for all of the above # asan - enable address sanitizer compiler feature +# tsan - enable thread sanitizer compiler feature # ubsan - undefined behaviour sanitizer compiler feature # bcheck - extended build checks # W=123 build with warnings (default: off) @@ -157,6 +158,11 @@ ifneq (,$(findstring asan,$(D))) DEBUG_CFLAGS_INTERNAL += -fsanitize=address endif +ifneq (,$(findstring tsan,$(D))) + DEBUG_CFLAGS_INTERNAL += -fsanitize=thread -fPIE + LD_FLAGS += -fsanitize=thread -ltsan -pie +endif + ifneq (,$(findstring ubsan,$(D))) DEBUG_CFLAGS_INTERNAL += -fsanitize=undefined endif |