From 82a09196f000026ae8bc96ba154a35e3efd95fed Mon Sep 17 00:00:00 2001 From: Joachim Nilsson Date: Mon, 5 Aug 2013 18:57:39 +0200 Subject: [PATCH] Add support for make check using Sparse Signed-off-by: Joachim Nilsson --- Makefile | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index ff3078d..5286b7a 100644 --- a/Makefile +++ b/Makefile @@ -30,12 +30,16 @@ NAME = libuev PKG = $(NAME)-$(VERSION) ARCHIVE = $(PKG).tar.xz -CC = $(CROSS)gcc -AR = $(CROSS)ar -STRIP = $(CROSS)strip +CC ?= $(CROSS)gcc +AR ?= $(CROSS)ar +STRIP ?= $(CROSS)strip +CHECK ?= sparse CFLAGS += -fPIC -Os -CPPFLAGS += -W -Wall -Werror -Iinclude +CPPFLAGS += -W -Wall -Werror ARFLAGS = crus +CHECK_FLAGS = -Wcast-to-as -Wdefault-bitfield-sign -Wdo-while -Wparen-string \ + -Wptr-subtraction-blows -Wreturn-void -Wshadow -Wtypesign -Wbitwise \ + -std=gnu99 -D__x86_64__ -D__LP64__ -I/usr/include/x86_64-linux-gnu JUNK = *~ *.bak *.map .*.d DEADJOE *.gdb *.elf core core.* LIBNAME = $(NAME) @@ -103,6 +107,9 @@ test: Makefile test.o $(STATICLIB) @printf " TEST %s\n" $(STATICLIB) @$(CC) $(CPPFLAGS) -g -o test test.c $(STATICLIB) && ./test +check: clean + @$(CHECK) $(CHECK_FLAGS) $(CPPFLAGS) $(SRCS) + clean: -@$(RM) $(TARGET) *.o test