build: avoid compile failure on linux kernels older than 2.6.19

* configure.ac: Check for <linux/magic.h>.
* src/util/storage_file.c: Include <linux/magic.h> only if present.
Linux kernels prior to 2.6.19 lacked it.
[__linux__] (NFS_SUPER_MAGIC): Define if not already defined.
This commit is contained in:
Jim Meyering 2010-05-17 16:17:08 +02:00
parent 258d59cff9
commit 0641f0f72c
2 changed files with 7 additions and 2 deletions

View File

@ -108,7 +108,7 @@ LIBS=$old_libs
dnl Availability of various common headers (non-fatal if missing).
AC_CHECK_HEADERS([pwd.h paths.h regex.h sys/syslimits.h \
termios.h sys/poll.h syslog.h mntent.h net/ethernet.h])
termios.h sys/poll.h syslog.h mntent.h net/ethernet.h linux/magic.h])
dnl Where are the XDR functions?
dnl If portablexdr is installed, prefer that.

View File

@ -27,7 +27,9 @@
#include <unistd.h>
#include <fcntl.h>
#ifdef __linux__
# include <linux/magic.h>
# if HAVE_LINUX_MAGIC_H
# include <linux/magic.h>
# endif
# include <sys/statfs.h>
#endif
#include "dirname.h"
@ -416,6 +418,9 @@ virStorageFileGetMetadata(const char *path,
#ifdef __linux__
# ifndef NFS_SUPER_MAGIC
# define NFS_SUPER_MAGIC 0x6969
# endif
# ifndef OCFS2_SUPER_MAGIC
# define OCFS2_SUPER_MAGIC 0x7461636f
# endif