Rakeは、ビルドツールの一種。SConsやmakeと似ているが、いくつかの違いがある。このツールはRubyで書かれており、Rakefile(Makefileと同等のファイル)はRubyの文法を採用している。最初の作者は Jim Weirich。
RakeはRubyの無名関数ブロックを使い、各種タスクを定義する。一般的なタスクのライブラリがあり、一般的なファイル操作タスク、生成したファイルを削除するタスク(いわゆる clean タスク)などがある。makeと同様、Rake はパターンに基づいてタスクを合成できる(例えば、ファイル名パターンに基づいてファイルのコンパイルタスクを自動的に構築するなど)。Rakeは Ruby 1.9 から標準ライブラリの一部となっている。
例 以下は、C言語の Hello World プログラムをビルドするRakeスクリプトの例である。 rule '.o' => '.c' do |t| sh "cc -c -o #{t.name} #{t.source}" end file 'hello' => ['hello.o'] do sh 'cc -o hello hello.o' end
関連項目 make (UNIX) Apache Ant
外部リンク
RubyGems project page for Rake Using the Rake build language by Martin Fowler Ruby on Rails Rake tutorial at railsenvy.com Custom Rake Tasks at railscasts.com