Commit | Line | Data |
---|---|---|
b2441318 | 1 | # SPDX-License-Identifier: GPL-2.0 |
211a741c SD |
2 | include ../../scripts/Makefile.include |
3 | ||
2fedf79b JO |
4 | FILES= \ |
5 | test-all.bin \ | |
6 | test-backtrace.bin \ | |
7 | test-bionic.bin \ | |
8 | test-dwarf.bin \ | |
9 | test-dwarf_getlocations.bin \ | |
11c6cbe7 | 10 | test-eventfd.bin \ |
2fedf79b | 11 | test-fortify-source.bin \ |
8feb8efe | 12 | test-get_current_dir_name.bin \ |
2fedf79b JO |
13 | test-glibc.bin \ |
14 | test-gtk2.bin \ | |
15 | test-gtk2-infobar.bin \ | |
16 | test-hello.bin \ | |
17 | test-libaudit.bin \ | |
18 | test-libbfd.bin \ | |
e71e19a9 | 19 | test-libbfd-buildid.bin \ |
fb982666 | 20 | test-disassembler-four-args.bin \ |
531b014e | 21 | test-reallocarray.bin \ |
14541b1e SF |
22 | test-libbfd-liberty.bin \ |
23 | test-libbfd-liberty-z.bin \ | |
2fedf79b | 24 | test-cplus-demangle.bin \ |
74d5f3d0 | 25 | test-libcap.bin \ |
2fedf79b JO |
26 | test-libelf.bin \ |
27 | test-libelf-getphdrnum.bin \ | |
28 | test-libelf-gelf_getnote.bin \ | |
29 | test-libelf-getshdrstrndx.bin \ | |
c7a14fdc | 30 | test-libdebuginfod.bin \ |
2fedf79b JO |
31 | test-libnuma.bin \ |
32 | test-numa_num_possible_cpus.bin \ | |
33 | test-libperl.bin \ | |
34 | test-libpython.bin \ | |
2fedf79b | 35 | test-libslang.bin \ |
cbefd24f | 36 | test-libslang-include-subdir.bin \ |
56d32d4c | 37 | test-libtraceevent.bin \ |
b758a61b | 38 | test-libtracefs.bin \ |
2fedf79b JO |
39 | test-libcrypto.bin \ |
40 | test-libunwind.bin \ | |
41 | test-libunwind-debug-frame.bin \ | |
42 | test-libunwind-x86.bin \ | |
43 | test-libunwind-x86_64.bin \ | |
44 | test-libunwind-arm.bin \ | |
45 | test-libunwind-aarch64.bin \ | |
46 | test-libunwind-debug-frame-arm.bin \ | |
47 | test-libunwind-debug-frame-aarch64.bin \ | |
48 | test-pthread-attr-setaffinity-np.bin \ | |
25ab5abf | 49 | test-pthread-barrier.bin \ |
2fedf79b JO |
50 | test-stackprotector-all.bin \ |
51 | test-timerfd.bin \ | |
52 | test-libdw-dwarf-unwind.bin \ | |
53 | test-libbabeltrace.bin \ | |
54 | test-compile-32.bin \ | |
55 | test-compile-x32.bin \ | |
56 | test-zlib.bin \ | |
57 | test-lzma.bin \ | |
58 | test-bpf.bin \ | |
7b65e203 | 59 | test-libbpf.bin \ |
0ae065a5 | 60 | test-libbpf-btf__load_from_kernel_by_id.bin \ |
5c83eff3 | 61 | test-libbpf-bpf_prog_load.bin \ |
2fedf79b JO |
62 | test-get_cpuid.bin \ |
63 | test-sdt.bin \ | |
64 | test-cxx.bin \ | |
4541a8bb | 65 | test-gettid.bin \ |
120010cb | 66 | test-jvmti.bin \ |
dd1d0044 | 67 | test-jvmti-cmlr.bin \ |
86bcdb5a | 68 | test-sched_getcpu.bin \ |
aa6292f4 | 69 | test-setns.bin \ |
36f9dc33 JO |
70 | test-libopencsd.bin \ |
71 | test-clang.bin \ | |
72 | test-llvm.bin \ | |
2a07d814 | 73 | test-llvm-version.bin \ |
3b1c5d96 | 74 | test-libaio.bin \ |
14e5728f | 75 | test-libzstd.bin \ |
05aca6da | 76 | test-clang-bpf-co-re.bin \ |
5ef86146 SE |
77 | test-file-handle.bin \ |
78 | test-libpfm4.bin | |
b6aa9979 | 79 | |
1925459b JP |
80 | FILES := $(addprefix $(OUTPUT),$(FILES)) |
81 | ||
9961aa66 | 82 | PKG_CONFIG ?= $(CROSS_COMPILE)pkg-config |
8b6eb56a | 83 | |
b6aa9979 IM |
84 | all: $(FILES) |
85 | ||
9961aa66 | 86 | __BUILD = $(CC) $(CFLAGS) -MD -Wall -Werror -o $@ $(patsubst %.bin,%.c,$(@F)) $(LDFLAGS) |
1925459b | 87 | BUILD = $(__BUILD) > $(@:.bin=.make.output) 2>&1 |
b6aa9979 | 88 | |
9961aa66 | 89 | __BUILDXX = $(CXX) $(CXXFLAGS) -MD -Wall -Werror -o $@ $(patsubst %.bin,%.cpp,$(@F)) $(LDFLAGS) |
87095f7d WN |
90 | BUILDXX = $(__BUILDXX) > $(@:.bin=.make.output) 2>&1 |
91 | ||
b6aa9979 IM |
92 | ############################### |
93 | ||
1925459b | 94 | $(OUTPUT)test-all.bin: |
432d7f52 | 95 | $(BUILD) -fstack-protector-all -O2 -D_FORTIFY_SOURCE=2 -ldw -lelf -lnuma -lelf -lslang $(FLAGS_PERL_EMBED) $(FLAGS_PYTHON_EMBED) -DPACKAGE='"perf"' -lbfd -ldl -lz -llzma -lzstd -lcap |
baa9c30e | 96 | |
1925459b | 97 | $(OUTPUT)test-hello.bin: |
b6aa9979 IM |
98 | $(BUILD) |
99 | ||
1925459b | 100 | $(OUTPUT)test-pthread-attr-setaffinity-np.bin: |
b49f1a4b | 101 | $(BUILD) -D_GNU_SOURCE -lpthread |
459a3df7 | 102 | |
25ab5abf ACM |
103 | $(OUTPUT)test-pthread-barrier.bin: |
104 | $(BUILD) -lpthread | |
105 | ||
1925459b | 106 | $(OUTPUT)test-stackprotector-all.bin: |
b49f1a4b | 107 | $(BUILD) -fstack-protector-all |
90ac5422 | 108 | |
1925459b | 109 | $(OUTPUT)test-fortify-source.bin: |
b49f1a4b | 110 | $(BUILD) -O2 -D_FORTIFY_SOURCE=2 |
1ea6f99e | 111 | |
1925459b | 112 | $(OUTPUT)test-bionic.bin: |
78e9d655 IM |
113 | $(BUILD) |
114 | ||
74d5f3d0 IL |
115 | $(OUTPUT)test-libcap.bin: |
116 | $(BUILD) -lcap | |
117 | ||
1925459b | 118 | $(OUTPUT)test-libelf.bin: |
8f7f8005 IM |
119 | $(BUILD) -lelf |
120 | ||
11c6cbe7 ACM |
121 | $(OUTPUT)test-eventfd.bin: |
122 | $(BUILD) | |
123 | ||
8feb8efe ACM |
124 | $(OUTPUT)test-get_current_dir_name.bin: |
125 | $(BUILD) | |
126 | ||
1925459b | 127 | $(OUTPUT)test-glibc.bin: |
e12762cf IM |
128 | $(BUILD) |
129 | ||
120010cb ACM |
130 | $(OUTPUT)test-sched_getcpu.bin: |
131 | $(BUILD) | |
132 | ||
86bcdb5a ACM |
133 | $(OUTPUT)test-setns.bin: |
134 | $(BUILD) | |
135 | ||
aa6292f4 MP |
136 | $(OUTPUT)test-libopencsd.bin: |
137 | $(BUILD) # -lopencsd_c_api -lopencsd provided by | |
138 | # $(FEATURE_CHECK_LDFLAGS-libopencsd) | |
139 | ||
7aec51cb AK |
140 | DWARFLIBS := -ldw |
141 | ifeq ($(findstring -static,${LDFLAGS}),-static) | |
142 | DWARFLIBS += -lelf -lebl -lz -llzma -lbz2 | |
143 | endif | |
144 | ||
1925459b | 145 | $(OUTPUT)test-dwarf.bin: |
7aec51cb | 146 | $(BUILD) $(DWARFLIBS) |
8295d4e2 | 147 | |
bd0419e2 ACM |
148 | $(OUTPUT)test-dwarf_getlocations.bin: |
149 | $(BUILD) $(DWARFLIBS) | |
150 | ||
1925459b | 151 | $(OUTPUT)test-libelf-getphdrnum.bin: |
b7bcef6f IM |
152 | $(BUILD) -lelf |
153 | ||
1c1a3a47 ACM |
154 | $(OUTPUT)test-libelf-gelf_getnote.bin: |
155 | $(BUILD) -lelf | |
156 | ||
2492c465 ACM |
157 | $(OUTPUT)test-libelf-getshdrstrndx.bin: |
158 | $(BUILD) -lelf | |
159 | ||
c7a14fdc FCE |
160 | $(OUTPUT)test-libdebuginfod.bin: |
161 | $(BUILD) -ldebuginfod | |
162 | ||
1925459b | 163 | $(OUTPUT)test-libnuma.bin: |
3ae069cf IM |
164 | $(BUILD) -lnuma |
165 | ||
1925459b | 166 | $(OUTPUT)test-numa_num_possible_cpus.bin: |
f8ac8606 ACM |
167 | $(BUILD) -lnuma |
168 | ||
1925459b | 169 | $(OUTPUT)test-libunwind.bin: |
1448fef4 | 170 | $(BUILD) -lelf |
058f952d | 171 | |
1925459b | 172 | $(OUTPUT)test-libunwind-debug-frame.bin: |
1448fef4 | 173 | $(BUILD) -lelf |
b1d96000 HK |
174 | $(OUTPUT)test-libunwind-x86.bin: |
175 | $(BUILD) -lelf -lunwind-x86 | |
176 | ||
177 | $(OUTPUT)test-libunwind-x86_64.bin: | |
178 | $(BUILD) -lelf -lunwind-x86_64 | |
179 | ||
180 | $(OUTPUT)test-libunwind-arm.bin: | |
181 | $(BUILD) -lelf -lunwind-arm | |
182 | ||
183 | $(OUTPUT)test-libunwind-aarch64.bin: | |
184 | $(BUILD) -lelf -lunwind-aarch64 | |
185 | ||
f9be7eef HK |
186 | $(OUTPUT)test-libunwind-debug-frame-arm.bin: |
187 | $(BUILD) -lelf -lunwind-arm | |
188 | ||
189 | $(OUTPUT)test-libunwind-debug-frame-aarch64.bin: | |
190 | $(BUILD) -lelf -lunwind-aarch64 | |
e310718d | 191 | |
1925459b | 192 | $(OUTPUT)test-libaudit.bin: |
d795a658 IM |
193 | $(BUILD) -laudit |
194 | ||
1925459b | 195 | $(OUTPUT)test-libslang.bin: |
1955c8cf | 196 | $(BUILD) -lslang |
b9498b50 | 197 | |
cbefd24f ACM |
198 | $(OUTPUT)test-libslang-include-subdir.bin: |
199 | $(BUILD) -lslang | |
200 | ||
56d32d4c MP |
201 | $(OUTPUT)test-libtraceevent.bin: |
202 | $(BUILD) -ltraceevent | |
203 | ||
b758a61b IR |
204 | $(OUTPUT)test-libtracefs.bin: |
205 | $(BUILD) -ltracefs | |
206 | ||
8ee46460 SE |
207 | $(OUTPUT)test-libcrypto.bin: |
208 | $(BUILD) -lcrypto | |
209 | ||
1925459b | 210 | $(OUTPUT)test-gtk2.bin: |
93e843f9 | 211 | $(BUILD) $(shell $(PKG_CONFIG) --libs --cflags gtk+-2.0 2>/dev/null) -Wno-deprecated-declarations |
7ef9e055 | 212 | |
1925459b | 213 | $(OUTPUT)test-gtk2-infobar.bin: |
a8a5cd8b | 214 | $(BUILD) $(shell $(PKG_CONFIG) --libs --cflags gtk+-2.0 2>/dev/null) |
c7a79e96 | 215 | |
7181a671 IM |
216 | grep-libs = $(filter -l%,$(1)) |
217 | strip-libs = $(filter-out -l%,$(1)) | |
218 | ||
219 | PERL_EMBED_LDOPTS = $(shell perl -MExtUtils::Embed -e ldopts 2>/dev/null) | |
220 | PERL_EMBED_LDFLAGS = $(call strip-libs,$(PERL_EMBED_LDOPTS)) | |
221 | PERL_EMBED_LIBADD = $(call grep-libs,$(PERL_EMBED_LDOPTS)) | |
541f695c | 222 | PERL_EMBED_CCOPTS = $(shell perl -MExtUtils::Embed -e ccopts 2>/dev/null) |
7181a671 IM |
223 | FLAGS_PERL_EMBED=$(PERL_EMBED_CCOPTS) $(PERL_EMBED_LDOPTS) |
224 | ||
41caff45 ACM |
225 | ifeq ($(CC_NO_CLANG), 0) |
226 | PERL_EMBED_LDOPTS := $(filter-out -specs=%,$(PERL_EMBED_LDOPTS)) | |
227 | PERL_EMBED_CCOPTS := $(filter-out -flto=auto -ffat-lto-objects, $(PERL_EMBED_CCOPTS)) | |
228 | PERL_EMBED_CCOPTS := $(filter-out -specs=%,$(PERL_EMBED_CCOPTS)) | |
229 | FLAGS_PERL_EMBED += -Wno-compound-token-split-by-macro | |
230 | endif | |
231 | ||
1925459b | 232 | $(OUTPUT)test-libperl.bin: |
7181a671 IM |
233 | $(BUILD) $(FLAGS_PERL_EMBED) |
234 | ||
1925459b | 235 | $(OUTPUT)test-libpython.bin: |
7be6b316 | 236 | $(BUILD) $(FLAGS_PYTHON_EMBED) |
9734163b | 237 | |
1925459b | 238 | $(OUTPUT)test-libbfd.bin: |
14541b1e | 239 | $(BUILD) -DPACKAGE='"perf"' -lbfd -ldl |
3b7646e4 | 240 | |
e71e19a9 ACM |
241 | $(OUTPUT)test-libbfd-buildid.bin: |
242 | $(BUILD) -DPACKAGE='"perf"' -lbfd -ldl | |
243 | ||
fb982666 | 244 | $(OUTPUT)test-disassembler-four-args.bin: |
39b72ccd | 245 | $(BUILD) -DPACKAGE='"perf"' -lbfd -lopcodes |
fb982666 | 246 | |
531b014e JK |
247 | $(OUTPUT)test-reallocarray.bin: |
248 | $(BUILD) | |
249 | ||
14541b1e | 250 | $(OUTPUT)test-libbfd-liberty.bin: |
1925459b | 251 | $(CC) $(CFLAGS) -Wall -Werror -o $@ test-libbfd.c -DPACKAGE='"perf"' $(LDFLAGS) -lbfd -ldl -liberty |
1c47661a | 252 | |
14541b1e | 253 | $(OUTPUT)test-libbfd-liberty-z.bin: |
1925459b | 254 | $(CC) $(CFLAGS) -Wall -Werror -o $@ test-libbfd.c -DPACKAGE='"perf"' $(LDFLAGS) -lbfd -ldl -liberty -lz |
1c47661a | 255 | |
1925459b | 256 | $(OUTPUT)test-cplus-demangle.bin: |
1c47661a IM |
257 | $(BUILD) -liberty |
258 | ||
1925459b | 259 | $(OUTPUT)test-backtrace.bin: |
4cc9117a IM |
260 | $(BUILD) |
261 | ||
1925459b | 262 | $(OUTPUT)test-timerfd.bin: |
87419c9a DA |
263 | $(BUILD) |
264 | ||
1925459b | 265 | $(OUTPUT)test-libdw-dwarf-unwind.bin: |
53d0a573 JO |
266 | $(BUILD) # -ldw provided by $(FEATURE_CHECK_LDFLAGS-libdw-dwarf-unwind) |
267 | ||
1925459b | 268 | $(OUTPUT)test-libbabeltrace.bin: |
53d0a573 | 269 | $(BUILD) # -lbabeltrace provided by $(FEATURE_CHECK_LDFLAGS-libbabeltrace) |
45757895 | 270 | |
1925459b JP |
271 | $(OUTPUT)test-compile-32.bin: |
272 | $(CC) -m32 -o $@ test-compile.c | |
e477f3f0 | 273 | |
1925459b JP |
274 | $(OUTPUT)test-compile-x32.bin: |
275 | $(CC) -mx32 -o $@ test-compile.c | |
e477f3f0 | 276 | |
1925459b | 277 | $(OUTPUT)test-zlib.bin: |
e92ce12e NK |
278 | $(BUILD) -lz |
279 | ||
1925459b | 280 | $(OUTPUT)test-lzma.bin: |
6c6f0f61 JO |
281 | $(BUILD) -llzma |
282 | ||
1925459b | 283 | $(OUTPUT)test-get_cpuid.bin: |
b0063dbf ACM |
284 | $(BUILD) |
285 | ||
1925459b | 286 | $(OUTPUT)test-bpf.bin: |
1b76c13e WN |
287 | $(BUILD) |
288 | ||
7b65e203 JO |
289 | $(OUTPUT)test-libbpf.bin: |
290 | $(BUILD) -lbpf | |
291 | ||
0ae065a5 ACM |
292 | $(OUTPUT)test-libbpf-btf__load_from_kernel_by_id.bin: |
293 | $(BUILD) -lbpf | |
294 | ||
5c83eff3 JO |
295 | $(OUTPUT)test-libbpf-bpf_prog_load.bin: |
296 | $(BUILD) -lbpf | |
297 | ||
e26e63be MH |
298 | $(OUTPUT)test-sdt.bin: |
299 | $(BUILD) | |
300 | ||
87095f7d WN |
301 | $(OUTPUT)test-cxx.bin: |
302 | $(BUILDXX) -std=gnu++11 | |
303 | ||
4541a8bb ACM |
304 | $(OUTPUT)test-gettid.bin: |
305 | $(BUILD) | |
306 | ||
285932a2 JO |
307 | $(OUTPUT)test-jvmti.bin: |
308 | $(BUILD) | |
309 | ||
dd1d0044 JO |
310 | $(OUTPUT)test-jvmti-cmlr.bin: |
311 | $(BUILD) | |
312 | ||
cb40d55b | 313 | $(OUTPUT)test-llvm.bin: |
d0d0f0c1 | 314 | $(BUILDXX) -std=gnu++14 \ |
cb40d55b WN |
315 | -I$(shell $(LLVM_CONFIG) --includedir) \ |
316 | -L$(shell $(LLVM_CONFIG) --libdir) \ | |
317 | $(shell $(LLVM_CONFIG) --libs Core BPF) \ | |
5fb3d8b7 JO |
318 | $(shell $(LLVM_CONFIG) --system-libs) \ |
319 | > $(@:.bin=.make.output) 2>&1 | |
cb40d55b | 320 | |
a940cad3 | 321 | $(OUTPUT)test-llvm-version.bin: |
d0d0f0c1 | 322 | $(BUILDXX) -std=gnu++14 \ |
5fb3d8b7 JO |
323 | -I$(shell $(LLVM_CONFIG) --includedir) \ |
324 | > $(@:.bin=.make.output) 2>&1 | |
a940cad3 | 325 | |
c7fb4f62 | 326 | $(OUTPUT)test-clang.bin: |
d0d0f0c1 | 327 | $(BUILDXX) -std=gnu++14 \ |
c7fb4f62 WN |
328 | -I$(shell $(LLVM_CONFIG) --includedir) \ |
329 | -L$(shell $(LLVM_CONFIG) --libdir) \ | |
330 | -Wl,--start-group -lclangBasic -lclangDriver \ | |
331 | -lclangFrontend -lclangEdit -lclangLex \ | |
332 | -lclangAST -Wl,--end-group \ | |
333 | $(shell $(LLVM_CONFIG) --libs Core option) \ | |
5fb3d8b7 JO |
334 | $(shell $(LLVM_CONFIG) --system-libs) \ |
335 | > $(@:.bin=.make.output) 2>&1 | |
c7fb4f62 | 336 | |
1925459b | 337 | -include $(OUTPUT)*.d |
8b6eb56a | 338 | |
2a07d814 AB |
339 | $(OUTPUT)test-libaio.bin: |
340 | $(BUILD) -lrt | |
341 | ||
3b1c5d96 AB |
342 | $(OUTPUT)test-libzstd.bin: |
343 | $(BUILD) -lzstd | |
344 | ||
05aca6da | 345 | $(OUTPUT)test-clang-bpf-co-re.bin: |
14e5728f SL |
346 | $(CLANG) -S -g -target bpf -o - $(patsubst %.bin,%.c,$(@F)) | \ |
347 | grep BTF_KIND_VAR | |
348 | ||
49f550ea NK |
349 | $(OUTPUT)test-file-handle.bin: |
350 | $(BUILD) | |
14e5728f | 351 | |
5ef86146 SE |
352 | $(OUTPUT)test-libpfm4.bin: |
353 | $(BUILD) -lpfm | |
354 | ||
b6aa9979 IM |
355 | ############################### |
356 | ||
357 | clean: | |
1925459b | 358 | rm -f $(FILES) $(OUTPUT)*.d $(FILES:.bin=.make.output) |