summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--configure.ac11
-rw-r--r--sys-utils/fstrim.c5
2 files changed, 14 insertions, 2 deletions
diff --git a/configure.ac b/configure.ac
index f828ae59b..0dbabf5d1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -280,6 +280,16 @@ AC_CHECK_HEADERS([ \
utmpx.h \
])
+# There is a collision in old kernel-headers. The both files mount.h and fs.h
+# define MS_* macros. Fixed by kernel commit e462ec50cb5fad19f6003a3d8087f4a0945dd2b1.
+#
+AC_CHECK_HEADERS([linux/fs.h ], [], [],
+ [#ifdef HAVE_SYS_MOUNT_H
+ # include <linux/fs.h>
+ # include <sys/mount.h>
+ #endif
+])
+
AC_CHECK_HEADERS([linux/gsmmux.h ], [], [],
[#ifdef LINUX_GSMMUX_H
# include <linux/gsmmux.h>
@@ -306,7 +316,6 @@ AC_CHECK_HEADERS([langinfo.h],
[AM_CONDITIONAL([HAVE_LANGINFO], [true])],
[AM_CONDITIONAL([HAVE_LANGINFO], [false])])
-
AC_MSG_CHECKING([whether langinfo.h defines ALTMON_x constants])
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
#include <langinfo.h>
diff --git a/sys-utils/fstrim.c b/sys-utils/fstrim.c
index 98708d533..ca8cf256d 100644
--- a/sys-utils/fstrim.c
+++ b/sys-utils/fstrim.c
@@ -35,7 +35,10 @@
#include <sys/ioctl.h>
#include <sys/stat.h>
-#include <linux/fs.h>
+
+#ifdef HAVE_SYS_FS_H
+# include <linux/fs.h>
+#endif
#include "nls.h"
#include "strutils.h"