diff options
author | Tavian Barnes <tavianator@tavianator.com> | 2024-04-19 14:50:48 -0400 |
---|---|---|
committer | Tavian Barnes <tavianator@tavianator.com> | 2024-04-19 15:50:45 -0400 |
commit | 48d91c62cd27c15fe0e928abf6d023d17e9c41f7 (patch) | |
tree | a6dd2dfb7acddb2e45bdbdddf4fced3ae0155e15 /src/bfstd.h | |
parent | 111cc3af4b6132fda47d18683a04985ca7c571c2 (diff) | |
download | bfs-48d91c62cd27c15fe0e928abf6d023d17e9c41f7.tar.xz |
config: Check for struct stat::st_{a,c,m,birth}{tim,timespec}
Diffstat (limited to 'src/bfstd.h')
-rw-r--r-- | src/bfstd.h | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/src/bfstd.h b/src/bfstd.h index 42f5d5b..f91e380 100644 --- a/src/bfstd.h +++ b/src/bfstd.h @@ -283,11 +283,21 @@ int xminor(dev_t dev); // #include <sys/stat.h> -#if __APPLE__ -# define st_atim st_atimespec -# define st_ctim st_ctimespec -# define st_mtim st_mtimespec -# define st_birthtim st_birthtimespec +/** + * Get the access/change/modification time from a struct stat. + */ +#if BFS_HAS_ST_ACMTIM +# define ST_ATIM(sb) (sb).st_atim +# define ST_CTIM(sb) (sb).st_ctim +# define ST_MTIM(sb) (sb).st_mtim +#elif BFS_HAS_ST_ACMTIMESPEC +# define ST_ATIM(sb) (sb).st_atimespec +# define ST_CTIM(sb) (sb).st_ctimespec +# define ST_MTIM(sb) (sb).st_mtimespec +#else +# define ST_ATIM(sb) ((struct timespec) { .tv_sec = (sb).st_atime }) +# define ST_CTIM(sb) ((struct timespec) { .tv_sec = (sb).st_ctime }) +# define ST_MTIM(sb) ((struct timespec) { .tv_sec = (sb).st_mtime }) #endif // #include <sys/wait.h> |