作者归档:anyshpm

关于anyshpm

关注WEB开发领域和软件配置管理领域

愚公移山

“子子孙孙,无穷溃也……”

有人发起了一个项目,暴力破解Motorola Milestone手机的bootloader(项目主页),通过BOINC,让所有的人都可以参与到这个项目里面来。就是任何一台电脑都可以通过通过网络加入到这个暴力破解中来。具体其中原理、算法什么的,我是不懂啦。

有人在xda上质疑说这个破解是不可能完成的。人家说了:“if you read what i wrote on the front page of the project, you’d know that i’m well aware of that fact that it would take forever (in the worst case). but we might be lucky and find the key today, or in a week, or in a month. Or, of course, we do never find it, and the project will die a slow death.”

当然人家还想提高,想用GPU来算,这样速度会提高很多。

话说moto怎么就不开窍呢?

圣诞节

天亮之后去加班。老祝开会说希望这是我们年前最后一次周末加班,cao!一看日历才发现,TMD这周末是今年的最后一个周末。

文档、代码、测试、JIRA、CRM……

曾对这胡二同学说:“你丫的,上班就是打游戏。”话说现在他也不轻松啊,“天命,哈哈哈哈……。”

……

……

在程序中获取编译时SVN的版本号

程序中一般会加入程序的版本信息,用“-v”来查看。

有时候还会加入编译时间,这个比较好实现,使用__TIME__和__DATE__宏就可以了,程序的大版本号一般都是手动写的。

出于某种需要,我希望在程序中获取到编译时svn的版本号,查了写资料,有说用svn prop来做的,也有说用svn hook来做的,我觉得这个太复杂,而且是在每次提交都做修改,没必要。

于是乎,我想到也用宏来做。

gcc里可以用“-D”来定义宏,用它来定义一个宏,值为svn版本号就好了。

-DSVN=xxxx

xxxx怎么获取呢?svn info里就有了,弄出来就行了

svn info | grep Revision | cut -d " " -f 2

然后

-DSVN=·svn info | grep Revision | cut -d " " -f 2·

把它加到Makefile.am里去,搞定。