1 # SPDX-License-Identifier: GPL-2.0 1 # SPDX-License-Identifier: GPL-2.0 2 # Some of the tools (perf) use same make varia 2 # Some of the tools (perf) use same make variables 3 # as in kernel build. 3 # as in kernel build. 4 export srctree= 4 export srctree= 5 export objtree= 5 export objtree= 6 6 7 include scripts/Makefile.include 7 include scripts/Makefile.include 8 8 9 help: 9 help: 10 @echo 'Possible targets:' 10 @echo 'Possible targets:' 11 @echo '' 11 @echo '' 12 @echo ' acpi - ACPI 12 @echo ' acpi - ACPI tools' 13 @echo ' bpf - misc 13 @echo ' bpf - misc BPF tools' >> 14 @echo ' cgroup - cgroup tools' 14 @echo ' counter - coun 15 @echo ' counter - counter tools' 15 @echo ' cpupower - a to 16 @echo ' cpupower - a tool for all things x86 CPU power' 16 @echo ' debugging - tool 17 @echo ' debugging - tools for debugging' 17 @echo ' firewire - the 18 @echo ' firewire - the userspace part of nosy, an IEEE-1394 traffic sniffer' 18 @echo ' firmware - Firm 19 @echo ' firmware - Firmware tools' 19 @echo ' freefall - lapt 20 @echo ' freefall - laptop accelerometer program for disk protection' 20 @echo ' gpio - GPIO 21 @echo ' gpio - GPIO tools' 21 @echo ' hv - tool 22 @echo ' hv - tools used when in Hyper-V clients' 22 @echo ' iio - IIO 23 @echo ' iio - IIO tools' 23 @echo ' intel-speed-select - Inte 24 @echo ' intel-speed-select - Intel Speed Select tool' 24 @echo ' kvm_stat - top- 25 @echo ' kvm_stat - top-like utility for displaying kvm statistics' 25 @echo ' leds - LEDs 26 @echo ' leds - LEDs tools' 26 @echo ' nolibc - noli 27 @echo ' nolibc - nolibc headers testing and installation' 27 @echo ' objtool - an E 28 @echo ' objtool - an ELF object analysis tool' 28 @echo ' pci - PCI 29 @echo ' pci - PCI tools' 29 @echo ' perf - Linu 30 @echo ' perf - Linux performance measurement and analysis tool' 30 @echo ' selftests - vari 31 @echo ' selftests - various kernel selftests' 31 @echo ' sched_ext - sche << 32 @echo ' bootconfig - boot 32 @echo ' bootconfig - boot config tool' 33 @echo ' spi - spi 33 @echo ' spi - spi tools' 34 @echo ' tmon - ther 34 @echo ' tmon - thermal monitoring and tuning tool' 35 @echo ' thermometer - temp 35 @echo ' thermometer - temperature capture tool' 36 @echo ' thermal-engine - ther 36 @echo ' thermal-engine - thermal monitoring tool' 37 @echo ' thermal - ther 37 @echo ' thermal - thermal library' 38 @echo ' tracing - misc 38 @echo ' tracing - misc tracing tools' 39 @echo ' turbostat - Inte 39 @echo ' turbostat - Intel CPU idle stats and freq reporting tool' 40 @echo ' usb - USB 40 @echo ' usb - USB testing tools' 41 @echo ' virtio - vhos 41 @echo ' virtio - vhost test module' 42 @echo ' mm - misc 42 @echo ' mm - misc mm tools' 43 @echo ' wmi - WMI 43 @echo ' wmi - WMI interface examples' 44 @echo ' x86_energy_perf_policy - Inte 44 @echo ' x86_energy_perf_policy - Intel energy policy tool' 45 @echo '' 45 @echo '' 46 @echo 'You can do:' 46 @echo 'You can do:' 47 @echo ' $$ make -C tools/ <tool>_insta 47 @echo ' $$ make -C tools/ <tool>_install' 48 @echo '' 48 @echo '' 49 @echo ' from the kernel command line 49 @echo ' from the kernel command line to build and install one of' 50 @echo ' the tools above' 50 @echo ' the tools above' 51 @echo '' 51 @echo '' 52 @echo ' $$ make tools/all' 52 @echo ' $$ make tools/all' 53 @echo '' 53 @echo '' 54 @echo ' builds all tools.' 54 @echo ' builds all tools.' 55 @echo '' 55 @echo '' 56 @echo ' $$ make tools/install' 56 @echo ' $$ make tools/install' 57 @echo '' 57 @echo '' 58 @echo ' installs all tools.' 58 @echo ' installs all tools.' 59 @echo '' 59 @echo '' 60 @echo 'Cleaning targets:' 60 @echo 'Cleaning targets:' 61 @echo '' 61 @echo '' 62 @echo ' all of the above with the "_c 62 @echo ' all of the above with the "_clean" string appended cleans' 63 @echo ' the respective build direct 63 @echo ' the respective build directory.' 64 @echo ' clean: a summary clean target 64 @echo ' clean: a summary clean target to clean _all_ folders' 65 65 66 acpi: FORCE 66 acpi: FORCE 67 $(call descend,power/$@) 67 $(call descend,power/$@) 68 68 69 cpupower: FORCE 69 cpupower: FORCE 70 $(call descend,power/$@) 70 $(call descend,power/$@) 71 71 72 counter firewire hv guest bootconfig spi usb v !! 72 cgroup counter firewire hv guest bootconfig spi usb virtio mm bpf iio gpio objtool leds wmi pci firmware debugging tracing: FORCE 73 $(call descend,$@) 73 $(call descend,$@) 74 74 75 bpf/%: FORCE 75 bpf/%: FORCE 76 $(call descend,$@) 76 $(call descend,$@) 77 77 78 libapi: FORCE 78 libapi: FORCE 79 $(call descend,lib/api) 79 $(call descend,lib/api) 80 80 81 nolibc: FORCE 81 nolibc: FORCE 82 $(call descend,include/nolibc) 82 $(call descend,include/nolibc) 83 83 84 nolibc_%: FORCE 84 nolibc_%: FORCE 85 $(call descend,include/nolibc,$(patsub 85 $(call descend,include/nolibc,$(patsubst nolibc_%,%,$@)) 86 86 87 # The perf build does not follow the descend f 87 # The perf build does not follow the descend function setup, 88 # invoking it via it's own make rule. 88 # invoking it via it's own make rule. 89 PERF_O = $(if $(O),$(O)/tools/perf,) 89 PERF_O = $(if $(O),$(O)/tools/perf,) 90 90 91 perf: FORCE 91 perf: FORCE 92 $(Q)mkdir -p $(PERF_O) . 92 $(Q)mkdir -p $(PERF_O) . 93 $(Q)$(MAKE) --no-print-directory -C pe 93 $(Q)$(MAKE) --no-print-directory -C perf O=$(PERF_O) subdir= 94 94 95 sched_ext: FORCE << 96 $(call descend,sched_ext) << 97 << 98 selftests: FORCE 95 selftests: FORCE 99 $(call descend,testing/$@) 96 $(call descend,testing/$@) 100 97 101 thermal: FORCE 98 thermal: FORCE 102 $(call descend,lib/$@) 99 $(call descend,lib/$@) 103 100 104 turbostat x86_energy_perf_policy intel-speed-s 101 turbostat x86_energy_perf_policy intel-speed-select: FORCE 105 $(call descend,power/x86/$@) 102 $(call descend,power/x86/$@) 106 103 107 tmon: FORCE 104 tmon: FORCE 108 $(call descend,thermal/$@) 105 $(call descend,thermal/$@) 109 106 110 thermometer: FORCE 107 thermometer: FORCE 111 $(call descend,thermal/$@) 108 $(call descend,thermal/$@) 112 109 113 thermal-engine: FORCE thermal 110 thermal-engine: FORCE thermal 114 $(call descend,thermal/$@) 111 $(call descend,thermal/$@) 115 112 116 freefall: FORCE 113 freefall: FORCE 117 $(call descend,laptop/$@) 114 $(call descend,laptop/$@) 118 115 119 kvm_stat: FORCE 116 kvm_stat: FORCE 120 $(call descend,kvm/$@) 117 $(call descend,kvm/$@) 121 118 122 all: acpi counter cpupower gpio hv firewire \ !! 119 all: acpi cgroup counter cpupower gpio hv firewire \ 123 perf selftests bootconfig spi 120 perf selftests bootconfig spi turbostat usb \ 124 virtio mm bpf x86_energy_perf_ 121 virtio mm bpf x86_energy_perf_policy \ 125 tmon freefall iio objtool kvm_ 122 tmon freefall iio objtool kvm_stat wmi \ 126 pci debugging tracing thermal 123 pci debugging tracing thermal thermometer thermal-engine 127 124 128 acpi_install: 125 acpi_install: 129 $(call descend,power/$(@:_install=),in 126 $(call descend,power/$(@:_install=),install) 130 127 131 cpupower_install: 128 cpupower_install: 132 $(call descend,power/$(@:_install=),in 129 $(call descend,power/$(@:_install=),install) 133 130 134 counter_install firewire_install gpio_install !! 131 cgroup_install counter_install firewire_install gpio_install hv_install iio_install perf_install bootconfig_install spi_install usb_install virtio_install mm_install bpf_install objtool_install wmi_install pci_install debugging_install tracing_install: 135 $(call descend,$(@:_install=),install) 132 $(call descend,$(@:_install=),install) 136 133 137 selftests_install: 134 selftests_install: 138 $(call descend,testing/$(@:_install=), 135 $(call descend,testing/$(@:_install=),install) 139 136 140 thermal_install: 137 thermal_install: 141 $(call descend,lib/$(@:_install=),inst 138 $(call descend,lib/$(@:_install=),install) 142 139 143 turbostat_install x86_energy_perf_policy_insta 140 turbostat_install x86_energy_perf_policy_install intel-speed-select_install: 144 $(call descend,power/x86/$(@:_install= 141 $(call descend,power/x86/$(@:_install=),install) 145 142 146 tmon_install: 143 tmon_install: 147 $(call descend,thermal/$(@:_install=), 144 $(call descend,thermal/$(@:_install=),install) 148 145 149 thermometer_install: 146 thermometer_install: 150 $(call descend,thermal/$(@:_install=), 147 $(call descend,thermal/$(@:_install=),install) 151 148 152 thermal-engine_install: 149 thermal-engine_install: 153 $(call descend,thermal/$(@:_install=), 150 $(call descend,thermal/$(@:_install=),install) 154 151 155 freefall_install: 152 freefall_install: 156 $(call descend,laptop/$(@:_install=),i 153 $(call descend,laptop/$(@:_install=),install) 157 154 158 kvm_stat_install: 155 kvm_stat_install: 159 $(call descend,kvm/$(@:_install=),inst 156 $(call descend,kvm/$(@:_install=),install) 160 157 161 install: acpi_install counter_install cpupower !! 158 install: acpi_install cgroup_install counter_install cpupower_install gpio_install \ 162 hv_install firewire_install ii 159 hv_install firewire_install iio_install \ 163 perf_install selftests_install 160 perf_install selftests_install turbostat_install usb_install \ 164 virtio_install mm_install bpf_ 161 virtio_install mm_install bpf_install x86_energy_perf_policy_install \ 165 tmon_install freefall_install 162 tmon_install freefall_install objtool_install kvm_stat_install \ 166 wmi_install pci_install debugg 163 wmi_install pci_install debugging_install intel-speed-select_install \ 167 tracing_install thermometer_in 164 tracing_install thermometer_install thermal-engine_install 168 165 169 acpi_clean: 166 acpi_clean: 170 $(call descend,power/acpi,clean) 167 $(call descend,power/acpi,clean) 171 168 172 cpupower_clean: 169 cpupower_clean: 173 $(call descend,power/cpupower,clean) 170 $(call descend,power/cpupower,clean) 174 171 175 counter_clean hv_clean firewire_clean bootconf !! 172 cgroup_clean counter_clean hv_clean firewire_clean bootconfig_clean spi_clean usb_clean virtio_clean mm_clean wmi_clean bpf_clean iio_clean gpio_clean objtool_clean leds_clean pci_clean firmware_clean debugging_clean tracing_clean: 176 $(call descend,$(@:_clean=),clean) 173 $(call descend,$(@:_clean=),clean) 177 174 178 libapi_clean: 175 libapi_clean: 179 $(call descend,lib/api,clean) 176 $(call descend,lib/api,clean) 180 177 181 libbpf_clean: 178 libbpf_clean: 182 $(call descend,lib/bpf,clean) 179 $(call descend,lib/bpf,clean) 183 180 184 libsubcmd_clean: 181 libsubcmd_clean: 185 $(call descend,lib/subcmd,clean) 182 $(call descend,lib/subcmd,clean) 186 183 187 perf_clean: 184 perf_clean: 188 $(Q)mkdir -p $(PERF_O) . 185 $(Q)mkdir -p $(PERF_O) . 189 $(Q)$(MAKE) --no-print-directory -C pe 186 $(Q)$(MAKE) --no-print-directory -C perf O=$(PERF_O) subdir= clean 190 187 191 sched_ext_clean: << 192 $(call descend,sched_ext,clean) << 193 << 194 selftests_clean: 188 selftests_clean: 195 $(call descend,testing/$(@:_clean=),cl 189 $(call descend,testing/$(@:_clean=),clean) 196 190 197 thermal_clean: 191 thermal_clean: 198 $(call descend,lib/thermal,clean) 192 $(call descend,lib/thermal,clean) 199 193 200 turbostat_clean x86_energy_perf_policy_clean i 194 turbostat_clean x86_energy_perf_policy_clean intel-speed-select_clean: 201 $(call descend,power/x86/$(@:_clean=), 195 $(call descend,power/x86/$(@:_clean=),clean) 202 196 203 thermometer_clean: 197 thermometer_clean: 204 $(call descend,thermal/thermometer,cle 198 $(call descend,thermal/thermometer,clean) 205 199 206 thermal-engine_clean: 200 thermal-engine_clean: 207 $(call descend,thermal/thermal-engine, 201 $(call descend,thermal/thermal-engine,clean) 208 202 209 tmon_clean: 203 tmon_clean: 210 $(call descend,thermal/tmon,clean) 204 $(call descend,thermal/tmon,clean) 211 205 212 freefall_clean: 206 freefall_clean: 213 $(call descend,laptop/freefall,clean) 207 $(call descend,laptop/freefall,clean) 214 208 215 build_clean: 209 build_clean: 216 $(call descend,build,clean) 210 $(call descend,build,clean) 217 211 218 clean: acpi_clean counter_clean cpupower_clean !! 212 clean: acpi_clean cgroup_clean counter_clean cpupower_clean hv_clean firewire_clean \ 219 perf_clean selftests_clean tur 213 perf_clean selftests_clean turbostat_clean bootconfig_clean spi_clean usb_clean virtio_clean \ 220 mm_clean bpf_clean iio_clean x 214 mm_clean bpf_clean iio_clean x86_energy_perf_policy_clean tmon_clean \ 221 freefall_clean build_clean lib 215 freefall_clean build_clean libbpf_clean libsubcmd_clean \ 222 gpio_clean objtool_clean leds_ 216 gpio_clean objtool_clean leds_clean wmi_clean pci_clean firmware_clean debugging_clean \ 223 intel-speed-select_clean traci !! 217 intel-speed-select_clean tracing_clean thermal_clean thermometer_clean thermal-engine_clean 224 sched_ext_clean << 225 218 226 .PHONY: FORCE 219 .PHONY: FORCE
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.