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_kprobe.o \
10	test_klp_livepatch.o \
11	test_klp_shadow_vars.o \
12	test_klp_state.o \
13	test_klp_state2.o \
14	test_klp_state3.o \
15	test_klp_syscall.o
16
17# Ensure that KDIR exists, otherwise skip the compilation
18modules:
19ifneq ("$(wildcard $(KDIR))", "")
20	$(Q)$(MAKE) -C $(KDIR) modules KBUILD_EXTMOD=$(TESTMODS_DIR)
21endif
22
23# Ensure that KDIR exists, otherwise skip the clean target
24clean:
25ifneq ("$(wildcard $(KDIR))", "")
26	$(Q)$(MAKE) -C $(KDIR) clean KBUILD_EXTMOD=$(TESTMODS_DIR)
27endif
28