Whamcloud - gitweb
e2scan: a tool for fast namespace/inode scanning
[tools/e2fsprogs.git] / configure.in
index 6ef8533..05cfbdf 100644 (file)
@@ -1,6 +1,8 @@
 AC_INIT(version.h)
 AC_INIT(version.h)
-AC_PREREQ(2.50)
+AC_PREREQ(2.54)
 AC_CONFIG_AUX_DIR(config)
 AC_CONFIG_AUX_DIR(config)
+AC_CONFIG_HEADERS([lib/config.h])
+AH_BOTTOM([#include <dirpaths.h>])
 MCONFIG=./MCONFIG
 AC_SUBST_FILE(MCONFIG)
 BINARY_TYPE=bin
 MCONFIG=./MCONFIG
 AC_SUBST_FILE(MCONFIG)
 BINARY_TYPE=bin
@@ -36,18 +38,17 @@ Sep)        MONTH_NUM=09; E2FSPROGS_MONTH="September" ;;
 Oct)   MONTH_NUM=10; E2FSPROGS_MONTH="October" ;;
 Nov)   MONTH_NUM=11; E2FSPROGS_MONTH="November" ;;
 Dec)   MONTH_NUM=12; E2FSPROGS_MONTH="December" ;;
 Oct)   MONTH_NUM=10; E2FSPROGS_MONTH="October" ;;
 Nov)   MONTH_NUM=11; E2FSPROGS_MONTH="November" ;;
 Dec)   MONTH_NUM=12; E2FSPROGS_MONTH="December" ;;
-*)     echo "Unknown month $MONTH??" ;;
+*)     AC_MSG_WARN([Unknown month $MONTH??]) ;;
 esac
 
 base_ver=`echo $E2FSPROGS_VERSION | \
               sed -e 's/-WIP//' -e 's/pre-//' -e 's/-PLUS//'`
 esac
 
 base_ver=`echo $E2FSPROGS_VERSION | \
               sed -e 's/-WIP//' -e 's/pre-//' -e 's/-PLUS//'`
-pre_vers=`echo $base_ver 0.01 - p | dc`
 
 date_spec=${E2FSPROGS_YEAR}.${MONTH_NUM}.${E2FSPROGS_DAY}
 
 case $E2FSPROGS_VERSION in
 *-WIP|pre-*)
 
 date_spec=${E2FSPROGS_YEAR}.${MONTH_NUM}.${E2FSPROGS_DAY}
 
 case $E2FSPROGS_VERSION in
 *-WIP|pre-*)
-       E2FSPROGS_PKGVER="$pre_vers+${base_ver}_WIP_$date_spec"
+       E2FSPROGS_PKGVER="$base_ver~WIP-$E2FSPROGS_YEAR-$MONTH_NUM-$E2FSPROGS_DAY"
        ;;
 *)
        E2FSPROGS_PKGVER="$base_ver"
        ;;
 *)
        E2FSPROGS_PKGVER="$base_ver"
@@ -55,63 +56,57 @@ case $E2FSPROGS_VERSION in
 esac
 
 unset DATE MONTH YEAR base_ver pre_vers date_spec
 esac
 
 unset DATE MONTH YEAR base_ver pre_vers date_spec
-echo "Generating configuration file for e2fsprogs version $E2FSPROGS_VERSION"
-echo "Release date is ${E2FSPROGS_MONTH}, ${E2FSPROGS_YEAR}"
+AC_MSG_RESULT([Generating configuration file for e2fsprogs version $E2FSPROGS_VERSION])
+AC_MSG_RESULT([Release date is ${E2FSPROGS_MONTH}, ${E2FSPROGS_YEAR}])
 AC_SUBST(E2FSPROGS_YEAR)
 AC_SUBST(E2FSPROGS_MONTH)
 AC_SUBST(E2FSPROGS_DAY)
 AC_SUBST(E2FSPROGS_VERSION)
 AC_SUBST(E2FSPROGS_PKGVER)
 AC_SUBST(E2FSPROGS_YEAR)
 AC_SUBST(E2FSPROGS_MONTH)
 AC_SUBST(E2FSPROGS_DAY)
 AC_SUBST(E2FSPROGS_VERSION)
 AC_SUBST(E2FSPROGS_PKGVER)
-AC_CANONICAL_HOST
 dnl
 dnl Use diet libc
 dnl 
 dnl
 dnl Use diet libc
 dnl 
+WITH_DIET_LIBC=
 AC_ARG_WITH([diet-libc],
 [  --with-diet-libc        use diet libc],
 CC="diet cc -nostdinc"
 AC_ARG_WITH([diet-libc],
 [  --with-diet-libc        use diet libc],
 CC="diet cc -nostdinc"
+WITH_DIET_LIBC=yes
+if test -z "$LIBS"
+then
+       LIBS="-lcompat"
+else
+       LIBS="$LIBS -lcompat"
+fi
 AC_MSG_RESULT(CC=$CC))dnl
 dnl
 AC_MSG_RESULT(CC=$CC))dnl
 dnl
-dnl set $(CC) from --with-cc=value
-dnl
-AC_ARG_WITH([cc],
-[  --with-cc=COMPILER      select compiler to use],
-AC_MSG_RESULT(CC=$withval)
-CC=$withval,
-if test -z "$CC" ; then CC=cc; fi
-[AC_MSG_RESULT(CC defaults to $CC)])dnl
-export CC
-AC_SUBST([CC])
-AC_PROG_CC
-AC_PROG_CPP
+AC_CANONICAL_HOST
 dnl
 dnl
-dnl set $(LD) from --with-linker=value
+dnl Check to see if libdl exists for the sake of dlopen
 dnl
 dnl
-AC_ARG_WITH([linker],
-[  --with-linker=LINKER    select linker to use],
-AC_MSG_RESULT(LD=$withval)
-LD=$withval,
-if test -z "$LD" ; then LD=$CC; fi
-[AC_MSG_RESULT(LD defaults to $LD)])dnl
-export LD
-AC_SUBST([LD])
+DLOPEN_LIB=''
+AC_CHECK_LIB(dl, dlopen,
+[DLOPEN_LIB=-ldl
+AC_DEFINE(HAVE_DLOPEN, 1, [Define to 1 if dlopen/libdl exists])])
+AC_SUBST(DLOPEN_LIB)
 dnl
 dnl
-dnl set $(CCOPTS) from --with-ccopts=value
+AC_ARG_WITH([cc],
+AC_HELP_STRING([--with-cc],[no longer supported, use CC= instead]),
+AC_MSG_ERROR([--with-cc no longer supported; use CC= instead]))
 dnl
 AC_ARG_WITH([ccopts],
 dnl
 AC_ARG_WITH([ccopts],
-[  --with-ccopts=CCOPTS    select compiler command line options],
-AC_MSG_RESULT(CCOPTS is $withval)
-CFLAGS=$withval,
-)dnl
+AC_HELP_STRING([--with-ccopts],[no longer supported, use CFLAGS= instead]),
+AC_MSG_ERROR([--with-ccopts no longer supported; use CFLAGS= instead]))
 dnl
 dnl
-dnl On systems without linux header files, we add an extra include directory
-dnl that holds enough to fake it (hopefully).  Note that the $(top_srcdir) here
-dnl is quoted so that it gets expanded by make, not by configure.
+AC_ARG_WITH([ldopts],
+AC_HELP_STRING([--with-ldopts],[no longer supported, use LDFLAGS= instead]),
+AC_MSG_ERROR([--with-ldopts no longer supported; use LDFLAGS= instead]))
 dnl
 dnl
-AC_CHECK_HEADER(linux/fs.h, [linux_headers=yes], [linux_headers=no])
-if test "$linux_headers" != yes; then
-  LINUX_INCLUDE='-I$(top_builddir)/include'
+AC_PROG_CC
+if test "$GCC" = yes; then
+   RDYNAMIC="-rdynamic"
+   AC_SUBST(RDYNAMIC)
 fi
 fi
-AC_SUBST(LINUX_INCLUDE)
+AC_PROG_CPP
 dnl
 dnl Alpha computers use fast and imprecise floating point code that may
 dnl miss exceptions by default. Force sane options if we're using GCC.
 dnl
 dnl Alpha computers use fast and imprecise floating point code that may
 dnl miss exceptions by default. Force sane options if we're using GCC.
@@ -135,16 +130,7 @@ dnl parsing configuration opions, which may modify these
 dnl
 LIB_EXT=.a
 STATIC_LIB_EXT=.a
 dnl
 LIB_EXT=.a
 STATIC_LIB_EXT=.a
-PROFILE_LIB_EXT=.a
-dnl
-dnl set $(LDFLAGS) from --with-ldopts=value
-dnl
-AC_ARG_WITH([ldopts],
-[  --with-ldopts=LDOPTS    select linker command line options],
-AC_MSG_RESULT(LDFLAGS is $withval)
-LDFLAGS=$withval,
-LDFLAGS=)dnl
-AC_SUBST(LDFLAGS)
+PROFILED_LIB_EXT=.a
 dnl
 dnl Allow separate `root_prefix' to be specified
 dnl
 dnl
 dnl Allow separate `root_prefix' to be specified
 dnl
@@ -160,56 +146,155 @@ AC_ARG_ENABLE([maintainer-mode],
 if test "$enableval" = "no"
 then
        MAINTAINER_CMT=#
 if test "$enableval" = "no"
 then
        MAINTAINER_CMT=#
-       echo "Disabling maintainer mode"
+       AC_MSG_RESULT([Disabling maintainer mode])
 else
        MAINTAINER_CMT=
 else
        MAINTAINER_CMT=
-       echo "Enabling maintainer mode"
+       AC_MSG_RESULT([Enabling maintainer mode])
 fi
 ,
 MAINTAINER_CMT=#
 fi
 ,
 MAINTAINER_CMT=#
-echo "Disabling maintainer mode by default"
+AC_MSG_RESULT([Disabling maintainer mode by default])
 )
 AC_SUBST(MAINTAINER_CMT)
 dnl
 )
 AC_SUBST(MAINTAINER_CMT)
 dnl
