]> git.ozlabs.org Git - ccan/blobdiff - tools/ccanlint/Makefile
Build tests for ccan.
[ccan] / tools / ccanlint / Makefile
index cd507e5d08d8237ba06b0c138a85c39dd39d25c4..a99a6aeb71185efdf0bd6425c9b81d2dfe0355df 100644 (file)
@@ -5,15 +5,21 @@ TEST_OBJS := $(TEST_CFILES:.c=.o)
 CORE_OBJS := tools/ccanlint/ccanlint.o \
        tools/ccanlint/file_analysis.o \
        tools/doc_extract-core.o \
+       tools/depends.o \
+       tools/tools.o \
        ccan/str_talloc/str_talloc.o ccan/grab_file/grab_file.o \
        ccan/talloc/talloc.o ccan/noerr/noerr.o
 
 OBJS := $(CORE_OBJS) $(TEST_OBJS)
 
-tools/ccanlint/generated-init-tests: $(OBJS)
-       cat $(OBJS:.o=.c) | sed -n 's/^struct ccanlint \([A-Za-z0-9_]*\) = {/{ extern struct ccanlint \1; list_add(\&tests, \&\1.list); }/p' >$@
+# FIXME: write a trivial C program to do this
+tools/ccanlint/generated-init-tests: $(TEST_CFILES)
+       cat $(TEST_CFILES) | grep ^REGISTER_TEST > $@
 
-tools/ccanlint/ccanlint.o: tools/ccanlint/generated-init-tests
+$(TEST_OBJS): tools/ccanlint/generated-init-tests
+
+# Otherwise, ccanlint.c et al. may fail to build
+$(CORE_OBJS): tools/ccanlint/generated-init-tests
 
 tools/ccanlint/ccanlint: $(OBJS)