Hi,

Really minor question/proposal:

Why can you only test that one func is available with
have_library? Wouldn't it be nice to give an array of funcs (the ones you
need in your extension)?

You can do multiple calls to have_library but that will include the lib
multiple times => doesn't look nice.

Below is the simple patch. I'd appreciate if you have an opinion/comment.

Regards,

Robert


*** mkmf.rb.orig	Wed Nov  8 11:50:00 2000
--- mkmf.rb	Wed Nov  8 12:10:15 2000
***************
*** 148,160 ****
  
  def append_library(libs, lib)
    if /mswin32/ =~ RUBY_PLATFORM
!     lib + ".lib " + libs
    else
!     "-l" + lib + " " + libs
    end
  end
  
  def have_library(lib, func="main")
    printf "checking for %s() in -l%s... ", func, lib
    STDOUT.flush
  
--- 148,173 ----
  
  def append_library(libs, lib)
    if /mswin32/ =~ RUBY_PLATFORM
!     str_to_append = lib + ".lib "
    else
!     str_to_append = "-l" + lib + " "
!   end
!   if libs.include?(str_to_append)
!     libs
!   else
!     str_to_append + libs
    end
  end
  
  def have_library(lib, func="main")
+   if Array == func.type
+     func.each {|function| library_have_function(lib, function)}
+   else
+     library_have_function(lib, func)
+   end
+ end
+ 
+ def library_have_function(lib, func="main")
    printf "checking for %s() in -l%s... ", func, lib
    STDOUT.flush
  
***************
*** 195,200 ****
--- 208,221 ----
  end
  
  def find_library(lib, func, *paths)
+   if Array == func.type
+     func.each {|function| library_find_function(lib, function, paths)}
+   else
+     library_have_function(lib, func)
+   end
+ end
+ 
+ def library_find_function(lib, func, *paths)
    printf "checking for %s() in -l%s... ", func, lib
    STDOUT.flush