I am compiling the boardcom's driver now. the driver had defined EXTRA_CFLAGS = -D"KBUILD_STR(s)=\#s" $(basename_flags) $(modname_flags) in the a.makefile. and the a.makefile was included by b.makefile. when in the b.makefile, there is this command. $(CC) $(DEPS_OPT) $(CFLAGS) $(EXTRA_CFLAGS) -o $@ -c $< ;) I had add "echo $(EXTRA_CFLAGS)" before this line;but returns NULL; so I suspicion the $(EXTRA_CFLAGS) hasn't been work. I aslo try to add "export EXTRA_CFLAGS" in a.makefile,but it doesn't work either. the problem has puzzled me for some days. help me please~~ 2010-08-03 hacklu 发件人: Américo Wang 发送时间: 2010-08-03 16:32:08 收件人: hacklu 抄送: linux-kernel 主题: Re: how about KBUILD_MODNAME On Tue, Aug 03, 2010 at 03:11:59PM +0800, hacklu wrote: > >I don't understand the macro KBUILD_MODNAME . >when I compile a driver program. It returns me "linux/pci.h:655: error: 'KBUILD_MODNAME' undeclared (first use in this function) " > >In the makefile I had used the "-D" options > You don't need to care about KBUILD_MODNAME, it is defined internally by kbuild and passed to your module via "-DKBUILD_MODNAME=XXX" automatically. So, it looks like you didn't write your makefile correctly. 翳簕.n+壏煯壄+%娝遍荻w簕.n+壏{炳G珴妠ay蕠跈,jf"穐殢飦戧鐉_璁(殠娸"濟mG珴⒏?櫒璀&x忈秈O曟瑉窔v豝m 鹅⒏?朓