+dnl handle --enable-symlink-install
+dnl
+AC_ARG_ENABLE([symlink-install],
+[  --enable-symlink-install use symlinks when installing instead of hard links],
+if test "$enableval" = "no"
+then
+       LINK_INSTALL_FLAGS=-f
+       AC_MSG_RESULT([Disabling symlinks for install])
+else
+       LINK_INSTALL_FLAGS=-sf
+       AC_MSG_RESULT([Enabling symlinks for install])
+fi
+,
+LINK_INSTALL_FLAGS=-f
+AC_MSG_RESULT([Disabling symlinks for install by default])
+)
+AC_SUBST(LINK_INSTALL_FLAGS)
+dnl
+dnl handle --enable-relative-symlinks
+dnl
+relative_symlink_defined=
+AC_ARG_ENABLE([relative-symlinks],
+[  --enable-relative-symlinks use relative symlinks when installing],
+if test "$enableval" = "no"
+then
+       SYMLINK_RELATIVE=
+       relative_symlink_defined=yes
+       AC_MSG_RESULT([Disabling relative symlinks for install])
+else
+       SYMLINK_RELATIVE=--relative
+       relative_symlink_defined=yes
+       AC_MSG_RESULT([Enabling relative symlinks for install])
+fi)
+AC_ARG_ENABLE([symlink-relative-symlinks],,
+if test "$enableval" = "no"
+then
+       SYMLINK_RELATIVE=yes
+       AC_MSG_RESULT([Disabling relative symlinks for install])
+else
+       SYMLINK_RELATIVE=--relative
+       AC_MSG_RESULT([Enabling relative symlinks for install])
+fi
+,
+if test -z "$relative_symlink_defined"
+then
+       SYMLINK_RELATIVE=
+AC_MSG_RESULT([Disabling relative symlinks for install by default])
+fi
+)
+AC_SUBST(SYMLINK_RELATIVE)
+dnl
+dnl handle --enable-symlink-build
+dnl
+AC_ARG_ENABLE([symlink-build],
+[  --enable-symlink-build  use symlinks while building instead of hard links],
+if test "$enableval" = "no"
+then
+       LINK_BUILD_FLAGS=
+       AC_MSG_RESULT([Disabling symlinks for build])
+else
+       LINK_BUILD_FLAGS=-s
+       AC_MSG_RESULT([Enabling symlinks for build])
+fi
+,
+LINK_BUILD_FLAGS=
+AC_MSG_RESULT([Disabling symlinks for build by default])
+)
+AC_SUBST(LINK_BUILD_FLAGS)
+dnl
+dnl handle --enable-verbose-makecmds
+dnl
+AC_ARG_ENABLE([verbose-makecmds],
+[  --enable-verbose-makecmds enable verbose make command output],
+if test "$enableval" = "no"
+then
+       AC_MSG_RESULT([Disabling verbose make commands])
+       E=@echo
+       ES=echo
+       Q=@
+else
+       AC_MSG_RESULT([Enabling verbose make commands])
+       E=@\\#
+       ES=\\#
+       Q= 
+fi
+,
+AC_MSG_RESULT([Disabling verbose make commands])
+E=@echo
+ES=echo
+Q=@
+)
+AC_SUBST(E)
+AC_SUBST(ES)
+AC_SUBST(Q)
+dnl
 dnl handle --enable-compression
 dnl
 AC_ARG_ENABLE([compression],
 [  --enable-compression          enable EXPERIMENTAL compression support],
 if test "$enableval" = "no"
 then
 dnl handle --enable-compression
 dnl
 AC_ARG_ENABLE([compression],
 [  --enable-compression          enable EXPERIMENTAL compression support],
 if test "$enableval" = "no"
 then
-       echo "Disabling compression support"
+       AC_MSG_RESULT([Disabling compression support])
 else
 else
-       AC_DEFINE(ENABLE_COMPRESSION)
-       echo "Enabling compression support"
-       echo "WARNING: Compression support is experimental"
+       AC_DEFINE(ENABLE_COMPRESSION, 1,
+               [Define to 1 if ext2 compression enabled])
+       AC_MSG_RESULT([Enabling compression support])
+       AC_MSG_WARN([Compression support is experimental])
 fi
 ,
 fi
 ,
-echo "Disabling compression support by default"
+AC_MSG_RESULT([Disabling compression support by default])
 )
 dnl
 dnl handle --enable-htree
 dnl
 )
 dnl
 dnl handle --enable-htree
 dnl
+AH_TEMPLATE([ENABLE_HTREE], [Define to 1 if ext3/4 htree support enabled])
 AC_ARG_ENABLE([htree],
 [  --enable-htree                enable EXPERIMENTAL htree directory support],
 if test "$enableval" = "no"
 then
        HTREE_CMT=#
 AC_ARG_ENABLE([htree],
 [  --enable-htree                enable EXPERIMENTAL htree directory support],
 if test "$enableval" = "no"
 then
        HTREE_CMT=#
-       echo "Disabling htree directory support"
+       AC_MSG_RESULT([Disabling htree directory support])
 else
        HTREE_CMT=
 else
        HTREE_CMT=
-       AC_DEFINE(ENABLE_HTREE)
-       echo "Enabling htree directory support"
+       AC_DEFINE(ENABLE_HTREE, 1)
+       AC_MSG_RESULT([Enabling htree directory support])
 fi
 ,
 HTREE_CMT=
 fi
 ,
 HTREE_CMT=
-AC_DEFINE(ENABLE_HTREE)
-echo "Enabling htree directory support by default"
+AC_DEFINE(ENABLE_HTREE, 1)
+AC_MSG_RESULT([Enabling htree directory support by default])
 )
 AC_SUBST(HTREE_CMT)
 dnl
 dnl This needs to be before all of the --enable-*-shlibs options
 dnl
 E2_PKG_CONFIG_STATIC=--static
 )
 AC_SUBST(HTREE_CMT)
 dnl
 dnl This needs to be before all of the --enable-*-shlibs options
 dnl
 E2_PKG_CONFIG_STATIC=--static
+LDFLAG_DYNAMIC=
+PRIVATE_LIBS_CMT=
 dnl
 dnl handle --enable-elf-shlibs
 dnl
 dnl
 dnl handle --enable-elf-shlibs
 dnl
@@ -219,7 +304,7 @@ if test "$enableval" = "no"
 then
        ELF_CMT=#
        MAKEFILE_ELF=/dev/null
 then
        ELF_CMT=#
        MAKEFILE_ELF=/dev/null
-       echo "Disabling ELF shared libraries"
+       AC_MSG_RESULT([Disabling ELF shared libraries])
 else
        E2_PKG_CONFIG_STATIC=
        ELF_CMT=
 else
        E2_PKG_CONFIG_STATIC=
        ELF_CMT=
@@ -231,12 +316,14 @@ else
        esac]
        BINARY_TYPE=elfbin
        LIB_EXT=.so
        esac]
        BINARY_TYPE=elfbin
        LIB_EXT=.so
-       echo "Enabling ELF shared libraries"
+       PRIVATE_LIBS_CMT=#
+       LDFLAG_DYNAMIC=['-Wl,-rpath-link,$(top_builddir)/lib']
+       AC_MSG_RESULT([Enabling ELF shared libraries])
 fi
 ,
 MAKEFILE_ELF=/dev/null
 ELF_CMT=#
 fi
 ,
 MAKEFILE_ELF=/dev/null
 ELF_CMT=#
-echo "Disabling ELF shared libraries by default"
+AC_MSG_RESULT([Disabling ELF shared libraries by default])
 )
 AC_SUBST(ELF_CMT)
 AC_SUBST_FILE(MAKEFILE_ELF)
 )
 AC_SUBST(ELF_CMT)
 AC_SUBST_FILE(MAKEFILE_ELF)
@@ -249,7 +336,7 @@ if test "$enableval" = "no"
 then
        BSDLIB_CMT=#
        MAKEFILE_BSDLIB=/dev/null
 then
        BSDLIB_CMT=#
        MAKEFILE_BSDLIB=/dev/null
-       echo "Disabling BSD shared libraries"
+       AC_MSG_RESULT([Disabling BSD shared libraries])
 else
        E2_PKG_CONFIG_STATIC=
        BSDLIB_CMT=
 else
        E2_PKG_CONFIG_STATIC=
        BSDLIB_CMT=
@@ -261,12 +348,12 @@ else
                LIB_EXT=.dylib
        ;;
        esac]
                LIB_EXT=.dylib
        ;;
        esac]
-       echo "Enabling BSD shared libraries"
+       AC_MSG_RESULT([Enabling BSD shared libraries])
 fi
 ,
 MAKEFILE_BSDLIB=/dev/null
 BSDLIB_CMT=#
 fi
 ,
 MAKEFILE_BSDLIB=/dev/null
 BSDLIB_CMT=#
-echo "Disabling BSD shared libraries by default"
+AC_MSG_RESULT([Disabling BSD shared libraries by default])
 )
 AC_SUBST(BSDLIB_CMT)
 AC_SUBST_FILE(MAKEFILE_BSDLIB)
 )
 AC_SUBST(BSDLIB_CMT)
 AC_SUBST_FILE(MAKEFILE_BSDLIB)
