# ARM 交叉编译内核模块
# 用法: make (编译)
# make clean (清理)
# make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
# -C /path/to/kernel M=$(PWD) modules
KERNELDIR ?= ../../../kernel
PWD := $(shell pwd)
obj-m := 001_kobject.o
all:
$(MAKE) ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- \
-C $(KERNELDIR) M=$(PWD) modules
@# 清理中间文件,只保留源文件 .c、模块 .ko 和 Makefile
@find $(PWD) -maxdepth 1 -type f ! -name '*.ko' ! -name 'Makefile' ! \( -name '*.c' ! -name '*.mod.c' \) -delete 2>/dev/null || true
@rm -rf $(PWD)/.tmp_versions 2>/dev/null || true
clean:
$(MAKE) ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- \
-C $(KERNELDIR) M=$(PWD) clean