2008-02-10から1日間の記事一覧

pathmap

Rake の rule では、 rule '.o' => ['%X.c'] do |t| ... end のように、依存先のルールに'%' を入れると、pathmapを使って変換されるようです。pathmapについての情報があまりなかったのですが、新しい機能なのか、使う人がいないのか。pathmapについてまと…

Rakeメモ - rule

ruleは、Makeの型ルールをもっと高度にしたものですね。 rule '.o' => ['.c'] do |task| sh "gcc #{task.source} #{task.name}" end 依存先が'.'で始まる場合は、いわゆるサフィックスルール(古いタイプの) task.nameがターゲット名(file, taskでも使える…

Rakeメモ - task

Makeで言う.PHONYターゲットはtaskメソッドで定義します。 依存先のタイムスタンプに関係なく必ず実行する。 あとはfileと同じのようです。実装的にはtaskがベースのようですが。タスク名はStringもしくはSymbolどちらでも良いようですが、公式マニュアルの…

Rakeメモ - file

Makeでいうルールの定義がfileですね。 file 'hoge' => ['hoge.c', 'hoge.h'] do |task| sh "gcc hoge.c -o hoge" end ファイル 'hoge' が 'hoge.c', 'hoge.h' に依存していることを表す。 'hoge'を生成するのに、ブロックの中のsh "..."を実行する。 引数ta…