Hi,
 
In Rake a file task may be something like
 
file app_obj => app_cpp
   # compile
end
 
We've discovered that in some cases (such as where a path comes from the OS, an environment variable, say), it will contain backslashes, and sometimes (where Ruby has generated the path, or where we've coded it into the script - / is easier to read than \\) it will contain forward slashes.  This difference seems to be significant when the paths are compared.
 
This results in the situation where the equivalent paths c:\folder\app.cpp and c:/folder/app.cpp are treated as being completely different.  (We also get a mix of slashes in a single path:  c:\folder/app.cpp).
 
It would make sense, IMHO, for these paths to be treated as the same.
 
Is there any way to do this?  The closest thing I could find was this:
 
# Find a matching task for +task_name+.  
def [](task_name, scopes=nil)
      task_name = task_name.to_s
      self.lookup(task_name, scopes) or
           enhance_with_matching_rule(task_name) or
           synthesize_file_task(task_name) or
           fail "Don't know how to build task '#{task_name}'"
end
 
I suppose I'd have to override this to loop through all the prerequisites and compare them, making the slashes on both sides consistent?
 
Thanks
 
John
_______________________________________________
Rake-devel mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/rake-devel

Reply via email to