summaryrefslogtreecommitdiff
path: root/libguile/posix.h
diff options
context:
space:
mode:
authorAndy Wingo <wingo@oblong.net>2010-01-17 16:56:21 +0100
committerAndy Wingo <wingo@oblong.net>2010-01-17 16:56:34 +0100
commit06bfe276c8bfd71cf601761659d6b20acebc23b8 (patch)
tree1df6b43c2e1d1d61fc3a61c40596861541a46f1b /libguile/posix.h
parentf826a8864a4ec7bfffac0f67d45f8ce0085e9d23 (diff)
downloadguile-06bfe276c8bfd71cf601761659d6b20acebc23b8.tar.gz
nanosecond timestamp support in stat and utime
* libguile/posix.h: * libguile/posix.c (scm_utime): Add optional nanosecond arguments. This is an incompatible change on the C level, but it's unlikely people are using this POSIX wrapper function, because they would just use the POSIX function directly. Hopefully, anyway. * module/system/base/compile.scm (call-with-output-file/atomic): Propagate source timestamps to targets with nanosecond precision, if available. Fixes build on systems with ext4 filesystems. * libguile/filesys.c (scm_stat2scm): * module/ice-9/posix.scm (stat:atimensec, stat:mtimensec) (stat:ctimensec): Add three new elements to Scheme stat structures, for nanosecond-level timestamps. * configure.ac: Add checks for utimensat, and for nanosecond fields in struct stat. We should switch to using Gnulib things for these, though. * doc/ref/posix.texi (File System): Add documentation for utime's additional arguments, and nanosecond stat timestamp accessors.
Diffstat (limited to 'libguile/posix.h')
-rw-r--r--libguile/posix.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/libguile/posix.h b/libguile/posix.h
index 430d75b7f..420311e5d 100644
--- a/libguile/posix.h
+++ b/libguile/posix.h
@@ -70,7 +70,8 @@ SCM_API SCM scm_tmpnam (void);
SCM_API SCM scm_mkstemp (SCM tmpl);
SCM_API SCM scm_open_pipe (SCM pipestr, SCM modes);
SCM_API SCM scm_close_pipe (SCM port);
-SCM_API SCM scm_utime (SCM pathname, SCM actime, SCM modtime);
+SCM_API SCM scm_utime (SCM pathname, SCM actime, SCM modtime,
+ SCM actimens, SCM modtimens, SCM flags);
SCM_API SCM scm_access (SCM path, SCM how);
SCM_API SCM scm_getpid (void);
SCM_API SCM scm_putenv (SCM str);