Python + Boost Build V2
僕がほしいのって、test というフォルダにある .cpp は全部テストケースだから、適当にビルドして、テストの統計を自動で取ってほしい!とか、doc の中にある doxygen.conf ってやつはDoxygen設定ファイルだから、適当にビルドしてほしいとか、zip に固めるたびにバージョン番号を勝手に上げて、それが名前に付いた zip を作ってほしいとか、「ビルド+バッチ」つまり「いろんなものの自動化」なんです。で、ビルドツール & スクリプトを今までいろいろ渡り歩いてきました
が、
- スクリプト
- 長所 : 汎用的、複雑な作業が得意
- 短所 : 汎用的過ぎて、ちょっと手間がかかる
- バッチファイル
- 長所 : 手軽
- 短所 : バグってる、信頼できない
- make
- 長所 : 信頼性が高く、依存関係を元に正しい順序でビルドしてくれる
- 短所 : 依存関係を張るのが大変
ま、こんなところだと思うわけですよ。んで、世の中のビルドや、スクリプトをこれらのカテゴリーから見ると
- make
- 純粋なビルドツール
- SCons
- スクリプト + make
- Boost Build V2
- make にかなり近い
- ant
- バッチ + make
といった感じ。こうしてみると僕の用途に合うのは、ant か SCons になりそうなんだけど、こいつらが最近候補から外れつつあるのは、
ということで、現在、boost + Python の組み合わせでおもろいことができないか模索中。
ちなみに、Ruby 信者だった僕が Ruby から離れたのも
- 不安定
だったのが大きい。(いまでも、言語としての Ruby は愛してやまない)