1TESTMODS_DIR := $(realpath $(dir $(abspath $(lastword $(MAKEFILE_LIST)))))
2KDIR ?= /lib/modules/$(shell uname -r)/build
3
4obj-m += test_klp_atomic_replace.o \
5	test_klp_callbacks_busy.o \
6	test_klp_callbacks_demo.o \
7	test_klp_callbacks_demo2.o \
8	test_klp_callbacks_mod.o \
9	test_klp_livepatch.o \
10	test_klp_state.o \
11	test_klp_state2.o \
12	test_klp_state3.o \
13	test_klp_shadow_vars.o \
14	test_klp_syscall.o
15
16# Ensure that KDIR exists, otherwise skip the compilation
17modules:
18ifneq ("$(wildcard $(KDIR))", "")
19	$(Q)$(MAKE) -C $(KDIR) modules KBUILD_EXTMOD=$(TESTMODS_DIR)
20endif
21
22# Ensure that KDIR exists, otherwise skip the clean target
23clean:
24ifneq ("$(wildcard $(KDIR))", "")
25	$(Q)$(MAKE) -C $(KDIR) clean KBUILD_EXTMOD=$(TESTMODS_DIR)
26endif
27