Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

selftests/kexec: fix test_kexec_jump build

The test_kexec_jump program builds correctly when invoked from the top-level
selftests/Makefile, which explicitly sets the OUTPUT variable. However,
building directly in tools/testing/selftests/kexec fails with:

make: *** No rule to make target '/test_kexec_jump', needed by 'test_kexec_jump.sh'. Stop.

This failure occurs because the Makefile rule relies on $(OUTPUT), which is
undefined in direct builds.

Fix this by listing test_kexec_jump in TEST_GEN_PROGS, the standard way to
declare generated test binaries in the kselftest framework. This ensures the
binary is built regardless of invocation context and properly removed by
make clean.

Link: https://lore.kernel.org/r/20250702171704.22559-2-moonhee.lee.ca@gmail.com
Acked-by: Shuah Khan <skhan@linuxfoundation.org>
Signed-off-by: Moon Hee Lee <moonhee.lee.ca@gmail.com>
Acked-by: Baoquan He <bhe@redhat.com>
Acked-by: David Woodhouse <dwmw@amazon.co.uk>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>

authored by

Moon Hee Lee and committed by
Shuah Khan
661e9cd1 07b7c2b4

+1 -1
+1 -1
tools/testing/selftests/kexec/Makefile
··· 12 12 13 13 ifeq ($(IS_64_BIT)$(ARCH_PROCESSED),1x86) 14 14 TEST_PROGS += test_kexec_jump.sh 15 - test_kexec_jump.sh: $(OUTPUT)/test_kexec_jump 15 + TEST_GEN_PROGS := test_kexec_jump 16 16 endif 17 17 18 18 include ../lib.mk