cnfparse.c

Small library to make config parsing easier
git clone git://git.finwo.net/lib/cnfparse.c
Log | Files | Refs | README | LICENSE

Makefile (773B)


      1 BIN?=cnfparse_test
      2 
      3 LIBS:=
      4 SRC:=
      5 INCLUDES:=
      6 INCLUDES+=-I src
      7 
      8 LDFLAGS:=
      9 CFLAGS?=-Wall -s -O2
     10 
     11 include lib/.dep/config.mk
     12 
     13 SRC+=src/cnfparse.c
     14 EXAMPLE_SRC:=example.c
     15 
     16 OBJ:=$(SRC:.c=.o)
     17 OBJ:=$(OBJ:.cc=.o)
     18 
     19 CFLAGS+=$(INCLUDES)
     20 
     21 LDFLAGS+=$(CFLAGS)
     22 
     23 TESTS:=
     24 TESTS+=$(patsubst %.c,%,$(wildcard test/*.c))
     25 
     26 .PHONY: default
     27 default: $(BIN) README.md
     28 
     29 .c.o:
     30 	$(CC) $(CFLAGS) -c -o $@ $<
     31 
     32 $(BIN): $(OBJ) $(EXAMPLE_SRC:.c=.o)
     33 	$(CC) $(CFLAGS) $^ -o $@
     34 
     35 # Test targets — each file is compiled independently and run
     36 $(TESTS): $(OBJ) $(TESTS:=.c)
     37 	$(CC) $@.c $(SRC) -I test $(CFLAGS) -o $@
     38 
     39 .PHONY: tests
     40 tests: $(TESTS) $(OBJ)
     41 	for test in $(TESTS); do \
     42 		$$test ; \
     43 	done
     44 
     45 .PHONY: clean
     46 clean:
     47 	rm -rf $(OBJ) $(TESTS)
     48 
     49 README.md: src/cnfparse.h
     50 	stddoc < src/cnfparse.h > README.md