@@ -279,48 +366,41 @@ if test "$enableval" = "no"
 then
        PROFILE_CMT=#
        MAKEFILE_PROFILE=/dev/null
 then
        PROFILE_CMT=#
        MAKEFILE_PROFILE=/dev/null
-       echo "Disabling profiling libraries"
+       AC_MSG_RESULT([Disabling profiling libraries])
 else
        PROFILE_CMT=
        MAKEFILE_PROFILE=$srcdir/lib/Makefile.profile
        PROFILED_LIB_EXT=_p.a
 else
        PROFILE_CMT=
        MAKEFILE_PROFILE=$srcdir/lib/Makefile.profile
        PROFILED_LIB_EXT=_p.a
-       echo "Building profiling libraries"
+       AC_MSG_RESULT([Building profiling libraries])
 fi
 ,
 PROFILE_CMT=#
 MAKEFILE_PROFILE=/dev/null
 fi
 ,
 PROFILE_CMT=#
 MAKEFILE_PROFILE=/dev/null
-echo "Disabling profiling libraries by default"
+AC_MSG_RESULT([Disabling profiling libraries by default])
 )
 AC_SUBST(PROFILE_CMT)
 AC_SUBST_FILE(MAKEFILE_PROFILE)
 dnl
 )
 AC_SUBST(PROFILE_CMT)
 AC_SUBST_FILE(MAKEFILE_PROFILE)
 dnl
-dnl handle --enable-checker
+dnl handle --enable-gcov
 dnl
 dnl
-AC_ARG_ENABLE([checker],
-[  --enable-checker      build checker libraries],
-if test "$enableval" = "no"
+AC_ARG_ENABLE([gcov],
+[  --enable-gcov                 build for coverage testing using gcov],
+if test "$enableval" = "yes"
 then
 then
-       CHECKER_CMT=#
-       MAKEFILE_CHECKER=/dev/null
-       echo "Disabling checker libraries"
-else
-       CHECKER_CMT=
-       MAKEFILE_CHECKER=$srcdir/lib/Makefile.checker
-       echo "Building checker libraries"
+       CFLAGS="-g -fprofile-arcs -ftest-coverage"
+       LDFLAGS="-fprofile-arcs -ftest-coverage"
+       AC_MSG_RESULT([Enabling gcov support])
 fi
 fi
-,
-CHECKER_CMT=#
-MAKEFILE_CHECKER=/dev/null
-echo "Disabling checker libraries by default"
 )
 )
-AC_SUBST(CHECKER_CMT)
-AC_SUBST_FILE(MAKEFILE_CHECKER)
+
 dnl
 dnl Substitute library extensions
 dnl
 AC_SUBST(LIB_EXT)
 AC_SUBST(STATIC_LIB_EXT)
 AC_SUBST(PROFILED_LIB_EXT)
 dnl
 dnl Substitute library extensions
 dnl
 AC_SUBST(LIB_EXT)
 AC_SUBST(STATIC_LIB_EXT)
 AC_SUBST(PROFILED_LIB_EXT)
+AC_SUBST(LDFLAG_DYNAMIC)
+AC_SUBST(PRIVATE_LIBS_CMT)
 dnl
 dnl handle --enable-jbd-debug
 dnl
 dnl
 dnl handle --enable-jbd-debug
 dnl
@@ -328,13 +408,14 @@ AC_ARG_ENABLE([jbd-debug],
 [  --enable-jbd-debug            enable journal debugging],
 if test "$enableval" = "no"
 then
 [  --enable-jbd-debug            enable journal debugging],
 if test "$enableval" = "no"
 then
-       echo "Disabling journal debugging"
+       AC_MSG_RESULT([Disabling journal debugging])
 else
 else
-       AC_DEFINE(CONFIG_JBD_DEBUG)
-       echo "Enabling journal debugging"
+       AC_DEFINE(CONFIG_JBD_DEBUG, 1,
+               [Define to 1 if debugging ext3/4 journal code])
+       AC_MSG_RESULT([Enabling journal debugging])
 fi
 ,
 fi
 ,
-echo "Disabling journal debugging by default"
+AC_MSG_RESULT([Disabling journal debugging by default])
 )
 dnl
 dnl handle --enable-blkid-debug
 )
 dnl
 dnl handle --enable-blkid-debug
@@ -343,49 +424,199 @@ AC_ARG_ENABLE([blkid-debug],
 [  --enable-blkid-debug    enable blkid debugging],
 if test "$enableval" = "no"
 then
 [  --enable-blkid-debug    enable blkid debugging],
 if test "$enableval" = "no"
 then
-       echo "Disabling blkid debugging"
+       AC_MSG_RESULT([Disabling blkid debugging])
 else
 else
-       AC_DEFINE(CONFIG_BLKID_DEBUG)
-       echo "Enabling blkid debugging"
+       AC_DEFINE(CONFIG_BLKID_DEBUG, 1,
+               [Define to 1 if debugging the blkid library])
+       AC_MSG_RESULT([Enabling blkid debugging])
 fi
 ,
 fi
 ,
-echo "Disabling blkid debugging by default"
+AC_MSG_RESULT([Disabling blkid debugging by default])
 )
 dnl
 dnl handle --enable-testio-debug
 dnl
 AC_ARG_ENABLE([testio-debug],
 )
 dnl
 dnl handle --enable-testio-debug
 dnl
 AC_ARG_ENABLE([testio-debug],
-[  --enable-testio-debug   enable the use of the test I/O manager for debugging],
+[  --disable-testio-debug  disable the use of the test I/O manager for debugging],
+AH_TEMPLATE([CONFIG_TESTIO_DEBUG],
+       [Define to 1 if the testio I/O manager should be enabled])
 if test "$enableval" = "no"
 then
 if test "$enableval" = "no"
 then
-       echo "Disabling testio debugging"
+       AC_MSG_RESULT([Disabling testio debugging])
+       TEST_IO_CMT="#"
 else
 else
-       AC_DEFINE(CONFIG_TESTIO_DEBUG)
-       echo "Enabling testio debugging"
+       TEST_IO_CMT=
+       AC_DEFINE(CONFIG_TESTIO_DEBUG, 1)
+       AC_MSG_RESULT([Enabling testio debugging])
 fi
 ,
 fi
 ,
-echo "Disabling testio debugging by default"
+AC_MSG_RESULT([Enabling testio debugging by default])
+AC_DEFINE(CONFIG_TESTIO_DEBUG, 1)
+TEST_IO_CMT=
+)
+AC_SUBST(TEST_IO_CMT)
+dnl
+dnl handle --disable-libuuid
+dnl
+PKG_PROG_PKG_CONFIG
+LIBUUID=
+DEPLIBUUID=
+STATIC_LIBUUID=
+DEPSTATIC_LIBUUID=
+PROFILED_LIBUUID=
+DEPPROFILED_LIBUUID=
+UUID_CMT=
+AC_ARG_ENABLE([libuuid],
+[  --disable-libuuid     do not build private uuid library],
+if test "$enableval" = "no"
+then
+       if test -z "$PKG_CONFIG"; then
+               AC_MSG_ERROR([pkg-config not installed; please install it.])
+       fi
+
+       AC_CHECK_LIB(uuid, uuid_generate,
+               [LIBUUID=`$PKG_CONFIG --libs uuid`;
+                STATIC_LIBUUID=`$PKG_CONFIG --static --libs uuid`],
+               [AC_MSG_ERROR([external uuid library not found])])
+       PROFILED_LIBUUID=$LIBUUID
+       UUID_CMT=#
+       AC_MSG_RESULT([Disabling private uuid library])
+else
+       LIBUUID='$(LIB)/libuuid'$LIB_EXT
+       DEPLIBUUID=$LIBUUID
+       STATIC_LIBUUID='$(LIB)/libuuid'$STATIC_LIB_EXT
+       DEPSTATIC_LIBUUID=$STATIC_LIBUUID
+       PROFILED_LIBUUID='$(LIB)/libuuid'$PROFILED_LIB_EXT
+       DEPPROFILED_LIBUUID=$PROFILED_LIBUUID
+       AC_MSG_RESULT([Enabling private uuid library])
+fi
+,
+LIBUUID='$(LIB)/libuuid'$LIB_EXT
+DEPLIBUUID=$LIBUUID
+STATIC_LIBUUID='$(LIB)/libuuid'$STATIC_LIB_EXT
+DEPSTATIC_LIBUUID=$STATIC_LIBUUID
+PROFILED_LIBUUID='$(LIB)/libuuid'$PROFILED_LIB_EXT
+DEPPROFILED_LIBUUID=$PROFILED_LIBUUID
+AC_MSG_RESULT([Enabling private uuid library by default])
+)
+AC_SUBST(LIBUUID)
+AC_SUBST(DEPLIBUUID)
+AC_SUBST(STATIC_LIBUUID)
+AC_SUBST(DEPSTATIC_LIBUUID)
+AC_SUBST(PROFILED_LIBUUID)
+AC_SUBST(DEPPROFILED_LIBUUID)
+AC_SUBST(UUID_CMT)
+dnl
+dnl handle --disable-libblkid
+dnl
+PKG_PROG_PKG_CONFIG
+LIBBLKID=
+DEPLIBBLKID=
+STATIC_LIBBLKID=
+DEPSTATIC_LIBBLKID=
+PROFILED_LIBBLKID=
+DEPPROFILED_LIBBLKID=
+BLKID_CMT=
+AH_TEMPLATE([CONFIG_BUILD_FINDFS], [Define to 1 to compile findfs])
+AC_ARG_ENABLE([libblkid],
+[  --disable-libblkid    do not build private blkid library],
+if test "$enableval" = "no"
+then
+       if test -z "$PKG_CONFIG"; then
+               AC_MSG_ERROR([pkg-config not installed; please install it.])
+       fi
+
+       AC_CHECK_LIB(blkid, blkid_get_cache,
+               [LIBBLKID=`$PKG_CONFIG --libs blkid`;
+                STATIC_LIBBLKID=`$PKG_CONFIG --static --libs blkid`],
+               [AC_MSG_ERROR([external blkid library not found])], -luuid)
+       BLKID_CMT=#
+       PROFILED_LIBBLKID=$LIBBLKID
+       AC_MSG_RESULT([Disabling private blkid library])
+else
+       LIBBLKID='$(LIB)/libblkid'$LIB_EXT
+       DEPLIBBLKID=$LIBBLKID
+       STATIC_LIBBLKID='$(LIB)/libblkid'$STATIC_LIB_EXT
+       DEPSTATIC_LIBBLKID=$STATIC_LIBBLKID
+       PROFILED_LIBBLKID='$(LIB)/libblkid'$PROFILED_LIB_EXT
+       DEPPROFILED_LIBBLKID=$PROFILED_LIBBLKID
+       AC_DEFINE(CONFIG_BUILD_FINDFS, 1)
+       AC_MSG_RESULT([Enabling private blkid library])
+fi
+,
+LIBBLKID='$(LIB)/libblkid'$LIB_EXT
+DEPLIBBLKID=$LIBBLKID
+STATIC_LIBBLKID='$(LIB)/libblkid'$STATIC_LIB_EXT
+DEPSTATIC_LIBBLKID=$STATIC_LIBBLKID
+PROFILED_LIBBLKID='$(LIB)/libblkid'$PROFILED_LIB_EXT
+DEPPROFILED_LIBBLKID=$PROFILED_LIBBLKID
+AC_DEFINE(CONFIG_BUILD_FINDFS, 1)
+AC_MSG_RESULT([Enabling private blkid library by default])
+)
+AC_SUBST(LIBBLKID)
+AC_SUBST(DEPLIBBLKID)
+AC_SUBST(STATIC_LIBBLKID)
+AC_SUBST(DEPSTATIC_LIBBLKID)
+AC_SUBST(PROFILED_LIBBLKID)
+AC_SUBST(DEPPROFILED_LIBBLKID)
+AC_SUBST(BLKID_CMT)
+dnl
+dnl handle --enable-quota
+dnl
+QUOTA_MAN_COMMENT='.\"'
+QUOTA_CMT=
+AC_SUBST(QUOTA_MAN_COMMENT)
+PKG_PROG_PKG_CONFIG
+AH_TEMPLATE([CONFIG_QUOTA], [Define to 1 to enable quota support])
+AC_ARG_ENABLE([quota],
+[  --enable-quota        enable quota support],
+if test "$enableval" = "no"
+then
+       QUOTA_CMT=#
+       AC_MSG_RESULT([Disabling quota support])
+else
+       QUOTA_CMT=
+       AC_DEFINE(CONFIG_QUOTA, 1)
+       AC_MSG_RESULT([Enabling quota support])
+       QUOTA_MAN_COMMENT=""
+       AC_SUBST(QUOTA_MAN_COMMENT)
+fi
+,
+QUOTA_CMT=#
+AC_MSG_RESULT([Disabling quota support by default])
 )
 dnl
 )
 dnl
