aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--test/runner.rb2
-rwxr-xr-xtool/runruby.rb13
3 files changed, 20 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index e806bd9479..4f86ed5940 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+Fri Jun 8 16:19:33 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * test/runner.rb (src_testdir): expand real path so that
+ TestGem#test_self_find_files does not fail by aliased load path when
+ srcdir contains a symbolic link.
+
+ * tool/runruby.rb (srcdir): ditto.
+
Fri Jun 8 12:04:39 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* process.c (rb_fork_err): error state in the child process is prior
diff --git a/test/runner.rb b/test/runner.rb
index 72b2360cd8..d077672160 100644
--- a/test/runner.rb
+++ b/test/runner.rb
@@ -2,7 +2,7 @@ require 'rbconfig'
require 'test/unit'
-src_testdir = File.dirname(File.expand_path(__FILE__))
+src_testdir = File.dirname(File.realpath(__FILE__))
$LOAD_PATH << src_testdir
module Gem
end
diff --git a/tool/runruby.rb b/tool/runruby.rb
index 76478c66f1..0165634edf 100755
--- a/tool/runruby.rb
+++ b/tool/runruby.rb
@@ -32,7 +32,16 @@ while arg = ARGV[0]
ARGV.shift
end
-srcdir ||= File.expand_path('..', File.dirname(__FILE__))
+unless defined?(File.realpath)
+ def File.realpath(*args)
+ Dir.chdir do
+ expand_path(*args)
+ Dir.pwd
+ end
+ end
+end
+
+srcdir ||= File.realpath('..', File.dirname(__FILE__))
archdir ||= '.'
abs_archdir = File.expand_path(archdir)
@@ -50,7 +59,7 @@ end
libs = [abs_archdir]
extout ||= config["EXTOUT"]
if extout
- abs_extout = File.expand_path(extout)
+ abs_extout = File.expand_path(extout, abs_archdir)
libs << File.expand_path("common", abs_extout) << File.expand_path(config['arch'], abs_extout)
end
libs << File.expand_path("lib", srcdir)