]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - tools/testing/radix-tree/Makefile
022488f50fc6059e08989bec88f03a32f5f45336
[karo-tx-linux.git] / tools / testing / radix-tree / Makefile
1
2 CFLAGS += -I. -I../../include -g -O2 -Wall -D_LGPL_SOURCE -fsanitize=address
3 LDFLAGS += -fsanitize=address
4 LDLIBS+= -lpthread -lurcu
5 TARGETS = main idr-test multiorder
6 CORE_OFILES := radix-tree.o idr.o linux.o test.o find_bit.o
7 OFILES = main.o $(CORE_OFILES) regression1.o regression2.o regression3.o \
8          tag_check.o multiorder.o idr-test.o iteration_check.o benchmark.o
9
10 ifndef SHIFT
11         SHIFT=3
12 endif
13
14 ifeq ($(BUILD), 32)
15         CFLAGS += -m32
16 endif
17
18 targets: mapshift $(TARGETS)
19
20 main:   $(OFILES)
21
22 idr-test: idr-test.o $(CORE_OFILES)
23
24 multiorder: multiorder.o $(CORE_OFILES)
25
26 clean:
27         $(RM) $(TARGETS) *.o radix-tree.c idr.c generated/map-shift.h
28
29 vpath %.c ../../lib
30
31 $(OFILES): *.h */*.h generated/map-shift.h \
32         ../../include/linux/*.h \
33         ../../include/asm/*.h \
34         ../../../include/linux/radix-tree.h \
35         ../../../include/linux/idr.h
36
37 radix-tree.c: ../../../lib/radix-tree.c
38         sed -e 's/^static //' -e 's/__always_inline //' -e 's/inline //' < $< > $@
39
40 idr.c: ../../../lib/idr.c
41         sed -e 's/^static //' -e 's/__always_inline //' -e 's/inline //' < $< > $@
42
43 .PHONY: mapshift
44
45 mapshift:
46         @if ! grep -qw $(SHIFT) generated/map-shift.h; then             \
47                 echo "#define RADIX_TREE_MAP_SHIFT $(SHIFT)" >          \
48                                 generated/map-shift.h;                  \
49         fi