class FFI::Compiler::CompileTask

def have_func?(func)

def have_func?(func)
  main = <<-C_FILE
  extern void #{func}();
  int main(int argc, char **argv) { #{func}(); return 0; }
  C_FILE
  if try_compile(main)
    @functions << func
    return true
  end
  false
end