Rake "sh" does not echo command

B

Brock Rycenga

From what I have read, I would expect the ruby/rake "sh" command to echo
the system call to STDOUT - instead just executing it. Is there some
reason why ruby/rake would not be echoing my system commands to my
command window? I am running in Windows. Here is an example:

rule ".#{OBJ_EXT}" => lambda{|objfile| find_source(objfile)} do |t|
puts "Building object file for #{t.source}"
sh "#{COMPILER} #{C_OPTS} #{C_OBJ_DIR} #{C_INC_PATHS} #{C_FLAGS}
#{C_TARGET} #{t.source}"
end

The execution of the above rule never echoes the command following "sh".
Why is that? Is there another shell command I should be using? I realize
that I could just precede everything with a puts of the same line, but
it seems like I am missing something.


Thanks.
 
P

Patrick Doyle

[Note: parts of this message were removed to make it a legal post.]

I always add:

# I like to see the shell commands as they are executed
verbose(true)

to my rakefiles. You can also do things like:

vebose(true) do
sh this_verbose_command
end

or

verbose(false) do
sh that_quiet_command
end

The default is not to echo the commands. My Makefile heritage finds this
odd, but now that I've figured out how to get around it, it's not so odd
anymore.

There might even be a .rakerc file somewhere I could add that to. Hmmm...
if not, then perhaps I have finally come up with an idea that I could
implement and contribute back.

--wpd
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,767
Messages
2,569,572
Members
45,045
Latest member
DRCM

Latest Threads

Top