summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rwxr-xr-xext/extmk.rb12
-rw-r--r--ext/openssl/extconf.rb5
3 files changed, 20 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 456cbad8df..df674d1552 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Fri May 18 15:14:32 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
+
+ * 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.
+
Fri May 18 06:14:07 2012 Eric Hodel <drbrain@segment7.net>
* ext/syslog/lib/syslog/logger.rb: Added Syslog::Logger which was
diff --git a/ext/extmk.rb b/ext/extmk.rb
index e7593ac9f6..a498268114 100755
--- a/ext/extmk.rb
+++ b/ext/extmk.rb
@@ -205,6 +205,8 @@ def extmake(target)
end
rescue SystemExit
# ignore
+ rescue => error
+ ok = false
ensure
rm_f "conftest*"
$0 = $PROGRAM_NAME
@@ -217,7 +219,15 @@ def extmake(target)
f.puts "# " + DUMMY_SIGNATURE
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 ff27fad327..6d89fd5f64 100644
--- a/ext/openssl/extconf.rb
+++ b/ext/openssl/extconf.rb
@@ -55,11 +55,10 @@ 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
unless OpenSSL.check_func("SSL_library_init()", "openssl/ssl.h")
- abort "Ignore OpenSSL broken by Apple"
+ raise "Ignore OpenSSL broken by Apple"
end
message "=== Checking for OpenSSL features... ===\n"