make で魔法の記号を調べるのにうんざりして、 wafを試すことにしました。
caliber を使用して電子ブックを作成しようとしていますが、ファイルを取り込み、そのファイルを含むいくつかの引数を使用してプログラムを実行し、出力を生成する wscript を作成したいと考えています。Waf は、入力ファイルが出力よりも新しい場合にのみビルドする必要があります。
make では、次のような makefile を記述します。
%.epub: %.recipe
ebook-convert $ .epub --test -vv --debug-pipeline debug
% はファイルのベース名を表すマジック シンボルで、$ は出力ファイル名 (basename.epub) を表す記号です。
呼び出すmake soverflow.epub
と、soverflow.recipe で ebook-convert が実行されます。前回のビルドから .recipe が変更されていなければ、何もしません。
どうすればwafで同様のことを行うことができますか?
(なぜ waf なのか? それは私が既に知っている実際の言語を使用しているからです。これが scons で本当に使いやすいのであれば、それも良い答えです。)