小さなC++プロジェクト用にMakefileをRakefileに変換しています。*.hファイルと*.cppファイルを含むsrcdirと、すべての* .oが入るobjdirがあります(srcにそれらを含めたくありません)。レーキルールでそれを行う方法は?
これは問題なく機能しますが、一般的なルールが必要です。
rule("#{OBJ_DIR}hello.o" => "#{SRC_DIR}hello.cpp") do |target|
これにより、「ルールに依存する処理方法がわからない:/src\/(\w+).cpp/」が返されます。
rule(/obj\/(\w+).o/ => /src\/(\w+).cpp/) do |target|
sh "#{COMPILER} #{FLAGS} -c -o #{target.name} #{target.source}"
end