linuxプログラムのコンパイル期間にコンパイル時間とsvnバージョン番号を追加
1080 ワード
通常、プログラム開発時に「-v」などのバージョンクエリーコマンドを追加しますが、buildバージョンやbuild日付などが表示されるので、コンパイルするたびに自動的に追加できれば便利です.
次に、時間を追加する方法について説明します.
1.最も簡単な方法で、コードに直接マクロを加える
2.少し巻き付けが実用的ではなく、Makefileで変数を定義します.
コンパイルコマンドラインにマクロを追加
次にコードに印刷できます
3.また、スクリプトで日付を1つのファイルに出力することもできます
次に、svnバージョンを取得する方法について説明します.
1.Makefileで変数を定義する
成功しました.コードに印刷しましょう.
次に、時間を追加する方法について説明します.
1.最も簡単な方法で、コードに直接マクロを加える
__TIME__ __DATE__
は、コンパイル時間を直接取得し、コードに印刷することができます.2.少し巻き付けが実用的ではなく、Makefileで変数を定義します.
CT="\"`date '+%Y-%m-%d %H:%M:%S'`"\"
コンパイルコマンドラインにマクロを追加
-DCT=$(CT)
次にコードに印刷できます
3.また、スクリプトで日付を1つのファイルに出力することもできます
#!/bin/sh
Version=1.0
Time=\"$(date '+%Y-%m-%d %H:%M:%S')\"
Output="#define BUILD_TIMER $Time
#define BUILD_VERSION $Version"
echo "$Output" > version.h
これはちょっと面倒ですが、書いてもいいです.次に、svnバージョンを取得する方法について説明します.
1.Makefileで変数を定義する
REV=`svn info | grep Revision | awk '{print $2}'`
#
REV=`svn info | grep Revision | cut -d " " -f 2`
REV=`svnversion ../../`
その後、コンパイルコマンドラインにマクロを追加-DREV=$(REV)
成功しました.コードに印刷しましょう.