以下为goodix触摸屏的Makefile文件,可以作为编译ko模块的Makefile的模板文件:
####################################################################
DEBUG = y
# Add your debugging flag (or not) to CFLAGS
ifeq ($(DEBUG),y)
DEBFLAGS = -O -g -DDEBUG # "-O" is needed to expand inlines
else
DEBFLAGS = -O2
endif
CFLAGS_MODULE = -Wall -pipe $(DEBFLAGS) -I.. #-DVERBOSE -DMODVERSIONS
####################################################################
ifneq ($(KERNELRELEASE),)
# call from kernel build system
obj-m := goodix_core.o
goodix_core-y := \
goodix_brl_i2c.o \
goodix_brl_spi.o \
goodix_ts_core.o \
goodix_brl_hw.o \
goodix_cfg_bin.o \
goodix_ts_utils.o \
goodix_brl_fwupdate.o \
goodix_ts_gesture.o \
goodix_ts_inspect.o \
goodix_ts_tools.o
else
KERNELDIR ?= /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
default:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules
endif
clean:
rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions *.order *.symvers Module.markers
depend .depend dep:
$(CC) $(CFLAGS) -M *.c > .depend
ifeq (.depend,$(wildcard .depend))
include .depend
endif
obj-m := goodix_core.o 为生成目标文件。
goodix_core-y := \ 为参与编译的源文件。