ruby / rake

A make-like build utility for Ruby.

Home Page:https://ruby.github.io/rake

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Is it possible to specify multiple targets from a single source?

Stealthmate opened this issue · comments

Basically I have a binary foo that generates 1.bar, 2.bar and 3.bar. So I wrote a rule

rule(/[1-3]\.bar/ => [ 'foo' ] do |t|
  sh "foo"
end

But if I rake something that needs all 3 outputs, foo gets executed 3 times. My problem is that foo is kind of slow, so executing it 3 times is annoying. Is there a way to make rake only run it once? If not, would it be possible to implement it?

I think the relevante Make concept is Grouped Targets.