私の目的は、バージョン情報を含むライブラリを構築することです。
./version.cpp
バージョンが実際に変更された場合にのみ更新されるスクリプトがあります。これは、不要な再構築を防ぐためです。
globs*.cpp
を含むlib ターゲットがありversion.cpp
ます。
問題は、bjam
実行すると、スクリプトが実行され、 update が実行されるのを見ることができますversion.cpp
が、ライブラリが再構築されないことです。
bjam
再度実行したときにのみ、version.cpp
変更が確認され、lib が再構築されます
私のジャムファイル:
Echo [ SHELL "./write_version.sh" ] ;
lib foo
: [ glob *.cpp ]
;
bjam を実行したときの出力 (2 回):
$ bjam
Updating version.cpp
...found 119 targets...
$ bjam
...found 121 targets...
...updating 3 targets...
gcc.compile.c++ ../foo/bin/gcc-4.8/debug/link-static/version.o
gcc.archive ../foo/bin/gcc-4.8/debug/link-static/libfoo.a
...updated 3 targets...
質問:
スクリプトとライブラリ ビルドの両方を連携させるにはどうすればよいですか?