-dnl handle --enable-swapfs
-dnl
-AC_ARG_ENABLE([swapfs],
-[  --disable-swapfs              disable support of legacy byte-swapped filesystems],
+dnl Define stuff expected for quota library
+dnl
+LIBQUOTA='$(LIB)/libquota'$LIB_EXT
+DEPLIBQUOTA=$LIBQUOTA
+STATIC_LIBQUOTA='$(LIB)/libquota'$STATIC_LIB_EXT
+DEPSTATIC_LIBQUOTA=$STATIC_LIBQUOTA
+PROFILED_LIBQUOTA='$(LIB)/libquota'$PROFILED_LIB_EXT
+DEPPROFILED_LIBQUOTA=$PROFILED_LIBQUOTA
+AC_SUBST(LIBQUOTA)
+AC_SUBST(DEPLIBQUOTA)
+AC_SUBST(STATIC_LIBQUOTA)
+AC_SUBST(DEPSTATIC_LIBQUOTA)
+AC_SUBST(PROFILED_LIBQUOTA)
+AC_SUBST(DEPPROFILED_LIBQUOTA)
+AC_SUBST(QUOTA_CMT)
+dnl
+dnl handle --disable-backtrace
+dnl
+AH_TEMPLATE([DISABLE_BACKTRACE], [Define to 1 to disable use of backtrace])
+AC_ARG_ENABLE([backtrace],
+[  --disable-backtrace   disable use backtrace],
 if test "$enableval" = "no"
 then
 if test "$enableval" = "no"
 then
-       SWAPFS_CMT=#
-       echo "Disabling swapfs support"
+       AC_MSG_RESULT([Disabling use of backtrace])
+       AC_DEFINE(DISABLE_BACKTRACE, 1)
 else
 else
-       SWAPFS_CMT=
-       AC_DEFINE(ENABLE_SWAPFS)
-       echo "Enabling swapfs support"
+       AC_MSG_RESULT([Enabling use of backtrace])
 fi
 ,
 fi
 ,
-SWAPFS_CMT=
-echo "Enabling swapfs support by default"
-AC_DEFINE(ENABLE_SWAPFS)
+AC_MSG_RESULT([Enabling use of backtrace by default])
 )
 )
-AC_SUBST(SWAPFS_CMT)
 dnl
 dnl handle --enable-debugfs
 dnl
 dnl
 dnl handle --enable-debugfs
 dnl
@@ -393,32 +624,54 @@ AC_ARG_ENABLE([debugfs],
 [  --disable-debugfs             disable support of debugfs program],
 if test "$enableval" = "no"
 then
 [  --disable-debugfs             disable support of debugfs program],
 if test "$enableval" = "no"
 then
-       echo "Disabling debugfs support"
+       AC_MSG_RESULT([Disabling debugfs support])
        DEBUGFS_CMT="#"
 else
        DEBUGFS_CMT=
        DEBUGFS_CMT="#"
 else
        DEBUGFS_CMT=
-       echo "Enabling debugfs support"
+       AC_MSG_RESULT([Enabling debugfs support])
 fi
 ,
 fi
 ,
-echo "Enabling debugfs support by default"
+AC_MSG_RESULT([Enabling debugfs support by default])
 DEBUGFS_CMT=
 )
 AC_SUBST(DEBUGFS_CMT)
 dnl
 DEBUGFS_CMT=
 )
 AC_SUBST(DEBUGFS_CMT)
 dnl
+dnl handle --enable-e2scan
+dnl
+AC_ARG_ENABLE([e2scan],
+[  --disable-e2scan      disable support of e2scan program],
+if test "$enableval" = "no"
+then
+       echo "Disabling e2scan support"
+       E2SCAN_CMT="#"
+       E2SCAN_MAN='.\"'
+else
+       E2SCAN_CMT=
+       E2SCAN_MAN=
+       echo "Enabling e2scan support"
+fi
+,
+echo "Enabling e2scan support by default"
+E2SCAN_CMT=
+E2SCAN_MAN=
+)
+AC_SUBST(E2SCAN_CMT)
+AC_SUBST(E2SCAN_MAN)
+dnl
 dnl handle --enable-imager
 dnl
 AC_ARG_ENABLE([imager],
 [  --disable-imager      disable support of e2image program],
 if test "$enableval" = "no"
 then
 dnl handle --enable-imager
 dnl
 AC_ARG_ENABLE([imager],
 [  --disable-imager      disable support of e2image program],
 if test "$enableval" = "no"
 then
-       echo "Disabling e2image support"
+       AC_MSG_RESULT([Disabling e2image support])
        IMAGER_CMT="#"
 else
        IMAGER_CMT=
        IMAGER_CMT="#"
 else
        IMAGER_CMT=
-       echo "Enabling e2image support"
+       AC_MSG_RESULT([Enabling e2image support])
 fi
 ,
 fi
 ,
-echo "Enabling e2image support by default"
+AC_MSG_RESULT([Enabling e2image support by default])
 IMAGER_CMT=
 )
 AC_SUBST(IMAGER_CMT)
 IMAGER_CMT=
 )
 AC_SUBST(IMAGER_CMT)
@@ -429,18 +682,42 @@ AC_ARG_ENABLE([resizer],
 [  --disable-resizer             disable support of e2resize program],
 if test "$enableval" = "no"
 then
 [  --disable-resizer             disable support of e2resize program],
 if test "$enableval" = "no"
 then
-       echo "Disabling e2resize support"
+       AC_MSG_RESULT([Disabling e2resize support])
        RESIZER_CMT="#"
 else
        RESIZER_CMT=
        RESIZER_CMT="#"
 else
        RESIZER_CMT=
-       echo "Enabling e2resize support"
+       AC_MSG_RESULT([Enabling e2resize support])
 fi
 ,
 fi
 ,
-echo "Enabling e2resize support by default"
+AC_MSG_RESULT([Enabling e2resize support by default])
 RESIZER_CMT=
 )
 AC_SUBST(RESIZER_CMT)
 dnl
 RESIZER_CMT=
 )
 AC_SUBST(RESIZER_CMT)
 dnl
