# SPDX-License-Identifier: GPL-2.0-only obj-m += deepcool.o VERSION := 0.1.0 TARGET := $(shell uname -r) KVERSION := $(shell uname -r) KDIR := /lib/modules/$(KVERSION)/build DKMS_ROOT_PATH := /usr/src/deepcool-$(VERSION) all: @$(MAKE) -C $(KDIR) M=$(CURDIR) modules clean: @$(MAKE) -C $(KDIR) M=$(CURDIR) clean dkms-install: mkdir $(DKMS_ROOT_PATH) cp $(CURDIR)/dkms.conf $(DKMS_ROOT_PATH) cp $(CURDIR)/Makefile $(DKMS_ROOT_PATH) cp $(CURDIR)/deepcool.c $(DKMS_ROOT_PATH) sed -e "s/@CFLGS@/${MCFLAGS}/" \ -e "s/@VERSION@/$(VERSION)/" \ -i $(DKMS_ROOT_PATH)/dkms.conf dkms add deepcool/$(VERSION) dkms build deepcool/$(VERSION) dkms install deepcool/$(VERSION) dkms-uninstall: dkms remove zenpower/$(VERSION) --all rm -rf $(DKMS_ROOT_PATH) help: @echo "" @echo "Targets:" @echo " all - Build the kernel module (default)" @echo " clean - Remove build artifacts" @echo " install - Install the module to the system" @echo " uninstall - Remove the module from the system" @echo " load - Load the module" @echo " unload - Unload the module" @echo " reload - Unload and reload the module" @echo "" @echo "Current kernel version: $(KVERSION)" .PHONY: all clean install uninstall load unload reload help