blob: dcbdd89d74e2eb0295cd299e42f9a3bb78f6ee8d [file] [log] [blame]
Edwin Wong27b5a352014-05-28 15:36:44 -07001# You can put your build options here
2-include config.mk
3
Haibo Huang8e498432018-09-06 14:52:29 -07004test: test_default test_strict test_links test_strict_links
Haibo Huang9d58f792019-05-02 22:35:15 -07005test_default: test/tests.c jsmn.h
Haibo Huang8e498432018-09-06 14:52:29 -07006 $(CC) $(CFLAGS) $(LDFLAGS) $< -o test/$@
7 ./test/$@
Haibo Huang9d58f792019-05-02 22:35:15 -07008test_strict: test/tests.c jsmn.h
Haibo Huang8e498432018-09-06 14:52:29 -07009 $(CC) -DJSMN_STRICT=1 $(CFLAGS) $(LDFLAGS) $< -o test/$@
10 ./test/$@
Haibo Huang9d58f792019-05-02 22:35:15 -070011test_links: test/tests.c jsmn.h
Haibo Huang8e498432018-09-06 14:52:29 -070012 $(CC) -DJSMN_PARENT_LINKS=1 $(CFLAGS) $(LDFLAGS) $< -o test/$@
13 ./test/$@
Haibo Huang9d58f792019-05-02 22:35:15 -070014test_strict_links: test/tests.c jsmn.h
Haibo Huang8e498432018-09-06 14:52:29 -070015 $(CC) -DJSMN_STRICT=1 -DJSMN_PARENT_LINKS=1 $(CFLAGS) $(LDFLAGS) $< -o test/$@
16 ./test/$@
Edwin Wong27b5a352014-05-28 15:36:44 -070017
Haibo Huang9d58f792019-05-02 22:35:15 -070018simple_example: example/simple.c jsmn.h
19 $(CC) $(LDFLAGS) $< -o $@
Edwin Wong27b5a352014-05-28 15:36:44 -070020
Haibo Huang9d58f792019-05-02 22:35:15 -070021jsondump: example/jsondump.c jsmn.h
22 $(CC) $(LDFLAGS) $< -o $@
Haibo Huang8e498432018-09-06 14:52:29 -070023
Haibo Huang9d58f792019-05-02 22:35:15 -070024fmt:
25 clang-format -i jsmn.h test/*.[ch] example/*.[ch]
26
27lint:
28 clang-tidy jsmn.h --checks='*'
Haibo Huang8e498432018-09-06 14:52:29 -070029
Edwin Wong27b5a352014-05-28 15:36:44 -070030clean:
Haibo Huang8e498432018-09-06 14:52:29 -070031 rm -f *.o example/*.o
Haibo Huang8e498432018-09-06 14:52:29 -070032 rm -f simple_example
33 rm -f jsondump
Edwin Wong27b5a352014-05-28 15:36:44 -070034
Haibo Huang9d58f792019-05-02 22:35:15 -070035.PHONY: clean test
Edwin Wong27b5a352014-05-28 15:36:44 -070036