summaryrefslogtreecommitdiff
path: root/ext/pathname
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2019-02-20 06:54:23 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2019-02-20 06:54:23 +0000
commit15a98ab42838be248a5b59ca342033ee338357ad (patch)
tree54d37b82280acbc3dc0dc10017b7470a77135c23 /ext/pathname
parentd034fcb13f04b096f99d1824d5e7dd8ed256713e (diff)
Try statx syscall
* file.c (rb_file_s_birthtime): export for pathname to check if birthtime is supported. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67097 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/pathname')
-rw-r--r--ext/pathname/extconf.rb2
-rw-r--r--ext/pathname/pathname.c3
2 files changed, 3 insertions, 2 deletions
diff --git a/ext/pathname/extconf.rb b/ext/pathname/extconf.rb
index c9133bc153..84e68277aa 100644
--- a/ext/pathname/extconf.rb
+++ b/ext/pathname/extconf.rb
@@ -1,4 +1,4 @@
# frozen_string_literal: false
require 'mkmf'
-have_struct_member("struct stat", "st_birthtimespec", "sys/stat.h")
+have_func("rb_file_s_birthtime")
create_makefile('pathname')
diff --git a/ext/pathname/pathname.c b/ext/pathname/pathname.c
index d5e58c52d8..9cf6c32039 100644
--- a/ext/pathname/pathname.c
+++ b/ext/pathname/pathname.c
@@ -512,7 +512,7 @@ path_atime(VALUE self)
return rb_funcall(rb_cFile, id_atime, 1, get_strpath(self));
}
-#if defined(HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC) || defined(_WIN32)
+#if defined(HAVE_RB_FILE_S_BIRTHTIME)
/*
* call-seq:
* pathname.birthtime -> time
@@ -528,6 +528,7 @@ path_birthtime(VALUE self)
return rb_funcall(rb_cFile, id_birthtime, 1, get_strpath(self));
}
#else
+/* check at compilation time for `respond_to?` */
# define path_birthtime rb_f_notimplement
#endif