|
10 | 10 | have_library("sun", "getpwnam") # NIS (== YP) interface for IRIX 4 |
11 | 11 | have_func("uname((struct utsname *)NULL)", headers) |
12 | 12 | have_func("getlogin") |
13 | | -have_func("getpwent") |
14 | | -have_func("getgrent") |
| 13 | +if have_func("getpwent") |
| 14 | + have_struct_member('struct passwd', 'pw_gecos', 'pwd.h') |
| 15 | + have_struct_member('struct passwd', 'pw_change', 'pwd.h') |
| 16 | + have_struct_member('struct passwd', 'pw_quota', 'pwd.h') |
| 17 | + if have_struct_member('struct passwd', 'pw_age', 'pwd.h') |
| 18 | + case what_type?('struct passwd', 'pw_age', 'pwd.h') |
| 19 | + when "string" |
| 20 | + f = "safe_setup_str" |
| 21 | + when "long long" |
| 22 | + f = "LL2NUM" |
| 23 | + else |
| 24 | + f = "INT2NUM" |
| 25 | + end |
| 26 | + $defs.push("-DPW_AGE2VAL="+f) |
| 27 | + end |
| 28 | + have_struct_member('struct passwd', 'pw_class', 'pwd.h') |
| 29 | + have_struct_member('struct passwd', 'pw_comment', 'pwd.h') unless /cygwin/ === RUBY_PLATFORM |
| 30 | + have_struct_member('struct passwd', 'pw_expire', 'pwd.h') |
| 31 | + have_struct_member('struct passwd', 'pw_passwd', 'pwd.h') |
| 32 | +end |
| 33 | +if have_func("getgrent") |
| 34 | + have_struct_member('struct group', 'gr_passwd', 'grp.h') |
| 35 | +end |
| 36 | + |
15 | 37 | if (sysconfdir = RbConfig::CONFIG["sysconfdir"] and |
16 | 38 | !RbConfig.expand(sysconfdir.dup, "prefix"=>"", "DESTDIR"=>"").empty?) |
17 | 39 | $defs.push("-DSYSCONFDIR=#{Shellwords.escape(sysconfdir.dump)}") |
|
21 | 43 | have_func("confstr") |
22 | 44 | have_func("fpathconf") |
23 | 45 |
|
24 | | -have_struct_member('struct passwd', 'pw_gecos', 'pwd.h') |
25 | | -have_struct_member('struct passwd', 'pw_change', 'pwd.h') |
26 | | -have_struct_member('struct passwd', 'pw_quota', 'pwd.h') |
27 | | -if have_struct_member('struct passwd', 'pw_age', 'pwd.h') |
28 | | - case what_type?('struct passwd', 'pw_age', 'pwd.h') |
29 | | - when "string" |
30 | | - f = "safe_setup_str" |
31 | | - when "long long" |
32 | | - f = "LL2NUM" |
33 | | - else |
34 | | - f = "INT2NUM" |
35 | | - end |
36 | | - $defs.push("-DPW_AGE2VAL="+f) |
37 | | -end |
38 | | -have_struct_member('struct passwd', 'pw_class', 'pwd.h') |
39 | | -have_struct_member('struct passwd', 'pw_comment', 'pwd.h') unless /cygwin/ === RUBY_PLATFORM |
40 | | -have_struct_member('struct passwd', 'pw_expire', 'pwd.h') |
41 | | -have_struct_member('struct passwd', 'pw_passwd', 'pwd.h') |
42 | | -have_struct_member('struct group', 'gr_passwd', 'grp.h') |
43 | | - |
44 | 46 | # for https://github.com/ruby/etc |
45 | 47 | srcdir = File.expand_path("..", __FILE__) |
46 | 48 | constdefs = "#{srcdir}/constdefs.h" |
|
0 commit comments