nanosecond timestamp support in stat and utime
authorAndy Wingo <wingo@oblong.net>
Sun, 17 Jan 2010 15:56:21 +0000 (16:56 +0100)
committerAndy Wingo <wingo@oblong.net>
Sun, 17 Jan 2010 15:56:34 +0000 (16:56 +0100)
commit06bfe276c8bfd71cf601761659d6b20acebc23b8
tree1df6b43c2e1d1d61fc3a61c40596861541a46f1b
parentf826a8864a4ec7bfffac0f67d45f8ce0085e9d23
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.
configure.ac
doc/ref/posix.texi
libguile/filesys.c
libguile/posix.c
libguile/posix.h
module/ice-9/posix.scm
module/system/base/compile.scm