116671c1eSJiri Olsa# Some of the tools (perf) use same make variables 216671c1eSJiri Olsa# as in kernel build. 316671c1eSJiri Olsaexport srctree= 416671c1eSJiri Olsaexport objtree= 516671c1eSJiri Olsa 62363ecb1SBorislav Petkovinclude scripts/Makefile.include 72363ecb1SBorislav Petkov 8d5dd8afbSBorislav Petkovhelp: 9d5dd8afbSBorislav Petkov @echo 'Possible targets:' 10d5dd8afbSBorislav Petkov @echo '' 11a0c4acc0SLv Zheng @echo ' acpi - ACPI tools' 1292e015b1SGreg Thelen @echo ' cgroup - cgroup tools' 13d5dd8afbSBorislav Petkov @echo ' cpupower - a tool for all things x86 CPU power' 14d5dd8afbSBorislav Petkov @echo ' firewire - the userspace part of nosy, an IEEE-1394 traffic sniffer' 153eb2094cSBjarke Istrup Pedersen @echo ' hv - tools used when in Hyper-V clients' 1653375103SRoberta Dobrescu @echo ' iio - IIO tools' 17d5dd8afbSBorislav Petkov @echo ' lguest - a minimal 32-bit x86 hypervisor' 18d5dd8afbSBorislav Petkov @echo ' perf - Linux performance measurement and analysis tool' 19d5dd8afbSBorislav Petkov @echo ' selftests - various kernel selftests' 20d5dd8afbSBorislav Petkov @echo ' turbostat - Intel CPU idle stats and freq reporting tool' 21d5dd8afbSBorislav Petkov @echo ' usb - USB testing tools' 22d5dd8afbSBorislav Petkov @echo ' virtio - vhost test module' 23e306e2c1SDaniel Borkmann @echo ' net - misc networking tools' 24d5dd8afbSBorislav Petkov @echo ' vm - misc vm tools' 25d5dd8afbSBorislav Petkov @echo ' x86_energy_perf_policy - Intel energy policy tool' 2694f69966SJacob Pan @echo ' tmon - thermal monitoring and tuning tool' 27b3fd7368SPali Rohár @echo ' freefall - laptop accelerometer program for disk protection' 28d5dd8afbSBorislav Petkov @echo '' 29ea01fa9fSBorislav Petkov @echo 'You can do:' 30ea01fa9fSBorislav Petkov @echo ' $$ make -C tools/ <tool>_install' 31ea01fa9fSBorislav Petkov @echo '' 32ea01fa9fSBorislav Petkov @echo ' from the kernel command line to build and install one of' 33ea01fa9fSBorislav Petkov @echo ' the tools above' 34ea01fa9fSBorislav Petkov @echo '' 35*f6ba98c5SKamal Mostafa @echo ' $$ make tools/all' 36*f6ba98c5SKamal Mostafa @echo '' 37*f6ba98c5SKamal Mostafa @echo ' builds all tools.' 38*f6ba98c5SKamal Mostafa @echo '' 39ea01fa9fSBorislav Petkov @echo ' $$ make tools/install' 40ea01fa9fSBorislav Petkov @echo '' 41ea01fa9fSBorislav Petkov @echo ' installs all tools.' 42ea01fa9fSBorislav Petkov @echo '' 43d5dd8afbSBorislav Petkov @echo 'Cleaning targets:' 44d5dd8afbSBorislav Petkov @echo '' 45d5dd8afbSBorislav Petkov @echo ' all of the above with the "_clean" string appended cleans' 46d5dd8afbSBorislav Petkov @echo ' the respective build directory.' 47d5dd8afbSBorislav Petkov @echo ' clean: a summary clean target to clean _all_ folders' 48d5dd8afbSBorislav Petkov 49a0c4acc0SLv Zhengacpi: FORCE 50a0c4acc0SLv Zheng $(call descend,power/$@) 51a0c4acc0SLv Zheng 522363ecb1SBorislav Petkovcpupower: FORCE 53ca9dfc6cSDavid Howells $(call descend,power/$@) 542363ecb1SBorislav Petkov 5553375103SRoberta Dobrescucgroup firewire hv guest usb virtio vm net iio: FORCE 5685c66be1SBorislav Petkov $(call descend,$@) 5785c66be1SBorislav Petkov 580041898eSS. Lockwood-Childsliblockdep: FORCE 590041898eSS. Lockwood-Childs $(call descend,lib/lockdep) 600041898eSS. Lockwood-Childs 61379a9a28SJiri Olsalibapi: FORCE 62553873e1SBorislav Petkov $(call descend,lib/api) 6385c66be1SBorislav Petkov 6416671c1eSJiri Olsa# The perf build does not follow the descend function setup, 6516671c1eSJiri Olsa# invoking it via it's own make rule. 6616671c1eSJiri OlsaPERF_O = $(if $(O),$(O)/tools/perf,) 6716671c1eSJiri Olsa 68379a9a28SJiri Olsaperf: FORCE 6916671c1eSJiri Olsa $(Q)mkdir -p $(PERF_O) . 7016671c1eSJiri Olsa $(Q)$(MAKE) --no-print-directory -C perf O=$(PERF_O) subdir= 712363ecb1SBorislav Petkov 722363ecb1SBorislav Petkovselftests: FORCE 73ca9dfc6cSDavid Howells $(call descend,testing/$@) 742363ecb1SBorislav Petkov 752363ecb1SBorislav Petkovturbostat x86_energy_perf_policy: FORCE 76ca9dfc6cSDavid Howells $(call descend,power/x86/$@) 772363ecb1SBorislav Petkov 7894f69966SJacob Pantmon: FORCE 7994f69966SJacob Pan $(call descend,thermal/$@) 8094f69966SJacob Pan 81b3fd7368SPali Rohárfreefall: FORCE 82b3fd7368SPali Rohár $(call descend,laptop/$@) 83b3fd7368SPali Rohár 84*f6ba98c5SKamal Mostafaall: acpi cgroup cpupower hv firewire lguest \ 85*f6ba98c5SKamal Mostafa perf selftests turbostat usb \ 86*f6ba98c5SKamal Mostafa virtio vm net x86_energy_perf_policy \ 87*f6ba98c5SKamal Mostafa tmon freefall 88*f6ba98c5SKamal Mostafa 89a0c4acc0SLv Zhengacpi_install: 90a0c4acc0SLv Zheng $(call descend,power/$(@:_install=),install) 91a0c4acc0SLv Zheng 922363ecb1SBorislav Petkovcpupower_install: 93ca9dfc6cSDavid Howells $(call descend,power/$(@:_install=),install) 942363ecb1SBorislav Petkov 953eb2094cSBjarke Istrup Pedersencgroup_install firewire_install hv_install lguest_install perf_install usb_install virtio_install vm_install net_install: 96ca9dfc6cSDavid Howells $(call descend,$(@:_install=),install) 972363ecb1SBorislav Petkov 982363ecb1SBorislav Petkovselftests_install: 99ca9dfc6cSDavid Howells $(call descend,testing/$(@:_clean=),install) 1002363ecb1SBorislav Petkov 1012363ecb1SBorislav Petkovturbostat_install x86_energy_perf_policy_install: 102ca9dfc6cSDavid Howells $(call descend,power/x86/$(@:_install=),install) 1032363ecb1SBorislav Petkov 10494f69966SJacob Pantmon_install: 10594f69966SJacob Pan $(call descend,thermal/$(@:_install=),install) 10694f69966SJacob Pan 107b3fd7368SPali Rohárfreefall_install: 108b3fd7368SPali Rohár $(call descend,laptop/$(@:_install=),install) 109b3fd7368SPali Rohár 1103eb2094cSBjarke Istrup Pederseninstall: acpi_install cgroup_install cpupower_install hv_install firewire_install lguest_install \ 11192e015b1SGreg Thelen perf_install selftests_install turbostat_install usb_install \ 11294f69966SJacob Pan virtio_install vm_install net_install x86_energy_perf_policy_install \ 113836d525bSKamal Mostafa tmon_install freefall_install 1142363ecb1SBorislav Petkov 115a0c4acc0SLv Zhengacpi_clean: 116a0c4acc0SLv Zheng $(call descend,power/acpi,clean) 117a0c4acc0SLv Zheng 1182363ecb1SBorislav Petkovcpupower_clean: 119ca9dfc6cSDavid Howells $(call descend,power/cpupower,clean) 1202363ecb1SBorislav Petkov 12153375103SRoberta Dobrescucgroup_clean hv_clean firewire_clean lguest_clean usb_clean virtio_clean vm_clean net_clean iio_clean: 12285c66be1SBorislav Petkov $(call descend,$(@:_clean=),clean) 12385c66be1SBorislav Petkov 1240041898eSS. Lockwood-Childsliblockdep_clean: 1250041898eSS. Lockwood-Childs $(call descend,lib/lockdep,clean) 1260041898eSS. Lockwood-Childs 127379a9a28SJiri Olsalibapi_clean: 128553873e1SBorislav Petkov $(call descend,lib/api,clean) 12985c66be1SBorislav Petkov 130379a9a28SJiri Olsaperf_clean: 131ca9dfc6cSDavid Howells $(call descend,$(@:_clean=),clean) 1322363ecb1SBorislav Petkov 1332363ecb1SBorislav Petkovselftests_clean: 134ca9dfc6cSDavid Howells $(call descend,testing/$(@:_clean=),clean) 1352363ecb1SBorislav Petkov 1362363ecb1SBorislav Petkovturbostat_clean x86_energy_perf_policy_clean: 137ca9dfc6cSDavid Howells $(call descend,power/x86/$(@:_clean=),clean) 1382363ecb1SBorislav Petkov 13994f69966SJacob Pantmon_clean: 14094f69966SJacob Pan $(call descend,thermal/tmon,clean) 14194f69966SJacob Pan 142b3fd7368SPali Rohárfreefall_clean: 143b3fd7368SPali Rohár $(call descend,laptop/freefall,clean) 144b3fd7368SPali Rohár 1453eb2094cSBjarke Istrup Pedersenclean: acpi_clean cgroup_clean cpupower_clean hv_clean firewire_clean lguest_clean \ 146a0c4acc0SLv Zheng perf_clean selftests_clean turbostat_clean usb_clean virtio_clean \ 14723908db4SLinus Torvalds vm_clean net_clean iio_clean x86_energy_perf_policy_clean tmon_clean \ 14823908db4SLinus Torvalds freefall_clean 1492363ecb1SBorislav Petkov 1502363ecb1SBorislav Petkov.PHONY: FORCE 151