3 TARGETS
+= capabilities
12 TARGETS
+= intel_pstate
18 TARGETS
+= memory-hotplug
27 TARGETS
+= sigaltstack
30 TARGETS
+= static_keys
33 ifneq (1, $(quicktest
))
40 #Please keep the TARGETS list alphabetically sorted
41 # Run "make quicktest=1 run_tests" or
42 # "make quicktest=1 kselftest from top level Makefile
44 TARGETS_HOTPLUG
= cpu-hotplug
45 TARGETS_HOTPLUG
+= memory-hotplug
47 # Clear LDFLAGS and MAKEFLAGS if called from main
48 # Makefile to avoid test build failures when test
49 # Makefile doesn't have explicit build rules.
57 BUILD
:= $(KBUILD_OUTPUT
)
65 for TARGET in
$(TARGETS
); do \
66 BUILD_TARGET
=$$BUILD/$$TARGET; \
67 mkdir
$$BUILD_TARGET -p
; \
68 make OUTPUT
=$$BUILD_TARGET -C
$$TARGET;\
72 for TARGET in
$(TARGETS
); do \
73 BUILD_TARGET
=$$BUILD/$$TARGET; \
74 make OUTPUT
=$$BUILD_TARGET -C
$$TARGET run_tests
;\
78 for TARGET in
$(TARGETS_HOTPLUG
); do \
79 BUILD_TARGET
=$$BUILD/$$TARGET; \
80 make OUTPUT
=$$BUILD_TARGET -C
$$TARGET;\
84 for TARGET in
$(TARGETS_HOTPLUG
); do \
85 BUILD_TARGET
=$$BUILD/$$TARGET; \
86 make OUTPUT
=$$BUILD_TARGET -C
$$TARGET run_full_test
;\
90 for TARGET in
$(TARGETS_HOTPLUG
); do \
91 BUILD_TARGET
=$$BUILD/$$TARGET; \
92 make OUTPUT
=$$BUILD_TARGET -C
$$TARGET clean;\
96 make
-C pstore run_crash
98 INSTALL_PATH ?
= install
99 INSTALL_PATH
:= $(abspath
$(INSTALL_PATH
))
100 ALL_SCRIPT
:= $(INSTALL_PATH
)/run_kselftest.sh
104 @
# Ask all targets to install their files
105 mkdir
-p
$(INSTALL_PATH
)
106 for TARGET in
$(TARGETS
); do \
107 BUILD_TARGET
=$$BUILD/$$TARGET; \
108 make OUTPUT
=$$BUILD_TARGET -C
$$TARGET INSTALL_PATH
=$(INSTALL_PATH
)/$$TARGET install; \
111 @
# Ask all targets to emit their test scripts
112 echo
"#!/bin/sh" > $(ALL_SCRIPT
)
113 echo
"cd \$$(dirname \$$0)" >> $(ALL_SCRIPT
)
114 echo
"ROOT=\$$PWD" >> $(ALL_SCRIPT
)
116 for TARGET in
$(TARGETS
); do \
117 BUILD_TARGET
=$$BUILD/$$TARGET; \
118 echo
"echo ; echo Running tests in $$TARGET" >> $(ALL_SCRIPT
); \
119 echo
"echo ========================================" >> $(ALL_SCRIPT
); \
120 echo
"cd $$TARGET" >> $(ALL_SCRIPT
); \
121 make
-s
--no-print-directory OUTPUT
=$$BUILD_TARGET -C
$$TARGET emit_tests
>> $(ALL_SCRIPT
); \
122 echo
"cd \$$ROOT" >> $(ALL_SCRIPT
); \
125 chmod u
+x
$(ALL_SCRIPT
)
127 $(error Error
: set INSTALL_PATH to use
install)
131 for TARGET in
$(TARGETS
); do \
132 BUILD_TARGET
=$$BUILD/$$TARGET; \
133 make OUTPUT
=$$BUILD_TARGET -C
$$TARGET clean;\