在分析内核启动过程的./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)

 

相关文章:

  • 2021-12-23
  • 2021-07-06
  • 2021-09-04
  • 2021-11-22
  • 2021-06-26
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-10-09
  • 2021-12-08
  • 2021-04-30
  • 2022-12-23
  • 2021-12-30
  • 2021-11-01
相关资源
相似解决方案