summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorkosaki <kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-09-09 06:39:23 +0000
committerkosaki <kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-09-09 06:39:23 +0000
commit1048cf39d0a7fa38f3ced149ec7b141f5bb3f5c6 (patch)
treed1f92758d6dc143b318f8ebed117a8d5da4cc064 /ext
parentc2cb8ea3174b60b3b87cd2fa916cf10e6776864b (diff)
merge revision(s) 35685
* ext/extmk.rb: Show a message when extconf.rb raised an exception. * ext/openssl/extconf.rb: Use exception raising instead of message and/or abort. We want to display error message to console _and_ logging into mkmf.log. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@36929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext')
-rwxr-xr-xext/extmk.rb12
-rw-r--r--ext/openssl/extconf.rb3
2 files changed, 12 insertions, 3 deletions
diff --git a/ext/extmk.rb b/ext/extmk.rb
index 5665a966a8..de6e037854 100755
--- a/ext/extmk.rb
+++ b/ext/extmk.rb
@@ -183,6 +183,8 @@ def extmake(target)
end
rescue SystemExit
# ignore
+ rescue => error
+ ok = false
ensure
rm_f "conftest*"
config = $0
@@ -194,7 +196,15 @@ def extmake(target)
open(makefile, "w") do |f|
f.print(*dummy_makefile(CONFIG["srcdir"]))
end
- print "Failed to configure #{target}. It will not be installed.\n"
+
+ mess = "Failed to configure #{target}. It will not be installed.\n"
+ if error
+ mess.prepend(error.to_s + "\n")
+ end
+
+ Logging::message(mess)
+ print(mess)
+ $stdout.flush
return true
end
args = sysquote($mflags)
diff --git a/ext/openssl/extconf.rb b/ext/openssl/extconf.rb
index 920caa641d..2206fcab5b 100644
--- a/ext/openssl/extconf.rb
+++ b/ext/openssl/extconf.rb
@@ -58,8 +58,7 @@ unless result
end
unless have_header("openssl/conf_api.h")
- message "OpenSSL 0.9.6 or later required.\n"
- exit 1
+ raise "OpenSSL 0.9.6 or later required."
end
%w"rb_str_set_len rb_block_call".each {|func| have_func(func, "ruby.h")}