diff options
Diffstat (limited to 'tools/perf/Makefile')
-rw-r--r-- | tools/perf/Makefile | 151 |
1 files changed, 125 insertions, 26 deletions
diff --git a/tools/perf/Makefile b/tools/perf/Makefile index 7e190d522cd5..23ec66098bdc 100644 --- a/tools/perf/Makefile +++ b/tools/perf/Makefile | |||
@@ -2,6 +2,7 @@ | |||
2 | all:: | 2 | all:: |
3 | 3 | ||
4 | # Define V=1 to have a more verbose compile. | 4 | # Define V=1 to have a more verbose compile. |
5 | # Define V=2 to have an even more verbose compile. | ||
5 | # | 6 | # |
6 | # Define SNPRINTF_RETURNS_BOGUS if your are on a system which snprintf() | 7 | # Define SNPRINTF_RETURNS_BOGUS if your are on a system which snprintf() |
7 | # or vsnprintf() return -1 instead of number of characters which would | 8 | # or vsnprintf() return -1 instead of number of characters which would |
@@ -145,6 +146,10 @@ all:: | |||
145 | # Define NO_EXTERNAL_GREP if you don't want "perf grep" to ever call | 146 | # Define NO_EXTERNAL_GREP if you don't want "perf grep" to ever call |
146 | # your external grep (e.g., if your system lacks grep, if its grep is | 147 | # your external grep (e.g., if your system lacks grep, if its grep is |
147 | # broken, or spawning external process is slower than built-in grep perf has). | 148 | # broken, or spawning external process is slower than built-in grep perf has). |
149 | # | ||
150 | # Define LDFLAGS=-static to build a static binary. | ||
151 | # | ||
152 | # Define EXTRA_CFLAGS=-m64 or EXTRA_CFLAGS=-m32 as appropriate for cross-builds. | ||
148 | 153 | ||
149 | PERF-VERSION-FILE: .FORCE-PERF-VERSION-FILE | 154 | PERF-VERSION-FILE: .FORCE-PERF-VERSION-FILE |
150 | @$(SHELL_PATH) util/PERF-VERSION-GEN | 155 | @$(SHELL_PATH) util/PERF-VERSION-GEN |
@@ -157,20 +162,6 @@ uname_R := $(shell sh -c 'uname -r 2>/dev/null || echo not') | |||
157 | uname_P := $(shell sh -c 'uname -p 2>/dev/null || echo not') | 162 | uname_P := $(shell sh -c 'uname -p 2>/dev/null || echo not') |
158 | uname_V := $(shell sh -c 'uname -v 2>/dev/null || echo not') | 163 | uname_V := $(shell sh -c 'uname -v 2>/dev/null || echo not') |
159 | 164 | ||
160 | # | ||
161 | # Add -m32 for cross-builds: | ||
162 | # | ||
163 | ifdef NO_64BIT | ||
164 | MBITS := -m32 | ||
165 | else | ||
166 | # | ||
167 | # If we're on a 64-bit kernel, use -m64: | ||
168 | # | ||
169 | ifneq ($(patsubst %64,%,$(uname_M)),$(uname_M)) | ||
170 | MBITS := -m64 | ||
171 | endif | ||
172 | endif | ||
173 | |||
174 | # CFLAGS and LDFLAGS are for the users to override from the command line. | 165 | # CFLAGS and LDFLAGS are for the users to override from the command line. |
175 | 166 | ||
176 | # | 167 | # |
@@ -200,8 +191,15 @@ EXTRA_WARNINGS := $(EXTRA_WARNINGS) -Wold-style-definition | |||
200 | EXTRA_WARNINGS := $(EXTRA_WARNINGS) -Wstrict-prototypes | 191 | EXTRA_WARNINGS := $(EXTRA_WARNINGS) -Wstrict-prototypes |
201 | EXTRA_WARNINGS := $(EXTRA_WARNINGS) -Wdeclaration-after-statement | 192 | EXTRA_WARNINGS := $(EXTRA_WARNINGS) -Wdeclaration-after-statement |
202 | 193 | ||
203 | CFLAGS = $(MBITS) -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -fstack-protector-all -D_FORTIFY_SOURCE=2 $(EXTRA_WARNINGS) | 194 | ifeq ("$(origin DEBUG)", "command line") |
204 | LDFLAGS = -lpthread -lrt -lelf -lm | 195 | PERF_DEBUG = $(DEBUG) |
196 | endif | ||
197 | ifndef PERF_DEBUG | ||
198 | CFLAGS_OPTIMIZE = -O6 | ||
199 | endif | ||
200 | |||
201 | CFLAGS = -ggdb3 -Wall -Wextra -std=gnu99 -Werror $(CFLAGS_OPTIMIZE) -D_FORTIFY_SOURCE=2 $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) | ||
202 | EXTLIBS = -lpthread -lrt -lelf -lm | ||
205 | ALL_CFLAGS = $(CFLAGS) | 203 | ALL_CFLAGS = $(CFLAGS) |
206 | ALL_LDFLAGS = $(LDFLAGS) | 204 | ALL_LDFLAGS = $(LDFLAGS) |
207 | STRIP ?= strip | 205 | STRIP ?= strip |
@@ -252,6 +250,9 @@ PTHREAD_LIBS = -lpthread | |||
252 | # explicitly what architecture to check for. Fix this up for yours.. | 250 | # explicitly what architecture to check for. Fix this up for yours.. |
253 | SPARSE_FLAGS = -D__BIG_ENDIAN__ -D__powerpc__ | 251 | SPARSE_FLAGS = -D__BIG_ENDIAN__ -D__powerpc__ |
254 | 252 | ||
253 | ifeq ($(shell sh -c "echo 'int foo(void) {char X[2]; return 3;}' | $(CC) -x c -c -Werror -fstack-protector-all - -o /dev/null "$(QUIET_STDERR)" && echo y"), y) | ||
254 | CFLAGS := $(CFLAGS) -fstack-protector-all | ||
255 | endif | ||
255 | 256 | ||
256 | 257 | ||
257 | ### --- END CONFIGURATION SECTION --- | 258 | ### --- END CONFIGURATION SECTION --- |
@@ -327,8 +328,28 @@ LIB_FILE=libperf.a | |||
327 | LIB_H += ../../include/linux/perf_event.h | 328 | LIB_H += ../../include/linux/perf_event.h |
328 | LIB_H += ../../include/linux/rbtree.h | 329 | LIB_H += ../../include/linux/rbtree.h |
329 | LIB_H += ../../include/linux/list.h | 330 | LIB_H += ../../include/linux/list.h |
331 | LIB_H += ../../include/linux/stringify.h | ||
332 | LIB_H += util/include/linux/bitmap.h | ||
333 | LIB_H += util/include/linux/bitops.h | ||
334 | LIB_H += util/include/linux/compiler.h | ||
335 | LIB_H += util/include/linux/ctype.h | ||
336 | LIB_H += util/include/linux/kernel.h | ||
330 | LIB_H += util/include/linux/list.h | 337 | LIB_H += util/include/linux/list.h |
338 | LIB_H += util/include/linux/module.h | ||
339 | LIB_H += util/include/linux/poison.h | ||
340 | LIB_H += util/include/linux/prefetch.h | ||
341 | LIB_H += util/include/linux/rbtree.h | ||
342 | LIB_H += util/include/linux/string.h | ||
343 | LIB_H += util/include/linux/types.h | ||
344 | LIB_H += util/include/asm/asm-offsets.h | ||
345 | LIB_H += util/include/asm/bitops.h | ||
346 | LIB_H += util/include/asm/byteorder.h | ||
347 | LIB_H += util/include/asm/swab.h | ||
348 | LIB_H += util/include/asm/system.h | ||
349 | LIB_H += util/include/asm/uaccess.h | ||
331 | LIB_H += perf.h | 350 | LIB_H += perf.h |
351 | LIB_H += util/debugfs.h | ||
352 | LIB_H += util/event.h | ||
332 | LIB_H += util/types.h | 353 | LIB_H += util/types.h |
333 | LIB_H += util/levenshtein.h | 354 | LIB_H += util/levenshtein.h |
334 | LIB_H += util/parse-options.h | 355 | LIB_H += util/parse-options.h |
@@ -342,15 +363,22 @@ LIB_H += util/strlist.h | |||
342 | LIB_H += util/run-command.h | 363 | LIB_H += util/run-command.h |
343 | LIB_H += util/sigchain.h | 364 | LIB_H += util/sigchain.h |
344 | LIB_H += util/symbol.h | 365 | LIB_H += util/symbol.h |
345 | LIB_H += util/module.h | ||
346 | LIB_H += util/color.h | 366 | LIB_H += util/color.h |
347 | LIB_H += util/values.h | 367 | LIB_H += util/values.h |
368 | LIB_H += util/sort.h | ||
369 | LIB_H += util/hist.h | ||
370 | LIB_H += util/thread.h | ||
371 | LIB_H += util/data_map.h | ||
372 | LIB_H += util/probe-finder.h | ||
373 | LIB_H += util/probe-event.h | ||
348 | 374 | ||
349 | LIB_OBJS += util/abspath.o | 375 | LIB_OBJS += util/abspath.o |
350 | LIB_OBJS += util/alias.o | 376 | LIB_OBJS += util/alias.o |
351 | LIB_OBJS += util/config.o | 377 | LIB_OBJS += util/config.o |
352 | LIB_OBJS += util/ctype.o | 378 | LIB_OBJS += util/ctype.o |
379 | LIB_OBJS += util/debugfs.o | ||
353 | LIB_OBJS += util/environment.o | 380 | LIB_OBJS += util/environment.o |
381 | LIB_OBJS += util/event.o | ||
354 | LIB_OBJS += util/exec_cmd.o | 382 | LIB_OBJS += util/exec_cmd.o |
355 | LIB_OBJS += util/help.o | 383 | LIB_OBJS += util/help.o |
356 | LIB_OBJS += util/levenshtein.o | 384 | LIB_OBJS += util/levenshtein.o |
@@ -358,6 +386,9 @@ LIB_OBJS += util/parse-options.o | |||
358 | LIB_OBJS += util/parse-events.o | 386 | LIB_OBJS += util/parse-events.o |
359 | LIB_OBJS += util/path.o | 387 | LIB_OBJS += util/path.o |
360 | LIB_OBJS += util/rbtree.o | 388 | LIB_OBJS += util/rbtree.o |
389 | LIB_OBJS += util/bitmap.o | ||
390 | LIB_OBJS += util/hweight.o | ||
391 | LIB_OBJS += util/find_next_bit.o | ||
361 | LIB_OBJS += util/run-command.o | 392 | LIB_OBJS += util/run-command.o |
362 | LIB_OBJS += util/quote.o | 393 | LIB_OBJS += util/quote.o |
363 | LIB_OBJS += util/strbuf.o | 394 | LIB_OBJS += util/strbuf.o |
@@ -367,7 +398,6 @@ LIB_OBJS += util/usage.o | |||
367 | LIB_OBJS += util/wrapper.o | 398 | LIB_OBJS += util/wrapper.o |
368 | LIB_OBJS += util/sigchain.o | 399 | LIB_OBJS += util/sigchain.o |
369 | LIB_OBJS += util/symbol.o | 400 | LIB_OBJS += util/symbol.o |
370 | LIB_OBJS += util/module.o | ||
371 | LIB_OBJS += util/color.o | 401 | LIB_OBJS += util/color.o |
372 | LIB_OBJS += util/pager.o | 402 | LIB_OBJS += util/pager.o |
373 | LIB_OBJS += util/header.o | 403 | LIB_OBJS += util/header.o |
@@ -379,11 +409,25 @@ LIB_OBJS += util/thread.o | |||
379 | LIB_OBJS += util/trace-event-parse.o | 409 | LIB_OBJS += util/trace-event-parse.o |
380 | LIB_OBJS += util/trace-event-read.o | 410 | LIB_OBJS += util/trace-event-read.o |
381 | LIB_OBJS += util/trace-event-info.o | 411 | LIB_OBJS += util/trace-event-info.o |
412 | LIB_OBJS += util/trace-event-perl.o | ||
382 | LIB_OBJS += util/svghelper.o | 413 | LIB_OBJS += util/svghelper.o |
414 | LIB_OBJS += util/sort.o | ||
415 | LIB_OBJS += util/hist.o | ||
416 | LIB_OBJS += util/data_map.o | ||
417 | LIB_OBJS += util/probe-event.o | ||
383 | 418 | ||
384 | BUILTIN_OBJS += builtin-annotate.o | 419 | BUILTIN_OBJS += builtin-annotate.o |
420 | |||
421 | BUILTIN_OBJS += builtin-bench.o | ||
422 | |||
423 | # Benchmark modules | ||
424 | BUILTIN_OBJS += bench/sched-messaging.o | ||
425 | BUILTIN_OBJS += bench/sched-pipe.o | ||
426 | BUILTIN_OBJS += bench/mem-memcpy.o | ||
427 | |||
385 | BUILTIN_OBJS += builtin-help.o | 428 | BUILTIN_OBJS += builtin-help.o |
386 | BUILTIN_OBJS += builtin-sched.o | 429 | BUILTIN_OBJS += builtin-sched.o |
430 | BUILTIN_OBJS += builtin-buildid-list.o | ||
387 | BUILTIN_OBJS += builtin-list.o | 431 | BUILTIN_OBJS += builtin-list.o |
388 | BUILTIN_OBJS += builtin-record.o | 432 | BUILTIN_OBJS += builtin-record.o |
389 | BUILTIN_OBJS += builtin-report.o | 433 | BUILTIN_OBJS += builtin-report.o |
@@ -391,9 +435,16 @@ BUILTIN_OBJS += builtin-stat.o | |||
391 | BUILTIN_OBJS += builtin-timechart.o | 435 | BUILTIN_OBJS += builtin-timechart.o |
392 | BUILTIN_OBJS += builtin-top.o | 436 | BUILTIN_OBJS += builtin-top.o |
393 | BUILTIN_OBJS += builtin-trace.o | 437 | BUILTIN_OBJS += builtin-trace.o |
438 | BUILTIN_OBJS += builtin-probe.o | ||
439 | BUILTIN_OBJS += builtin-kmem.o | ||
394 | 440 | ||
395 | PERFLIBS = $(LIB_FILE) | 441 | PERFLIBS = $(LIB_FILE) |
396 | 442 | ||
443 | ifeq ($(V), 2) | ||
444 | QUIET_STDERR = ">/dev/null" | ||
445 | else | ||
446 | QUIET_STDERR = ">/dev/null 2>&1" | ||
447 | endif | ||
397 | # | 448 | # |
398 | # Platform specific tweaks | 449 | # Platform specific tweaks |
399 | # | 450 | # |
@@ -421,36 +472,58 @@ ifeq ($(uname_S),Darwin) | |||
421 | PTHREAD_LIBS = | 472 | PTHREAD_LIBS = |
422 | endif | 473 | endif |
423 | 474 | ||
424 | ifeq ($(shell sh -c "(echo '\#include <libelf.h>'; echo 'int main(void) { Elf * elf = elf_begin(0, ELF_C_READ, 0); return (long)elf; }') | $(CC) -x c - $(ALL_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -o /dev/null $(ALL_LDFLAGS) > /dev/null 2>&1 && echo y"), y) | 475 | ifeq ($(shell sh -c "(echo '\#include <libelf.h>'; echo 'int main(void) { Elf * elf = elf_begin(0, ELF_C_READ, 0); return (long)elf; }') | $(CC) -x c - $(ALL_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -o /dev/null $(ALL_LDFLAGS) $(EXTLIBS) "$(QUIET_STDERR)" && echo y"), y) |
425 | ifneq ($(shell sh -c "(echo '\#include <libelf.h>'; echo 'int main(void) { Elf * elf = elf_begin(0, ELF_C_READ_MMAP, 0); return (long)elf; }') | $(CC) -x c - $(ALL_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -o /dev/null $(ALL_LDFLAGS) > /dev/null 2>&1 && echo y"), y) | 476 | ifneq ($(shell sh -c "(echo '\#include <gnu/libc-version.h>'; echo 'int main(void) { const char * version = gnu_get_libc_version(); return (long)version; }') | $(CC) -x c - $(ALL_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -o /dev/null $(ALL_LDFLAGS) $(EXTLIBS) "$(QUIET_STDERR)" && echo y"), y) |
477 | msg := $(error No gnu/libc-version.h found, please install glibc-dev[el]/glibc-static); | ||
478 | endif | ||
479 | |||
480 | ifneq ($(shell sh -c "(echo '\#include <libelf.h>'; echo 'int main(void) { Elf * elf = elf_begin(0, ELF_C_READ_MMAP, 0); return (long)elf; }') | $(CC) -x c - $(ALL_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -o /dev/null $(ALL_LDFLAGS) $(EXTLIBS) "$(QUIET_STDERR)" && echo y"), y) | ||
426 | BASIC_CFLAGS += -DLIBELF_NO_MMAP | 481 | BASIC_CFLAGS += -DLIBELF_NO_MMAP |
427 | endif | 482 | endif |
428 | else | 483 | else |
429 | msg := $(error No libelf.h/libelf found, please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]); | 484 | msg := $(error No libelf.h/libelf found, please install libelf-dev/elfutils-libelf-devel and glibc-dev[el]); |
430 | endif | 485 | endif |
431 | 486 | ||
487 | ifneq ($(shell sh -c "(echo '\#include <libdwarf/dwarf.h>'; echo '\#include <libdwarf/libdwarf.h>'; echo 'int main(void) { Dwarf_Debug dbg; Dwarf_Error err; Dwarf_Ranges *rng; dwarf_init(0, DW_DLC_READ, 0, 0, &dbg, &err); dwarf_get_ranges(dbg, 0, &rng, 0, 0, &err); return (long)dbg; }') | $(CC) -x c - $(ALL_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -ldwarf -lelf -o /dev/null $(ALL_LDFLAGS) $(EXTLIBS) "$(QUIET_STDERR)" && echo y"), y) | ||
488 | msg := $(warning No libdwarf.h found or old libdwarf.h found, disables dwarf support. Please install libdwarf-dev/libdwarf-devel >= 20081231); | ||
489 | BASIC_CFLAGS += -DNO_LIBDWARF | ||
490 | else | ||
491 | EXTLIBS += -lelf -ldwarf | ||
492 | LIB_OBJS += util/probe-finder.o | ||
493 | endif | ||
494 | |||
495 | PERL_EMBED_LDOPTS = `perl -MExtUtils::Embed -e ldopts 2>/dev/null` | ||
496 | PERL_EMBED_CCOPTS = `perl -MExtUtils::Embed -e ccopts 2>/dev/null` | ||
497 | |||
498 | ifneq ($(shell sh -c "(echo '\#include <EXTERN.h>'; echo '\#include <perl.h>'; echo 'int main(void) { perl_alloc(); return 0; }') | $(CC) -x c - $(PERL_EMBED_CCOPTS) -o /dev/null $(PERL_EMBED_LDOPTS) > /dev/null 2>&1 && echo y"), y) | ||
499 | BASIC_CFLAGS += -DNO_LIBPERL | ||
500 | else | ||
501 | ALL_LDFLAGS += $(PERL_EMBED_LDOPTS) | ||
502 | LIB_OBJS += scripts/perl/Perf-Trace-Util/Context.o | ||
503 | endif | ||
504 | |||
432 | ifdef NO_DEMANGLE | 505 | ifdef NO_DEMANGLE |
433 | BASIC_CFLAGS += -DNO_DEMANGLE | 506 | BASIC_CFLAGS += -DNO_DEMANGLE |
434 | else | 507 | else |
435 | has_bfd := $(shell sh -c "(echo '\#include <bfd.h>'; echo 'int main(void) { bfd_demangle(0, 0, 0); return 0; }') | $(CC) -x c - $(ALL_CFLAGS) -o /dev/null $(ALL_LDFLAGS) -lbfd > /dev/null 2>&1 && echo y") | 508 | has_bfd := $(shell sh -c "(echo '\#include <bfd.h>'; echo 'int main(void) { bfd_demangle(0, 0, 0); return 0; }') | $(CC) -x c - $(ALL_CFLAGS) -o /dev/null $(ALL_LDFLAGS) $(EXTLIBS) -lbfd "$(QUIET_STDERR)" && echo y") |
436 | 509 | ||
437 | ifeq ($(has_bfd),y) | 510 | ifeq ($(has_bfd),y) |
438 | EXTLIBS += -lbfd | 511 | EXTLIBS += -lbfd |
439 | else | 512 | else |
440 | has_bfd_iberty := $(shell sh -c "(echo '\#include <bfd.h>'; echo 'int main(void) { bfd_demangle(0, 0, 0); return 0; }') | $(CC) -x c - $(ALL_CFLAGS) -o /dev/null $(ALL_LDFLAGS) -lbfd -liberty > /dev/null 2>&1 && echo y") | 513 | has_bfd_iberty := $(shell sh -c "(echo '\#include <bfd.h>'; echo 'int main(void) { bfd_demangle(0, 0, 0); return 0; }') | $(CC) -x c - $(ALL_CFLAGS) -o /dev/null $(ALL_LDFLAGS) $(EXTLIBS) -lbfd -liberty "$(QUIET_STDERR)" && echo y") |
441 | ifeq ($(has_bfd_iberty),y) | 514 | ifeq ($(has_bfd_iberty),y) |
442 | EXTLIBS += -lbfd -liberty | 515 | EXTLIBS += -lbfd -liberty |
443 | else | 516 | else |
444 | has_bfd_iberty_z := $(shell sh -c "(echo '\#include <bfd.h>'; echo 'int main(void) { bfd_demangle(0, 0, 0); return 0; }') | $(CC) -x c - $(ALL_CFLAGS) -o /dev/null $(ALL_LDFLAGS) -lbfd -liberty -lz > /dev/null 2>&1 && echo y") | 517 | has_bfd_iberty_z := $(shell sh -c "(echo '\#include <bfd.h>'; echo 'int main(void) { bfd_demangle(0, 0, 0); return 0; }') | $(CC) -x c - $(ALL_CFLAGS) -o /dev/null $(ALL_LDFLAGS) $(EXTLIBS) -lbfd -liberty -lz "$(QUIET_STDERR)" && echo y") |
445 | ifeq ($(has_bfd_iberty_z),y) | 518 | ifeq ($(has_bfd_iberty_z),y) |
446 | EXTLIBS += -lbfd -liberty -lz | 519 | EXTLIBS += -lbfd -liberty -lz |
447 | else | 520 | else |
448 | has_cplus_demangle := $(shell sh -c "(echo 'extern char *cplus_demangle(const char *, int);'; echo 'int main(void) { cplus_demangle(0, 0); return 0; }') | $(CC) -x c - $(ALL_CFLAGS) -o /dev/null $(ALL_LDFLAGS) -liberty > /dev/null 2>&1 && echo y") | 521 | has_cplus_demangle := $(shell sh -c "(echo 'extern char *cplus_demangle(const char *, int);'; echo 'int main(void) { cplus_demangle(0, 0); return 0; }') | $(CC) -x c - $(ALL_CFLAGS) -o /dev/null $(ALL_LDFLAGS) $(EXTLIBS) -liberty "$(QUIET_STDERR)" && echo y") |
449 | ifeq ($(has_cplus_demangle),y) | 522 | ifeq ($(has_cplus_demangle),y) |
450 | EXTLIBS += -liberty | 523 | EXTLIBS += -liberty |
451 | BASIC_CFLAGS += -DHAVE_CPLUS_DEMANGLE | 524 | BASIC_CFLAGS += -DHAVE_CPLUS_DEMANGLE |
452 | else | 525 | else |
453 | msg := $(warning No bfd.h/libbfd found, install binutils-dev[el] to gain symbol demangling) | 526 | msg := $(warning No bfd.h/libbfd found, install binutils-dev[el]/zlib-static to gain symbol demangling) |
454 | BASIC_CFLAGS += -DNO_DEMANGLE | 527 | BASIC_CFLAGS += -DNO_DEMANGLE |
455 | endif | 528 | endif |
456 | endif | 529 | endif |
@@ -787,6 +860,25 @@ util/config.o: util/config.c PERF-CFLAGS | |||
787 | util/rbtree.o: ../../lib/rbtree.c PERF-CFLAGS | 860 | util/rbtree.o: ../../lib/rbtree.c PERF-CFLAGS |
788 | $(QUIET_CC)$(CC) -o util/rbtree.o -c $(ALL_CFLAGS) -DETC_PERFCONFIG='"$(ETC_PERFCONFIG_SQ)"' $< | 861 | $(QUIET_CC)$(CC) -o util/rbtree.o -c $(ALL_CFLAGS) -DETC_PERFCONFIG='"$(ETC_PERFCONFIG_SQ)"' $< |
789 | 862 | ||
863 | # some perf warning policies can't fit to lib/bitmap.c, eg: it warns about variable shadowing | ||
864 | # from <string.h> that comes from kernel headers wrapping. | ||
865 | KBITMAP_FLAGS=`echo $(ALL_CFLAGS) | sed s/-Wshadow// | sed s/-Wswitch-default// | sed s/-Wextra//` | ||
866 | |||
867 | util/bitmap.o: ../../lib/bitmap.c PERF-CFLAGS | ||
868 | $(QUIET_CC)$(CC) -o util/bitmap.o -c $(KBITMAP_FLAGS) -DETC_PERFCONFIG='"$(ETC_PERFCONFIG_SQ)"' $< | ||
869 | |||
870 | util/hweight.o: ../../lib/hweight.c PERF-CFLAGS | ||
871 | $(QUIET_CC)$(CC) -o util/hweight.o -c $(ALL_CFLAGS) -DETC_PERFCONFIG='"$(ETC_PERFCONFIG_SQ)"' $< | ||
872 | |||
873 | util/find_next_bit.o: ../../lib/find_next_bit.c PERF-CFLAGS | ||
874 | $(QUIET_CC)$(CC) -o util/find_next_bit.o -c $(ALL_CFLAGS) -DETC_PERFCONFIG='"$(ETC_PERFCONFIG_SQ)"' $< | ||
875 | |||
876 | util/trace-event-perl.o: util/trace-event-perl.c PERF-CFLAGS | ||
877 | $(QUIET_CC)$(CC) -o util/trace-event-perl.o -c $(ALL_CFLAGS) $(PERL_EMBED_CCOPTS) -Wno-redundant-decls -Wno-strict-prototypes -Wno-unused-parameter -Wno-shadow $< | ||
878 | |||
879 | scripts/perl/Perf-Trace-Util/Context.o: scripts/perl/Perf-Trace-Util/Context.c PERF-CFLAGS | ||
880 | $(QUIET_CC)$(CC) -o scripts/perl/Perf-Trace-Util/Context.o -c $(ALL_CFLAGS) $(PERL_EMBED_CCOPTS) -Wno-redundant-decls -Wno-strict-prototypes -Wno-unused-parameter -Wno-nested-externs $< | ||
881 | |||
790 | perf-%$X: %.o $(PERFLIBS) | 882 | perf-%$X: %.o $(PERFLIBS) |
791 | $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) $(LIBS) | 883 | $(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) $(LIBS) |
792 | 884 | ||
@@ -894,6 +986,13 @@ export perfexec_instdir | |||
894 | install: all | 986 | install: all |
895 | $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(bindir_SQ)' | 987 | $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(bindir_SQ)' |
896 | $(INSTALL) perf$X '$(DESTDIR_SQ)$(bindir_SQ)' | 988 | $(INSTALL) perf$X '$(DESTDIR_SQ)$(bindir_SQ)' |
989 | $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/perl/Perf-Trace-Util/lib/Perf/Trace' | ||
990 | $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/perl/bin' | ||
991 | $(INSTALL) scripts/perl/Perf-Trace-Util/lib/Perf/Trace/* -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/perl/Perf-Trace-Util/lib/Perf/Trace' | ||
992 | $(INSTALL) scripts/perl/*.pl -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/perl' | ||
993 | $(INSTALL) scripts/perl/bin/* -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/perl/bin' | ||
994 | $(INSTALL) scripts/perl/Perf-Trace-Util/Makefile.PL -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/perl/Perf-Trace-Util' | ||
995 | $(INSTALL) scripts/perl/Perf-Trace-Util/README -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/perl/Perf-Trace-Util' | ||
897 | ifdef BUILT_INS | 996 | ifdef BUILT_INS |
898 | $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)' | 997 | $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)' |
899 | $(INSTALL) $(BUILT_INS) '$(DESTDIR_SQ)$(perfexec_instdir_SQ)' | 998 | $(INSTALL) $(BUILT_INS) '$(DESTDIR_SQ)$(perfexec_instdir_SQ)' |
@@ -979,7 +1078,7 @@ distclean: clean | |||
979 | # $(RM) configure | 1078 | # $(RM) configure |
980 | 1079 | ||
981 | clean: | 1080 | clean: |
982 | $(RM) *.o */*.o $(LIB_FILE) | 1081 | $(RM) *.o */*.o */*/*.o */*/*/*.o $(LIB_FILE) |
983 | $(RM) $(ALL_PROGRAMS) $(BUILT_INS) perf$X | 1082 | $(RM) $(ALL_PROGRAMS) $(BUILT_INS) perf$X |
984 | $(RM) $(TEST_PROGRAMS) | 1083 | $(RM) $(TEST_PROGRAMS) |
985 | $(RM) *.spec *.pyc *.pyo */*.pyc */*.pyo common-cmds.h TAGS tags cscope* | 1084 | $(RM) *.spec *.pyc *.pyo */*.pyc */*.pyo common-cmds.h TAGS tags cscope* |