Whamcloud - gitweb
Fix stupid bug; dx_hack_hash was left-shifted by one in CPP macro
[tools/e2fsprogs.git] / configure.in
index f5d732c..696f310 100644 (file)
@@ -43,7 +43,7 @@ echo "Release date is ${E2FSPROGS_MONTH}, ${E2FSPROGS_YEAR}"
 AC_SUBST(E2FSPROGS_YEAR)
 AC_SUBST(E2FSPROGS_MONTH)
 AC_SUBST(E2FSPROGS_VERSION)
-AC_REQUIRE([AC_CANONICAL_HOST])
+AC_CANONICAL_HOST
 dnl
 dnl set $(CC) from --with-cc=value
 dnl
@@ -73,10 +73,8 @@ dnl
 AC_ARG_WITH([ccopts],
 [  --with-ccopts=CCOPTS    select compiler command line options],
 AC_MSG_RESULT(CCOPTS is $withval)
-CCOPTS=$withval
-CFLAGS="$CFLAGS $withval",
-CCOPTS=)dnl
-AC_SUBST(CCOPTS)
+CFLAGS=$withval,
+)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
@@ -163,6 +161,11 @@ then
 else
        ELF_CMT=
        MAKEFILE_ELF=$srcdir/lib/Makefile.elf-lib
+       [case "$host_os" in
+       solaris2.*)
+               MAKEFILE_ELF=$srcdir/lib/Makefile.solaris-lib
+       ;;
+       esac]
        BINARY_TYPE=elfbin
        LIB_EXT=.so
        echo "Enabling ELF shared libraries"
@@ -198,33 +201,6 @@ echo "Disabling BSD shared libraries by default"
 AC_SUBST(BSDLIB_CMT)
 AC_SUBST_FILE(MAKEFILE_BSDLIB)
 dnl
