Hi, It's clear that different gnulib users need different levels of native Windows support. Some will want to avoid 'struct stat', some will want to use the ino_t values in struct stat.
Here's my current plan: Introduce a set of orthogonal, transversal modules. ("transversal" in the sense that such a module does not provide a function, but rather provides guarantees for other modules.) - windows-year2038 : define time_t as 64-bit (might involve renaming module time to time-h) - windows-symlinks : add symlink support to stat, lstat, readlink etc. - windows-stat-timespec : add 100ns resolution to file times - windows-stat-inodes : redefine dev_t, ino_t - windows-uid : redefine uid_t [1] - windows-gid : redefine gid_t [1] - windows-utf8-filenames : implies override of all file-related functions - largefile : support for files > 2 GB (already partially implemented in 2012) An override of 'struct stat' will be necessary for windows-year2038, windows-stat-timespec, windows-stat-inodes, windows-uid, windows-gid, largefile. What do you think about it? Which of these modules would you like to see implemented first? Bruno [1] as proposed by Bastien Roucariès https://lists.gnu.org/archive/html/bug-gnulib/2011-09/msg00130.html