+dnl handle --enable-defrag
+dnl
+AC_ARG_ENABLE([defrag],
+[  --disable-defrag      disable support of e4defrag program],
+if test "$enableval" = "no"
+then
+       AC_MSG_RESULT([Disabling e4defrag support])
+       DEFRAG_CMT="#"
+else
+       DEFRAG_CMT=
+       AC_MSG_RESULT([Enabling e4defrag support])
+fi
+,
+if test -z "$WITH_DIET_LIBC"
+then
+       AC_MSG_RESULT([Enabling e4defrag support by default])
+       DEFRAG_CMT=
+else
+       AC_MSG_RESULT([Disabling e4defrag support by default])
+       DEFRAG_CMT="#"
+fi
+)
+AC_SUBST(DEFRAG_CMT)
+dnl
 dnl See whether to install the `fsck' wrapper program (that calls e2fsck)
 dnl
 AC_ARG_ENABLE([fsck],
 dnl See whether to install the `fsck' wrapper program (that calls e2fsck)
 dnl
 AC_ARG_ENABLE([fsck],
@@ -448,20 +725,20 @@ AC_ARG_ENABLE([fsck],
 [if test "$enableval" = "no"
 then
        FSCK_PROG='' FSCK_MAN=''
 [if test "$enableval" = "no"
 then
        FSCK_PROG='' FSCK_MAN=''
-       echo "Not building fsck wrapper"
+       AC_MSG_RESULT([Not building fsck wrapper])
 else
        FSCK_PROG=fsck FSCK_MAN=fsck.8
 else
        FSCK_PROG=fsck FSCK_MAN=fsck.8
-       echo "Building fsck wrapper"
+       AC_MSG_RESULT([Building fsck wrapper])
 fi]
 ,
 [case "$host_os" in
   gnu*)
     FSCK_PROG='' FSCK_MAN=''
 fi]
 ,
 [case "$host_os" in
   gnu*)
     FSCK_PROG='' FSCK_MAN=''
-    echo "Not building fsck wrapper by default"
+    AC_MSG_RESULT([Not building fsck wrapper by default])
     ;;
   *)
     FSCK_PROG=fsck FSCK_MAN=fsck.8
     ;;
   *)
     FSCK_PROG=fsck FSCK_MAN=fsck.8
-    echo "Building fsck wrapper by default"
+    AC_MSG_RESULT([Building fsck wrapper by default])
 esac]
 )
 AC_SUBST(FSCK_PROG)
 esac]
 )
 AC_SUBST(FSCK_PROG)
@@ -474,68 +751,17 @@ AC_ARG_ENABLE([e2initrd-helper],
 [if test "$enableval" = "no"
 then
        E2INITRD_PROG='' E2INITRD_MAN=''
 [if test "$enableval" = "no"
 then
        E2INITRD_PROG='' E2INITRD_MAN=''
-       echo "Not building e2initrd helper"
+       AC_MSG_RESULT([Not building e2initrd helper])
 else
        E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
 else
        E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
-       echo "Building e2initrd helper"
+       AC_MSG_RESULT([Building e2initrd helper])
 fi]
 ,
 E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
 fi]
 ,
 E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
-echo "Building e2initrd helper by default"
+AC_MSG_RESULT([Building e2initrd helper by default])
 )
 AC_SUBST(E2INITRD_PROG)
 AC_SUBST(E2INITRD_MAN)
 )
 AC_SUBST(E2INITRD_PROG)
 AC_SUBST(E2INITRD_MAN)
-dnl handle --enable-blkid-devmapper
-dnl
-STATIC_BLKID_DEVMAPPER_LIBS=''
-AC_ARG_ENABLE([blkid-devmapper],
-[  --enable-blkid-devmapper  build with device-mapper support],
-[if test "$enableval" = "no"
-then
-       echo "Disabling device-mapper support"
-       DEVMAPPER_REQ=''
-       DEVMAPPER_LIBS=''
-       STATIC_DEVMAPPER_LIBS=''
-else
-       AC_DEFINE(HAVE_DEVMAPPER)
-       echo "Enabling device-mapper support"
-
-       PKG_PROG_PKG_CONFIG()
-
-       if test -z "$PKG_CONFIG"; then
-               echo "pkg-config not installed; please install it."
-               exit 1;
-       fi
-       AC_CHECK_LIB(devmapper, dm_tree_create,
-               [DEVMAPPER_LIBS=`$PKG_CONFIG --libs devmapper`; 
-                STATIC_DEVMAPPER_LIBS=`$PKG_CONFIG --static --libs devmapper`;
-                DEVMAPPER_REQ="devmapper";
-                DEVMAPPER_PC_LIBS="-ldevmapper"],
-               [AC_MSG_ERROR([device-mapper library not found])],
-               [$DEVMAPPER_LIBS])
-       # work around stupid devmapper.pc bug in Debian
-       case "$STATIC_DEVMAPPER_LIBS" in
-       *pthread*)
-           ;;
-       *)
-           echo "Working around Debian bug #390243..."
-           STATIC_DEVMAPPER_LIBS="-pthread $STATIC_DEVMAPPER_LIBS"
-           ;;
-       esac
-       if test "$E2_PKG_CONFIG_STATIC" = "--static"; then
-           DEVMAPPER_LIBS="$STATIC_DEVMAPPER_LIBS"
-           STATIC_BLKID_DEVMAPPER_LIBS="$STATIC_DEVMAPPER_LIBS"
-       fi
-fi]
-,
-echo "Disabling device-mapper support by default"
-)
-AC_SUBST(DEVMAPPER_REQ)
-AC_SUBST(DEVMAPPER_PC_LIBS)
-AC_SUBST(DEVMAPPER_LIBS)
-AC_SUBST(STATIC_DEVMAPPER_LIBS)
-AC_SUBST(STATIC_BLKID_DEVMAPPER_LIBS)
 dnl
 dnl
 dnl
 dnl
 dnl
 dnl
@@ -544,14 +770,20 @@ AC_ARG_ENABLE([tls],
 [if test "$enableval" = "no"
 then
        try_tls=""
 [if test "$enableval" = "no"
 then
        try_tls=""
-       echo "Disabling thread local support"
+       AC_MSG_RESULT([Disabling thread local support])
 else
        try_tls="yes"
 else
        try_tls="yes"
-       echo "Enabling thread local support"
+       AC_MSG_RESULT([Enabling thread local support])
 fi]
 ,
 fi]
 ,
-try_tls="yes"
-echo "Try using thread local support by default"
+if test -n "$WITH_DIET_LIBC"
+then
+       try_tls=""
+       AC_MSG_RESULT([Diet libc does not support thread local support])
+else
+       try_tls="yes"
+       AC_MSG_RESULT([Try using thread local support by default])
+fi
 )
 if test "$try_tls" = "yes"
 then
 )
 if test "$try_tls" = "yes"
 then
@@ -560,21 +792,28 @@ fi
 dnl
 dnl
 dnl
 dnl
 dnl
 dnl
+AH_TEMPLATE([USE_UUIDD], [Define to 1 to build uuidd])
 AC_ARG_ENABLE([uuidd],
 [  --disable-uuidd         disable building the uuid daemon],
 [if test "$enableval" = "no"
 then
 AC_ARG_ENABLE([uuidd],
 [  --disable-uuidd         disable building the uuid daemon],
 [if test "$enableval" = "no"
 then
-       echo "Not building uuidd"
+       AC_MSG_RESULT([Not building uuidd])
        UUIDD_CMT="#"
 else
        UUIDD_CMT="#"
 else
-       AC_DEFINE(USE_UUIDD)
+       AC_DEFINE(USE_UUIDD, 1)
        UUIDD_CMT=""
        UUIDD_CMT=""
-       echo "Building uuidd"
+       AC_MSG_RESULT([Building uuidd])
 fi]
 ,
 fi]
 ,
-AC_DEFINE(USE_UUIDD)
-UUIDD_CMT=""
-echo "Building uuidd by default"
+AC_DEFINE(USE_UUIDD, 1)
+if test -z "$UUID_CMT"
+then
+       UUIDD_CMT=""
+       AC_MSG_RESULT([Building uuidd by default])
+else
+       UUIDD_CMT="#"
+       AC_MSG_RESULT([Disabling uuidd by default])
+fi
 )
 AC_SUBST(UUIDD_CMT)
 dnl
 )
 AC_SUBST(UUIDD_CMT)
 dnl
@@ -589,8 +828,8 @@ GETTEXT_PACKAGE=e2fsprogs
 PACKAGE=e2fsprogs
 VERSION="$E2FSPROGS_VERSION"
 VERSION=0.14.1
 PACKAGE=e2fsprogs
 VERSION="$E2FSPROGS_VERSION"
 VERSION=0.14.1
-AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
-AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
+AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [package name for gettext])
+AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [version for gettext])
 AC_SUBST(GETTEXT_PACKAGE)
 AC_SUBST(PACKAGE)
 AC_SUBST(VERSION)
 AC_SUBST(GETTEXT_PACKAGE)
 AC_SUBST(PACKAGE)
 AC_SUBST(VERSION)
@@ -601,6 +840,7 @@ dnl End of configuration options
 dnl
 AC_SUBST(BINARY_TYPE)
 AC_PROG_MAKE_SET
 dnl
 AC_SUBST(BINARY_TYPE)
 AC_PROG_MAKE_SET
+CHECK_GNU_MAKE
 AC_PATH_PROG(LN, ln, ln)
 AC_PROG_LN_S
 AC_PATH_PROG(MV, mv, mv)
 AC_PATH_PROG(LN, ln, ln)
 AC_PROG_LN_S
 AC_PATH_PROG(MV, mv, mv)
@@ -615,6 +855,20 @@ AC_PATH_PROG(LDCONFIG, ldconfig, :)
 AC_CHECK_TOOL(AR, ar, ar)
 AC_CHECK_TOOL(RANLIB, ranlib, :)
 AC_CHECK_TOOL(STRIP, strip, :)
 AC_CHECK_TOOL(AR, ar, ar)
 AC_CHECK_TOOL(RANLIB, ranlib, :)
 AC_CHECK_TOOL(STRIP, strip, :)
