Hi Albert, On Fri, Jan 28, 2011 at 2:47 PM, Albert ARIBAUD <albert.arib...@free.fr> wrote: > Hi Lei, > > Le 28/01/2011 02:28, Lei Wen a écrit : > >>>> diff --git a/arch/arm/include/asm/arch-kirkwood/config.h >>>> b/arch/arm/include/asm/arch-kirkwood/config.h >>>> new file mode 100644 >>>> index 0000000..7c6d63b >>>> --- /dev/null >>>> +++ b/arch/arm/include/asm/arch-kirkwood/config.h >>>> @@ -0,0 +1,145 @@ > > ... > >>>> +#ifndef CONFIG_SYS_KWD_CONFIG >>>> +#define CONFIG_SYS_KWD_CONFIG >>>> $(SRCTREE)/$(CONFIG_BOARDDIR)/kwbimage.cfg >>> >>> What are the '$()' operators doing here ? >> >> This definition is served as generating kirkwood special image, which >> I just move it from mv-common.h >> $(obj)u-boot.kwb: $(obj)u-boot.bin >> $(obj)tools/mkimage -n $(CONFIG_SYS_KWD_CONFIG) -T >> kwbimage \ >> -a $(CONFIG_SYS_TEXT_BASE) -e $(CONFIG_SYS_TEXT_BASE) -d >> $< $@ > > What I would like to understand is, the '$(X)' macro expansion operator > indeed has meaning and makes sense for some tools such as Make, but not for > a C preprocessor or compiler. Is this config.h file included by a makefile > somehow? >
Yes, it would be included by the makefile as below: Makefile: line 471: $(obj)include/autoconf.mk: $(obj)include/config.h Take guruplug as example. Its guruplug.h would be include in the include/config.h. While guruplug would involve the mv-common.h, in which the arch/arm/include/asm/arch-kirkwood/config.h would be included. I know this maybe a little complicated, but that is what it works. Best regards, Lei _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot