diff --git a/Makefile.am b/Makefile.am
index 9d3ca4fb6..952d42762 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -2,5 +2,8 @@ AUTOMAKE_OPTIONS = foreign 1.6
 
 SUBDIRS = src doc
 docdir = $(prefix)/share/doc/$(PACKAGE)
-doc_DATA = README UPGRADING 
+doc_DATA = README UPGRADING
 EXTRA_DIST = COPYING $(doc_DATA)
+
+sparse-check:
+	$(MAKE) -C src $@
diff --git a/src/Makefile.am b/src/Makefile.am
index fd2a18d47..f82d9c514 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -116,3 +116,14 @@ mpd_CFLAGS = $(MPD_CFLAGS)
 mpd_LDADD = $(MPD_LIBS) $(ID3_LIB) $(MAD_LIB) $(MP4FF_LIB)
 
 DIST_SUBDIRS = mp4ff
+
+# sparse is a semantic parser
+# URL: git://www.kernel.org/pub/scm/devel/sparse/sparse.git
+SPARSE = sparse
+SPARSE_FLAGS =
+sparse-check:
+	for i in $(mpd_SOURCES); \
+	do \
+		$(SPARSE) -I. $(mpd_CFLAGS) $(SPARSE_FLAGS) $(srcdir)/$$i || exit; \
+	done
+