[PATCH] tools: perf: Fix liblk not built when using perf_install target
From: Sedat Dilek
Date: Fri Aug 30 2013 - 11:18:58 EST
After a successful Linux-kernel build I wanted to build only perf
as a linux-tools to do some benchmarking of the spinlock-lockref
changes together with a test-case from Linus.
I followed the advices in "tools/Makefile".
[ tools/Makefile ]
...
@echo 'You can do:'
@echo ' $$ make -C tools/ <tool>_install' <--- NOTE THIS ONE!
@echo ''
@echo ' from the kernel command line to build and install one of'
@echo ' the tools above'
...
So, I tried to build perf the "official" way:
$ make -C tools/ perf_install
Unfortunately, my build breaks like this:
...
make[2]: Entering directory
`~/src/linux-kernel/linux/tools/lib/traceevent'
make[2]: Leaving directory
`~/src/linux-kernel/linux/tools/lib/traceevent'
LINK perf
gcc: error: ~/src/linux-kernel/linux/tools/lib/lk/liblk.a: No such file or directory
make[1]: *** [perf] Error 1
make[1]: Leaving directory `~/src/linux-kernel/linux/tools/perf'
make: *** [perf_install] Error 2
After some discussion on IRC with peterz and acme and a closer look at
the targets in "tools/Makefile", I have noticed that the perf_install
target misses liblk to be built beforehand.
On the contrary the perf_clean target invokes to clean liblk when perf
is cleaned.
[ tools/Makefile ]
...
perf_clean: liblk_clean
$(call descend,$(@:_clean=),clean)
...
Fix this by adding liblk target to perf_install target.
For more details see this thread in [1]:
"[3.11-rc7] Building perf-only the "official" way seems to be BROKEN?"
[1] http://marc.info/?t=137786599400001&r=1&w=2
Cc: Ingo Molnar <mingo@xxxxxxxxxx>
Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Sedat Dilek <sedat.dilek@xxxxxxxxx>
---
tools/Makefile | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/tools/Makefile b/tools/Makefile
index 41067f3..c15f0e7 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -53,7 +53,10 @@ turbostat x86_energy_perf_policy: FORCE
cpupower_install:
$(call descend,power/$(@:_install=),install)
-cgroup_install firewire_install lguest_install perf_install usb_install virtio_install vm_install net_install:
+cgroup_install firewire_install lguest_install usb_install virtio_install vm_install net_install:
+ $(call descend,$(@:_install=),install)
+
+perf_install: liblk
$(call descend,$(@:_install=),install)
selftests_install:
--
1.8.4
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/