Commit b3196a60c53463a492cf02332541fab8dc9ee504

Robert Coup 2019-06-10T12:27:12

Add memleak check docs Document how to run it locally on macOS & Linux

diff --git a/tests/README.md b/tests/README.md
index 3aeaaf4..b1d70d3 100644
--- a/tests/README.md
+++ b/tests/README.md
@@ -20,3 +20,29 @@ https://github.com/vmg/clar
 * Make sure everything is fine.
 
 * Send your pull request. That's it.
+
+
+Memory leak checks
+------------------
+
+These are automatically run as part of CI, but if you want to check locally:
+
+#### Linux
+
+Uses [`valgrind`](http://www.valgrind.org/):
+
+```console
+$ cmake -DBUILD_CLAR=ON -DVALGRIND=ON ..
+$ cmake --build .
+$ valgrind --leak-check=full --show-reachable=yes --num-callers=50 --suppressions=../libgit2_clar.supp \
+  ./libgit2_clar
+```
+
+#### macOS
+
+Uses [`leaks`](https://developer.apple.com/library/archive/documentation/Performance/Conceptual/ManagingMemory/Articles/FindingLeaks.html), which requires XCode installed:
+
+```console
+$ MallocStackLogging=1 MallocScribble=1 MallocLogFile=/dev/null CLAR_AT_EXIT="leaks -quiet \$PPID" \
+  ./libgit2_clar
+```