Makefile 1.2 KB

12345678910111213141516171819202122232425262728293031323334
  1. COMPULSORY_TEST_CFILES := $(wildcard tools/ccanlint/compulsory_tests/*.c)
  2. NORMAL_TEST_CFILES := $(wildcard tools/ccanlint/tests/*.c)
  3. TEST_OBJS := $(NORMAL_TEST_CFILES:.c=.o) $(COMPULSORY_TEST_CFILES:.c=.o)
  4. CORE_OBJS := tools/ccanlint/ccanlint.o \
  5. tools/ccanlint/file_analysis.o \
  6. tools/doc_extract-core.o \
  7. tools/depends.o \
  8. tools/tools.o \
  9. tools/compile.o \
  10. ccan/str_talloc/str_talloc.o ccan/grab_file/grab_file.o \
  11. ccan/talloc/talloc.o ccan/noerr/noerr.o \
  12. ccan/read_write_all/read_write_all.o
  13. OBJS := $(CORE_OBJS) $(TEST_OBJS)
  14. # FIXME: write a trivial C program to do this
  15. tools/ccanlint/generated-normal-tests: $(NORMAL_TEST_CFILES)
  16. cat $^ | grep ^REGISTER_TEST > $@
  17. tools/ccanlint/generated-compulsory-tests: $(COMPULSORY_TEST_CFILES)
  18. cat $^ | grep ^REGISTER_TEST > $@
  19. $(TEST_OBJS): tools/ccanlint/generated-normal-tests tools/ccanlint/generated-compulsory-tests
  20. # Otherwise, ccanlint.c et al. may fail to build
  21. $(CORE_OBJS): tools/ccanlint/generated-normal-tests tools/ccanlint/generated-compulsory-tests
  22. tools/ccanlint/ccanlint: $(OBJS)
  23. ccanlint-clean:
  24. $(RM) tools/ccanlint/generated-compulsory-tests
  25. $(RM) tools/ccanlint/generated-normal-tests
  26. $(RM) tools/ccanlint/ccanlint