Makefile中export分析

Posted NQian

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Makefile中export分析相关的知识,希望对你有一定的参考价值。

在分析内核启动过程的./arch/arm/Makefile文件里碰到了这样字段

162  export TEXT_OFFSET GZFLAGS MMUEXT  

然后在子目录arch/arm/kernel/vmlinux.lds文件中又用到了TEXT_OFFSET 

24    . = PAGE_OFFSET + TEXT_OFFSET;                 

    

上网一查export才知道:

这个是用来提供该子目录makefile(sub make)中访问的,同一级的另外一个makefile中,是无法访问/得到的。

(可以通过makefile中内置变量MAKELEVEL查看得知当前makefile的levlel)

常规用法如下:


carifan_TopMake=E516537_in_top_make
export carifan_TopMake                                                         //在目标外部export                 
focus_bfin:
echo current make MAKELEVEL=$(MAKELEVEL)
echo *****************test Value in Top Makefile=$(carifan_TopMake)         
make -f main.mak PLATFORM=Bfin PRODUCT=Focus MAKE_TARGET=focus_bfin


 

若export在目标内部使用,这样通过echo将会打出空符号"test Value in Top Makefile=  "

 

(详细链接:http://blog.csdn.net/a1232345/article/details/42112881)

 

以上是关于Makefile中export分析的主要内容,如果未能解决你的问题,请参考以下文章

MakeFile中export的使用

WaylandWeston启动流程分析

WaylandWeston启动流程分析

WaylandWeston启动流程分析

makefile文件中如何使用 export LD_LIBRARY_PATH=/myfile/makefile:$LD_LIBRARY_PATH

Makefile中的$(MAKE)