summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--gem_prelude.rb12
2 files changed, 18 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 16b3f8cdd0..736b5a9f3f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Thu Jul 30 23:04:32 2009 Yuki Sonoda (Yugui) <yugui@yugui.jp>
+
+ * gem_prelude.rb (Gem.path): uses Gem.default_path as a default value
+ so that ruby finds gems in ~/.gem/.
+ (Gem.user_home): reduced version of lib/rubygems.rb's.
+ Gem.default_path needs it.
+
Thu Jul 30 22:28:04 2009 Yuki Sonoda (Yugui) <yugui@yugui.jp>
* tool/compile_prelude.rb: replaces "require" with in-place evaluation
diff --git a/gem_prelude.rb b/gem_prelude.rb
index d32cbe9b42..ca865aabdc 100644
--- a/gem_prelude.rb
+++ b/gem_prelude.rb
@@ -42,7 +42,7 @@ if defined?(Gem) then
def self.path
@gem_path ||= nil
unless @gem_path
- paths = [ENV['GEM_PATH']]
+ paths = [ENV['GEM_PATH'] || default_path]
paths << APPLE_GEM_HOME if defined? APPLE_GEM_HOME
set_paths(paths.compact.join(File::PATH_SEPARATOR))
end
@@ -89,6 +89,16 @@ if defined?(Gem) then
@gem_path.uniq!
end
+ def self.user_home
+ @user_home ||= File.expand_path("~")
+ rescue
+ if File::ALT_SEPARATOR then
+ "C:/"
+ else
+ "/"
+ end
+ end
+
# begin rubygems/defaults
# NOTE: this require will be replaced with in-place eval before compilation.
require 'lib/rubygems/defaults.rb'