Chinaunix首页 | 论坛 | 博客
  • 博客访问: 686693
  • 博文数量: 182
  • 博客积分: 2088
  • 博客等级: 大尉
  • 技术积分: 1698
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-16 15:09
个人简介

.

文章分类

全部博文(182)

文章存档

2016年(1)

2015年(18)

2014年(14)

2013年(20)

2012年(129)

分类: LINUX

2012-06-15 23:07:29

第一步:
通过svnversion.sh将SVN版本号导入到SVN_Serial.h内,并将svnversion.sh添加到Makefile文件内,以便编译时执行此脚本,获得SVN版本号,供程序使用
svnversion.sh内容如下:
#! /bin/sh
VERFILE=./include/SVN_Serial.h
svn_last_rev_str=`svnversion -c`
svn_last_rev=${svn_last_rev_str##*:}
echo "#define SVN_SERIAL $svn_last_rev" > $VERFILE
第二步:
在version.h内将获得在SVN_Serial.h内的SVN版本号加以处理,方便程序使用
version.h内容如下:
#ifndef _VERSION_H_
#define _VERSION_H_
#include "SVN_Serial.h"
#define VERSION_HEAD "Ver"
#define VERSION_PATCH   SVN_SERIAL
#define VERSION_COMP_DATE   __DATE__
#define VERSION_COMP_TIME   __TIME__
#define _VERSION_STRINGIZE(str) #str
#define _VERSION_STRING(num)    _VERSION_STRINGIZE(num)
#define VERSION_STRING VERSION_HEAD    \
      _VERSION_STRING(VERSION_PATCH)" "
#define VERSION_COMP_DATA_TIME VERSION_COMP_DATE"-"\
      VERSION_COMP_TIME
#endif
PS:命令:svn info也可以得到SVN相关的信息,不过它不能获得当前版本修改后的情况,即:xxM。
另svnversion得到的是当前SVN的最新版本(包括其它项目的更新版本号),svnversion -c则是最近一次改变的,而不是目前的版本。
----------------------------------
参考文献:
http://blog.tianya.cn/blogger/post_show.asp?BlogID=803354&PostID=23119512
http://3444542.blog.163.com/blog/static/42266602200801985823995/
阅读(4277) | 评论(0) | 转发(0) |
0

上一篇:谈EXPORT_SYMBOL使用

下一篇:Android架构

给主人留下些什么吧!~~