summaryrefslogtreecommitdiff
path: root/ext/pty/extconf.rb
diff options
context:
space:
mode:
authorYusuke Endoh <mame@ruby-lang.org>2022-08-18 11:35:17 +0900
committerYusuke Endoh <mame@ruby-lang.org>2022-08-18 12:46:24 +0900
commit2a55c61ee77df55e8715809958ea0439f3918cf2 (patch)
tree1e6171676713c7a3de5b5781b54ace94693dd08c /ext/pty/extconf.rb
parentfbaa2f0b3b73271b692e7dc47cf19df6e05a7eeb (diff)
ext/pty/extconf.rb: Try libutil only on OpenBSD
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.
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/6249
Diffstat (limited to 'ext/pty/extconf.rb')
-rw-r--r--ext/pty/extconf.rb6
1 files changed, 4 insertions, 2 deletions
diff --git a/ext/pty/extconf.rb b/ext/pty/extconf.rb
index 038bdf4d2c..ba0c4286fd 100644
--- a/ext/pty/extconf.rb
+++ b/ext/pty/extconf.rb
@@ -7,10 +7,12 @@ if /mswin|mingw|bccwin/ !~ RUBY_PLATFORM
have_header("sys/stropts.h")
have_func("setresuid")
have_header("libutil.h")
- have_header("util.h") # OpenBSD openpty
have_header("pty.h")
have_header("pwd.h")
- util = have_library("util", "openpty")
+ 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