From 99132b4bf5c0a19b38695fd8bcaac8d3829b4bd1 Mon Sep 17 00:00:00 2001 From: Felix Morgner Date: Tue, 11 Jul 2023 08:07:20 +0200 Subject: build: split makefile --- Kbuild | 10 ++++++++++ Makefile | 32 ++++++++++++-------------------- 2 files changed, 22 insertions(+), 20 deletions(-) create mode 100644 Kbuild diff --git a/Kbuild b/Kbuild new file mode 100644 index 0000000..250db3e --- /dev/null +++ b/Kbuild @@ -0,0 +1,10 @@ +obj-m := cyber.o +cyber-objs := src/cyber_device.o \ + src/cyber_device_character_device.o \ + src/cyber_device_device_class.o \ + src/cyber_device_kernel_device.o \ + src/cyber_file.o \ + src/cyber_lifecycle.o \ + src/cyber.o + +ccflags-y := -I$(src)/include diff --git a/Makefile b/Makefile index 37df362..0c25810 100644 --- a/Makefile +++ b/Makefile @@ -1,25 +1,17 @@ -EXTRA_CFLAGS := -I$(src)/include +ifneq ($(KERNELRELEASE),) +include Kbuild +else +KDIR ?= /lib/modules/`uname -r`/build -obj-m := cyber.o +modules: + @$(MAKE) -C $(KDIR) M=$$PWD modules -cyber-objs := src/cyber_device.o \ - src/cyber_device_character_device.o \ - src/cyber_device_device_class.o \ - src/cyber_device_kernel_device.o \ - src/cyber_file.o \ - src/cyber_lifecycle.o \ - src/cyber.o - -ifeq ($(KERNEL_VERSION),) -KERNEL_VERSION=$(shell uname -r) -endif - -all: - make -C /lib/modules/$(KERNEL_VERSION)/build/ M=$(PWD) modules +clean: + @$(MAKE) -C $(KDIR) M=$$PWD clean install: - make -C /lib/modules/$(KERNEL_VERSION)/build/ M=$(PWD) modules_install - depmod -a + @$(MAKE) -C $(KDIR) M=$$PWD modules_install + @depmod -a + +endif -clean: - make -C /lib/modules/$(KERNEL_VERSION)/build/ M=$(PWD) clean -- cgit v1.2.3