implemented infrared-modules
This commit is contained in:
43
project/modules/Makefile
Normal file
43
project/modules/Makefile
Normal file
@@ -0,0 +1,43 @@
|
||||
PWD = $(realpath $(shell pwd))
|
||||
MODULE_NAME ?= $(shell basename "$(PWD)")
|
||||
|
||||
ifneq ($(KERNELRELEASE),)
|
||||
# call from kernel build system
|
||||
obj-m := $(MODULE_NAME).o
|
||||
else
|
||||
ARCH ?= aarch64
|
||||
KERNEL_ARCH ?= arm64
|
||||
CROSS_COMPILE ?= $(ARCH)-linux-gnu-
|
||||
KVER ?= $(shell ls "$(PWD)/../../kernel" | grep 'linux-' | sed 's/linux-//')
|
||||
KERNELDIR ?= $(PWD)/../../kernel/linux-$(KVER)
|
||||
MODDESTDIR ?= /lib/modules/$(KVER)/kernel/drivers/syso
|
||||
|
||||
default:
|
||||
ARCH=$(KERNEL_ARCH) CROSS_COMPILE=$(CROSS_COMPILE) MODULE_NAME=$(MODULE_NAME) $(MAKE) -C $(KERNELDIR) M=$(PWD) modules
|
||||
endif
|
||||
|
||||
test: $(MODULE_NAME).ko.test
|
||||
|
||||
$(MODULE_NAME).ko.test: $(MODULE_NAME).test.o
|
||||
$(CROSS_COMPILE)$(CC) $(LDFLAGS) -pthread $^ -o $@
|
||||
|
||||
%.o: %.c
|
||||
$(CROSS_COMPILE)$(CC) $(CPPFLAGS) $(CFLAGS) -c $< -o $@
|
||||
|
||||
clean:
|
||||
rm -rf *.ko *.o *.mod.c *~ core .depend .*.cmd .tmp_versions *.symvers *.order
|
||||
|
||||
depend .depend dep:
|
||||
$(CROSS_COMPILE)$(CC) $(CFLAGS) -M *.c > .depend
|
||||
|
||||
install:
|
||||
install -p -m 644 $(MODULE_NAME).ko $(MODDESTDIR)
|
||||
/sbin/depmod -a ${KVER}
|
||||
|
||||
uninstall:
|
||||
rm -f $(MODDESTDIR)/$(MODULE_NAME).ko
|
||||
/sbin/depmod -a ${KVER}
|
||||
|
||||
ifeq (.depend,$(wildcard .depend))
|
||||
include .depend
|
||||
endif
|
||||
Reference in New Issue
Block a user