+AC_CHECK_PROG(MAKEINFO, makeinfo, makeinfo, )
+if test "_$MAKEINFO" = "_"; then
+    MAKEINFO="@echo Makeinfo is missing. Info documentation will not be built.;true"
+else
+    case "$MAKEINFO" in
+      */missing.*)
+        AC_MSG_WARN([
+*** Makeinfo is missing. Info documentation will not be built.])
+        ;;
+      *)
+        ;;
+    esac
+fi
+AC_SUBST(MAKEINFO)
 AC_PROG_INSTALL
 # See if we need a separate native compiler.
 if test $cross_compiling = no; then
 AC_PROG_INSTALL
 # See if we need a separate native compiler.
 if test $cross_compiling = no; then
@@ -623,13 +877,52 @@ if test $cross_compiling = no; then
 else
   AC_CHECK_PROGS(BUILD_CC, gcc cc)
 fi
 else
   AC_CHECK_PROGS(BUILD_CC, gcc cc)
 fi
-AC_CHECK_HEADERS(stdlib.h unistd.h stdarg.h stdint.h errno.h malloc.h mntent.h paths.h dirent.h getopt.h setjmp.h signal.h termios.h linux/fd.h linux/major.h sys/disklabel.h sys/ioctl.h sys/mman.h sys/mkdev.h sys/prctl.h sys/queue.h sys/sockio.h sys/socket.h sys/sysmacros.h sys/time.h sys/stat.h sys/types.h sys/wait.h sys/resource.h sys/syscall.h net/if_dl.h netinet/in.h utime.h)
-AC_CHECK_HEADERS(sys/disk.h sys/mount.h,,,
-[[
-#if HAVE_SYS_QUEUE_H
-#include <sys/queue.h>
-#endif
-]])
+AC_CHECK_HEADERS(m4_flatten([
+       attr/xattr.h
+       dirent.h
+       errno.h
+       execinfo.h
+       getopt.h
+       malloc.h
+       mntent.h
+       paths.h
+       semaphore.h
+       setjmp.h
+       signal.h
+       stdarg.h
+       stdint.h
+       stdlib.h
+       termios.h
+       termio.h
+       unistd.h
+       utime.h
+       linux/falloc.h
+       linux/fd.h
+       linux/major.h
+       linux/loop.h
+       net/if_dl.h
+       netinet/in.h
+       sys/disklabel.h
+       sys/disk.h
+       sys/file.h
+       sys/ioctl.h
+       sys/mkdev.h
+       sys/mman.h
+       sys/mount.h
+       sys/prctl.h
+       sys/resource.h
+       sys/select.h
+       sys/socket.h
+       sys/sockio.h
+       sys/stat.h
+       sys/syscall.h
+       sys/sysmacros.h
+       sys/time.h
+       sys/types.h
+       sys/un.h
+       sys/wait.h
+       sys/xattr.h
+]))
 AC_CHECK_HEADERS(net/if.h,,,
 [[
 #if HAVE_SYS_TYPES_H
 AC_CHECK_HEADERS(net/if.h,,,
 [[
 #if HAVE_SYS_TYPES_H
@@ -639,19 +932,27 @@ AC_CHECK_HEADERS(net/if.h,,,
 #include <sys/socket.h>
 #endif
 ]])
 #include <sys/socket.h>
 #endif
 ]])
+dnl do not check sqlite3.h if e2scan is disabled
+if test x"$E2SCAN_CMT" == x; then
+AC_CHECK_HEADERS(sqlite3.h)
+fi
 AC_FUNC_VPRINTF
 dnl Check to see if dirent has member d_reclen. On cygwin those d_reclen
 dnl is not decleared.
 AC_FUNC_VPRINTF
 dnl Check to see if dirent has member d_reclen. On cygwin those d_reclen
 dnl is not decleared.
-AC_CHECK_MEMBER(struct dirent.d_reclen,[AC_DEFINE(HAVE_RECLEN_DIRENT)],,
+AC_CHECK_MEMBER(struct dirent.d_reclen,[AC_DEFINE(HAVE_RECLEN_DIRENT, 1,
+                      [Define to 1 if dirent has d_reclen])],,
                [#include <dirent.h>])
                [#include <dirent.h>])
-dnl Check to see if ssize_t was decleared
-AC_CHECK_TYPE(ssize_t,[AC_DEFINE(HAVE_TYPE_SSIZE_T)],,
+AC_CHECK_MEMBERS([struct stat.st_atim])
+dnl Check to see if ssize_t was declared
+AC_CHECK_TYPE(ssize_t,[AC_DEFINE(HAVE_TYPE_SSIZE_T, 1,
+               [Define to 1 if ssize_t declared])],,
              [#include <sys/types.h>])
 dnl
 dnl Check to see if llseek() is declared in unistd.h.  On some libc's 
 dnl it is, and on others it isn't..... Thank you glibc developers....
 dnl
              [#include <sys/types.h>])
 dnl
 dnl Check to see if llseek() is declared in unistd.h.  On some libc's 
 dnl it is, and on others it isn't..... Thank you glibc developers....
 dnl
-AC_CHECK_DECL(llseek,[AC_DEFINE(HAVE_LLSEEK_PROTOTYPE)],,
+AC_CHECK_DECL(llseek,[AC_DEFINE(HAVE_LLSEEK_PROTOTYPE, 1,
+                       [Define to 1 if llseek declared in unistd.h])],,
              [#include <unistd.h>])
 dnl
 dnl Check to see if lseek64() is declared in unistd.h.  Glibc's header files
              [#include <unistd.h>])
 dnl
 dnl Check to see if lseek64() is declared in unistd.h.  Glibc's header files
@@ -662,38 +963,57 @@ dnl
 dnl Warning!  Use of --enable-gcc-wall may throw off this test.
 dnl
 dnl
 dnl Warning!  Use of --enable-gcc-wall may throw off this test.
 dnl
 dnl
-AC_CHECK_DECL(lseek64,[AC_DEFINE(HAVE_LSEEK64_PROTOTYPE)],,
+AC_CHECK_DECL(lseek64,[AC_DEFINE(HAVE_LSEEK64_PROTOTYPE, 1,
+                       [Define to 1 if lseek64 declared in unistd.h])],,
                [#define _LARGEFILE_SOURCE
                 #define _LARGEFILE64_SOURCE
                 #include <unistd.h>])
 dnl
 dnl Word sizes...
 dnl
                [#define _LARGEFILE_SOURCE
                 #define _LARGEFILE64_SOURCE
                 #include <unistd.h>])
 dnl
 dnl Word sizes...
 dnl
-if test "$cross_compiling" = yes -a "$ac_cv_sizeof_long" = ""; then
-  # if cross-compiling, with no cached values, just assume something common. 
-  ac_cv_sizeof_short=2
-  ac_cv_sizeof_int=4
-  ac_cv_sizeof_long=4
-  ac_cv_sizeof_long_long=8
-  AC_MSG_WARN([Cross-compiling, so cannot check type sizes; assuming short=2, int=4, long=4, long long=8])
-fi
 AC_CHECK_SIZEOF(short)
 AC_CHECK_SIZEOF(int)
 AC_CHECK_SIZEOF(long)
 AC_CHECK_SIZEOF(long long)
 AC_CHECK_SIZEOF(short)
 AC_CHECK_SIZEOF(int)
 AC_CHECK_SIZEOF(long)
 AC_CHECK_SIZEOF(long long)
+AC_CHECK_SIZEOF(off_t)
 SIZEOF_SHORT=$ac_cv_sizeof_short
 SIZEOF_INT=$ac_cv_sizeof_int
 SIZEOF_LONG=$ac_cv_sizeof_long
 SIZEOF_LONG_LONG=$ac_cv_sizeof_long_long
 SIZEOF_SHORT=$ac_cv_sizeof_short
 SIZEOF_INT=$ac_cv_sizeof_int
 SIZEOF_LONG=$ac_cv_sizeof_long
 SIZEOF_LONG_LONG=$ac_cv_sizeof_long_long
+SIZEOF_OFF_T=$ac_cv_sizeof_off_t
 AC_SUBST(SIZEOF_SHORT)
 AC_SUBST(SIZEOF_INT)
 AC_SUBST(SIZEOF_LONG)
 AC_SUBST(SIZEOF_LONG_LONG)
 AC_SUBST(SIZEOF_SHORT)
 AC_SUBST(SIZEOF_INT)
 AC_SUBST(SIZEOF_LONG)
 AC_SUBST(SIZEOF_LONG_LONG)
+AC_SUBST(SIZEOF_OFF_T)
 AC_C_BIGENDIAN
 AC_C_BIGENDIAN
-BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
+if test $cross_compiling = no; then
+  BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
+else
+  CROSS_COMPILE="1" BUILD_CC="$BUILD_CC" CPP="$CPP" /bin/sh $ac_aux_dir/parse-types.sh
+fi
 ASM_TYPES_HEADER=./asm_types.h
 AC_SUBST_FILE(ASM_TYPES_HEADER)
 dnl
 ASM_TYPES_HEADER=./asm_types.h
 AC_SUBST_FILE(ASM_TYPES_HEADER)
 dnl
+dnl Save the configuration #defines needed for the public ext2fs.h
+dnl header file
+dnl
+echo "/* These defines are needed for the public ext2fs.h header file */" \
+     > public_config.h
+if grep HAVE_SYS_TYPES_H confdefs.h > tmp_config.$$; then
+  uniq tmp_config.$$ >> public_config.h
+else
+  echo "#undef HAVE_SYS_TYPES_H" >> public_config.h
+fi
+if grep WORDS_BIGENDIAN confdefs.h > tmp_config.$$; then
+  uniq tmp_config.$$ >> public_config.h
+else
+  echo "#undef WORDS_BIGENDIAN" >> public_config.h
+fi
+rm -f tmp_config.$$
+PUBLIC_CONFIG_HEADER=./public_config.h
+AC_SUBST_FILE(PUBLIC_CONFIG_HEADER)
+dnl
 dnl See if we have inttypes.h and if intptr_t is defined
 dnl
 AC_CHECK_HEADERS([inttypes.h])
 dnl See if we have inttypes.h and if intptr_t is defined
 dnl
 AC_CHECK_HEADERS([inttypes.h])
@@ -718,18 +1038,85 @@ if test "$e2fsprogs_cv_struct_st_flags" = yes; then
                [e2fsprogs_cv_struct_st_flags_immut=no]))
   AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags_immut)
   if test "$e2fsprogs_cv_struct_st_flags_immut" = yes; then
                [e2fsprogs_cv_struct_st_flags_immut=no]))
   AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags_immut)
   if test "$e2fsprogs_cv_struct_st_flags_immut" = yes; then
-         AC_DEFINE(HAVE_STAT_FLAGS)
+         AC_DEFINE(HAVE_STAT_FLAGS, 1,
+               [Define to 1 if struct stat has st_flags])
   fi
 fi
 dnl
 dnl Check for the presence of SA_LEN
 dnl
 AC_CHECK_MEMBER(struct sockaddr.sa_len,
   fi
 fi
 dnl
 dnl Check for the presence of SA_LEN
 dnl
 AC_CHECK_MEMBER(struct sockaddr.sa_len,
-               AC_DEFINE_UNQUOTED(HAVE_SA_LEN,1,[Define if struct sockaddr contains sa_len]),,
+               AC_DEFINE_UNQUOTED(HAVE_SA_LEN,1,
+                       [Define to 1 if if struct sockaddr contains sa_len]),,
        [#include <sys/types.h>
         #include <sys/socket.h>])
 dnl
        [#include <sys/types.h>
         #include <sys/socket.h>])
 dnl
-AC_CHECK_FUNCS(chflags getrusage llseek lseek64 open64 fstat64 ftruncate64 getmntinfo strtoull strcasecmp srandom jrand48 fchown mallinfo fdatasync strnlen strptime strdup sysconf pathconf posix_memalign memalign valloc __secure_getenv prctl mmap utime setresuid setresgid)
+dnl This will add -lblkid to the AC_CHECK_FUNCS search if we are using
+dnl the system-provided blkid library
+dnl
+if test -n "$BLKID_CMT"; then
+  AC_SEARCH_LIBS([blkid_probe_all], [blkid])
+fi
+dnl
+AC_CHECK_FUNCS(m4_flatten([
+       __secure_getenv
+       backtrace
+       blkid_probe_get_topology
+       blkid_probe_enable_partitions
+       chflags
+       fadvise64
+       fallocate
+       fallocate64
+       fchown
+       fdatasync
+       fstat64
+       ftruncate64
+       futimes
+       getcwd
+       getdtablesize
+       getmntinfo
+       getpwuid_r
+       getrlimit
+       getrusage
+       jrand48
+       llseek
+       lseek64
+       mallinfo
+       mbstowcs
+       memalign
+       mempcpy
+       mmap
+       msync
+       nanosleep
+       open64
+       pathconf
+       posix_fadvise
+       posix_fadvise64
+       posix_memalign
+       prctl
+       pread
+       pwrite
+       pread64
+       pwrite64
+       secure_getenv
+       setmntent
+       setresgid
+       setresuid
+       snprintf
+       srandom
+       stpcpy
+       strcasecmp
+       strdup
+       strnlen
+       strptime
+       strtoull
+       sync_file_range
+       sysconf
+       usleep
+       utime
+       utimes
+       valloc
+]))
 dnl
 dnl Check to see if -lsocket is required (solaris) to make something
 dnl that uses socket() to compile; this is needed for the UUID library
 dnl
 dnl Check to see if -lsocket is required (solaris) to make something
 dnl that uses socket() to compile; this is needed for the UUID library
@@ -738,13 +1125,52 @@ SOCKET_LIB=''
 AC_CHECK_LIB(socket, socket, [SOCKET_LIB=-lsocket])
 AC_SUBST(SOCKET_LIB)
 dnl
 AC_CHECK_LIB(socket, socket, [SOCKET_LIB=-lsocket])
 AC_SUBST(SOCKET_LIB)
 dnl
-dnl Check to see if libdl exists for the sake of dlopen
 dnl
 dnl
-DLOPEN_LIB=''
-AC_CHECK_LIB(dl, dlopen, 
-[DLOPEN_LIB=-ldl
-AC_DEFINE(HAVE_DLOPEN)])
-AC_SUBST(DLOPEN_LIB)
+dnl Check to see if static sqlite exists
+dnl
+AC_ARG_WITH(
+       [sqlite3],
+       [  --with-sqlite3=DIR      location of sqlite3 library (default /usr/lib)],
+       [SQLITE3_LIBS="-L$with_sqlite3"],,
+       [SQLITE3_LIBS="-L/usr/lib64 -L/usr/lib"])
+
+dnl do not check sqlite3 library if e2scan is disabled
+if test x"$E2SCAN_CMT" == x; then
+
+CFLAGS_OLD=$CFLAGS
+SQLITE3_LIB=''
+dnl
+dnl check static sqlite3 first
+dnl
+CFLAGS="$CFLAGS_OLD $SQLITE3_LIBS -static -pthread"
+AC_CHECK_LIB(sqlite3, sqlite3_open,
+       [
+       SQLITE3_LIB="$SQLITE3_LIBS -static -pthread -lsqlite3"
+       AC_DEFINE(HAVE_SQLITE3, 1, [Define to 1 if SQLite library is present])
+       ])
+
+if test x"$SQLITE3_LIB" == x; then
+dnl
+dnl static sqlite3 is not found, check dynamic sqlite3
+dnl
+       AC_MSG_WARN(no static sqlite3 - looking for dynamic one)
+       CFLAGS="$CFLAGS_OLD $SQLITE3_LIBS -pthread"
+       AC_CHECK_LIB(sqlite3, sqlite3_close,
+               [
+               SQLITE3_LIB="$SQLITE3_LIBS -pthread -lsqlite3"
+               AC_DEFINE(HAVE_SQLITE3, 1, [Define to 1 if SQLite library is present])
+               ])
+fi
+
+AC_SUBST(SQLITE3_LIB)
+CFLAGS=$CFLAGS_OLD
+
+if test x"$SQLITE3_LIB" == x; then
+       AC_MSG_WARN(no sqlite3 - e2scan will not support database based scanning)
+fi
+
+fi
+
 dnl
 dnl See if optreset exists
 dnl
 dnl
 dnl See if optreset exists
 dnl
@@ -754,13 +1180,29 @@ AC_CACHE_VAL(ac_cv_have_optreset,
   ac_cv_have_optreset=yes, ac_cv_have_optreset=no)])dnl
 AC_MSG_RESULT($ac_cv_have_optreset)
 if test $ac_cv_have_optreset = yes; then
   ac_cv_have_optreset=yes, ac_cv_have_optreset=no)])dnl
 AC_MSG_RESULT($ac_cv_have_optreset)
 if test $ac_cv_have_optreset = yes; then
-  AC_DEFINE(HAVE_OPTRESET)
+  AC_DEFINE(HAVE_OPTRESET, 1, [Define to 1 if optreset for getopt is present])
 fi
 dnl
 fi
 dnl
+dnl Test for sem_init, and which library it might require:
+dnl
+AH_TEMPLATE([HAVE_SEM_INIT], [Define to 1 if sem_init() exists])
+SEM_INIT_LIB=''
+AC_CHECK_FUNC(sem_init, ,
+  AC_CHECK_LIB(pthread, sem_init,
+       AC_DEFINE(HAVE_SEM_INIT, 1)
+       SEM_INIT_LIB=-lpthread,
+  AC_CHECK_LIB(rt, sem_init,
+       AC_DEFINE(HAVE_SEM_INIT, 1)
+       SEM_INIT_LIB=-lrt,
+  AC_CHECK_LIB(posix4, sem_init,
+       AC_DEFINE(HAVE_SEM_INIT, 1)
+       SEM_INIT_LIB=-lposix4))))dnl
+AC_SUBST(SEM_INIT_LIB)
+dnl
 dnl Check for unified diff
 dnl
 AC_MSG_CHECKING(for unified diff option)
 dnl Check for unified diff
 dnl
 AC_MSG_CHECKING(for unified diff option)
-if diff -u $0 $0 >& /dev/null ; then
+if diff -u $0 $0 > /dev/null 2>&1 ; then
    UNI_DIFF_OPTS=-u
 else
    UNI_DIFF_OPTS=-c
    UNI_DIFF_OPTS=-u
 else
    UNI_DIFF_OPTS=-c
@@ -772,7 +1214,7 @@ dnl We use the EXT2 ioctls only under Linux
 dnl
 case "$host_os" in
 linux*)
 dnl
 case "$host_os" in
 linux*)
-       AC_DEFINE(HAVE_EXT2_IOCTLS)
+       AC_DEFINE(HAVE_EXT2_IOCTLS, 1, [Define to 1 if Ext2 ioctls present])
        ;;
 esac
 dnl
        ;;
 esac
 dnl
@@ -800,7 +1242,7 @@ case "$host_os" in
 linux* | gnu* | k*bsd*-gnu)
        if test "$prefix" = NONE -a "$root_prefix" = NONE ; then
                root_prefix="";
 linux* | gnu* | k*bsd*-gnu)
        if test "$prefix" = NONE -a "$root_prefix" = NONE ; then
                root_prefix="";
-               echo "On $host_os systems, root_prefix defaults to ''"
+               AC_MSG_RESULT([On $host_os systems, root_prefix defaults to ''])
        fi
        ;;
 esac
        fi
        ;;
 esac
@@ -811,9 +1253,9 @@ case "$host_os" in
 linux* | gnu* | k*bsd*-gnu)
        if test "$prefix" = NONE ; then
                prefix="/usr";
 linux* | gnu* | k*bsd*-gnu)
        if test "$prefix" = NONE ; then
                prefix="/usr";
-               echo "On $host_os systems, prefix defaults to /usr"
+               AC_MSG_RESULT([On $host_os systems, prefix defaults to /usr])
                if test "$mandir" = '${prefix}/man' ; then
                if test "$mandir" = '${prefix}/man' ; then
-                       echo "...and mandir defaults to /usr/share/man"
+                       AC_MSG_RESULT([...and mandir defaults to /usr/share/man])
                        mandir=/usr/share/man
                fi
        fi
                        mandir=/usr/share/man
                fi
        fi
@@ -837,19 +1279,19 @@ else
 fi
 if test "$bindir" != '${exec_prefix}/bin'; then
     root_bindir=$bindir
 fi
 if test "$bindir" != '${exec_prefix}/bin'; then
     root_bindir=$bindir
-    echo "Setting root_bindir to $root_bindir"
+    AC_MSG_RESULT([Setting root_bindir to $root_bindir])
 fi
 if test "$sbindir" != '${exec_prefix}/sbin'; then
     root_sbindir=$sbindir
 fi
 if test "$sbindir" != '${exec_prefix}/sbin'; then
     root_sbindir=$sbindir
-    echo "Setting root_sbindir to $root_sbindir"
+    AC_MSG_RESULT([Setting root_sbindir to $root_sbindir])
 fi
 if test "$libdir" != '${exec_prefix}/lib'; then
     root_libdir=$libdir
 fi
 if test "$libdir" != '${exec_prefix}/lib'; then
     root_libdir=$libdir
-    echo "Setting root_libdir to $root_libdir"
+    AC_MSG_RESULT([Setting root_libdir to $root_libdir])
 fi
 if test "$sysconfdir" != '${prefix}/etc'; then
     root_sysconfdir=$sysconfdir
 fi
 if test "$sysconfdir" != '${prefix}/etc'; then
     root_sysconfdir=$sysconfdir
-    echo "Setting root_sysconfdir to $root_sysconfdir"
+    AC_MSG_RESULT([Setting root_sysconfdir to $root_sysconfdir])
 fi
 AC_SUBST(root_prefix)
 AC_SUBST(root_bindir)
 fi
 AC_SUBST(root_prefix)
 AC_SUBST(root_bindir)
@@ -857,9 +1299,24 @@ AC_SUBST(root_sbindir)
 AC_SUBST(root_libdir)
 AC_SUBST(root_sysconfdir)
 dnl
 AC_SUBST(root_libdir)
 AC_SUBST(root_sysconfdir)
 dnl
-dnl See if -static works.
+dnl Allow specification of the multiarch arch
 dnl
 dnl
-AC_MSG_CHECKING([whether linker accepts -static])
+AC_ARG_WITH([multiarch],
+[  --with-multiarch=ARCH specify the multiarch triplet],
+if test "$withval" = "lib64"; then
+    libdir=/usr/lib64
+    root_libdir=/lib64
+else
+    libdir=$libdir/$withval
+    root_libdir=$root_libdir/$withval
+fi
+)dnl
+dnl
+dnl See if -static works.  This could fail if the linker does not
+dnl support -static, or if required external libraries are not available
+dnl in static form.
+dnl
+AC_MSG_CHECKING([whether we can link with -static])
 AC_CACHE_VAL(ac_cv_e2fsprogs_use_static,
 [SAVE_LDFLAGS=$LDFLAGS; LDFLAGS="$LDFLAGS -static"
 AC_TRY_LINK([#include <stdio.h>],[fflush(stdout);],
 AC_CACHE_VAL(ac_cv_e2fsprogs_use_static,
 [SAVE_LDFLAGS=$LDFLAGS; LDFLAGS="$LDFLAGS -static"
 AC_TRY_LINK([#include <stdio.h>],[fflush(stdout);],
@@ -890,8 +1347,9 @@ dnl Apple hacked gcc somehow?)
 dnl
 case "$host_os" in
 darwin*)
 dnl
 case "$host_os" in
 darwin*)
-       echo "Using Apple Darwin / GNU libintl workaround"
-       AC_DEFINE(_INTL_REDIRECT_MACROS)
+       AC_MSG_RESULT([Using Apple Darwin / GNU libintl workaround])
+       AC_DEFINE(_INTL_REDIRECT_MACROS, 1,
+               [Define to 1 if Apple Darwin libintl workaround is needed])
        ;;
 esac
 dnl
        ;;
 esac
 dnl
@@ -912,21 +1370,25 @@ fi
 AC_SUBST(DO_TEST_SUITE)
 dnl
 dnl Only include the intl include files if we're building with them
 AC_SUBST(DO_TEST_SUITE)
 dnl
 dnl Only include the intl include files if we're building with them
-dnl 
-INTL_FLAGS=
+dnl
+INCLUDES='-I. -I$(top_builddir)/lib -I$(top_srcdir)/lib'
+if test -n "$CPPFLAGS" ; then
+       INCLUDES="$INCLUDES $CPPFLAGS"
+fi
 if test "$USE_INCLUDED_LIBINTL" = "yes" ; then
 if test "$USE_INCLUDED_LIBINTL" = "yes" ; then
-       INTL_FLAGS='-I$(top_builddir)/intl -I$(top_srcdir)/intl'
+       INCLUDES=$INCLUDES' -I$(top_builddir)/intl -I$(top_srcdir)/intl'
+fi
+if test -n "$WITH_DIET_LIBC" ; then
+       INCLUDES="$INCLUDES -D_REENTRANT"
 fi
 fi
-AC_SUBST(INTL_FLAGS)
+AC_SUBST(INCLUDES)
+AM_MKINSTALLDIRS
 dnl
 dnl Build CFLAGS
 dnl
 if test $cross_compiling = no; then
 dnl
 dnl Build CFLAGS
 dnl
 if test $cross_compiling = no; then
-   BUILD_CFLAGS="$CFLAGS"
+   BUILD_CFLAGS="$CFLAGS $CPPFLAGS $INCLUDES -DHAVE_CONFIG_H"
    BUILD_LDFLAGS="$LDFLAGS"
    BUILD_LDFLAGS="$LDFLAGS"
-else
-   BUILD_CFLAGS=
-   BUILD_LDFLAGS=
 fi
 AC_SUBST(BUILD_CFLAGS)
 AC_SUBST(BUILD_LDFLAGS)
 fi
 AC_SUBST(BUILD_CFLAGS)
 AC_SUBST(BUILD_LDFLAGS)
@@ -939,20 +1401,22 @@ test -d include || mkdir include
 test -d include/linux || mkdir include/linux
 test -d include/asm || mkdir include/asm
 for i in MCONFIG Makefile e2fsprogs.spec \
 test -d include/linux || mkdir include/linux
 test -d include/asm || mkdir include/asm
 for i in MCONFIG Makefile e2fsprogs.spec \
-       util/Makefile util/subst.conf util/gen-tarball \
+       e2fsprogs-RHEL-6.spec \
+       e2fsprogs-SUSE_LINUX-11.spec \
+       util/Makefile util/subst.conf util/gen-tarball util/install-symlink \
        lib/et/Makefile lib/ss/Makefile lib/e2p/Makefile \
        lib/ext2fs/Makefile lib/ext2fs/ext2_types.h \
        lib/uuid/Makefile lib/uuid/uuid_types.h \
        lib/et/Makefile lib/ss/Makefile lib/e2p/Makefile \
        lib/ext2fs/Makefile lib/ext2fs/ext2_types.h \
        lib/uuid/Makefile lib/uuid/uuid_types.h \
-       lib/blkid/Makefile lib/blkid/blkid_types.h \
+       lib/blkid/Makefile lib/blkid/blkid_types.h lib/quota/Makefile \
        lib/ss/ss.pc lib/uuid/uuid.pc lib/et/com_err.pc \
        lib/e2p/e2p.pc lib/blkid/blkid.pc lib/ext2fs/ext2fs.pc \
        misc/Makefile ext2ed/Makefile e2fsck/Makefile \
        lib/ss/ss.pc lib/uuid/uuid.pc lib/et/com_err.pc \
        lib/e2p/e2p.pc lib/blkid/blkid.pc lib/ext2fs/ext2fs.pc \
        misc/Makefile ext2ed/Makefile e2fsck/Makefile \
-       debugfs/Makefile tests/Makefile tests/progs/Makefile \
-       resize/Makefile doc/Makefile intl/Makefile po/Makefile.in ; do
+       debugfs/Makefile e2scan/Makefile tests/Makefile tests/progs/Makefile \
+       resize/Makefile doc/Makefile intl/Makefile \
+       intl/libgnuintl.h po/Makefile.in ; do
        if test -d `dirname ${srcdir}/$i` ; then
                outlist="$outlist $i"
        fi
 done
 AC_OUTPUT($outlist)
 if test -f util/gen-tarball; then chmod +x util/gen-tarball; fi
        if test -d `dirname ${srcdir}/$i` ; then
                outlist="$outlist $i"
        fi
 done
 AC_OUTPUT($outlist)
 if test -f util/gen-tarball; then chmod +x util/gen-tarball; fi
-