mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
2a55c61ee7
icc now seems to provide libutil.so that is not related to pty. This extconf.rb wrongly finds it and adds `-lutil`, but `ruby -rpty` fails because it cannot find libutil.so on the runtime. http://rubyci.s3.amazonaws.com/icc-x64/ruby-master/log/20220815T210005Z.fail.html.gz ``` Exception raised: <#<LoadError: libutil.so: cannot open shared object file: No such file or directory - /home/chkbuild/chkbuild/tmp/build/20220815T210005Z/ruby/.ext/x86_64-linux/pty.so>> ``` This change makes extconf.rb check libutil only on OpenBSD.
23 lines
582 B
Ruby
23 lines
582 B
Ruby
# frozen_string_literal: true
|
|
require 'mkmf'
|
|
|
|
$INCFLAGS << " -I$(topdir) -I$(top_srcdir)"
|
|
|
|
if /mswin|mingw|bccwin/ !~ RUBY_PLATFORM
|
|
have_header("sys/stropts.h")
|
|
have_func("setresuid")
|
|
have_header("libutil.h")
|
|
have_header("pty.h")
|
|
have_header("pwd.h")
|
|
if /openbsd/ =~ RUBY_PLATFORM
|
|
have_header("util.h") # OpenBSD openpty
|
|
util = have_library("util", "openpty")
|
|
end
|
|
if have_func("posix_openpt") or
|
|
(util or have_func("openpty")) or
|
|
have_func("_getpty") or
|
|
have_func("ptsname") or
|
|
have_func("ioctl")
|
|
create_makefile('pty')
|
|
end
|
|
end
|