#######hello 单文件编译##############
obj-m := hello.o
KDIR := /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
default:
$(MAKE) -C $(KDIR) M=$(PWD) modules
clean:
rm -rf .*.cmd *.o *.mod.c *.ko .tmp_versions *.order *symvers *Module.markers
##############多文件############
####hello1.c####
####hello2.c####
#Makefile2.6
CFLAGS += -I$(KERNELSRC)/include/
CFLAGS += -Wall
OBJNAME := hellotest
ifneq ($(KERNELRELEASE),)
#Kbuild part of makefile
$(OBJNAME)-objs := hello1.o hello2.o
obj-m := $(OBJNAME).o
else
PWD := $(shell pwd)
KERNELSRC := /home/kernel/linux-2.6.21-standard #kernel address
CROSS_COMPILE = /opt/ELDK/usr/bin/mips_4KCle- #compile tools
modules:
@echo "FLAGS: $(CFLAGS)"
$(MAKE) -C $(KERNELSRC) CROSS_COMPILE=$(CROSS_COMPILE) M=$(PWD) $@
$(CROSS_COMPILE)strip -g $(OBJNAME).ko
clean:
@echo Cleaning
@rm -rf *.o *~ core .depend .*.cmd *.mod.c .tmp_versions *.ko *.symvers
endif