Files
Patrick Steinhardt a1c13ba825 cmake: Use target-scoped warnings
We currently set up all of our warnings in the global scope, which is
quite suboptimal considering that we're also bundling a set of
third-party dependencies which inherit the same set of warnings.

Fix this by converting our warning-macros to target-scoped functions.
2020-09-18 14:55:40 +02:00
..
2019-10-22 10:23:24 -04:00
2020-09-14 15:54:00 +02:00
2020-06-05 08:49:07 +01:00
2020-06-05 08:49:07 +01:00
2020-06-05 08:49:07 +01:00
2020-02-07 11:53:51 +01:00
2020-06-05 08:49:07 +01:00
2020-07-12 09:53:10 -07:00
2020-06-05 08:49:07 +01:00
2020-06-05 08:49:07 +01:00
2020-06-05 08:49:07 +01:00
2020-06-05 08:49:07 +01:00
2020-06-05 08:49:07 +01:00
2019-07-18 14:29:43 +02:00
2019-06-12 00:05:46 +01:00

Writing Clar tests for libgit2

For information on the Clar testing framework and a detailed introduction please visit:

https://github.com/vmg/clar

  • Write your modules and tests. Use good, meaningful names.

  • Make sure you actually build the tests by setting:

      cmake -DBUILD_CLAR=ON build/
    
  • Test:

      ./build/libgit2_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:

$ 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, which requires XCode installed:

$ MallocStackLogging=1 MallocScribble=1 MallocLogFile=/dev/null CLAR_AT_EXIT="leaks -quiet \$PPID" \
  ./libgit2_clar