fcntl: port portions of fcntl to mingw
[gnulib.git] / ChangeLog
index efa426c..7117e5a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,53 @@
+2009-12-16  Eric Blake  <ebb9@byu.net>
+
+       fcntl: port portions of fcntl to mingw
+       * m4/fcntl.m4 (gl_FUNC_FCNTL): Also build fcntl.c on mingw.
+       * lib/fcntl.c (fcntl) <F_DUPFD, F_DUPFD_CLOEXEC, F_GETFD>: Provide
+       replacement for mingw.
+       * modules/fcntl (Description): Update.
+       (Depends-on): Add dup2.
+       * m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Add witness.
+       * modules/fcntl-h (Makefile.am): Substitute it.
+       * lib/fcntl.in.h (fcntl): Update declaration.
+       (F_DUPFD, F_GETFD): New macros, when needed.
+       * doc/posix-headers/fcntl.texi (fcntl.h): Update documentation.
+       * doc/posix-functions/fcntl.texi (fcntl): Likewise.
+       * tests/test-fcntl.c (check_flags, main): Enhance test for items
+       we now guarantee.
+
+       fcntl: work around cygwin bug in F_DUPFD
+       * m4/fcntl.m4 (gl_REPLACE_FCNTL): New macro.
+       (gl_FUNC_FCNTL): Use it.  Test for F_DUPFD bug.
+       * lib/fcntl.c (rpl_fcntl) <F_DUPFD>: Work around it.
+       <F_DUPFD_CLOEXEC>: Reduce calls to _gl_register_dup.
+       * doc/posix-functions/fcntl.texi (fcntl): Document it.
+
+       fcntl: support F_DUPFD_CLOEXEC on systems with fcntl
+       * modules/fcntl (Files): List new files.
+       (configure.ac): Run a test.
+       * m4/fcntl.m4 (gl_FUNC_FCNTL): New file.
+       * lib/fcntl.c (rpl_fcntl): Likewise.
+       * m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Add witness defaults.
+       (gl_FCNTL_H): Always replace fcntl.h.
+       * modules/fcntl-h (Makefile.am): Substitute witnesses.
+       * lib/fcntl.in.h (fcntl): Declare replacement.
+       (F_DUPFD_CLOEXEC, GNULIB_defined_F_DUPFD_CLOEXEC): New macro when
+       needed, plus a witness.
+       * doc/posix-functions/fcntl.texi (fcntl): Document this.
+       * doc/posix-headers/fcntl.texi (fcntl.h): Likewise.
+       * tests/test-fcntl.c: New file.
+       * modules/fcntl-tests: Likewise.
+
+       binary-io: avoid potential compilation warning
+       * lib/binary-io.h [__DJGPP__]: Avoid null preprocessor
+       directives.
+
+       fflush: avoid compilation error on NetBSD
+       * lib/fflush.c (update_fpos_cache): Use a union to safely convert
+       between off_t and fpos_t, since the latter is sometimes a struct.
+       * lib/fseeko.c (rpl_fseeko): Likewise.
+       Reported by Alexander Nasonov <alnsn@yandex.ru>.
+
 2009-12-15  Eric Blake  <ebb9@byu.net>
 
        fcntl-h, stdio, sys_ioctl: fix declarations