[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: plans for file related modules on Windows
From: |
Ben Pfaff |
Subject: |
Re: plans for file related modules on Windows |
Date: |
Tue, 9 May 2017 16:46:41 -0400 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
On Tue, May 09, 2017 at 10:34:04PM +0200, Bruno Haible wrote:
> 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?
I did not realize that Windows could even support a proper
implementation of the struct stat st_dev and st_ino. I'd find this
useful in multiple programs, although in some of them I might really
just use the code you write as an educational resource.