]>
Commit | Line | Data |
---|---|---|
b2441318 | 1 | # SPDX-License-Identifier: GPL-2.0 |
16671c1e JO |
2 | # Some of the tools (perf) use same make variables |
3 | # as in kernel build. | |
4 | export srctree= | |
5 | export objtree= | |
6 | ||
2363ecb1 BP |
7 | include scripts/Makefile.include |
8 | ||
d5dd8afb BP |
9 | help: |
10 | @echo 'Possible targets:' | |
11 | @echo '' | |
20a7add8 JP |
12 | @echo ' acpi - ACPI tools' |
13 | @echo ' cgroup - cgroup tools' | |
14 | @echo ' cpupower - a tool for all things x86 CPU power' | |
15 | @echo ' firewire - the userspace part of nosy, an IEEE-1394 traffic sniffer' | |
16 | @echo ' freefall - laptop accelerometer program for disk protection' | |
6d591c46 | 17 | @echo ' gpio - GPIO tools' |
20a7add8 JP |
18 | @echo ' hv - tools used when in Hyper-V clients' |
19 | @echo ' iio - IIO tools' | |
f9bc9e65 | 20 | @echo ' kvm_stat - top-like utility for displaying kvm statistics' |
fa7f3242 | 21 | @echo ' leds - LEDs tools' |
24b4d0a1 | 22 | @echo ' liblockdep - user-space wrapper for kernel locking-validator' |
a92bb546 | 23 | @echo ' bpf - misc BPF tools' |
20a7add8 JP |
24 | @echo ' perf - Linux performance measurement and analysis tool' |
25 | @echo ' selftests - various kernel selftests' | |
747a9b0a | 26 | @echo ' spi - spi tools' |
442f04c3 | 27 | @echo ' objtool - an ELF object analysis tool' |
20a7add8 JP |
28 | @echo ' tmon - thermal monitoring and tuning tool' |
29 | @echo ' turbostat - Intel CPU idle stats and freq reporting tool' | |
30 | @echo ' usb - USB testing tools' | |
31 | @echo ' virtio - vhost test module' | |
32 | @echo ' vm - misc vm tools' | |
9d64fc08 | 33 | @echo ' wmi - WMI interface examples' |
d5dd8afb BP |
34 | @echo ' x86_energy_perf_policy - Intel energy policy tool' |
35 | @echo '' | |
ea01fa9f | 36 | @echo 'You can do:' |
7e010562 | 37 | @echo ' $$ make -C tools/ <tool>_install' |
ea01fa9f BP |
38 | @echo '' |
39 | @echo ' from the kernel command line to build and install one of' | |
40 | @echo ' the tools above' | |
41 | @echo '' | |
f6ba98c5 KM |
42 | @echo ' $$ make tools/all' |
43 | @echo '' | |
44 | @echo ' builds all tools.' | |
45 | @echo '' | |
ea01fa9f BP |
46 | @echo ' $$ make tools/install' |
47 | @echo '' | |
48 | @echo ' installs all tools.' | |
49 | @echo '' | |
d5dd8afb BP |
50 | @echo 'Cleaning targets:' |
51 | @echo '' | |
52 | @echo ' all of the above with the "_clean" string appended cleans' | |
53 | @echo ' the respective build directory.' | |
54 | @echo ' clean: a summary clean target to clean _all_ folders' | |
55 | ||
a0c4acc0 LZ |
56 | acpi: FORCE |
57 | $(call descend,power/$@) | |
58 | ||
2363ecb1 | 59 | cpupower: FORCE |
ca9dfc6c | 60 | $(call descend,power/$@) |
2363ecb1 | 61 | |
07c455ee | 62 | cgroup firewire hv guest spi usb virtio vm bpf iio gpio objtool leds wmi: FORCE |
85c66be1 BP |
63 | $(call descend,$@) |
64 | ||
0041898e LC |
65 | liblockdep: FORCE |
66 | $(call descend,lib/lockdep) | |
67 | ||
379a9a28 | 68 | libapi: FORCE |
553873e1 | 69 | $(call descend,lib/api) |
85c66be1 | 70 | |
16671c1e JO |
71 | # The perf build does not follow the descend function setup, |
72 | # invoking it via it's own make rule. | |
73 | PERF_O = $(if $(O),$(O)/tools/perf,) | |
74 | ||
379a9a28 | 75 | perf: FORCE |
16671c1e JO |
76 | $(Q)mkdir -p $(PERF_O) . |
77 | $(Q)$(MAKE) --no-print-directory -C perf O=$(PERF_O) subdir= | |
2363ecb1 BP |
78 | |
79 | selftests: FORCE | |
ca9dfc6c | 80 | $(call descend,testing/$@) |
2363ecb1 BP |
81 | |
82 | turbostat x86_energy_perf_policy: FORCE | |
ca9dfc6c | 83 | $(call descend,power/x86/$@) |
2363ecb1 | 84 | |
94f69966 JP |
85 | tmon: FORCE |
86 | $(call descend,thermal/$@) | |
87 | ||
b3fd7368 PR |
88 | freefall: FORCE |
89 | $(call descend,laptop/$@) | |
90 | ||
ee5f7d79 JF |
91 | kvm_stat: FORCE |
92 | $(call descend,kvm/$@) | |
93 | ||
ecda85e7 | 94 | all: acpi cgroup cpupower gpio hv firewire liblockdep \ |
e9d4650d | 95 | perf selftests spi turbostat usb \ |
a92bb546 | 96 | virtio vm bpf x86_energy_perf_policy \ |
9d64fc08 | 97 | tmon freefall iio objtool kvm_stat wmi |
f6ba98c5 | 98 | |
a0c4acc0 LZ |
99 | acpi_install: |
100 | $(call descend,power/$(@:_install=),install) | |
101 | ||
2363ecb1 | 102 | cpupower_install: |
ca9dfc6c | 103 | $(call descend,power/$(@:_install=),install) |
2363ecb1 | 104 | |
07c455ee | 105 | cgroup_install firewire_install gpio_install hv_install iio_install perf_install spi_install usb_install virtio_install vm_install bpf_install objtool_install wmi_install: |
ca9dfc6c | 106 | $(call descend,$(@:_install=),install) |
2363ecb1 | 107 | |
24b4d0a1 AS |
108 | liblockdep_install: |
109 | $(call descend,lib/lockdep,install) | |
110 | ||
2363ecb1 | 111 | selftests_install: |
9a13c658 | 112 | $(call descend,testing/$(@:_install=),install) |
2363ecb1 BP |
113 | |
114 | turbostat_install x86_energy_perf_policy_install: | |
ca9dfc6c | 115 | $(call descend,power/x86/$(@:_install=),install) |
2363ecb1 | 116 | |
94f69966 JP |
117 | tmon_install: |
118 | $(call descend,thermal/$(@:_install=),install) | |
119 | ||
b3fd7368 PR |
120 | freefall_install: |
121 | $(call descend,laptop/$(@:_install=),install) | |
122 | ||
f9bc9e65 JF |
123 | kvm_stat_install: |
124 | $(call descend,kvm/$(@:_install=),install) | |
125 | ||
53499109 | 126 | install: acpi_install cgroup_install cpupower_install gpio_install \ |
bf1d6b2c | 127 | hv_install firewire_install iio_install liblockdep_install \ |
92e015b1 | 128 | perf_install selftests_install turbostat_install usb_install \ |
a92bb546 | 129 | virtio_install vm_install bpf_install x86_energy_perf_policy_install \ |
9d64fc08 ML |
130 | tmon_install freefall_install objtool_install kvm_stat_install \ |
131 | wmi_install | |
2363ecb1 | 132 | |
a0c4acc0 LZ |
133 | acpi_clean: |
134 | $(call descend,power/acpi,clean) | |
135 | ||
2363ecb1 | 136 | cpupower_clean: |
ca9dfc6c | 137 | $(call descend,power/cpupower,clean) |
2363ecb1 | 138 | |
07c455ee | 139 | cgroup_clean hv_clean firewire_clean spi_clean usb_clean virtio_clean vm_clean wmi_clean bpf_clean iio_clean gpio_clean objtool_clean leds_clean: |
85c66be1 BP |
140 | $(call descend,$(@:_clean=),clean) |
141 | ||
0041898e LC |
142 | liblockdep_clean: |
143 | $(call descend,lib/lockdep,clean) | |
144 | ||
379a9a28 | 145 | libapi_clean: |
553873e1 | 146 | $(call descend,lib/api,clean) |
85c66be1 | 147 | |
2f5a7f1d JO |
148 | libbpf_clean: |
149 | $(call descend,lib/bpf,clean) | |
150 | ||
151 | libsubcmd_clean: | |
152 | $(call descend,lib/subcmd,clean) | |
153 | ||
379a9a28 | 154 | perf_clean: |
ab362f5a JO |
155 | $(Q)mkdir -p $(PERF_O) . |
156 | $(Q)$(MAKE) --no-print-directory -C perf O=$(PERF_O) subdir= clean | |
2363ecb1 BP |
157 | |
158 | selftests_clean: | |
ca9dfc6c | 159 | $(call descend,testing/$(@:_clean=),clean) |
2363ecb1 BP |
160 | |
161 | turbostat_clean x86_energy_perf_policy_clean: | |
ca9dfc6c | 162 | $(call descend,power/x86/$(@:_clean=),clean) |
2363ecb1 | 163 | |
94f69966 JP |
164 | tmon_clean: |
165 | $(call descend,thermal/tmon,clean) | |
166 | ||
b3fd7368 PR |
167 | freefall_clean: |
168 | $(call descend,laptop/freefall,clean) | |
169 | ||
2f5a7f1d JO |
170 | build_clean: |
171 | $(call descend,build,clean) | |
172 | ||
ecda85e7 | 173 | clean: acpi_clean cgroup_clean cpupower_clean hv_clean firewire_clean \ |
5eca4d84 | 174 | perf_clean selftests_clean turbostat_clean spi_clean usb_clean virtio_clean \ |
a92bb546 | 175 | vm_clean bpf_clean iio_clean x86_energy_perf_policy_clean tmon_clean \ |
6d591c46 | 176 | freefall_clean build_clean libbpf_clean libsubcmd_clean liblockdep_clean \ |
9d64fc08 | 177 | gpio_clean objtool_clean leds_clean wmi_clean |
2363ecb1 BP |
178 | |
179 | .PHONY: FORCE |