噂のRakefileを使ってみた。 チュートリアルはRake RubyによるビルドツールRakeの覚え書き。興に乗ったので詳しく書いてみた。でバッチリ。 簡単なルールならホント簡単に(Rubyを知ってれば)書くことができた。
しかし、オブジェクトファイルをソースファイルとは別のディレクトリに吐き出そうとしたらあまり情報がなくて結構つまずいた。 http://onestepback.org/index.cgi/Tech/Rake/Tutorial/RakeTutorialAnotherCExample.red を見てできた。 rule ごとに lambda を書くのが面倒だと思ったので、それも関数に移動した:
require 'rake/clean' |
これはこれでいいんだけど、.o に対する .h の依存関係が書けてない。 ルールに対して後から依存関係を追加できればいいんだけどやりかたがわからんので、依存関係のハッシュを渡してプロシジャ側でやる:
def find_source(srcs, depends=nil) |