]> wimlib.net Git - wimlib/blobdiff - configure.ac
dentry.{c,h}: Cleanup and fixes
[wimlib] / configure.ac
index b593c43c46e8ae740cc6059f15fdd7bbcd7fb83a..6aa1fb950dc867c65871dc61c12ab13c4ca9d871 100644 (file)
@@ -1,4 +1,4 @@
-AC_INIT([wimlib], [1.4.0], [ebiggers3@gmail.com])
+AC_INIT([wimlib], [1.4.1], [ebiggers3@gmail.com])
 AC_CONFIG_SRCDIR([src/wim.c])
 AC_CONFIG_MACRO_DIR([m4])
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_SRCDIR([src/wim.c])
 AC_CONFIG_MACRO_DIR([m4])
 AC_CONFIG_AUX_DIR([build-aux])
@@ -46,9 +46,26 @@ AM_PROG_CC_C_O
 AC_CANONICAL_HOST
 
 AC_CHECK_FUNCS([utimensat lutimes utime flock])
 AC_CANONICAL_HOST
 
 AC_CHECK_FUNCS([utimensat lutimes utime flock])
-AC_CHECK_HEADERS([endian.h byteswap.h sys/byteorder.h sys/endian.h \
-                 sys/param.h machine/endian.h alloca.h stdlib.h stdarg.h \
-                 errno.h attr/xattr.h utime.h sys/file.h glob.h])
+
+# Note: some of the following header checks are only to define the appropriate
+# HAVE_*_H macro so that the NTFS-3g headers don't get confused and try to skip
+# including certain headers.
+AC_CHECK_HEADERS([alloca.h             \
+                 attr/xattr.h          \
+                 byteswap.h            \
+                 endian.h              \
+                 errno.h               \
+                 glob.h                \
+                 machine/endian.h      \
+                 stdarg.h              \
+                 stdlib.h              \
+                 sys/byteorder.h       \
+                 sys/endian.h          \
+                 sys/file.h            \
+                 sys/param.h           \
+                 sys/times.h           \
+                 time.h                \
+                 utime.h])
 
 AC_CHECK_MEMBER([struct stat.st_mtim],
                [AC_DEFINE([HAVE_STAT_NANOSECOND_PRECISION], [1],
 
 AC_CHECK_MEMBER([struct stat.st_mtim],
                [AC_DEFINE([HAVE_STAT_NANOSECOND_PRECISION], [1],
@@ -185,6 +202,7 @@ WINDOWS_CFLAGS=""
 WINDOWS_CPPFLAGS=""
 WINDOWS_LDFLAGS=""
 WINDOWS_LDADD=""
 WINDOWS_CPPFLAGS=""
 WINDOWS_LDFLAGS=""
 WINDOWS_LDADD=""
+ENABLE_XATTR_DEFAULT="autodetect"
 
 case "$host" in
        *-*-mingw*)
 
 case "$host" in
        *-*-mingw*)
@@ -197,6 +215,7 @@ case "$host" in
                WINDOWS_CPPFLAGS="-D_POSIX -DUNICODE -D_UNICODE"
                WINDOWS_LDFLAGS="-no-undefined"
                WINDOWS_LDADD="-lshlwapi"
                WINDOWS_CPPFLAGS="-D_POSIX -DUNICODE -D_UNICODE"
                WINDOWS_LDFLAGS="-no-undefined"
                WINDOWS_LDADD="-lshlwapi"
+               ENABLE_XATTR_DEFAULT="no"
                ;;
        *-*-cygwin*)
                # Cygwin (WARNING: not well supported)
                ;;
        *-*-cygwin*)
                # Cygwin (WARNING: not well supported)
@@ -311,15 +330,17 @@ AC_ARG_ENABLE([xattr],
        [AS_HELP_STRING([--enable-xattr], [Enable the xattr interface to access WIM
                        alternate data streams (default: autodetect)])],
        [ENABLE_XATTR=$enableval],
        [AS_HELP_STRING([--enable-xattr], [Enable the xattr interface to access WIM
                        alternate data streams (default: autodetect)])],
        [ENABLE_XATTR=$enableval],
-       [AC_CHECK_FUNC([setxattr],
-               [AC_CHECK_HEADER([attr/xattr.h],
-                       [ENABLE_XATTR=yes],
-                       [AC_MSG_WARN([Cannot find the "attr/xattr.h" header.  You will not be
+       [if test "x$ENABLE_XATTR_DEFAULT" = "xautodetect"; then
+               AC_CHECK_FUNC([setxattr],
+                       [AC_CHECK_HEADER([attr/xattr.h],
+                               [ENABLE_XATTR=yes],
+                               [AC_MSG_WARN([Cannot find the "attr/xattr.h" header.  You will not be
+                                able to use the xattr interface to access WIM alternate data
+                                streams.])])],
+                       [AC_MSG_WARN([Cannot find the setxattr() function.  You will not be
                         able to use the xattr interface to access WIM alternate data
                         able to use the xattr interface to access WIM alternate data
-                        streams.])])],
-               [AC_MSG_WARN([Cannot find the setxattr() function.  You will not be
-                able to use the xattr interface to access WIM alternate data
-                streams.])])])
+                        streams.])])
+       fi])
 
 if test "x$ENABLE_XATTR" = "xyes"; then
        AC_DEFINE([ENABLE_XATTR], [1], [Define to 1 if using the xattr
 
 if test "x$ENABLE_XATTR" = "xyes"; then
        AC_DEFINE([ENABLE_XATTR], [1], [Define to 1 if using the xattr