]> begriffs open source - libderp/blob - Makefile
Fix conformance with C99 7.1.3
[libderp] / Makefile
1 .POSIX :
2
3 VARIANT = release
4 CFLAGS = -Iinclude -fPIC
5
6 MAKEFILES = Makefile build/$(VARIANT)/extra.mk config.mk
7
8 OBJS = build/$(VARIANT)/vector.o build/$(VARIANT)/list.o build/$(VARIANT)/hashmap.o build/$(VARIANT)/treemap.o
9
10 .SUFFIXES :
11
12 include config.mk
13 include build/$(VARIANT)/extra.mk
14
15 lib : build/$(VARIANT)/libderp.${SO} build/$(VARIANT)/libderp.a
16
17 build/$(VARIANT)/libderp.a : $(OBJS)
18         ar r $@ $?
19
20 build/$(VARIANT)/libderp.${SO} : $(OBJS) VERSION
21         $(CC) $(CFLAGS) ${SOFLAGS} $(OBJS) -o $@
22
23 tests : build/$(VARIANT)/test/t_vector build/$(VARIANT)/test/t_list build/$(VARIANT)/test/t_hashmap build/$(VARIANT)/test/t_treemap
24
25 build/$(VARIANT)/vector.o : src/vector.c include/derp/vector.h include/derp/common.h $(MAKEFILES)
26         $(CC) $(CFLAGS) -o $@ -c src/vector.c
27
28 build/$(VARIANT)/list.o : src/list.c include/derp/list.h include/derp/common.h $(MAKEFILES)
29         $(CC) $(CFLAGS) -o $@ -c src/list.c
30
31 build/$(VARIANT)/hashmap.o : src/hashmap.c include/derp/hashmap.h include/derp/list.h include/derp/common.h $(MAKEFILES)
32         $(CC) $(CFLAGS) -o $@ -c src/hashmap.c
33
34 build/$(VARIANT)/treemap.o : src/treemap.c include/derp/treemap.h include/derp/list.h include/derp/common.h $(MAKEFILES)
35         $(CC) $(CFLAGS) -o $@ -c src/treemap.c
36
37 build/$(VARIANT)/test/t_vector : build/$(VARIANT)/vector.o test/t_vector.c
38         $(CC) $(CFLAGS) $(LDFLAGS) -o $@ build/$(VARIANT)/vector.o test/t_vector.c $(LDLIBS)
39
40 build/$(VARIANT)/test/t_list : build/$(VARIANT)/list.o test/t_list.c
41         $(CC) $(CFLAGS) $(LDFLAGS) -o $@ build/$(VARIANT)/list.o test/t_list.c $(LDLIBS)
42
43 build/$(VARIANT)/test/t_hashmap : build/$(VARIANT)/hashmap.o build/$(VARIANT)/list.o test/t_hashmap.c
44         $(CC) $(CFLAGS) $(LDFLAGS) -o $@ build/$(VARIANT)/hashmap.o build/$(VARIANT)/list.o test/t_hashmap.c $(LDLIBS)
45
46 build/$(VARIANT)/test/t_treemap : build/$(VARIANT)/treemap.o build/$(VARIANT)/list.o test/t_treemap.c
47         $(CC) $(CFLAGS) $(LDFLAGS) -o $@ build/$(VARIANT)/treemap.o build/$(VARIANT)/list.o test/t_treemap.c $(LDLIBS)