2015-12-16 08:31:54 +03:00
|
|
|
# frozen_string_literal: false
|
2003-07-23 13:26:53 +04:00
|
|
|
require 'mkmf'
|
|
|
|
|
2022-01-11 18:14:20 +03:00
|
|
|
if RUBY_VERSION < "2.6"
|
|
|
|
File.write("Makefile", dummy_makefile($srcdir).join(""))
|
2005-07-17 08:47:38 +04:00
|
|
|
else
|
2022-01-11 18:14:20 +03:00
|
|
|
target = "io/wait"
|
|
|
|
have_func("rb_io_wait")
|
|
|
|
unless macro_defined?("DOSISH", "#include <ruby.h>")
|
|
|
|
have_header(ioctl_h = "sys/ioctl.h") or ioctl_h = nil
|
|
|
|
fionread = %w[sys/ioctl.h sys/filio.h sys/socket.h].find do |h|
|
|
|
|
have_macro("FIONREAD", [h, ioctl_h].compact)
|
|
|
|
end
|
|
|
|
if fionread
|
|
|
|
$defs << "-DFIONREAD_HEADER=\"<#{fionread}>\""
|
|
|
|
create_makefile(target)
|
|
|
|
end
|
|
|
|
else
|
|
|
|
if have_func("rb_w32_ioctlsocket", "ruby.h")
|
|
|
|
have_func("rb_w32_is_socket", "ruby.h")
|
|
|
|
create_makefile(target)
|
|
|
|
end
|
2005-07-17 08:47:38 +04:00
|
|
|
end
|
2003-07-23 13:26:53 +04:00
|
|
|
end
|