lib/rake/helpers/rake.rb in rake-delphi-0.0.13 vs lib/rake/helpers/rake.rb in rake-delphi-0.0.14
- old
+ new
@@ -14,9 +14,30 @@
true
end
end
end
+ def self.set_env_to_vars(vars_list, vars, envVarsEncoding, localEncoding)
+ vars_list.flatten.each do |v|
+ value = ENV[v]
+ if value
+ value = value.dup
+ # Env vars are in system encoding
+ # On Windows/Cygwin only
+ if value.respond_to?(:force_encoding)
+ if Rake.application.windows? || Rake.cygwin?
+ value.force_encoding(envVarsEncoding)
+ value.encode!(localEncoding, envVarsEncoding)
+ end
+ elsif Rake.application.windows?
+ require 'iconv'
+ value = Iconv.iconv(localEncoding, envVarsEncoding, value)[0]
+ end
+ end
+ vars[v.to_sym] = value
+ end
+ end
+
def self.quotepath(switch, path)
return ! path.to_s.empty? ? "#{switch}\"#{path.to_s}\"" : ''
end
def self.unquotepath(path)