From b3196a60c53463a492cf02332541fab8dc9ee504 Mon Sep 17 00:00:00 2001 From: Robert Coup Date: Mon, 10 Jun 2019 12:27:12 +0100 Subject: Add memleak check docs Document how to run it locally on macOS & Linux --- tests/README.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'tests') diff --git a/tests/README.md b/tests/README.md index 3aeaaf464..b1d70d3bc 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 +``` -- cgit v1.2.1