xref: /freebsd/sys/contrib/openzfs/config/user-statx.m4 (revision df58e8b1506f241670be86a560fb6e8432043aee)
1dnl #
2dnl # Check for statx() function and STATX_MNT_ID availability
3dnl #
4AC_DEFUN([ZFS_AC_CONFIG_USER_STATX], [
5	AC_CHECK_HEADERS([linux/stat.h],
6		[have_stat_headers=yes],
7		[have_stat_headers=no])
8
9	AS_IF([test "x$have_stat_headers" = "xyes"], [
10		AC_CHECK_FUNC([statx], [
11			AC_DEFINE([HAVE_STATX], [1], [statx() is available])
12
13			dnl Check for STATX_MNT_ID availability
14			AC_MSG_CHECKING([for STATX_MNT_ID])
15			AC_COMPILE_IFELSE([
16				AC_LANG_PROGRAM([[
17					#include <linux/stat.h>
18				]], [[
19					struct statx stx;
20					int mask = STATX_MNT_ID;
21					(void)mask;
22					(void)stx.stx_mnt_id;
23				]])
24			], [
25				AC_MSG_RESULT([yes])
26				AC_DEFINE([HAVE_STATX_MNT_ID], [1], [STATX_MNT_ID is available])
27			], [
28				AC_MSG_RESULT([no])
29			])
30		])
31	], [
32		AC_MSG_WARN([linux/stat.h not found; skipping statx support])
33	])
34])  dnl end AC_DEFUN
35