summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--ext/tcltklib/extconf.rb22
-rw-r--r--lib/mkmf.rb6
3 files changed, 29 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index 1918cc2295..78a8846e28 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Sat Aug 21 06:41:16 2004 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * ext/tcltklib/extconf.rb (find_tcl, find_tk): find stub library.
+
+ * lib/mkmf.rb (arg_config, with_config): deal with '-' and '_'
+ uniformly. [ruby-dev:24118]
+
Fri Aug 20 14:49:42 2004 NAKAMURA Usaku <usa@ruby-lang.org>
* io.c (rb_io_check_writable): no need to check read buffer if
@@ -9,7 +16,7 @@ Fri Aug 20 11:46:43 2004 UENO Katsuhiro <katsu@blue.sky.or.jp>
Thu Aug 19 16:29:45 2004 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
- * ext/tk/lib/tk.rb: Fail to treat a hash value of 'font' option.
+ * ext/tk/lib/tk.rb: Fail to treat a hash value of 'font' option.
* ext/tk/lib/tk.rb: bindinfo cannot return '%' substiturion infomation.
diff --git a/ext/tcltklib/extconf.rb b/ext/tcltklib/extconf.rb
index ac48812d7a..f17354fcaf 100644
--- a/ext/tcltklib/extconf.rb
+++ b/ext/tcltklib/extconf.rb
@@ -28,10 +28,16 @@ stubs = enable_config("tcltk_stubs") || with_config("tcltk_stubs")
def find_tcl(tcllib, stubs)
paths = ["/usr/local/lib", "/usr/pkg/lib", "/usr/lib"]
- func = stubs ? "Tcl_InitStubs" : "Tcl_FindExecutable"
+ if stubs
+ func = "Tcl_InitStubs"
+ lib = "tclstub"
+ else
+ func = "Tcl_FindExecutable"
+ lib = "tcl"
+ end
if tcllib
find_library(tcllib, func, *paths)
- elsif find_library("tcl", func, *paths)
+ elsif find_library(lib, func, *paths)
true
else
%w[8.5 8.4 8.3 8.2 8.1 8.0 7.6].find { |ver|
@@ -43,10 +49,16 @@ end
def find_tk(tklib, stubs)
paths = ["/usr/local/lib", "/usr/pkg/lib", "/usr/lib"]
- func = stubs ? "Tk_InitStubs" : "Tk_Init"
+ if stubs
+ func = "Tk_InitStubs"
+ lib = "tkstub"
+ else
+ func = "Tk_Init"
+ lib = "tk"
+ end
if tklib
find_library(tklib, func, *paths)
- elsif find_library("tk", func, *paths)
+ elsif find_library(lib, func, *paths)
true
else
%w[8.5 8.4 8.3 8.2 8.1 8.0 4.2].find { |ver|
@@ -230,5 +242,5 @@ if mac_need_framework ||
$LDFLAGS += ' -framework Tk -framework Tcl'
end
- create_makefile("tcltklib") if pthread_check
+ create_makefile("tcltklib") if stubs or pthread_check
end
diff --git a/lib/mkmf.rb b/lib/mkmf.rb
index e05bf733b8..e869fc9ca2 100644
--- a/lib/mkmf.rb
+++ b/lib/mkmf.rb
@@ -20,6 +20,7 @@ unless defined? $configure_args
for arg in Shellwords::shellwords(args)
arg, val = arg.split('=', 2)
next unless arg
+ arg.tr!('_', '-')
if arg.sub!(/^(?!--)/, '--')
val or next
arg.downcase!
@@ -30,6 +31,7 @@ unless defined? $configure_args
for arg in ARGV
arg, val = arg.split('=', 2)
next unless arg
+ arg.tr!('_', '-')
if arg.sub!(/^(?!--)/, '--')
val or next
arg.downcase!
@@ -623,11 +625,11 @@ def find_executable(bin, path = nil)
end
def arg_config(config, default=nil)
- $configure_args.fetch(config, default)
+ $configure_args.fetch(config.tr('_', '-'), default)
end
def with_config(config, default=nil)
- unless /^--with-/ =~ config
+ unless /^--with[-_]/ =~ config
config = '--with-' + config
end
arg_config(config, default)