summaryrefslogtreecommitdiff
path: root/template/fake.rb.in
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-04-06 02:21:40 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-04-06 02:21:40 +0000
commit2ff26f22209c5b260585fcac2383ae6c91aef766 (patch)
tree45f91a2ddb6d1c59447fb68f43005ce39ba39b71 /template/fake.rb.in
parent00adf578dfd8e505b59a081d4940d807c490cf6c (diff)
* template/fake.rb.in: hooks for extconf.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27234 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'template/fake.rb.in')
-rwxr-xr-x[-rw-r--r--]template/fake.rb.in24
1 files changed, 24 insertions, 0 deletions
diff --git a/template/fake.rb.in b/template/fake.rb.in
index e8eba09..df36b09 100644..100755
--- a/template/fake.rb.in
+++ b/template/fake.rb.in
@@ -1,3 +1,6 @@
+baseruby="@BASERUBY@"
+ruby="${RUBY-$baseruby}"
+"eval" "{ `expr \"$ruby\" : echo > /dev/null || echo exec` $ruby "'-r"`expr \"$0\" : / > /dev/null || pwd`/${0#/}" "$@";' "}" || "exit" "$?"
class Object
CROSS_COMPILING = RUBY_PLATFORM
remove_const :RUBY_PLATFORM
@@ -13,3 +16,24 @@ if RUBY_PLATFORM =~ /mswin|bccwin|mingw/
ALT_SEPARATOR = "\\"
end
end
+
+$:.unshift(File.expand_path("..", __FILE__))
+prehook = proc do
+ config = RbConfig::CONFIG
+ mkconfig = RbConfig::MAKEFILE_CONFIG
+ mkconfig["top_srcdir"] = $top_srcdir = File.expand_path("@abs_top_srcdir@")
+ $extout = File.expand_path(mkconfig["EXTOUT"], mkconfig["topdir"])
+ mkconfig["extout"] = config["extout"] = $extout
+ mkconfig["rubyhdrdir"] = "$(top_srcdir)/include"
+ config["rubyhdrdir"] = File.join(mkconfig["top_srcdir"], "include")
+ mkconfig["libdir"] = config["libdir"] = mkconfig["topdir"]
+ mkconfig["archdir"] = config["archdir"] = File.expand_path(File.dirname(__FILE__))
+ untrace_var(:$extmk, prehook)
+end
+trace_var(:$extmk, prehook)
+posthook = proc do
+ $ruby = baseruby
+ $arch_hdrdir = "$(extout)/include/$(arch)"
+ untrace_var(:$ruby, posthook)
+end
+trace_var(:$ruby, posthook)