Support using build-time check tools when building lkvm. This allows
using tools such as smatch with the same syntax used with kernel
code.
For example, to build with smatch checks, first make sure you have
smatch installed, then run:
make CHECK="smatch -p=kernel" C=1
Signed-off-by: Sasha Levin <[email protected]>
---
tools/kvm/Makefile | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/tools/kvm/Makefile b/tools/kvm/Makefile
index d4b5eb3..e0d07dc 100644
--- a/tools/kvm/Makefile
+++ b/tools/kvm/Makefile
@@ -322,18 +322,34 @@ $(OBJS):
# This rule relaxes the -Werror on libfdt, since for now it still has
# a bunch of warnings. :(
../../scripts/dtc/libfdt/%.o: ../../scripts/dtc/libfdt/%.c
+ifeq ($(C),1)
+ $(E) " CHECK " $@
+ $(Q) $(CHECK) -c $(CFLAGS_EASYGOING) $< -o $@
+endif
$(E) " CC " $@
$(Q) $(CC) -c $(CFLAGS_EASYGOING) $< -o $@
util/rbtree.static.o util/rbtree.o: ../../lib/rbtree.c
+ifeq ($(C),1)
+ $(E) " CHECK " $@
+ $(Q) $(CHECK) -c $(CFLAGS) $< -o $@
+endif
$(E) " CC " $@
$(Q) $(CC) -c $(CFLAGS) $< -o $@
%.static.o: %.c
+ifeq ($(C),1)
+ $(E) " CHECK " $@
+ $(Q) $(CHECK) -c $(CFLAGS) $(CFLAGS_STATOPT) $< -o $@
+endif
$(E) " CC " $@
$(Q) $(CC) -c $(CFLAGS) $(CFLAGS_STATOPT) $< -o $@
%.o: %.c
+ifeq ($(C),1)
+ $(E) " CHECK " $@
+ $(Q) $(CHECK) -c $(CFLAGS) $(CFLAGS_DYNOPT) $< -o $@
+endif
$(E) " CC " $@
$(Q) $(CC) -c $(CFLAGS) $(CFLAGS_DYNOPT) $< -o $@
--
1.7.12
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html