mc/m4.include/windows-stat-inodes.m4
Andrew Borodin fcf5ba5be2 Ticket #3857: avoid glibc 2.25 warnings about major(), minor(), and makedev().
See gnulib a512e041120e9012e69afa2f5c3adc196ec4999a:

glibc 2.25 is deprecating the namespace pollution of <sys/types.h>
injecting major(), minor(), and makedev() into the compilation
environment, with a warning that insists that users include
<sys/sysmacros.h> instead.  However, because the expansion of
AC_HEADER_MAJOR didn't bother checking sys/sysmacros.h until after
probing whether sys/types.h pollutes the namespace, it was not defining
MAJOR_IN_SYSMACROS, with the result that code compiled with -Werror
chokes on the deprecation warnings because it was not including
sysmacros.h.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2018-01-20 10:57:42 +03:00

20 lines
784 B
Plaintext

# windows-stat-inodes.m4 serial 1
dnl Copyright (C) 2017-2018 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl Enable inode identification in 'struct stat' on native Windows platforms.
dnl Set WINDOWS_STAT_INODES to
dnl - 0 -> keep the default (dev_t = 32-bit, ino_t = 16-bit),
dnl - 1 -> override types normally (dev_t = 32-bit, ino_t = 64-bit),
dnl - 2 -> override types in an extended way (dev_t = 64-bit, ino_t = 128-bit).
AC_DEFUN([gl_WINDOWS_STAT_INODES],
[
AC_REQUIRE([AC_CANONICAL_HOST])
case "$host_os" in
mingw*) WINDOWS_STAT_INODES=1 ;;
*) WINDOWS_STAT_INODES=0 ;;
esac
])