-dnl handle --enable-jfs-debug
-dnl
-AC_ARG_ENABLE([jfs-debug],
-[  --enable-jfs-debug            enable journal debugging],
-if test "$enableval" = "no"
-then
-       echo "Disabling journal debugging"
-else
-       AC_DEFINE(JFS_DEBUG)
-       echo "Enabling journal debugging"
-fi
-,
-echo "Disabling journal debugging by default"
-)
-dnl
-dnl Add internationalization support, using gettext.
-dnl
-PACKAGE=e2fsprogs
-VERSION="$E2FSPROGS_VERSION"
-AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
-AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
-AC_SUBST(PACKAGE)
-AC_SUBST(VERSION)
-
-ALL_LINGUAS="it nyc"
-AM_GNU_GETTEXT
-dnl
 dnl handle --enable-profile
 dnl
 AC_ARG_ENABLE([profile],
@@ -276,23 +252,93 @@ AC_SUBST(LIB_EXT)
 AC_SUBST(STATIC_LIB_EXT)
 AC_SUBST(PROFILED_LIB_EXT)
 dnl
-dnl handle --enable-gcc-wall
+dnl handle --enable-jfs-debug
+dnl
+AC_ARG_ENABLE([jfs-debug],
+[  --enable-jfs-debug            enable journal debugging],
+if test "$enableval" = "no"
+then
+       echo "Disabling journal debugging"
+else
+       AC_DEFINE(CONFIG_JBD_DEBUG)
+       echo "Enabling journal debugging"
+fi
+,
+echo "Disabling journal debugging by default"
+)
+dnl
+dnl handle --enable-swapfs
+dnl
+AC_ARG_ENABLE([swapfs],
+[  --disable-swapfs              disable support of legacy byte-swapped filesystems],
+if test "$enableval" = "no"
+then
+       echo "Disabling swapfs support"
+else
+       AC_DEFINE(ENABLE_SWAPFS)
+       echo "Enabling swapfs support"
+fi
+,
+echo "Enabling swapfs support by default"
+AC_DEFINE(ENABLE_SWAPFS)
+)
+dnl
+dnl handle --enable-debugfs
+dnl
+AC_ARG_ENABLE([debugfs],
+[  --disable-debugfs             disable support of debugfs program],
+if test "$enableval" = "no"
+then
+       echo "Disabling debugfs support"
+       DEBUGFS_CMT="#"
+else
+       DEBUGFS_CMT=
+       echo "Enabling debugfs support"
+fi
+,
+echo "Enabling debugfs support by default"
+DEBUGFS_CMT=
+)
+AC_SUBST(DEBUGFS_CMT)
+dnl
+dnl handle --enable-imager
 dnl
-AC_ARG_ENABLE([gcc-wall],
-[  --enable-gcc-wall     enable GCC anal warnings (DON'T USE IN PRODUCTION)],
+AC_ARG_ENABLE([imager],
+[  --disable-imager      disable support of e2image program],
 if test "$enableval" = "no"
 then
-       W=#
-       echo "Disabling GCC warnings"
+       echo "Disabling e2image support"
+       IMAGER_CMT="#"
 else
-       W=
-       echo "Enabling GCC warnings"
+       IMAGER_CMT=
+       echo "Enabling e2image support"
 fi
 ,
-W=#
-echo "Disabling GCC warnings by default"
+echo "Enabling e2image support by default"
+IMAGER_CMT=
 )
-AC_SUBST(W)
+AC_SUBST(IMAGER_CMT)
+dnl
+dnl handle --enable-resizer
+dnl
+AC_ARG_ENABLE([resizer],
+[  --disable-resizer             disable support of e2resize program],
+if test "$enableval" = "no"
+then
+       echo "Disabling e2resize support"
+       RESIZER_CMT="#"
+else
+       RESIZER_CMT=
+       echo "Enabling e2resize support"
+fi
+,
+echo "Enabling e2resize support by default"
+RESIZER_CMT=
+)
+AC_SUBST(RESIZER_CMT)
+dnl
+dnl handle --enable-dynamic-e2fsck
+dnl
 AC_ARG_ENABLE([dynamic-e2fsck],
 [  --enable-dynamic-e2fsck build e2fsck dynamically],
 if test "$enableval" = "no"
@@ -354,6 +400,18 @@ fi
 echo "Using standard bitmask operations by default"
 )
 dnl
+dnl Add internationalization support, using gettext.
+dnl
+PACKAGE=e2fsprogs
+VERSION="$E2FSPROGS_VERSION"
+AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
+AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
+AC_SUBST(PACKAGE)
+AC_SUBST(VERSION)
+
+ALL_LINGUAS="it nyc tr"
+AM_GNU_GETTEXT
+dnl
 dnl End of configuration options
 dnl
 AC_SUBST(BINARY_TYPE)
@@ -367,6 +425,7 @@ AC_PATH_PROG(CHMOD, chmod, :)
 AC_PATH_PROG(AWK, awk, awk)
 AC_PATH_PROG(SED, sed, sed)
 AC_PATH_PROG(PERL, perl, perl)
+AC_PATH_PROG(LDCONFIG, ldconfig, :)
 AC_CHECK_TOOL(AR, ar, ar)
 AC_CHECK_TOOL(RANLIB, ranlib, :)
 AC_CHECK_TOOL(STRIP, strip, :)
@@ -378,7 +437,7 @@ if test $cross_compiling = no; then
 else
   AC_CHECK_PROGS(BUILD_CC, gcc cc)
 fi
-AC_CHECK_HEADERS(stdlib.h unistd.h stdarg.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/mount.h sys/sockio.h sys/time.h sys/stat.h sys/types.h net/if.h netinet/in.h)
+AC_CHECK_HEADERS(stdlib.h unistd.h stdarg.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/mkdev.h sys/mount.h sys/sockio.h sys/sysmacros.h sys/time.h sys/stat.h sys/types.h net/if.h netinet/in.h)
 AC_FUNC_VPRINTF
 dnl
 dnl See if struct dirent has a d_namlen field (like bsd systems), implying
@@ -458,6 +517,7 @@ AC_SUBST(SIZEOF_SHORT)
 AC_SUBST(SIZEOF_INT)
 AC_SUBST(SIZEOF_LONG)
 AC_SUBST(SIZEOF_LONG_LONG)
+AC_C_BIGENDIAN
 dnl
 dnl See if struct stat has a st_flags field, in which case we can get file
 dnl flags somewhat portably.  Also check for the analogous setter, chflags().
@@ -481,20 +541,7 @@ if test "$e2fsprogs_cv_struct_st_flags" = yes; then
          AC_DEFINE(HAVE_STAT_FLAGS)
   fi
 fi
-AC_CHECK_FUNCS(chflags getrusage llseek lseek64 open64 strdup getmntinfo strcasecmp srandom fchown mallinfo fdatasync)
-dnl
-dnl Check to see if ino_t is defined
-dnl
-AC_MSG_CHECKING(ino_t defined by sys/types.h)
-AC_CACHE_VAL(e2fsprogs_cv_ino_t,
-       AC_TRY_COMPILE([#include <sys/types.h>],
-       [ino_t ino; ino = 0;],
-       [e2fsprogs_cv_ino_t=yes],
-       [e2fsprogs_cv_ino_t=no]))
-AC_MSG_RESULT($e2fsprogs_cv_ino_t)
-if test "$e2fsprogs_cv_ino_t" = yes; then
-   AC_DEFINE(HAVE_INO_T)
-fi
+AC_CHECK_FUNCS(chflags getrusage llseek lseek64 open64 getmntinfo strcasecmp srandom fchown mallinfo fdatasync strnlen)
 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