arm平台:
DEBUG = y
ifeq ($(DEBUG), y)
MYDEBFLAGS = -O -g -DSCULL_DEBUG
else
MYDEBFLAGS = -O2
endif
EXTRA_CFLAGS += $(MYDEBFLAGS)
KERN_DIR = ../linux-mini2440
all:
make -C $(KERN_DIR) M=$(PWD) modules CROSS_COMPILE=arm-linux- ARCH=arm
clean:
make -C $(KERN_DIR) M=$(PWD) modules clean
rm -rf module.order *.o .depend .*.cmd *.mod.c
scull_all-objs := scull.o scullpipe.o
obj-m := scull_all.o
x86平台:
DEBUG = y
ifeq ($(DEBUG), y)
MYDEBFLAGS = -O -g -DSCULL_DEBUG
else
MYDEBFLAGS = -O2
endif
EXTRA_CFLAGS += $(MYDEBFLAGS)
KERN_DIR = /lib/modules/2.6.32-279.el6.i686/build
PWD := $(shell pwd)
all:
make -C $(KERN_DIR) M=$(PWD) modules
clean:
make -C $(KERN_DIR) M=$(PWD) modules clean
rm -rf module.order *.o .depend .*.cmd *.mod.c
scull_all-objs := scull.o scullpipe.o
DEBUG = y
ifeq ($(DEBUG), y)
MYDEBFLAGS = -O -g -DSCULL_DEBUG
else
MYDEBFLAGS = -O2
endif
EXTRA_CFLAGS += $(MYDEBFLAGS)
KERN_DIR = ../linux-mini2440
all:
make -C $(KERN_DIR) M=$(PWD) modules CROSS_COMPILE=arm-linux- ARCH=arm
clean:
make -C $(KERN_DIR) M=$(PWD) modules clean
rm -rf module.order *.o .depend .*.cmd *.mod.c
scull_all-objs := scull.o scullpipe.o
obj-m := scull_all.o
x86平台:
DEBUG = y
ifeq ($(DEBUG), y)
MYDEBFLAGS = -O -g -DSCULL_DEBUG
else
MYDEBFLAGS = -O2
endif
EXTRA_CFLAGS += $(MYDEBFLAGS)
KERN_DIR = /lib/modules/2.6.32-279.el6.i686/build
PWD := $(shell pwd)
all:
make -C $(KERN_DIR) M=$(PWD) modules
clean:
make -C $(KERN_DIR) M=$(PWD) modules clean
rm -rf module.order *.o .depend .*.cmd *.mod.c
scull_all-objs := scull.o scullpipe.o
obj-m := scull_all.o
只需要改变makefile即可,改变编译模块所用的内核代码。