aboutsummaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)AuthorFilesLines
2022-05-09build: switch Makefile over to use mesonDaniel P. Berrangé1-120/+11
This cuts out most of the current Makefile, leaving a simplified set of targets that are a shim to the various meson commands. Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2022-05-09github: switch workflows over to using mesonDaniel P. Berrangé1-19/+5
This switch the pull request and coverity workflows over to use Meson instead of cmake. Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2022-04-21support AFL++ fuzzing (#623)John Levon1-5/+6
To support fuzzing with AFL++, add a "pipe" transport that reads from stdin and outputs to stdout: this is the most convenient way of doing fuzzing. Add some docs on how to run a fuzzing session. Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Swapnil Ingle <swapnil.ingle@nutanix.com> Reviewed-by: Thanos Makatos <thanos.makatos@nutanix.com>
2022-03-24use --exit-on-first-error=yes with valgrind (#655)John Levon1-0/+1
Catch valgrind issues earlier with less noise. Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Thanos Makatos <thanos.makatos@nutanix.com>
2021-10-22run python code through flake8 (#613)John Levon1-2/+4
Aside from general style goodness, this found a couple of accidental re-definitions, so it's worth taking the pain now. Also, only run rstlint as part of pre-push. Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Swapnil Ingle <swapnil.ingle@nutanix.com>
2021-10-20add coverity scan support in github action (#612)John Levon1-0/+8
On a push to master branch, trigger a run and upload. Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Swapnil Ingle <swapnil.ingle@nutanix.com>
2021-06-10Fix make CFLAGS="-DNDEBUG" failure (#563)Ivan Efremov1-0/+3
Do sanity check of -DNDEBUG before compiling to prevent disabling assertions Signed-off-by: Ivan Efremov <i350300800e@gmail.com>
2021-06-09Make pytest succeed even if python-3-pytest is not installed (#556)Ivan Efremov1-0/+4
Fix for issue #542. Signed-off-by: Ivan Efremov <i350300800e@gmail.com>
2021-06-01check spec with rst-lint (#549)John Levon1-0/+2
Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Thanos Makatos <thanos.makatos@nutanix.com>
2021-05-26fix `make install` (#531)John Levon1-2/+3
And make sure the target is tested in CI. Reported-by: Karol Latecki Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Thanos Makatos <thanos.makatos@nutanix.com>
2021-05-25add a gcov target (#498)John Levon1-7/+22
"make gcov" is sufficient to run the tests in DEBUG mode and generate gcov output for each .c file in lib/, to give us some idea of our coverage. Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Swapnil Ingle <swapnil.ingle@nutanix.com>
2021-05-20use cmake3 if available (#503)John Levon1-6/+4
Currently, on systems with both cmake and cmake3, we require cmake even if cmake3 is the only cmake version available (and SPDK encodes this silly requirement). Use and prefer "cmake3" if available. Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Swapnil Ingle <swapnil.ingle@nutanix.com>
2021-05-10start python-based testing framework (#447)John Levon1-2/+51
Trying to do our unit/functional testing with C is very tedious, and cmocka especially is a continual pain point. This commit introduces a Python-based testing infrastructure, and adds an initial set of functional tests for client negotiation. The tests work under Valgrind for leak/bad access detection of the C code, but not under ASAN, which lacks any meaningful shared-library support. We should be able to replace all of current C-based unit tests with this, reverting samples/ back to demo code only. Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Thanos Makatos <thanos.makatos@nutanix.com>
2021-03-01run unit tests under valgrind too (#358)John Levon1-0/+1
If we're not running ASAN, use valgrind. Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Swapnil Ingle <swapnil.ingle@nutanix.com>
2021-02-10fix pre-push build order (#326)John Levon1-4/+4
Re-order so we don't end up with an ASAN-enabled build at the end; purely for convenience. Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Swapnil Ingle <swapnil.ingle@nutanix.com>
2021-02-04add AddressSanitizer run (#291)John Levon1-0/+9
Run unit tests with -fsanitize-address too. Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Swapnil Ingle <swapnil.ingle@nutanix.com>
2020-12-16fix clang build (#210)John Levon1-2/+5
Also add clang to pull request build checks. Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Thanos Makatos <thanos.makatos@nutanix.com>
2020-12-11allow over-riding "cmake" (#184)John Levon1-1/+3
Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Swapnil Ingle <swapnil.ingle@nutanix.com>
2020-12-02add pre-push target (#150)John Levon1-3/+6
Add a target that builds in debug and release mode and runs the tests in each. Signed-off-by: John Levon <john.levon@nutanix.com> Reviewed-by: Thanos Makatos <thanos.makatos@nutanix.com>
2020-11-25add "make test"; run it in pre-commit (#127)John Levon1-0/+3
Also rename test.c to reflect it should cover unit tests. Reviewed-by: Swapnil Ingle <swapnil.ingle@nutanix.com> Signed-off-by: John Levon <john.levon@nutanix.com>
2020-11-19enable assert() in release builds (#98)John Levon1-1/+0
2020-11-16Makefile: Remove unused KDIRSwapnil Ingle1-2/+0
Also remove kernel build from travis.yml Signed-off-by: Swapnil Ingle <swapnil.ingle@nutanix.com>
2020-05-20allow installation location to be overriddenThanos Makatos1-0/+2
This allows package systems to use /usr (instead of CMake's default /usr/local), which is the typical choice.
2019-11-02Fix various format issuesFelipe Franciosi1-1/+1
Remove various spurious whitespaces and empty lines. Some other alignment issues, too. Signed-off-by: Felipe Franciosi <felipe@nutanix.com>
2019-09-05Initial commitFelipe Franciosi1-0/+74