diff options
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | ext/tcltklib/extconf.rb | 22 | ||||
-rw-r--r-- | lib/mkmf.rb | 6 |
3 files changed, 29 insertions, 8 deletions
@@ -1,3 +1,10 @@ +Sat Aug 21 06:41:16 2004 Nobuyoshi Nakada <[email protected]> + + * 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 <[email protected]> * 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 <[email protected]> Thu Aug 19 16:29:45 2004 Hidetoshi NAGAI <[email protected]> - * 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) |