Create Geniusmry.blog.chinaunix.net
yaoyabad
全部博文(105)
2015年(1)
2014年(1)
2013年(7)
2012年(14)
2011年(21)
2010年(61)
freedos5
gongping
xuanping
zhanghui
31551075
LINUX101
hanlenry
jerry200
等你的短
chenyuli
xunmengy
Ynot
lubin83
lwzqq
格伯纳
丸喵喵
IdealChi
黄滋滋
分类: LINUX
2011-02-26 12:55:09
|-- A | |-- Makefile <-----1 | |-- file2 | | |-- Makefile <-----2 | | `-- file2.c | `-- file4.c |-- B | |-- Makefile <-----3 | `-- file3.c |-- Makefile <-----4 |-- file1.c `-- inc `-- a.h
#include <linux/module.h> #include <linux/init.h> void function2(void); int init_module(void) { function2(); return 0; } void cleanup_module(void) { return; }
#include "a.h" void function3(void); void function2(void) { #ifndef MMAN #error "12312312312321" #endif function3(); }
void function4(void); void function3(void) { function4(); }
#include <linux/module.h> void function4(void) { printk("done\n"); }
#ifndef A_INC #define A_INC #define SYMBOL 1111 #endif
obj-y := file2/ lib-m := file2/file22.o file4.o
obj-y := file22.o file22-objs := file2.o EXTRA_CFLAGS := -DMMAN -I$(src)/../../inc
lib-m := file3.o
ifneq ($(KERNELRELEASE),) obj-y := A/ B/ obj-m := module.o module-objs := file1.o A/lib.a B/lib.a EXTRA_LDFLAGS := --start-group # solving circular references in archives else #KSRC = /lib/modules/$(shell uname -r)/build KSRC = /usr/src/linux-headers-$(shell uname -r) PWD = $(shell pwd) default: $(MAKE) -C $(KSRC) M=$(PWD) clean: $(MAKE) -C $(KSRC) M=$(PWD) clean endif
obj-y := file2/ obj-y += a.o a-objs := file4.o
obj-y :=b.o b-objs := file3.o
ifneq ($(KERNELRELEASE),) obj-y := A/ B/ obj-m := module.o module-objs := file1.o A/built-in.o B/built-in.o EXTRA_LDFLAGS := --start-group # solving circular references in archives else #KSRC = /lib/modules/$(shell uname -r)/build KSRC = /usr/src/linux PWD = $(shell pwd) default: $(MAKE) -C $(KSRC) M=$(PWD) clean: $(MAKE) -C $(KSRC) M=$(PWD) clean endif
上一篇:制作u盘安装系统
下一篇:用字符设备调试usb设备驱动_0228-0301(待续)
chinaunix网友2011-03-05 16:44:37
很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com
登录 注册