1
0
mirror of https://git.savannah.gnu.org/git/gnulib.git synced 2025-08-16 01:22:18 +03:00
Commit Graph

15 Commits

Author SHA1 Message Date
Paul Eggert
4bbfd28498 utimens, utimensat: work around Solaris UTIME_OMIT bug
Solaris 11.1 and Solaris 10 have the same UTIME_OMIT bug that
Linux kernel 2.6.32 does.  Work around it in the same way.
* doc/posix-functions/futimens.texi (futimens):
* doc/posix-functions/utimensat.texi (utimensat): Document the bug.
* lib/utimens.c (fdutimens, lutimens):
* lib/utimensat.c (rpl_utimensat): Work around the bug.
2013-04-30 22:33:14 -07:00
Bruno Haible
06b335ade6 Write "Mac OS X" instead of "MacOS X".
* README: Write "Mac OS X" instead of "MacOS X".
* build-aux/bootstrap: Likewise.
* build-aux/install-reloc: Likewise.
* lib/acl-internal.h: Likewise.
* lib/acl_entries.c: Likewise.
* lib/argp-ba.c: Likewise.
* lib/argp-pv.c: Likewise.
* lib/config.charset: Likewise.
* lib/copy-acl.c: Likewise.
* lib/csharpexec.c: Likewise.
* lib/euidaccess.c: Likewise.
* lib/fbufmode.c: Likewise.
* lib/fflush.c: Likewise.
* lib/file-has-acl.c: Likewise.
* lib/filemode.h: Likewise.
* lib/fpurge.c: Likewise.
* lib/freadable.c: Likewise.
* lib/freadahead.c: Likewise.
* lib/freading.c: Likewise.
* lib/freadptr.c: Likewise.
* lib/freadseek.c: Likewise.
* lib/fseeko.c: Likewise.
* lib/fseterr.c: Likewise.
* lib/fsusage.c: Likewise.
* lib/fwritable.c: Likewise.
* lib/fwriting.c: Likewise.
* lib/get-rusage-as.c: Likewise.
* lib/get-rusage-data.c: Likewise.
* lib/getdomainname.c: Likewise.
* lib/idpriv-drop.c: Likewise.
* lib/idpriv-droptemp.c: Likewise.
* lib/localcharset.c: Likewise.
* lib/locale.in.h: Likewise.
* lib/localename.c: Likewise.
* lib/mbsrtowcs-state.c: Likewise.
* lib/nproc.c: Likewise.
* lib/passfd.c: Likewise.
* lib/posix_openpt.c: Likewise.
* lib/printf-parse.c: Likewise.
* lib/progreloc.c: Likewise.
* lib/safe-read.h: Likewise.
* lib/safe-write.h: Likewise.
* lib/sched.in.h: Likewise.
* lib/set-mode-acl.c: Likewise.
* lib/signal.in.h: Likewise.
* lib/stdint.in.h: Likewise.
* lib/stdio-impl.h: Likewise.
* lib/stdlib.in.h: Likewise.
* lib/strtod.c: Likewise.
* lib/sys_select.in.h: Likewise.
* lib/tcgetsid.c: Likewise.
* lib/unistd.in.h: Likewise.
* lib/unlockpt.c: Likewise.
* lib/vasnprintf.c: Likewise.
* lib/vma-iter.c: Likewise.
* lib/wcsrtombs-state.c: Likewise.
* m4/acl.m4: Likewise.
* m4/acosl.m4: Likewise.
* m4/asinl.m4: Likewise.
* m4/atanl.m4: Likewise.
* m4/c-stack.m4: Likewise.
* m4/cosl.m4: Likewise.
* m4/expl.m4: Likewise.
* m4/extensions.m4: Likewise.
* m4/fdatasync.m4: Likewise.
* m4/fmal.m4: Likewise.
* m4/frexp.m4: Likewise.
* m4/frexpf.m4: Likewise.
* m4/frexpl.m4: Likewise.
* m4/fsusage.m4: Likewise.
* m4/getdomainname.m4: Likewise.
* m4/getloadavg.m4: Likewise.
* m4/getopt.m4: Likewise.
* m4/gettext.m4: Likewise.
* m4/gnulib-common.m4: Likewise.
* m4/intdiv0.m4: Likewise.
* m4/intlmacosx.m4: Likewise.
* m4/largefile.m4: Likewise.
* m4/ldexpl.m4: Likewise.
* m4/link-follow.m4: Likewise.
* m4/locale-ar.m4: Likewise.
* m4/locale-fr.m4: Likewise.
* m4/locale-ja.m4: Likewise.
* m4/locale-tr.m4: Likewise.
* m4/locale-zh.m4: Likewise.
* m4/locale_h.m4: Likewise.
* m4/lock.m4: Likewise.
* m4/logl.m4: Likewise.
* m4/mathfunc.m4: Likewise.
* m4/minus-zero.m4: Likewise.
* m4/mktime.m4: Likewise.
* m4/mmap-anon.m4: Likewise.
* m4/multiarch.m4: Likewise.
* m4/nanosleep.m4: Likewise.
* m4/nocrash.m4: Likewise.
* m4/poll.m4: Likewise.
* m4/printf-frexpl.m4: Likewise.
* m4/printf.m4: Likewise.
* m4/signbit.m4: Likewise.
* m4/sinl.m4: Likewise.
* m4/sqrtl.m4: Likewise.
* m4/strerror_r.m4: Likewise.
* m4/tanl.m4: Likewise.
* m4/threadlib.m4: Likewise.
* m4/ttyname_r.m4: Likewise.
* m4/unlink.m4: Likewise.
* m4/visibility.m4: Likewise.
* m4/wcwidth.m4: Likewise.
* tests/minus-zero.h: Likewise.
* tests/test-alloca-opt.c: Likewise.
* tests/test-copy-acl.sh: Likewise.
* tests/test-copy-file.sh: Likewise.
* tests/test-fdatasync.c: Likewise.
* tests/test-file-has-acl.sh: Likewise.
* tests/test-flock.c: Likewise.
* tests/test-fsync.c: Likewise.
* tests/test-localename.c: Likewise.
* tests/test-malloca.c: Likewise.
* tests/test-nonblocking-pipe.h: Likewise.
* tests/test-nonblocking-socket.h: Likewise.
* tests/test-openpty.c: Likewise.
* tests/test-posix_openpt.c: Likewise.
* tests/test-ptsname.c: Likewise.
* tests/test-ptsname_r.c: Likewise.
* tests/test-sameacls.c: Likewise.
* tests/test-select.h: Likewise.
* tests/test-set-mode-acl.sh: Likewise.
* tests/test-snprintf-posix.h: Likewise.
* tests/test-sprintf-posix.h: Likewise.
* tests/test-strtod.c: Likewise.
* tests/test-time.c: Likewise.
* tests/test-vasnprintf-posix.c: Likewise.
* tests/test-vasprintf-posix.c: Likewise.
* doc/acl-resources.txt: Likewise.
* doc/**/*.texi: Likewise.
Reported by Max Horn <max@quendi.de>.
2012-06-22 13:28:15 +02:00
Bruno Haible
4e39aa4288 doc: Update regarding MSVC 9.
* doc/gnulib-intro.texi (Target Platforms): Classify MSVC as "rarely
tested".
* doc/posix-functions/*.texi: Update with info about MSVC 9.
* doc/posix-headers/*.texi: Likewise.
* doc/pastposix-functions/*.texi: Likewise.
* doc/glibc-functions/*.texi: Likewise.
* doc/glibc-headers/*.texi: Likewise.
2011-09-11 21:56:17 +02:00
Bruno Haible
ca2c85799a Documentation about Minix.
* doc/posix-headers/*.texi: Add info about Minix 3.1.8.
* doc/glibc-headers/*.texi: Likewise.
* doc/posix-functions/*.texi: Likewise.
* doc/glibc-functions/*.texi: Likewise.
2011-07-31 14:50:18 +02:00
Bruno Haible
6ef93da4ca Update for NetBSD 5.0.
* m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Don't guess yes on
NetBSD; the test fails on NetBSD 5.0.
* doc/{glibc,posix,pastposix}-{headers,functions}/*.texi: Update info
about NetBSD.
2010-11-21 21:31:19 +01:00
Bruno Haible
4ef8b64903 Update for MacOS X 10.5.
* m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Don't guess yes on
MacOS X; the test fails on MacOS X 10.5.8.
* doc/{glibc,posix,pastposix}-{headers,functions}/*.texi: Update info
about MacOS X.
2010-11-21 18:43:19 +01:00
Jim Meyering
fe7e2e21b5 fix a documentation typo
* doc/posix-functions/futimens.texi (futimens): Fix typo: s/itme/item/
2010-10-11 22:29:19 +02:00
Eric Blake
9dc2cd782c futimens: work around Solaris 11 bug
Revert "test-futimens: avoid unwarranted test failure on Solaris 5.11"
This reverts commit 0afab138f4.

* m4/futimens.m4 (gl_FUNC_FUTIMENS): Detect the bug.
* tests/test-futimens.h (test_futimens): Enhance, rather than
weaken test.
* doc/posix-functions/futimens.texi (futimens): Document the bug.

Signed-off-by: Eric Blake <eblake@redhat.com>
2010-10-11 14:19:50 -06:00
Karl Berry
80fc442c21 avoid some overlong lines from posix urls, etc. 2010-08-13 11:50:58 -07:00
Eric Blake
9963a98120 utimens: check for ctime update
futimens/utimensat on Linux fails to bump ctime if mtime is
UTIME_OMIT and atime is specified.

* tests/test-utimens-common.h (check_ctime): Define.
* tests/test-utimens.h (test_utimens): Expose the Linux bug.
* tests/test-futimens.h (test_futimens): Likewise.
* tests/test-lutimens.h (test_lutimens): Likewise.
* doc/posix-functions/futimens.texi (futimens): Document the bug.
* doc/posix-functions/utimensat.texi (utimensat): Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-12-19 16:56:38 -07:00
Eric Blake
8c871c07bc utimensat: work around Solaris 9 bug
utimes("file/",times) mistakenly succeeds.  This commit doesn't fix
utimes, but does make utimensat be careful before calling utimes.
The test is now enhanced to test trailing slashes and directories.

Meanwhile, cygwin 1.5 stat() on a directory changes atime (it does
a readdir under the hood to populate st_nlink), so only mtime of
a directory is reliable enough for testing.  Cygwin 1.7 no longer
has this problem, because it no longer wastes time on st_nlink.

* lib/utimens.c (fdutimens, lutimens): Force a stat if platform
has trailing slash bugs.
* tests/test-lutimens.h (test_lutimens): Enhance test.
* tests/test-utimens.h (test_utimens): Likewise.
* doc/posix-functions/utime.texi (utime): Document the bug.
* doc/posix-functions/utimes.texi (utimes): Likewise.
* doc/posix-functions/utimensat.texi (utimensat): Likewise.
* doc/glibc-functions/futimesat.texi (futimesat): Likewise.
* doc/glibc-functions/lutimes.texi (lutimes): Mention utimens.
* doc/posix-functions/futimens.texi (futimens): Mention
limitation.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-10-20 21:21:52 -06:00
Eric Blake
959d9cb463 futimens: new module
Provides futimens where it is missing, and rpl_futimens to work
around bugs in older Linux kernels.

* modules/futimens: New file.
* lib/futimens.c (futimens): Likewise.
* m4/futimens.m4 (gl_FUNC_FUTIMENS): Likewise.
* lib/utimens.c (futimens): Avoid recursion into rpl_futimens, so
we can work around Linux bugs.
* m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Add witnesses.
* modules/sys_stat (Makefile.am): Substitute them.
* lib/sys_stat.in.h (futimens): Declare it.
* MODULES.html.sh (systems lacking POSIX:2008): Mention module.
* doc/posix-functions/futimens.texi (futimens): Likewise.
* modules/futimens-tests: New test.
* tests/test-futimens.c: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-10-10 08:52:11 -06:00
Eric Blake
75de3afee5 doc: mention timestamp portability issues
* doc/glibc-functions/lutimes.texi (lutimes): Refer to utimensat
instead.
* doc/posix-functions/utime.texi (utime): Likewise.
* doc/posix-functions/utimes.texi (utimes): Likewise.
* doc/glibc-functions/futimes.texi (futimes): Refer to futimens
instead.
* doc/posix-functions/futimens.texi (futimens): Mention utimens
module.
* doc/posix-functions/utimensat.texi (utimensat): Likewise.
Mention weakness with symlink timestamps.
* doc/glibc-functions/futimesat.texi (futimesat): New file; refer
to utimensat/futimens instead.
* doc/gnulib.texi (Glibc sys/time.h): Include new file.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-10-10 08:25:15 -06:00
Eric Blake
0460b26278 Update doc for cygwin 1.7.
* doc/posix-functions/faccessat.texi: Cygwin 1.7 added several new
functions.
* doc/posix-functions/fchmodat.texi: Likewise.
* doc/posix-functions/fchownat.texi: Likewise.
* doc/posix-functions/fdopendir.texi: Likewise.
* doc/posix-functions/fmemopen.texi: Likewise.
* doc/posix-functions/freeaddrinfo.texi: Likewise.
* doc/posix-functions/fstatat.texi: Likewise.
* doc/posix-functions/futimens.texi: Likewise.
* doc/posix-functions/gai_strerror.texi: Likewise.
* doc/posix-functions/getaddrinfo.texi: Likewise.
* doc/posix-functions/getnameinfo.texi: Likewise.
* doc/posix-functions/if_freenameindex.texi: Likewise.
* doc/posix-functions/if_indextoname.texi: Likewise.
* doc/posix-functions/if_nameindex.texi: Likewise.
* doc/posix-functions/if_nametoindex.texi: Likewise.
* doc/posix-functions/insque	.texi: Likewise.
* doc/posix-functions/linkat.texi: Likewise.
* doc/posix-functions/llrint.texi: Likewise.
* doc/posix-functions/llrintf.texi: Likewise.
* doc/posix-functions/llrintl.texi: Likewise.
* doc/posix-functions/lockf.texi: Likewise.
* doc/posix-functions/lrintl.texi: Likewise.
* doc/posix-functions/mkdirat.texi: Likewise.
* doc/posix-functions/mkfifoat.texi: Likewise.
* doc/posix-functions/mknodat.texi: Likewise.
* doc/posix-functions/mq_close.texi: Likewise.
* doc/posix-functions/mq_getattr.texi: Likewise.
* doc/posix-functions/mq_notify.texi: Likewise.
* doc/posix-functions/mq_open.texi: Likewise.
* doc/posix-functions/mq_receive.texi: Likewise.
* doc/posix-functions/mq_send.texi: Likewise.
* doc/posix-functions/mq_setattr.texi: Likewise.
* doc/posix-functions/mq_timedreceive.texi: Likewise.
* doc/posix-functions/mq_timedsend.texi: Likewise.
* doc/posix-functions/mq_unlink.texi: Likewise.
* doc/posix-functions/open_memstream.texi: Likewise.
* doc/posix-functions/openat.texi: Likewise.
* doc/posix-functions/posix_fadvise.texi: Likewise.
* doc/posix-functions/posix_fallocate.texi: Likewise.
* doc/posix-functions/posix_madvise.texi: Likewise.
* doc/posix-functions/posix_memalign.texi: Likewise.
* doc/posix-functions/posix_openpt.texi: Likewise.
* doc/posix-functions/readlinkat.texi: Likewise.
* doc/posix-functions/remque.texi: Likewise.
* doc/posix-functions/renameat.texi: Likewise.
* doc/posix-functions/rintl.texi: Likewise.
* doc/posix-functions/sem_unlink.texi: Likewise.
* doc/posix-functions/shm_open.texi: Likewise.
* doc/posix-functions/shm_unlink.texi: Likewise.
* doc/posix-functions/signgam.texi: Likewise.
* doc/posix-functions/sigset.texi: Likewise.
* doc/posix-functions/stpcpy.texi: Likewise.
* doc/posix-functions/stpncpy.texi: Likewise.
* doc/posix-functions/strerror.texi: Likewise.
* doc/posix-functions/strtod.texi: Likewise.
* doc/posix-functions/symlinkat.texi: Likewise.
* doc/posix-functions/unlinkat.texi: Likewise.
* doc/posix-functions/utimensat.texi: Likewise.
* doc/glibc-functions/bindresvport.texi: Likewise.
* doc/glibc-functions/dn_expand.texi: Likewise.
* doc/glibc-functions/exp10.texi: Likewise.
* doc/glibc-functions/exp10f.texi: Likewise.
* doc/glibc-functions/fgetxattr.texi: Likewise.
* doc/glibc-functions/flistxattr.texi: Likewise.
* doc/glibc-functions/fopencookie.texi: Likewise.
* doc/glibc-functions/freeifaddrs.texi: Likewise.
* doc/glibc-functions/fremovexattr.texi: Likewise.
* doc/glibc-functions/fsetxattr.texi: Likewise.
* doc/glibc-functions/getifaddrs.texi: Likewise.
* doc/glibc-functions/getxattr.texi: Likewise.
* doc/glibc-functions/lgetxattr.texi: Likewise.
* doc/glibc-functions/listxattr.texi: Likewise.
* doc/glibc-functions/llistxattr.texi: Likewise.
* doc/glibc-functions/lremovexattr.texi: Likewise.
* doc/glibc-functions/lsetxattr.texi: Likewise.
* doc/glibc-functions/pow10.texi: Likewise.
* doc/glibc-functions/pow10f.texi: Likewise.
* doc/glibc-functions/rcmd_af.texi: Likewise.
* doc/glibc-functions/removexattr.texi: Likewise.
* doc/glibc-functions/res_init.texi: Likewise.
* doc/glibc-functions/res_mkquery.texi: Likewise.
* doc/glibc-functions/res_query.texi: Likewise.
* doc/glibc-functions/res_querydomain.texi: Likewise.
* doc/glibc-functions/res_send.texi: Likewise.
* doc/glibc-functions/rresvport_af.texi: Likewise.
* doc/glibc-functions/setxattr.texi: Likewise.
* doc/glibc-functions/strcasestr.texi: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-12-15 07:05:41 -07:00
Bruno Haible
17f87c3231 Document functions that have been added to POSIX:2008. 2008-12-14 19:47:43 +01:00