tools/perf/build: Fix feature-libunwind-debug-frame handling
[deliverable/linux.git] / tools / perf / config / feature-checks / Makefile
1
2 FILES= \
3 test-all \
4 test-backtrace \
5 test-bionic \
6 test-dwarf \
7 test-fortify-source \
8 test-glibc \
9 test-gtk2 \
10 test-gtk2-infobar \
11 test-hello \
12 test-libaudit \
13 test-libbfd \
14 test-liberty \
15 test-liberty-z \
16 test-cplus-demangle \
17 test-libelf \
18 test-libelf-getphdrnum \
19 test-libelf-mmap \
20 test-libnuma \
21 test-libperl \
22 test-libpython \
23 test-libpython-version \
24 test-libslang \
25 test-libunwind \
26 test-libunwind-debug-frame \
27 test-on-exit \
28 test-stackprotector-all \
29 test-stackprotector \
30 test-timerfd
31
32 CC := $(CC) -MD
33
34 all: $(FILES)
35
36 BUILD = $(CC) $(CFLAGS) $(LDFLAGS) -o $(OUTPUT)$@ $@.c
37
38 ###############################
39
40 test-all:
41 $(BUILD) -Werror -fstack-protector -fstack-protector-all -O2 -Werror -D_FORTIFY_SOURCE=2 -ldw -lelf -lnuma $(LIBUNWIND_LIBS) -lelf -laudit -I/usr/include/slang -lslang $(shell pkg-config --libs --cflags gtk+-2.0 2>/dev/null) $(FLAGS_PERL_EMBED) $(FLAGS_PYTHON_EMBED) -DPACKAGE='"perf"' -lbfd -ldl
42
43 test-hello:
44 $(BUILD)
45
46 test-stackprotector-all:
47 $(BUILD) -Werror -fstack-protector-all
48
49 test-stackprotector:
50 $(BUILD) -Werror -fstack-protector -Wstack-protector
51
52 test-fortify-source:
53 $(BUILD) -O2 -Werror -D_FORTIFY_SOURCE=2
54
55 test-bionic:
56 $(BUILD)
57
58 test-libelf:
59 $(BUILD) -lelf
60
61 test-glibc:
62 $(BUILD)
63
64 test-dwarf:
65 $(BUILD) -ldw
66
67 test-libelf-mmap:
68 $(BUILD) -lelf
69
70 test-libelf-getphdrnum:
71 $(BUILD) -lelf
72
73 test-libnuma:
74 $(BUILD) -lnuma
75
76 test-libunwind:
77 $(BUILD) $(LIBUNWIND_LIBS) -lelf
78
79 test-libunwind-debug-frame:
80 $(BUILD) $(LIBUNWIND_LIBS) -lelf
81
82 test-libaudit:
83 $(BUILD) -laudit
84
85 test-libslang:
86 $(BUILD) -I/usr/include/slang -lslang
87
88 test-gtk2:
89 $(BUILD) $(shell pkg-config --libs --cflags gtk+-2.0 2>/dev/null)
90
91 test-gtk2-infobar:
92 $(BUILD) $(shell pkg-config --libs --cflags gtk+-2.0 2>/dev/null)
93
94 grep-libs = $(filter -l%,$(1))
95 strip-libs = $(filter-out -l%,$(1))
96
97 PERL_EMBED_LDOPTS = $(shell perl -MExtUtils::Embed -e ldopts 2>/dev/null)
98 PERL_EMBED_LDFLAGS = $(call strip-libs,$(PERL_EMBED_LDOPTS))
99 PERL_EMBED_LIBADD = $(call grep-libs,$(PERL_EMBED_LDOPTS))
100 PERL_EMBED_CCOPTS = `perl -MExtUtils::Embed -e ccopts 2>/dev/null`
101 FLAGS_PERL_EMBED=$(PERL_EMBED_CCOPTS) $(PERL_EMBED_LDOPTS)
102
103 test-libperl:
104 $(BUILD) $(FLAGS_PERL_EMBED)
105
106 override PYTHON := python
107 override PYTHON_CONFIG := python-config
108
109 escape-for-shell-sq = $(subst ','\'',$(1))
110 shell-sq = '$(escape-for-shell-sq)'
111
112 PYTHON_CONFIG_SQ = $(call shell-sq,$(PYTHON_CONFIG))
113
114 PYTHON_EMBED_LDOPTS = $(shell $(PYTHON_CONFIG_SQ) --ldflags 2>/dev/null)
115 PYTHON_EMBED_LDFLAGS = $(call strip-libs,$(PYTHON_EMBED_LDOPTS))
116 PYTHON_EMBED_LIBADD = $(call grep-libs,$(PYTHON_EMBED_LDOPTS))
117 PYTHON_EMBED_CCOPTS = $(shell $(PYTHON_CONFIG_SQ) --cflags 2>/dev/null)
118 FLAGS_PYTHON_EMBED = $(PYTHON_EMBED_CCOPTS) $(PYTHON_EMBED_LDOPTS)
119
120 test-libpython:
121 $(BUILD) $(FLAGS_PYTHON_EMBED)
122
123 test-libpython-version:
124 $(BUILD) $(FLAGS_PYTHON_EMBED)
125
126 test-libbfd:
127 $(BUILD) -DPACKAGE='"perf"' -lbfd -ldl
128
129 test-liberty:
130 $(CC) -o $(OUTPUT)$@ test-libbfd.c -DPACKAGE='"perf"' -lbfd -ldl -liberty
131
132 test-liberty-z:
133 $(CC) -o $(OUTPUT)$@ test-libbfd.c -DPACKAGE='"perf"' -lbfd -ldl -liberty -lz
134
135 test-cplus-demangle:
136 $(BUILD) -liberty
137
138 test-on-exit:
139 $(BUILD)
140
141 test-backtrace:
142 $(BUILD)
143
144 test-timerfd:
145 $(BUILD)
146
147 -include *.d
148
149 ###############################
150
151 clean:
152 rm -f $(FILES) *.d
This page took 0.035551 seconds and 5 git commands to generate.