summaryrefslogtreecommitdiff
path: root/lib/rubygems.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rubygems.rb')
-rw-r--r--lib/rubygems.rb20
1 files changed, 15 insertions, 5 deletions
diff --git a/lib/rubygems.rb b/lib/rubygems.rb
index 3ee9593ce3..184461b4d0 100644
--- a/lib/rubygems.rb
+++ b/lib/rubygems.rb
@@ -138,7 +138,14 @@ module Gem
##
# An Array of Regexps that match windows ruby platforms.
- WIN_PATTERNS = [/mswin/i, /mingw/i, /bccwin/i, /wince/i]
+ WIN_PATTERNS = [
+ /bccwin/i,
+ /cygwin/i,
+ /djgpp/i,
+ /mingw/i,
+ /mswin/i,
+ /wince/i,
+ ]
##
# Is this a windows platform?
@@ -212,8 +219,7 @@ module Gem
install_dir.to_s == Gem.default_dir
if defined? RUBY_FRAMEWORK_VERSION then # mac framework support
- File.join(File.dirname(Config::CONFIG["sitedir"]),
- File.basename(Config::CONFIG["bindir"]))
+ '/usr/bin'
else # generic install
Config::CONFIG['bindir']
end
@@ -225,7 +231,11 @@ module Gem
#
def path
@gem_path ||= nil
- set_paths(ENV['GEM_PATH']) unless @gem_path
+ unless @gem_path
+ paths = [ENV['GEM_PATH']]
+ paths << APPLE_GEM_HOME if defined? APPLE_GEM_HOME
+ set_paths(paths.compact.join(File::PATH_SEPARATOR))
+ end
@gem_path
end
@@ -519,7 +529,7 @@ module Gem
# not specified in the environment.
def default_dir
if defined? RUBY_FRAMEWORK_VERSION
- return File.join(File.dirname(Config::CONFIG["sitedir"]), "Gems")
+ return File.join(File.dirname(Config::CONFIG["sitedir"]), "Gems", Config::CONFIG['ruby_version'])
else
File.join(Config::CONFIG['libdir'], 'ruby', 'gems', Config::CONFIG['ruby_version'])
end