日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

在Makefile動(dòng)態(tài)生成程序版本號(hào)的方法

 娛天樂(lè) 2014-07-30

 

 

一,動(dòng)態(tài)生成svn版本號(hào)的方法:

 

[c-sharp] view plaincopy
  1. GET_SVN_VERSION_CMD = LANG=C;LC_ALL=C;export LC_ALL;svn info | grep "Last Changed Rev: " | sed -e "s/Last Changed Rev: "http://g  
  2. $(appName) : $(ALLDEPOBJS)  
  3. force:  
  4. svn_version.cpp: force  
  5. @$(SHELL) -ec 'echo "int g_nSvnVersion="`$(GET_SVN_VERSION_CMD)`";" > ./svn_version.cpp'  
 

 

在Makefile加入以上代碼,并將svn_version.o放在$(ALLDEPOBJS)一起編譯即可在源文件中通過(guò)extern int g_nSvnVersion;得到svn的版本號(hào)。

 

二,動(dòng)態(tài)生成發(fā)布版本號(hào)/操作系統(tǒng)名稱/發(fā)布日期的方法:

1,在命令行執(zhí)行export RELEASE_VERSION_FLAGS="-DRELEASEVERSION=///"1.0.3///" -DBUILDOS=///"`uname`///" -DBUILDDATE=///"`date +%y%m%d`///"",更方便的,可以將該命令保存到.bashrc環(huán)境變量文件里面

2,在Makefile加入$(RELEASE_VERSION_FLAGS) 參數(shù)編譯

3,在源文件中通過(guò)以下方法獲取版本號(hào):

  1. std::string strReleaseVersion = "1.0.2";  
  2. #ifdef RELEASEVERSION  
  3. strReleaseVersion = RELEASEVERSION;  
  4. #endif  
 

4,在源文件中通過(guò)以下方法獲取操作系統(tǒng)名稱:

  1. std::string strBuildOS = "Linux";  
  2. #ifdef BUILDOS  
  3. strBuildOS = BUILDOS;  
  4. #endif  
 

5,在源文件中通過(guò)以下方法獲取發(fā)布日期:

  1. std::string strBuildDate = "110501";  
  2. #ifdef BUILDDATE  
  3. strBuildOS = BUILDDATE;  
  4. #endif  
 

 

 


 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多