在BSP的.bat文件下設置全局變量方法
用于多個(gè)產(chǎn)品共用一個(gè)BSP的時(shí)候,在BSP的.bat文件中設(shè)置全局變量,去掉不需要加載的驅(qū)動(dòng)和不同點(diǎn)是很好的方法。
?
一,舉例:BSP中.bat的一段code:
set BSP_SMDK2443=1?
set BSP_SMDK2450=2
set BSP_TYPE=%BSP_SMDK2450%
?
這個(gè)就類似c中:
#define BSP_SMDK2443? 1?
#define BSP_SMDK2450? 2
#define BSP_TYPE? BSP_SMDK2450?
?
二,操作
1.我們先在.bat文件中聲明自己需要的定義上面類似的
set BSP_SMDK2443=1?
?
2.如果需要在BSP中C,C++等f(wàn)iles里面能直接引用。必須要在BSP的根目錄下面sources.cmn文件中進(jìn)行轉(zhuǎn)換一下,成為C可以調(diào)用的格式。以下兩行。每使用一個(gè)變量,都需要定義兩行。
ADEFINES=$(ADEFINES) -pd "BSP_SMDK2443?SETA $(BSP_SMDK2443)"
CDEFINES=$(CDEFINES) -DBSP_SMDK2443=$(BSP_SMDK2443)
?
ADEFINES=$(ADEFINES) -pd "BSP_SMDK2450?SETA $(BSP_SMDK2450)"
CDEFINES=$(CDEFINES) -DBSP_SMDK2450=$(BSP_SMDK2450)
?
ADEFINES=$(ADEFINES) -pd "BSP_TYPE?SETA $(BSP_TYPE)"
CDEFINES=$(CDEFINES) -DBSP_TYPE=$(BSP_TYPE)
?
3.在c中引用。比如在OAL/Init.c中/OEMInit()中調(diào)用,就像#define一樣使用。
#if (BSP_TYPE==BSP_SMDK2443)
//--add
?
#elif (BSP_TYPE==BSP_SMDK2450)
//--add
?
#endif
?
4. build, make img即可。
總結(jié)
以上是生活随笔為你收集整理的在BSP的.bat文件下設置全局變量方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Ubuntu 12.04搭建MTK 65
- 下一篇: 好的产品经理是怎样炼成的?