diff options
| -rw-r--r-- | CMakeLists.txt | 15 | ||||
| -rw-r--r-- | README.md | 7 |
2 files changed, 16 insertions, 6 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index ec93cc0..a970f50 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -26,10 +26,13 @@ else() ) endif() -target_compile_options(${PROJECT_NAME} PRIVATE - -fsanitize=address,undefined -) +if (NOT MSVC AND CMAKE_BUILD_TYPE STREQUAL "Debug") + target_compile_options(${PROJECT_NAME} PRIVATE + -fsanitize=address,undefined + -fno-omit-frame-pointer + ) -target_link_options(${PROJECT_NAME} PRIVATE - -fsanitize=address,undefined -) + target_link_options(${PROJECT_NAME} PRIVATE + -fsanitize=address,undefined + ) +endif() @@ -14,8 +14,15 @@ ```bash cmake -B build -S . # Run only on cmake config changes (and first time) +# Or for development +cmake -B build -S . -DCMAKE_BUILD_TYPE=Debug cmake --build ./build # Build ./build/chess # Run the app ``` + +## Details + +- (AddressSanitizer)[https://github.com/google/sanitizers/wiki/AddressSanitizer] (aka ASan) +- (UndefinedBehaviorSanitizer¶)[https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html] (aka UBSan) |
