Makeでいうルールの定義がfileですね。 file 'hoge' => ['hoge.c', 'hoge.h'] do |task| sh "gcc hoge.c -o hoge" end ファイル 'hoge' が 'hoge.c', 'hoge.h' に依存していることを表す。 'hoge'を生成するのに、ブロックの中のsh "..."を実行する。 引数taskには、Taskクラスのインスタンスが渡される。(Taskクラスは後述) shメソッドによってシェルを呼び出す。 FileUtilsを継承したRakeFileUtilsモジュールに定義されており、includeされている。 FileUtilsのメソッドと同じく{:verbose => true, :noop => true}でオプションを渡せる。 verboseオプションに合わせて、標準エラー出力に実行コマンドを出すなど、ex
開発中のプログラム作りで、依存するライブラリを含む全部のソースをリポジトリにチェックインするなどの雑多な作業をシェルスクリプトでこなしていたけど、ふと思いついてrakeに挑戦することにした。 参考にしているのはFile: rakefile.rdocなど。 タスクとファイル makeで言うところの仮想ターゲット。cleanとかinstallとかの、ファイルではないけどターゲットとするやつだ。 rakeではファイルであるターゲットとファイルではないターゲットを明確に分けている。 task :hoge do puts "ほげぇ" end task :fuga => :hoge do puts "ふがぁ" end file "tmp" do touch "tmp" end 依存関係は、タスク名の直後に=>に続けて書く。複数ある場合は配列で書ける。タスクに依存する場合はシンボル、ファイル(の存在)に
Rakefile Format (as of version 0.8.2) First of all, there is no special format for a Rakefile. A Rakefile contains executable Ruby code. Anything legal in a ruby script is allowed in a Rakefile. Now that we understand there is no special syntax in a Rakefile, there are some conventions that are used in a Rakefile that are a little unusual in a typical Ruby program. Since a Rakefile is tailored to
2006-09-01 近況 いまの余暇コードは Makefile のかわりに SCons を使っている. Scons は python 製の make alternative. (概要は Radium Software に記事があった.) "#include" によるヘッダファイルの依存関係を勝手に解決してくれるのがいい. 私は何度やっても Makefile の dep ターゲットをうまく書けない. 泣きたくなる. gcc -MD で作った .dep ファイルが どのタイミングで Makefile に incldue されるのか, 実のところ未だによくわかっていない. 少し前にやった仕事でも, 試行錯誤の末になんとなく動いた Makefile をおそるおそる使っていた. (マニュアルをぱくったんだっけ...でも sed なんて使わなかったような...) 一体何がどの順序で評価されるのかさっ
RubyによるビルドツールRakeの覚え書き。興に乗ったので詳しく書いてみた。 2014/02/20 Rakeの作者、Jim Weirich氏が亡くなられました。安らかに… Rakeとは? インストール 単純なRakefile タスク ファイルタスク ルール ディレクトリ作成 タスクの説明 ファイルリスト クリーニング パッケージ作成 タスクの動的生成 テストタスク 複数のRakefileの連携 名前空間 参考URL Rakeとは? Rakeは、MakeをRubyで実装したものを超越したビルドツールである。 世間では、ビルドツールというとMakeやApache Antが有名で、よく使われている。 Rakeは、これらのいいとこ取りをした上で、特有のフィーチャーを追加した新しいビルドツールであり、複雑なビルドを柔軟に書きこなすことができる。その秘密は内部DSLという仕組みにあり、このおかげでビ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く