Rework the build system to be more modular

Split most of the work off into make/base.mk and allow for easy wrappers
to be created around that that can build with different instrumentation
in their own build directory.

Create wrappers for the following:
 - release build
 - debug build
 - afl++ fuzzing build
 - static analysis with clang
 - clang memory sanitizer
 - clang address/undefined sanitizer
This commit is contained in:
2025-04-03 23:14:56 +02:00
parent 0d3881f680
commit 0f9ced8eb1
9 changed files with 102 additions and 50 deletions

9
make/analyze.mk Normal file
View File

@ -0,0 +1,9 @@
BUILD_DIR=build/analyze/
-include make/base.mk
analyze:
mkdir -p reports/static-analysis
scan-build -o reports/static-analysis/ -plist-html --status-bugs make -rRf make/analyze.mk all
distclean: clean
rm -rf reports/static-analysis