[前][次][番号順一覧][スレッド一覧]

ruby-changes:72954

From: Yusuke <ko1@a...>
Date: Thu, 18 Aug 2022 12:46:41 +0900 (JST)
Subject: [ruby-changes:72954] 2a55c61ee7 (master): ext/pty/extconf.rb: Try libutil only on OpenBSD

https://git.ruby-lang.org/ruby.git/commit/?id=2a55c61ee7

From 2a55c61ee77df55e8715809958ea0439f3918cf2 Mon Sep 17 00:00:00 2001
From: Yusuke Endoh <mame@r...>
Date: Thu, 18 Aug 2022 11:35:17 +0900
Subject: 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.
---
 ext/pty/extconf.rb | 6 ++++--
 1 file 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 https://github.com/ruby/ruby/blob/trunk/ext/pty/extconf.rb#L7
   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
-- 
cgit v1.2.1


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]