]> begriffs open source - libderp/blob - Makefile
Clean profiling data on rebuild
[libderp] / Makefile
1 .POSIX :
2
3 VARIANT = release
4 CFLAGS = -Iinclude
5
6 MAKEFILES = Makefile build/$(VARIANT)/extra.mk
7
8 .SUFFIXES :
9
10 include build/$(VARIANT)/extra.mk
11
12 lib : build/$(VARIANT)/vector.o build/$(VARIANT)/list.o build/$(VARIANT)/hashmap.o
13
14 tests : build/$(VARIANT)/test/t_vector build/$(VARIANT)/test/t_list build/$(VARIANT)/test/t_hashmap
15
16 build/$(VARIANT)/vector.o : src/vector.c include/vector.h include/common.h $(MAKEFILES)
17         rm -f build/$(VARIANT)/vector.gcda
18         $(CC) $(CFLAGS) -o $@ -c src/vector.c
19
20 build/$(VARIANT)/list.o : src/list.c include/list.h include/common.h $(MAKEFILES)
21         rm -f build/$(VARIANT)/list.gcda
22         $(CC) $(CFLAGS) -o $@ -c src/list.c
23
24 build/$(VARIANT)/hashmap.o : src/hashmap.c include/hashmap.h include/list.h include/common.h $(MAKEFILES)
25         rm -f build/$(VARIANT)/hashmap.gcda
26         $(CC) $(CFLAGS) -o $@ -c src/hashmap.c
27
28 build/$(VARIANT)/test/t_vector : build/$(VARIANT)/vector.o test/t_vector.c
29         rm -f t_vector.gcda
30         $(CC) $(CFLAGS) $(LDFLAGS) -o $@ build/$(VARIANT)/vector.o test/t_vector.c $(LDLIBS)
31
32 build/$(VARIANT)/test/t_list : build/$(VARIANT)/list.o test/t_list.c
33         rm -f t_list.gcda
34         $(CC) $(CFLAGS) $(LDFLAGS) -o $@ build/$(VARIANT)/list.o test/t_list.c $(LDLIBS)
35
36 build/$(VARIANT)/test/t_hashmap : build/$(VARIANT)/hashmap.o build/$(VARIANT)/list.o test/t_hashmap.c
37         rm -f t_hashmap.gcda
38         $(CC) $(CFLAGS) $(LDFLAGS) -o $@ build/$(VARIANT)/hashmap.o build/$(VARIANT)/list.o test/t_hashmap.c $(LDLIBS)