1997-04-26 21:58:21 +08:00
|
|
|
AC_INIT(version.h)
|
2004-12-01 08:00:19 +08:00
|
|
|
AC_PREREQ(2.50)
|
|
|
|
AC_CONFIG_AUX_DIR(config)
|
1997-04-26 21:58:21 +08:00
|
|
|
MCONFIG=./MCONFIG
|
|
|
|
AC_SUBST_FILE(MCONFIG)
|
1997-04-26 22:37:06 +08:00
|
|
|
BINARY_TYPE=bin
|
|
|
|
dnl
|
|
|
|
dnl This is to figure out the version number and the date....
|
|
|
|
dnl
|
|
|
|
E2FSPROGS_VERSION=`grep E2FSPROGS_VERSION ${srcdir}/version.h \
|
|
|
|
| awk '{print $3}' | tr \" " " | awk '{print $1}'`
|
|
|
|
DATE=`grep E2FSPROGS_DATE ${srcdir}/version.h | awk '{print $3}' \
|
|
|
|
| tr \" " "`
|
2003-03-23 14:37:53 +08:00
|
|
|
E2FSPROGS_DAY=`echo $DATE | awk -F- '{print $1}'`
|
1997-04-26 22:37:06 +08:00
|
|
|
MONTH=`echo $DATE | awk -F- '{print $2}'`
|
|
|
|
YEAR=`echo $DATE | awk -F- '{print $3}'`
|
|
|
|
|
1999-01-09 13:06:02 +08:00
|
|
|
if expr $YEAR ">" 1900 > /dev/null ; then
|
|
|
|
E2FSPROGS_YEAR=$YEAR
|
|
|
|
elif expr $YEAR ">" 90 >/dev/null ; then
|
1997-04-26 22:37:06 +08:00
|
|
|
E2FSPROGS_YEAR=19$YEAR
|
|
|
|
else
|
|
|
|
E2FSPROGS_YEAR=20$YEAR
|
|
|
|
fi
|
|
|
|
|
|
|
|
case $MONTH in
|
2006-11-13 08:41:25 +08:00
|
|
|
Jan) MONTH_NUM=01; E2FSPROGS_MONTH="January" ;;
|
|
|
|
Feb) MONTH_NUM=02; E2FSPROGS_MONTH="February" ;;
|
|
|
|
Mar) MONTH_NUM=03; E2FSPROGS_MONTH="March" ;;
|
|
|
|
Apr) MONTH_NUM=04; E2FSPROGS_MONTH="April" ;;
|
|
|
|
May) MONTH_NUM=05; E2FSPROGS_MONTH="May" ;;
|
|
|
|
Jun) MONTH_NUM=06; E2FSPROGS_MONTH="June" ;;
|
|
|
|
Jul) MONTH_NUM=07; E2FSPROGS_MONTH="July" ;;
|
|
|
|
Aug) MONTH_NUM=08; E2FSPROGS_MONTH="August" ;;
|
|
|
|
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" ;;
|
1997-04-26 22:37:06 +08:00
|
|
|
*) echo "Unknown month $MONTH??" ;;
|
|
|
|
esac
|
|
|
|
|
2006-11-13 08:41:25 +08:00
|
|
|
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-*)
|
|
|
|
E2FSPROGS_PKGVER="$pre_vers+${base_ver}_WIP_$date_spec"
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
E2FSPROGS_PKGVER="$base_ver"
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
unset DATE MONTH YEAR base_ver pre_vers date_spec
|
1997-04-26 22:37:06 +08:00
|
|
|
echo "Generating configuration file for e2fsprogs version $E2FSPROGS_VERSION"
|
|
|
|
echo "Release date is ${E2FSPROGS_MONTH}, ${E2FSPROGS_YEAR}"
|
|
|
|
AC_SUBST(E2FSPROGS_YEAR)
|
|
|
|
AC_SUBST(E2FSPROGS_MONTH)
|
2003-03-23 14:37:53 +08:00
|
|
|
AC_SUBST(E2FSPROGS_DAY)
|
1997-04-26 22:37:06 +08:00
|
|
|
AC_SUBST(E2FSPROGS_VERSION)
|
2006-11-13 08:41:25 +08:00
|
|
|
AC_SUBST(E2FSPROGS_PKGVER)
|
2001-09-20 03:20:12 +08:00
|
|
|
AC_CANONICAL_HOST
|
1997-04-26 22:37:06 +08:00
|
|
|
dnl
|
2003-05-05 21:00:24 +08:00
|
|
|
dnl Use diet libc
|
|
|
|
dnl
|
|
|
|
AC_ARG_WITH([diet-libc],
|
|
|
|
[ --with-diet-libc Use diet libc],
|
|
|
|
CC="diet cc -nostdinc"
|
|
|
|
AC_MSG_RESULT(CC=$CC))dnl
|
|
|
|
dnl
|
1997-04-26 22:37:06 +08:00
|
|
|
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])
|
2000-02-03 00:13:14 +08:00
|
|
|
AC_PROG_CC
|
1997-04-26 22:37:06 +08:00
|
|
|
dnl
|
|
|
|
dnl set $(LD) from --with-linker=value
|
|
|
|
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])
|
|
|
|
dnl
|
|
|
|
dnl set $(CCOPTS) from --with-ccopts=value
|
|
|
|
dnl
|
|
|
|
AC_ARG_WITH([ccopts],
|
|
|
|
[ --with-ccopts=CCOPTS select compiler command line options],
|
|
|
|
AC_MSG_RESULT(CCOPTS is $withval)
|
2001-06-11 14:54:13 +08:00
|
|
|
CFLAGS=$withval,
|
|
|
|
)dnl
|
1997-04-26 22:37:06 +08:00
|
|
|
dnl
|
1999-10-26 12:19:45 +08:00
|
|
|
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.
|
|
|
|
dnl
|
|
|
|
AC_CHECK_HEADER(linux/fs.h, [linux_headers=yes], [linux_headers=no])
|
2000-02-03 00:13:14 +08:00
|
|
|
if test "$linux_headers" != yes; then
|
|
|
|
LINUX_INCLUDE='-I$(top_builddir)/include'
|
1999-10-26 12:19:45 +08:00
|
|
|
fi
|
|
|
|
AC_SUBST(LINUX_INCLUDE)
|
|
|
|
dnl
|
2004-02-24 04:30:11 +08:00
|
|
|
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.
|
|
|
|
AC_MSG_CHECKING(for additional special compiler flags)
|
|
|
|
if test "$GCC" = yes
|
|
|
|
then
|
|
|
|
case "$host_cpu" in
|
|
|
|
alpha) addcflags="-mieee" ;;
|
|
|
|
esac
|
|
|
|
fi
|
|
|
|
if test "x$addcflags" != x
|
|
|
|
then
|
|
|
|
AC_MSG_RESULT($addcflags)
|
|
|
|
CFLAGS="$addcflags $CFLAGS"
|
|
|
|
else
|
|
|
|
AC_MSG_RESULT([[(none)]])
|
|
|
|
fi
|
|
|
|
dnl
|
1997-04-29 22:28:00 +08:00
|
|
|
dnl Set default values for library extentions. Will be dealt with after
|
|
|
|
dnl parsing configuration opions, which may modify these
|
|
|
|
dnl
|
|
|
|
LIB_EXT=.a
|
|
|
|
STATIC_LIB_EXT=.a
|
|
|
|
PROFILE_LIB_EXT=.a
|
|
|
|
dnl
|
1997-04-26 22:37:06 +08:00
|
|
|
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)
|
1997-04-26 21:58:21 +08:00
|
|
|
dnl
|
Many files:
configure.in: Change how the installation directions are selected.
Previously, we had prefix and usr_prefix, where prefix was '' and
usr_prefix was /usr, and we then defined bindir, ubindir, libdir,
ulibdir, etc. in terms of that. In autoconf 2.12, it's possible to
override bindir, libdir, etc., and so in order to make our
installation directory makefile variables more in line with autoconf
2.12, I've changed all of the various makefiles to use prefix and
root_prefix, where the default Linux definitions are /usr and '',
respectively. What used to be bindir is now root_bindir, and what
used to be ubindir, is now bindir.
MCONFIG.in: Change directories to match with new installation
directory convention (see above). Add Makefile
dependencies for makefile fragments, and define
DEP_LIB_MAKEFILES which library makefiles can use to
define DEP_MAKEFILES, so that the library makefiles will
get regenerated when the makefile fragments change.
Remove the cat?dir variables, since we aren't creating
those directories any more.
Makefile.in: Add top-level uninstall targets.
e2fsprogs-1.12.spec: Add to the RPM package the e2label man page, and
to reflect that fact that we now compile_et and mk_cmds for the
development package.
ChangeLog, Makefile.in:
Makefile.in: Add uninstall target (which is a just a no-op).
version.h, RELEASE-NOTES:
Update to interim version numbers for release purposes.
1998-04-04 00:12:25 +08:00
|
|
|
dnl Allow separate `root_prefix' to be specified
|
1997-04-29 22:51:31 +08:00
|
|
|
dnl
|
Many files:
configure.in: Change how the installation directions are selected.
Previously, we had prefix and usr_prefix, where prefix was '' and
usr_prefix was /usr, and we then defined bindir, ubindir, libdir,
ulibdir, etc. in terms of that. In autoconf 2.12, it's possible to
override bindir, libdir, etc., and so in order to make our
installation directory makefile variables more in line with autoconf
2.12, I've changed all of the various makefiles to use prefix and
root_prefix, where the default Linux definitions are /usr and '',
respectively. What used to be bindir is now root_bindir, and what
used to be ubindir, is now bindir.
MCONFIG.in: Change directories to match with new installation
directory convention (see above). Add Makefile
dependencies for makefile fragments, and define
DEP_LIB_MAKEFILES which library makefiles can use to
define DEP_MAKEFILES, so that the library makefiles will
get regenerated when the makefile fragments change.
Remove the cat?dir variables, since we aren't creating
those directories any more.
Makefile.in: Add top-level uninstall targets.
e2fsprogs-1.12.spec: Add to the RPM package the e2label man page, and
to reflect that fact that we now compile_et and mk_cmds for the
development package.
ChangeLog, Makefile.in:
Makefile.in: Add uninstall target (which is a just a no-op).
version.h, RELEASE-NOTES:
Update to interim version numbers for release purposes.
1998-04-04 00:12:25 +08:00
|
|
|
AC_ARG_WITH([root-prefix],
|
|
|
|
[ --with-root-prefix=PREFIX override prefix variable for files to be placed in the root],
|
|
|
|
root_prefix=$withval,
|
|
|
|
root_prefix=NONE)dnl
|
1997-04-29 22:51:31 +08:00
|
|
|
dnl
|
2005-02-04 23:43:58 +08:00
|
|
|
dnl handle --enable-maintainer-mode
|
|
|
|
dnl
|
|
|
|
AC_ARG_ENABLE([maintainer-mode],
|
|
|
|
[ --enable-maintainer-mode enable makefile rules useful for maintainers],
|
|
|
|
if test "$enableval" = "no"
|
|
|
|
then
|
|
|
|
MAINTAINER_CMT=#
|
|
|
|
echo "Disabling maintainer mode"
|
|
|
|
else
|
|
|
|
MAINTAINER_CMT=
|
|
|
|
echo "Enabling maintainer mode"
|
|
|
|
fi
|
|
|
|
,
|
|
|
|
MAINTAINER_CMT=#
|
|
|
|
echo "Disabling maintainer mode by default"
|
|
|
|
)
|
|
|
|
AC_SUBST(MAINTAINER_CMT)
|
|
|
|
dnl
|
Many files:
unix.c (main): If compression is enabled on the filesystem, print a
warning message (for now).
message.c: Add new compression shortcut: @c == compress
problem.c, problem.h (PR_1_COMPR_SET): Add new error code.
pass1.c (check_blocks): If the inode has EXT2_COMPRBLK_FL flag set,
check to see if the filesystem supports compression. If it does pass
this information down to process_block() so it can treat the
compressed block flag words correctly. If not, offer to clear the
flag, since it shouldn't be set.
(process_block): If an inode has the compressed inode flag set, allow
EXT2FS_COMPRESSED_BLKADDR.
pass1b.c (process_pass1b_block, delete_file_block, clone_file_block):
pass2.c (deallocate_inode_block): Use HOLE_BLKADDR to check to see if
the block can be skipped.
ChangeLog, Makefile.in:
Makefile.in: Exclude the internationalization files from being
distributed.
ChangeLog, configure, configure.in:
configure.in: Add support for --enable-compression. This is
experimental code only for now, which is why it's under --enable test.
Once it's stable, it will always be compiled in.
TODO:
Commit additional TODO items.
2000-02-11 23:55:07 +08:00
|
|
|
dnl handle --enable-compression
|
|
|
|
dnl
|
|
|
|
AC_ARG_ENABLE([compression],
|
|
|
|
[ --enable-compression enable EXPERIMENTAL compression support],
|
|
|
|
if test "$enableval" = "no"
|
|
|
|
then
|
|
|
|
echo "Disabling compression support"
|
|
|
|
else
|
|
|
|
AC_DEFINE(ENABLE_COMPRESSION)
|
|
|
|
echo "Enabling compression support"
|
|
|
|
echo "WARNING: Compression support is experimental"
|
|
|
|
fi
|
|
|
|
,
|
|
|
|
echo "Disabling compression support by default"
|
|
|
|
)
|
|
|
|
dnl
|
2002-06-26 11:26:34 +08:00
|
|
|
dnl handle --enable-htree
|
|
|
|
dnl
|
|
|
|
AC_ARG_ENABLE([htree],
|
|
|
|
[ --enable-htree enable EXPERIMENTAL htree directory support],
|
|
|
|
if test "$enableval" = "no"
|
|
|
|
then
|
|
|
|
HTREE_CMT=#
|
|
|
|
echo "Disabling htree directory support"
|
|
|
|
else
|
|
|
|
HTREE_CMT=
|
|
|
|
AC_DEFINE(ENABLE_HTREE)
|
|
|
|
echo "Enabling htree directory support"
|
|
|
|
fi
|
|
|
|
,
|
2002-08-18 15:48:55 +08:00
|
|
|
HTREE_CMT=
|
|
|
|
AC_DEFINE(ENABLE_HTREE)
|
|
|
|
echo "Enabling htree directory support by default"
|
2002-06-26 11:26:34 +08:00
|
|
|
)
|
|
|
|
AC_SUBST(HTREE_CMT)
|
|
|
|
dnl
|
1997-04-26 21:58:21 +08:00
|
|
|
dnl handle --enable-elf-shlibs
|
|
|
|
dnl
|
|
|
|
AC_ARG_ENABLE([elf-shlibs],
|
1997-04-29 22:28:00 +08:00
|
|
|
[ --enable-elf-shlibs select ELF shared libraries],
|
1997-04-26 21:58:21 +08:00
|
|
|
if test "$enableval" = "no"
|
|
|
|
then
|
|
|
|
ELF_CMT=#
|
|
|
|
MAKEFILE_ELF=/dev/null
|
|
|
|
echo "Disabling ELF shared libraries"
|
|
|
|
else
|
|
|
|
ELF_CMT=
|
|
|
|
MAKEFILE_ELF=$srcdir/lib/Makefile.elf-lib
|
2000-10-25 10:38:39 +08:00
|
|
|
[case "$host_os" in
|
|
|
|
solaris2.*)
|
|
|
|
MAKEFILE_ELF=$srcdir/lib/Makefile.solaris-lib
|
|
|
|
;;
|
|
|
|
esac]
|
1997-04-26 22:37:06 +08:00
|
|
|
BINARY_TYPE=elfbin
|
1997-04-29 22:28:00 +08:00
|
|
|
LIB_EXT=.so
|
1997-04-26 21:58:21 +08:00
|
|
|
echo "Enabling ELF shared libraries"
|
|
|
|
fi
|
|
|
|
,
|
|
|
|
MAKEFILE_ELF=/dev/null
|
|
|
|
ELF_CMT=#
|
|
|
|
echo "Disabling ELF shared libraries by default"
|
|
|
|
)
|
|
|
|
AC_SUBST(ELF_CMT)
|
|
|
|
AC_SUBST_FILE(MAKEFILE_ELF)
|
|
|
|
dnl
|
|
|
|
dnl handle --enable-bsd-shlibs
|
|
|
|
dnl
|
|
|
|
AC_ARG_ENABLE([bsd-shlibs],
|
1997-04-29 22:28:00 +08:00
|
|
|
[ --enable-bsd-shlibs select BSD shared libraries],
|
1997-04-26 21:58:21 +08:00
|
|
|
if test "$enableval" = "no"
|
|
|
|
then
|
|
|
|
BSDLIB_CMT=#
|
|
|
|
MAKEFILE_BSDLIB=/dev/null
|
|
|
|
echo "Disabling BSD shared libraries"
|
|
|
|
else
|
|
|
|
BSDLIB_CMT=
|
|
|
|
MAKEFILE_BSDLIB=$srcdir/lib/Makefile.bsd-lib
|
1997-04-29 22:28:00 +08:00
|
|
|
LIB_EXT=.so
|
2003-03-14 15:13:48 +08:00
|
|
|
[case "$host_os" in
|
2003-03-17 23:01:22 +08:00
|
|
|
darwin*)
|
2003-03-14 15:13:48 +08:00
|
|
|
MAKEFILE_BSDLIB=$srcdir/lib/Makefile.darwin-lib
|
|
|
|
LIB_EXT=.dylib
|
|
|
|
;;
|
|
|
|
esac]
|
1997-04-26 21:58:21 +08:00
|
|
|
echo "Enabling BSD shared libraries"
|
|
|
|
fi
|
|
|
|
,
|
|
|
|
MAKEFILE_BSDLIB=/dev/null
|
|
|
|
BSDLIB_CMT=#
|
|
|
|
echo "Disabling BSD shared libraries by default"
|
|
|
|
)
|
|
|
|
AC_SUBST(BSDLIB_CMT)
|
|
|
|
AC_SUBST_FILE(MAKEFILE_BSDLIB)
|
|
|
|
dnl
|
|
|
|
dnl handle --enable-profile
|
|
|
|
dnl
|
|
|
|
AC_ARG_ENABLE([profile],
|
1997-04-29 22:28:00 +08:00
|
|
|
[ --enable-profile build profiling libraries],
|
1997-04-26 21:58:21 +08:00
|
|
|
if test "$enableval" = "no"
|
|
|
|
then
|
|
|
|
PROFILE_CMT=#
|
|
|
|
MAKEFILE_PROFILE=/dev/null
|
|
|
|
echo "Disabling profiling libraries"
|
|
|
|
else
|
|
|
|
PROFILE_CMT=
|
|
|
|
MAKEFILE_PROFILE=$srcdir/lib/Makefile.profile
|
1997-04-29 22:28:00 +08:00
|
|
|
PROFILED_LIB_EXT=_p.a
|
1997-04-26 21:58:21 +08:00
|
|
|
echo "Building profiling libraries"
|
|
|
|
fi
|
|
|
|
,
|
|
|
|
PROFILE_CMT=#
|
|
|
|
MAKEFILE_PROFILE=/dev/null
|
|
|
|
echo "Disabling profiling libraries by default"
|
|
|
|
)
|
|
|
|
AC_SUBST(PROFILE_CMT)
|
|
|
|
AC_SUBST_FILE(MAKEFILE_PROFILE)
|
|
|
|
dnl
|
|
|
|
dnl handle --enable-checker
|
|
|
|
dnl
|
|
|
|
AC_ARG_ENABLE([checker],
|
1997-04-29 22:28:00 +08:00
|
|
|
[ --enable-checker build checker libraries],
|
1997-04-26 21:58:21 +08:00
|
|
|
if test "$enableval" = "no"
|
|
|
|
then
|
|
|
|
CHECKER_CMT=#
|
|
|
|
MAKEFILE_CHECKER=/dev/null
|
|
|
|
echo "Disabling checker libraries"
|
|
|
|
else
|
|
|
|
CHECKER_CMT=
|
|
|
|
MAKEFILE_CHECKER=$srcdir/lib/Makefile.checker
|
|
|
|
echo "Building checker libraries"
|
|
|
|
fi
|
|
|
|
,
|
|
|
|
CHECKER_CMT=#
|
|
|
|
MAKEFILE_CHECKER=/dev/null
|
|
|
|
echo "Disabling checker libraries by default"
|
|
|
|
)
|
|
|
|
AC_SUBST(CHECKER_CMT)
|
|
|
|
AC_SUBST_FILE(MAKEFILE_CHECKER)
|
|
|
|
dnl
|
1997-04-29 22:28:00 +08:00
|
|
|
dnl Substitute library extensions
|
|
|
|
dnl
|
|
|
|
AC_SUBST(LIB_EXT)
|
|
|
|
AC_SUBST(STATIC_LIB_EXT)
|
|
|
|
AC_SUBST(PROFILED_LIB_EXT)
|
|
|
|
dnl
|
2002-11-09 07:46:45 +08:00
|
|
|
dnl handle --enable-jbd-debug
|
2001-06-14 06:16:47 +08:00
|
|
|
dnl
|
2002-11-09 07:46:45 +08:00
|
|
|
AC_ARG_ENABLE([jbd-debug],
|
|
|
|
[ --enable-jbd-debug enable journal debugging],
|
2001-06-14 06:16:47 +08:00
|
|
|
if test "$enableval" = "no"
|
|
|
|
then
|
|
|
|
echo "Disabling journal debugging"
|
|
|
|
else
|
2001-12-16 15:23:36 +08:00
|
|
|
AC_DEFINE(CONFIG_JBD_DEBUG)
|
2001-06-14 06:16:47 +08:00
|
|
|
echo "Enabling journal debugging"
|
|
|
|
fi
|
|
|
|
,
|
|
|
|
echo "Disabling journal debugging by default"
|
|
|
|
)
|
|
|
|
dnl
|
2003-02-23 02:19:53 +08:00
|
|
|
dnl handle --enable-blkid-debug
|
|
|
|
dnl
|
|
|
|
AC_ARG_ENABLE([blkid-debug],
|
2003-05-05 21:00:24 +08:00
|
|
|
[ --enable-blkid-debug enable blkid debugging],
|
2003-02-23 02:19:53 +08:00
|
|
|
if test "$enableval" = "no"
|
|
|
|
then
|
|
|
|
echo "Disabling blkid debugging"
|
|
|
|
else
|
|
|
|
AC_DEFINE(CONFIG_BLKID_DEBUG)
|
|
|
|
echo "Enabling blkid debugging"
|
|
|
|
fi
|
|
|
|
,
|
|
|
|
echo "Disabling blkid debugging by default"
|
2003-05-06 00:08:47 +08:00
|
|
|
)
|
|
|
|
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],
|
|
|
|
if test "$enableval" = "no"
|
|
|
|
then
|
|
|
|
echo "Disabling testio debugging"
|
|
|
|
else
|
|
|
|
AC_DEFINE(CONFIG_TESTIO_DEBUG)
|
|
|
|
echo "Enabling testio debugging"
|
|
|
|
fi
|
|
|
|
,
|
|
|
|
echo "Disabling testio debugging by default"
|
2003-02-23 02:19:53 +08:00
|
|
|
)
|
|
|
|
dnl
|
2001-06-14 06:16:47 +08:00
|
|
|
dnl handle --enable-swapfs
|
|
|
|
dnl
|
|
|
|
AC_ARG_ENABLE([swapfs],
|
|
|
|
[ --disable-swapfs disable support of legacy byte-swapped filesystems],
|
|
|
|
if test "$enableval" = "no"
|
|
|
|
then
|
2002-11-09 03:55:38 +08:00
|
|
|
SWAPFS_CMT=#
|
2001-06-14 06:16:47 +08:00
|
|
|
echo "Disabling swapfs support"
|
|
|
|
else
|
2002-11-09 03:55:38 +08:00
|
|
|
SWAPFS_CMT=
|
2001-06-14 06:16:47 +08:00
|
|
|
AC_DEFINE(ENABLE_SWAPFS)
|
|
|
|
echo "Enabling swapfs support"
|
|
|
|
fi
|
|
|
|
,
|
2002-11-09 03:55:38 +08:00
|
|
|
SWAPFS_CMT=
|
2001-06-14 06:16:47 +08:00
|
|
|
echo "Enabling swapfs support by default"
|
|
|
|
AC_DEFINE(ENABLE_SWAPFS)
|
|
|
|
)
|
2002-11-09 03:55:38 +08:00
|
|
|
AC_SUBST(SWAPFS_CMT)
|
2001-06-14 06:16:47 +08:00
|
|
|
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([imager],
|
|
|
|
[ --disable-imager disable support of e2image program],
|
|
|
|
if test "$enableval" = "no"
|
|
|
|
then
|
|
|
|
echo "Disabling e2image support"
|
|
|
|
IMAGER_CMT="#"
|
|
|
|
else
|
|
|
|
IMAGER_CMT=
|
|
|
|
echo "Enabling e2image support"
|
|
|
|
fi
|
|
|
|
,
|
|
|
|
echo "Enabling e2image support by default"
|
|
|
|
IMAGER_CMT=
|
|
|
|
)
|
|
|
|
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
|
ChangeLog, MCONFIG.in, configure, configure.in:
MCONFIG.in: Change --enable-gcc-wall handling so that it's no longer a
configure option, but something which is done when the developer uses
the command "make gcc-wall".
configure.in: Remove test for ino_t, since we don't use it any more
(we always use our own ext2_ino_t). Remove --enable-gcc-wall support.
Add test for sys/ioctl.h
.del-types.h.in~ca55114a:
Remove definition of ino_t
ChangeLog, Makefile.in, ext2fs.h, flushb.c, jump.funcs:
flushb.c (ext2fs_sync_device): New function which centralizes all of
the places which might try to use the BLKFLSBUF or FDFLUSH ioctls (and
usually failing to define them since the system header files don't
usually do this for us, and we're trying to avoid usage of kernel
include files now.)
2001-01-11 23:48:50 +08:00
|
|
|
dnl handle --enable-dynamic-e2fsck
|
1997-04-26 21:58:21 +08:00
|
|
|
dnl
|
1997-04-29 22:28:00 +08:00
|
|
|
AC_ARG_ENABLE([dynamic-e2fsck],
|
|
|
|
[ --enable-dynamic-e2fsck build e2fsck dynamically],
|
|
|
|
if test "$enableval" = "no"
|
|
|
|
then
|
|
|
|
E2FSCK_TYPE=static
|
|
|
|
echo "Building e2fsck statically"
|
|
|
|
else
|
|
|
|
E2FSCK_TYPE=shared
|
|
|
|
echo "Building e2fsck dynamically"
|
|
|
|
fi
|
|
|
|
,
|
|
|
|
E2FSCK_TYPE=static
|
|
|
|
echo "Building e2fsck statically by default"
|
|
|
|
)
|
|
|
|
AC_SUBST(E2FSCK_TYPE)
|
1997-04-26 21:58:21 +08:00
|
|
|
dnl
|
1997-04-29 22:51:31 +08:00
|
|
|
dnl See whether to install the `fsck' wrapper program (that calls e2fsck)
|
|
|
|
dnl
|
|
|
|
AC_ARG_ENABLE([fsck],
|
|
|
|
[ --enable-fsck build fsck wrapper program],
|
|
|
|
[if test "$enableval" = "no"
|
|
|
|
then
|
|
|
|
FSCK_PROG='' FSCK_MAN=''
|
|
|
|
echo "Not building fsck wrapper"
|
|
|
|
else
|
|
|
|
FSCK_PROG=fsck FSCK_MAN=fsck.8
|
|
|
|
echo "Building fsck wrapper"
|
|
|
|
fi]
|
|
|
|
,
|
|
|
|
[case "$host_os" in
|
2004-05-05 07:39:54 +08:00
|
|
|
gnu*)
|
1997-04-29 22:51:31 +08:00
|
|
|
FSCK_PROG='' FSCK_MAN=''
|
|
|
|
echo "Not building fsck wrapper by default"
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
FSCK_PROG=fsck FSCK_MAN=fsck.8
|
|
|
|
echo "Building fsck wrapper by default"
|
|
|
|
esac]
|
|
|
|
)
|
|
|
|
AC_SUBST(FSCK_PROG)
|
|
|
|
AC_SUBST(FSCK_MAN)
|
|
|
|
dnl
|
2004-09-19 02:53:14 +08:00
|
|
|
dnl See whether to install the `e2initrd-helper' program
|
|
|
|
dnl
|
|
|
|
AC_ARG_ENABLE([e2initrd-helper],
|
|
|
|
[ --enable-e2initrd-helper build e2initrd-helper program],
|
|
|
|
[if test "$enableval" = "no"
|
|
|
|
then
|
|
|
|
E2INITRD_PROG='' E2INITRD_MAN=''
|
|
|
|
echo "Not building e2initrd helper"
|
|
|
|
else
|
|
|
|
E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
|
|
|
|
echo "Building e2initrd helper"
|
|
|
|
fi]
|
|
|
|
,
|
|
|
|
E2INITRD_PROG=e2initrd_helper E2INITRD_MAN=e2initrd_helper.8
|
|
|
|
echo "Building e2initrd helper by default"
|
|
|
|
)
|
|
|
|
AC_SUBST(E2INITRD_PROG)
|
|
|
|
AC_SUBST(E2INITRD_MAN)
|
2006-03-09 03:17:28 +08:00
|
|
|
dnl handle --enable-blkid-devmapper
|
|
|
|
dnl
|
|
|
|
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"
|
|
|
|
|
|
|
|
DEVMAPPER_REQ='libselinux libsepol'
|
|
|
|
DEVMAPPER_PC_LIBS='-ldevmapper'
|
2006-10-22 09:46:47 +08:00
|
|
|
DEVMAPPER_LIBS='-ldevmapper -lselinux -lsepol -lpthread'
|
|
|
|
STATIC_DEVMAPPER_LIBS='/usr/lib/libdevmapper.a /usr/lib/libselinux.a /usr/lib/libsepol.a -lpthread'
|
2006-03-09 03:17:28 +08:00
|
|
|
|
|
|
|
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)
|
|
|
|
dnl
|
2004-09-19 02:53:14 +08:00
|
|
|
dnl
|
1997-04-26 21:58:21 +08:00
|
|
|
dnl
|
|
|
|
MAKEFILE_LIBRARY=$srcdir/lib/Makefile.library
|
|
|
|
AC_SUBST_FILE(MAKEFILE_LIBRARY)
|
|
|
|
dnl
|
2001-06-14 06:16:47 +08:00
|
|
|
dnl Add internationalization support, using gettext.
|
|
|
|
dnl
|
2004-12-01 08:00:19 +08:00
|
|
|
GETTEXT_PACKAGE=e2fsprogs
|
2001-06-14 06:16:47 +08:00
|
|
|
PACKAGE=e2fsprogs
|
|
|
|
VERSION="$E2FSPROGS_VERSION"
|
2004-12-01 08:00:19 +08:00
|
|
|
VERSION=0.14.1
|
2001-06-14 06:16:47 +08:00
|
|
|
AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
|
|
|
|
AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
|
2004-12-01 08:00:19 +08:00
|
|
|
AC_SUBST(GETTEXT_PACKAGE)
|
2001-06-14 06:16:47 +08:00
|
|
|
AC_SUBST(PACKAGE)
|
|
|
|
AC_SUBST(VERSION)
|
|
|
|
|
|
|
|
AM_GNU_GETTEXT
|
|
|
|
dnl
|
1997-04-26 21:58:21 +08:00
|
|
|
dnl End of configuration options
|
|
|
|
dnl
|
1997-04-26 22:37:06 +08:00
|
|
|
AC_SUBST(BINARY_TYPE)
|
1997-04-26 21:58:21 +08:00
|
|
|
AC_PROG_MAKE_SET
|
|
|
|
AC_PATH_PROG(LN, ln, ln)
|
1997-04-29 22:51:31 +08:00
|
|
|
AC_PROG_LN_S
|
1997-04-26 21:58:21 +08:00
|
|
|
AC_PATH_PROG(MV, mv, mv)
|
|
|
|
AC_PATH_PROG(CP, cp, cp)
|
|
|
|
AC_PATH_PROG(RM, rm, rm)
|
|
|
|
AC_PATH_PROG(CHMOD, chmod, :)
|
2005-01-18 08:13:39 +08:00
|
|
|
AC_PROG_AWK
|
|
|
|
AC_PROG_EGREP
|
1997-04-26 21:58:21 +08:00
|
|
|
AC_PATH_PROG(SED, sed, sed)
|
1999-07-04 04:25:58 +08:00
|
|
|
AC_PATH_PROG(PERL, perl, perl)
|
2001-05-20 06:02:22 +08:00
|
|
|
AC_PATH_PROG(LDCONFIG, ldconfig, :)
|
1997-04-26 21:58:21 +08:00
|
|
|
AC_CHECK_TOOL(AR, ar, ar)
|
|
|
|
AC_CHECK_TOOL(RANLIB, ranlib, :)
|
|
|
|
AC_CHECK_TOOL(STRIP, strip, :)
|
|
|
|
AC_PROG_INSTALL
|
1999-07-04 04:37:03 +08:00
|
|
|
# See if we need a separate native compiler.
|
|
|
|
if test $cross_compiling = no; then
|
|
|
|
BUILD_CC="$CC"
|
|
|
|
AC_SUBST(BUILD_CC)
|
|
|
|
else
|
|
|
|
AC_CHECK_PROGS(BUILD_CC, gcc cc)
|
|
|
|
fi
|
2007-04-05 09:26:37 +08:00
|
|
|
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 net/if_dl.h netinet/in.h utime.h)
|
2005-01-19 12:29:01 +08:00
|
|
|
AC_CHECK_HEADERS(sys/disk.h sys/mount.h,,,
|
|
|
|
[[
|
|
|
|
#if HAVE_SYS_QUEUE_H
|
|
|
|
#include <sys/queue.h>
|
|
|
|
#endif
|
|
|
|
]])
|
|
|
|
AC_CHECK_HEADERS(net/if.h,,,
|
|
|
|
[[
|
|
|
|
#if HAVE_SYS_TYPES_H
|
|
|
|
#include <sys/types.h>
|
|
|
|
#endif
|
|
|
|
#if HAVE_SYS_SOCKET
|
|
|
|
#include <sys/socket.h>
|
|
|
|
#endif
|
|
|
|
]])
|
1997-04-26 21:58:21 +08:00
|
|
|
AC_FUNC_VPRINTF
|
2003-04-13 12:44:19 +08:00
|
|
|
dnl Check to see if dirent has member d_reclen. On cygwin those d_reclen
|
|
|
|
dnl is not decleared.
|
2005-01-20 01:59:48 +08:00
|
|
|
AC_CHECK_MEMBER(struct dirent.d_reclen,[AC_DEFINE(HAVE_RECLEN_DIRENT)],,
|
|
|
|
[#include <dirent.h>])
|
2003-04-13 12:44:19 +08:00
|
|
|
dnl Check to see if ssize_t was decleared
|
2005-01-20 01:59:48 +08:00
|
|
|
AC_CHECK_TYPE(ssize_t,[AC_DEFINE(HAVE_TYPE_SSIZE_T)],,
|
|
|
|
[#include <sys/types.h>])
|
1997-04-26 21:58:21 +08:00
|
|
|
dnl
|
1997-10-21 07:36:30 +08:00
|
|
|
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
|
2005-01-20 01:59:48 +08:00
|
|
|
AC_CHECK_DECL(llseek,[AC_DEFINE(HAVE_LLSEEK_PROTOTYPE)],,
|
|
|
|
[#include <unistd.h>])
|
1997-10-21 07:36:30 +08:00
|
|
|
dnl
|
2000-05-26 07:28:50 +08:00
|
|
|
dnl Check to see if lseek64() is declared in unistd.h. Glibc's header files
|
|
|
|
dnl are so convoluted that I can't tell whether it will always be defined,
|
|
|
|
dnl and if it isn't defined while lseek64 is defined in the library,
|
|
|
|
dnl disaster will strike.
|
|
|
|
dnl
|
|
|
|
dnl Warning! Use of --enable-gcc-wall may throw off this test.
|
|
|
|
dnl
|
|
|
|
dnl
|
2005-01-20 01:59:48 +08:00
|
|
|
AC_CHECK_DECL(lseek64,[AC_DEFINE(HAVE_LSEEK64_PROTOTYPE)],,
|
|
|
|
[#define _LARGEFILE_SOURCE
|
|
|
|
#define _LARGEFILE64_SOURCE
|
|
|
|
#include <unistd.h>])
|
2000-05-26 07:28:50 +08:00
|
|
|
dnl
|
1997-04-26 21:58:21 +08:00
|
|
|
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
|
1999-07-04 04:37:03 +08:00
|
|
|
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])
|
1997-04-26 21:58:21 +08:00
|
|
|
fi
|
|
|
|
AC_CHECK_SIZEOF(short)
|
|
|
|
AC_CHECK_SIZEOF(int)
|
|
|
|
AC_CHECK_SIZEOF(long)
|
1997-04-29 22:51:31 +08:00
|
|
|
AC_CHECK_SIZEOF(long long)
|
1997-04-26 21:58:21 +08:00
|
|
|
SIZEOF_SHORT=$ac_cv_sizeof_short
|
|
|
|
SIZEOF_INT=$ac_cv_sizeof_int
|
|
|
|
SIZEOF_LONG=$ac_cv_sizeof_long
|
1997-04-29 22:51:31 +08:00
|
|
|
SIZEOF_LONG_LONG=$ac_cv_sizeof_long_long
|
1997-04-26 21:58:21 +08:00
|
|
|
AC_SUBST(SIZEOF_SHORT)
|
|
|
|
AC_SUBST(SIZEOF_INT)
|
|
|
|
AC_SUBST(SIZEOF_LONG)
|
1997-04-29 22:51:31 +08:00
|
|
|
AC_SUBST(SIZEOF_LONG_LONG)
|
2001-06-11 14:54:13 +08:00
|
|
|
AC_C_BIGENDIAN
|
2006-04-09 20:41:55 +08:00
|
|
|
/bin/sh $ac_aux_dir/parse-types.sh
|
|
|
|
ASM_TYPES_HEADER=./asm_types.h
|
|
|
|
AC_SUBST_FILE(ASM_TYPES_HEADER)
|
1997-04-26 21:58:21 +08:00
|
|
|
dnl
|
2003-08-02 02:26:23 +08:00
|
|
|
dnl See if we have inttypes.h and if intptr_t is defined
|
|
|
|
dnl
|
|
|
|
AC_CHECK_HEADERS([inttypes.h])
|
2005-01-09 13:57:45 +08:00
|
|
|
AC_CHECK_TYPES(intptr_t)
|
2003-08-02 02:26:23 +08:00
|
|
|
dnl
|
1997-04-26 21:58:21 +08:00
|
|
|
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().
|
|
|
|
dnl
|
|
|
|
AC_MSG_CHECKING(whether struct stat has a st_flags field)
|
|
|
|
AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags,
|
|
|
|
AC_TRY_COMPILE([#include <sys/stat.h>],
|
|
|
|
[struct stat stat; stat.st_flags = 0;],
|
|
|
|
[e2fsprogs_cv_struct_st_flags=yes],
|
|
|
|
[e2fsprogs_cv_struct_st_flags=no]))
|
|
|
|
AC_MSG_RESULT($e2fsprogs_cv_struct_st_flags)
|
|
|
|
if test "$e2fsprogs_cv_struct_st_flags" = yes; then
|
1999-10-21 02:20:36 +08:00
|
|
|
AC_MSG_CHECKING(whether st_flags field is useful)
|
|
|
|
AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags_immut,
|
|
|
|
AC_TRY_COMPILE([#include <sys/stat.h>],
|
|
|
|
[struct stat stat; stat.st_flags |= UF_IMMUTABLE;],
|
|
|
|
[e2fsprogs_cv_struct_st_flags_immut=yes],
|
|
|
|
[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)
|
|
|
|
fi
|
1997-04-26 21:58:21 +08:00
|
|
|
fi
|
2004-03-20 08:29:17 +08:00
|
|
|
dnl
|
|
|
|
dnl Check for the presence of SA_LEN
|
|
|
|
dnl
|
2005-01-20 01:59:48 +08:00
|
|
|
AC_CHECK_MEMBER(struct sockaddr.sa_len,
|
|
|
|
AC_DEFINE_UNQUOTED(HAVE_SA_LEN,1,[Define if struct sockaddr contains sa_len]),,
|
|
|
|
[#include <sys/types.h>
|
|
|
|
#include <sys/socket.h>])
|
2004-03-20 08:29:17 +08:00
|
|
|
dnl
|
2007-04-05 09:26:37 +08:00
|
|
|
AC_CHECK_FUNCS(chflags getrusage llseek lseek64 open64 fstat64 getmntinfo strtoull strcasecmp srandom jrand48 fchown mallinfo fdatasync strnlen strptime strdup sysconf pathconf posix_memalign memalign valloc __secure_getenv prctl mmap utime)
|
1997-04-29 22:51:31 +08:00
|
|
|
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
|
|
|
|
SOCKET_LIB=''
|
|
|
|
AC_CHECK_LIB(socket, socket, [SOCKET_LIB=-lsocket])
|
|
|
|
AC_SUBST(SOCKET_LIB)
|
|
|
|
dnl
|
2003-03-16 19:26:25 +08:00
|
|
|
dnl Check to see if libdl exists for the sake of dlopen
|
|
|
|
dnl
|
|
|
|
DLOPEN_LIB=''
|
|
|
|
AC_CHECK_LIB(dl, dlopen,
|
|
|
|
[DLOPEN_LIB=-ldl
|
|
|
|
AC_DEFINE(HAVE_DLOPEN)])
|
|
|
|
AC_SUBST(DLOPEN_LIB)
|
|
|
|
dnl
|
1997-04-26 21:58:21 +08:00
|
|
|
dnl See if optreset exists
|
|
|
|
dnl
|
|
|
|
AC_MSG_CHECKING(for optreset)
|
|
|
|
AC_CACHE_VAL(ac_cv_have_optreset,
|
|
|
|
[AC_EGREP_HEADER(optreset, unistd.h,
|
|
|
|
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)
|
|
|
|
fi
|
|
|
|
dnl
|
2006-08-07 02:33:13 +08:00
|
|
|
dnl Check for unified diff
|
|
|
|
dnl
|
|
|
|
AC_MSG_CHECKING(for unified diff option)
|
|
|
|
if diff -u $0 $0 >& /dev/null ; then
|
|
|
|
UNI_DIFF_OPTS=-u
|
|
|
|
else
|
|
|
|
UNI_DIFF_OPTS=-c
|
|
|
|
fi
|
|
|
|
AC_MSG_RESULT($UNI_DIFF_OPTS)
|
|
|
|
AC_SUBST(UNI_DIFF_OPTS)
|
|
|
|
dnl
|
2000-02-11 13:04:44 +08:00
|
|
|
dnl We use the EXT2 ioctls only under Linux
|
|
|
|
dnl
|
|
|
|
case "$host_os" in
|
|
|
|
linux*)
|
|
|
|
AC_DEFINE(HAVE_EXT2_IOCTLS)
|
|
|
|
;;
|
|
|
|
esac
|
1997-04-26 21:58:21 +08:00
|
|
|
dnl
|
2003-04-13 12:44:19 +08:00
|
|
|
dnl OS-specific uncomment control
|
2002-08-18 15:37:10 +08:00
|
|
|
dnl
|
|
|
|
LINUX_CMT="#"
|
2003-04-13 12:44:19 +08:00
|
|
|
CYGWIN_CMT="#"
|
|
|
|
UNIX_CMT=
|
2002-08-18 15:37:10 +08:00
|
|
|
case "$host_os" in
|
|
|
|
linux*)
|
|
|
|
LINUX_CMT=
|
|
|
|
;;
|
2003-04-13 12:44:19 +08:00
|
|
|
cygwin)
|
|
|
|
CYGWIN_CMT=
|
|
|
|
UNIX_CMT="#"
|
|
|
|
;;
|
2002-08-18 15:37:10 +08:00
|
|
|
esac
|
|
|
|
AC_SUBST(LINUX_CMT)
|
2003-04-13 12:44:19 +08:00
|
|
|
AC_SUBST(CYGWIN_CMT)
|
|
|
|
AC_SUBST(UNIX_CMT)
|
2002-08-18 15:37:10 +08:00
|
|
|
dnl
|
1999-07-04 04:37:03 +08:00
|
|
|
dnl Linux and Hurd places root files in the / by default
|
1997-04-26 21:58:21 +08:00
|
|
|
dnl
|
|
|
|
case "$host_os" in
|
2003-07-12 14:45:05 +08:00
|
|
|
linux* | gnu* | k*bsd*-gnu)
|
Many files:
configure.in: Change how the installation directions are selected.
Previously, we had prefix and usr_prefix, where prefix was '' and
usr_prefix was /usr, and we then defined bindir, ubindir, libdir,
ulibdir, etc. in terms of that. In autoconf 2.12, it's possible to
override bindir, libdir, etc., and so in order to make our
installation directory makefile variables more in line with autoconf
2.12, I've changed all of the various makefiles to use prefix and
root_prefix, where the default Linux definitions are /usr and '',
respectively. What used to be bindir is now root_bindir, and what
used to be ubindir, is now bindir.
MCONFIG.in: Change directories to match with new installation
directory convention (see above). Add Makefile
dependencies for makefile fragments, and define
DEP_LIB_MAKEFILES which library makefiles can use to
define DEP_MAKEFILES, so that the library makefiles will
get regenerated when the makefile fragments change.
Remove the cat?dir variables, since we aren't creating
those directories any more.
Makefile.in: Add top-level uninstall targets.
e2fsprogs-1.12.spec: Add to the RPM package the e2label man page, and
to reflect that fact that we now compile_et and mk_cmds for the
development package.
ChangeLog, Makefile.in:
Makefile.in: Add uninstall target (which is a just a no-op).
version.h, RELEASE-NOTES:
Update to interim version numbers for release purposes.
1998-04-04 00:12:25 +08:00
|
|
|
if test "$prefix" = NONE -a "$root_prefix" = NONE ; then
|
|
|
|
root_prefix="";
|
|
|
|
echo "On $host_os systems, root_prefix defaults to ''"
|
1997-04-29 22:51:31 +08:00
|
|
|
fi
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
dnl
|
Many files:
configure.in: Change how the installation directions are selected.
Previously, we had prefix and usr_prefix, where prefix was '' and
usr_prefix was /usr, and we then defined bindir, ubindir, libdir,
ulibdir, etc. in terms of that. In autoconf 2.12, it's possible to
override bindir, libdir, etc., and so in order to make our
installation directory makefile variables more in line with autoconf
2.12, I've changed all of the various makefiles to use prefix and
root_prefix, where the default Linux definitions are /usr and '',
respectively. What used to be bindir is now root_bindir, and what
used to be ubindir, is now bindir.
MCONFIG.in: Change directories to match with new installation
directory convention (see above). Add Makefile
dependencies for makefile fragments, and define
DEP_LIB_MAKEFILES which library makefiles can use to
define DEP_MAKEFILES, so that the library makefiles will
get regenerated when the makefile fragments change.
Remove the cat?dir variables, since we aren't creating
those directories any more.
Makefile.in: Add top-level uninstall targets.
e2fsprogs-1.12.spec: Add to the RPM package the e2label man page, and
to reflect that fact that we now compile_et and mk_cmds for the
development package.
ChangeLog, Makefile.in:
Makefile.in: Add uninstall target (which is a just a no-op).
version.h, RELEASE-NOTES:
Update to interim version numbers for release purposes.
1998-04-04 00:12:25 +08:00
|
|
|
dnl On Linux/hurd, force the prefix to be /usr
|
1997-04-29 22:51:31 +08:00
|
|
|
dnl
|
|
|
|
case "$host_os" in
|
2003-07-12 14:45:05 +08:00
|
|
|
linux* | gnu* | k*bsd*-gnu)
|
1997-04-29 22:51:31 +08:00
|
|
|
if test "$prefix" = NONE ; then
|
Many files:
configure.in: Change how the installation directions are selected.
Previously, we had prefix and usr_prefix, where prefix was '' and
usr_prefix was /usr, and we then defined bindir, ubindir, libdir,
ulibdir, etc. in terms of that. In autoconf 2.12, it's possible to
override bindir, libdir, etc., and so in order to make our
installation directory makefile variables more in line with autoconf
2.12, I've changed all of the various makefiles to use prefix and
root_prefix, where the default Linux definitions are /usr and '',
respectively. What used to be bindir is now root_bindir, and what
used to be ubindir, is now bindir.
MCONFIG.in: Change directories to match with new installation
directory convention (see above). Add Makefile
dependencies for makefile fragments, and define
DEP_LIB_MAKEFILES which library makefiles can use to
define DEP_MAKEFILES, so that the library makefiles will
get regenerated when the makefile fragments change.
Remove the cat?dir variables, since we aren't creating
those directories any more.
Makefile.in: Add top-level uninstall targets.
e2fsprogs-1.12.spec: Add to the RPM package the e2label man page, and
to reflect that fact that we now compile_et and mk_cmds for the
development package.
ChangeLog, Makefile.in:
Makefile.in: Add uninstall target (which is a just a no-op).
version.h, RELEASE-NOTES:
Update to interim version numbers for release purposes.
1998-04-04 00:12:25 +08:00
|
|
|
prefix="/usr";
|
|
|
|
echo "On $host_os systems, prefix defaults to /usr"
|
2002-05-22 10:21:38 +08:00
|
|
|
if test "$mandir" = '${prefix}/man' ; then
|
|
|
|
echo "...and mandir defaults to /usr/share/man"
|
|
|
|
mandir=/usr/share/man
|
|
|
|
fi
|
1997-04-26 21:58:21 +08:00
|
|
|
fi
|
|
|
|
;;
|
|
|
|
esac
|
Many files:
configure.in: Change how the installation directions are selected.
Previously, we had prefix and usr_prefix, where prefix was '' and
usr_prefix was /usr, and we then defined bindir, ubindir, libdir,
ulibdir, etc. in terms of that. In autoconf 2.12, it's possible to
override bindir, libdir, etc., and so in order to make our
installation directory makefile variables more in line with autoconf
2.12, I've changed all of the various makefiles to use prefix and
root_prefix, where the default Linux definitions are /usr and '',
respectively. What used to be bindir is now root_bindir, and what
used to be ubindir, is now bindir.
MCONFIG.in: Change directories to match with new installation
directory convention (see above). Add Makefile
dependencies for makefile fragments, and define
DEP_LIB_MAKEFILES which library makefiles can use to
define DEP_MAKEFILES, so that the library makefiles will
get regenerated when the makefile fragments change.
Remove the cat?dir variables, since we aren't creating
those directories any more.
Makefile.in: Add top-level uninstall targets.
e2fsprogs-1.12.spec: Add to the RPM package the e2label man page, and
to reflect that fact that we now compile_et and mk_cmds for the
development package.
ChangeLog, Makefile.in:
Makefile.in: Add uninstall target (which is a just a no-op).
version.h, RELEASE-NOTES:
Update to interim version numbers for release purposes.
1998-04-04 00:12:25 +08:00
|
|
|
if test "$root_prefix" = NONE ; then
|
1998-04-08 14:05:49 +08:00
|
|
|
if test "$prefix" = NONE ; then
|
Many files:
configure.in: Change how the installation directions are selected.
Previously, we had prefix and usr_prefix, where prefix was '' and
usr_prefix was /usr, and we then defined bindir, ubindir, libdir,
ulibdir, etc. in terms of that. In autoconf 2.12, it's possible to
override bindir, libdir, etc., and so in order to make our
installation directory makefile variables more in line with autoconf
2.12, I've changed all of the various makefiles to use prefix and
root_prefix, where the default Linux definitions are /usr and '',
respectively. What used to be bindir is now root_bindir, and what
used to be ubindir, is now bindir.
MCONFIG.in: Change directories to match with new installation
directory convention (see above). Add Makefile
dependencies for makefile fragments, and define
DEP_LIB_MAKEFILES which library makefiles can use to
define DEP_MAKEFILES, so that the library makefiles will
get regenerated when the makefile fragments change.
Remove the cat?dir variables, since we aren't creating
those directories any more.
Makefile.in: Add top-level uninstall targets.
e2fsprogs-1.12.spec: Add to the RPM package the e2label man page, and
to reflect that fact that we now compile_et and mk_cmds for the
development package.
ChangeLog, Makefile.in:
Makefile.in: Add uninstall target (which is a just a no-op).
version.h, RELEASE-NOTES:
Update to interim version numbers for release purposes.
1998-04-04 00:12:25 +08:00
|
|
|
root_prefix="$ac_default_prefix"
|
|
|
|
else
|
|
|
|
root_prefix="$prefix"
|
|
|
|
fi
|
2002-05-12 07:17:00 +08:00
|
|
|
root_bindir=$bindir
|
|
|
|
root_sbindir=$sbindir
|
|
|
|
root_libdir=$libdir
|
|
|
|
root_sysconfdir=$sysconfdir
|
|
|
|
else
|
|
|
|
root_bindir='${root_prefix}/bin'
|
|
|
|
root_sbindir='${root_prefix}/sbin'
|
|
|
|
root_libdir='${root_prefix}/lib'
|
|
|
|
root_sysconfdir='${root_prefix}/etc'
|
Many files:
configure.in: Change how the installation directions are selected.
Previously, we had prefix and usr_prefix, where prefix was '' and
usr_prefix was /usr, and we then defined bindir, ubindir, libdir,
ulibdir, etc. in terms of that. In autoconf 2.12, it's possible to
override bindir, libdir, etc., and so in order to make our
installation directory makefile variables more in line with autoconf
2.12, I've changed all of the various makefiles to use prefix and
root_prefix, where the default Linux definitions are /usr and '',
respectively. What used to be bindir is now root_bindir, and what
used to be ubindir, is now bindir.
MCONFIG.in: Change directories to match with new installation
directory convention (see above). Add Makefile
dependencies for makefile fragments, and define
DEP_LIB_MAKEFILES which library makefiles can use to
define DEP_MAKEFILES, so that the library makefiles will
get regenerated when the makefile fragments change.
Remove the cat?dir variables, since we aren't creating
those directories any more.
Makefile.in: Add top-level uninstall targets.
e2fsprogs-1.12.spec: Add to the RPM package the e2label man page, and
to reflect that fact that we now compile_et and mk_cmds for the
development package.
ChangeLog, Makefile.in:
Makefile.in: Add uninstall target (which is a just a no-op).
version.h, RELEASE-NOTES:
Update to interim version numbers for release purposes.
1998-04-04 00:12:25 +08:00
|
|
|
fi
|
|
|
|
AC_SUBST(root_prefix)
|
2002-05-12 07:17:00 +08:00
|
|
|
AC_SUBST(root_bindir)
|
|
|
|
AC_SUBST(root_sbindir)
|
|
|
|
AC_SUBST(root_libdir)
|
|
|
|
AC_SUBST(root_sysconfdir)
|
1997-04-26 21:58:21 +08:00
|
|
|
dnl
|
|
|
|
dnl See if -static works.
|
|
|
|
dnl
|
1997-04-30 02:13:24 +08:00
|
|
|
AC_MSG_CHECKING([whether linker accepts -static])
|
|
|
|
AC_CACHE_VAL(ac_cv_e2fsprogs_use_static,
|
|
|
|
[SAVE_LDFLAGS=$LDFLAGS; LDFLAGS="$LDFLAGS -static"
|
|
|
|
AC_TRY_LINK([#include <stdio.h>],[fflush(stdout);],
|
|
|
|
ac_cv_e2fsprogs_use_static=yes, ac_cv_e2fsprogs_use_static=no)
|
|
|
|
LDFLAGS=$SAVE_LDFLAGS])
|
1999-01-04 15:39:19 +08:00
|
|
|
dnl
|
|
|
|
dnl Regardless of how the test turns out, Solaris doesn't handle -static
|
|
|
|
dnl This is caused by the socket library requiring the nsl library, which
|
|
|
|
dnl requires the -dl library, which only works for dynamically linked
|
|
|
|
dnl programs. It basically means you can't have statically linked programs
|
|
|
|
dnl which use the network under Solaris.
|
|
|
|
dnl
|
|
|
|
case "$host_os" in
|
|
|
|
solaris2.*)
|
|
|
|
ac_cv_e2fsprogs_use_static=no
|
|
|
|
;;
|
|
|
|
esac
|
1997-04-30 02:13:24 +08:00
|
|
|
AC_MSG_RESULT($ac_cv_e2fsprogs_use_static)
|
1997-04-26 22:37:06 +08:00
|
|
|
LDFLAG_STATIC=
|
1997-04-30 02:13:24 +08:00
|
|
|
if test $ac_cv_e2fsprogs_use_static = yes; then
|
1997-04-26 21:58:21 +08:00
|
|
|
LDFLAG_STATIC=-static
|
1997-04-30 02:13:24 +08:00
|
|
|
fi
|
1997-04-26 21:58:21 +08:00
|
|
|
AC_SUBST(LDFLAG_STATIC)
|
|
|
|
dnl
|
2003-07-06 02:50:24 +08:00
|
|
|
dnl Work around mysterious Darwin / GNU libintl problem
|
|
|
|
dnl (__asm__ redirection doesn't work for some mysterious reason. Looks like
|
|
|
|
dnl Apple hacked gcc somehow?)
|
|
|
|
dnl
|
|
|
|
case "$host_os" in
|
|
|
|
darwin*)
|
|
|
|
echo "Using Apple Darwin / GNU libintl workaround"
|
|
|
|
AC_DEFINE(_INTL_REDIRECT_MACROS)
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
dnl
|
1997-04-26 21:58:21 +08:00
|
|
|
dnl Make the ss and et directories work correctly.
|
|
|
|
dnl
|
|
|
|
SS_DIR=`cd ${srcdir}/lib/ss; pwd`
|
|
|
|
ET_DIR=`cd ${srcdir}/lib/et; pwd`
|
|
|
|
AC_SUBST(SS_DIR)
|
|
|
|
AC_SUBST(ET_DIR)
|
|
|
|
dnl
|
|
|
|
dnl Only try to run the test suite if we're not cross compiling.
|
|
|
|
dnl
|
|
|
|
if test "$cross_compiling" = yes ; then
|
|
|
|
DO_TEST_SUITE=
|
|
|
|
else
|
|
|
|
DO_TEST_SUITE=check
|
|
|
|
fi
|
|
|
|
AC_SUBST(DO_TEST_SUITE)
|
|
|
|
dnl
|
2003-05-18 04:29:27 +08:00
|
|
|
dnl Only include the intl include files if we're building with them
|
|
|
|
dnl
|
|
|
|
INTL_FLAGS=
|
|
|
|
if test "$USE_INCLUDED_LIBINTL" = "yes" ; then
|
|
|
|
INTL_FLAGS='-I$(top_builddir)/intl -I$(top_srcdir)/intl'
|
|
|
|
fi
|
|
|
|
AC_SUBST(INTL_FLAGS)
|
|
|
|
dnl
|
2005-11-10 06:37:07 +08:00
|
|
|
dnl Build CFLAGS
|
|
|
|
dnl
|
|
|
|
if test $cross_compiling = no; then
|
|
|
|
BUILD_CFLAGS="$CFLAGS"
|
|
|
|
BUILD_LDFLAGS="$LDFLAGS"
|
|
|
|
else
|
|
|
|
BUILD_CFLAGS=
|
|
|
|
BUILD_LDFLAGS=
|
|
|
|
fi
|
|
|
|
AC_SUBST(BUILD_CFLAGS)
|
|
|
|
AC_SUBST(BUILD_LDFLAGS)
|
|
|
|
dnl
|
1997-04-26 21:58:21 +08:00
|
|
|
dnl Make our output files, being sure that we create the some miscellaneous
|
|
|
|
dnl directories
|
|
|
|
dnl
|
|
|
|
test -d lib || mkdir lib
|
|
|
|
test -d include || mkdir include
|
|
|
|
test -d include/linux || mkdir include/linux
|
1999-01-04 15:39:19 +08:00
|
|
|
test -d include/asm || mkdir include/asm
|
2003-03-23 14:37:53 +08:00
|
|
|
for i in MCONFIG Makefile e2fsprogs.spec \
|
|
|
|
util/Makefile util/subst.conf util/gen-tarball \
|
2006-04-09 20:41:55 +08:00
|
|
|
lib/et/Makefile lib/ss/Makefile lib/e2p/Makefile \
|
|
|
|
lib/ext2fs/Makefile lib/ext2fs/ext2_types.h \
|
2003-03-02 15:07:14 +08:00
|
|
|
lib/uuid/Makefile lib/uuid/uuid_types.h \
|
|
|
|
lib/blkid/Makefile lib/blkid/blkid_types.h \
|
2005-01-27 01:59:25 +08:00
|
|
|
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 \
|
2004-11-20 06:25:27 +08:00
|
|
|
misc/Makefile ext2ed/Makefile e2fsck/Makefile \
|
2003-03-02 15:07:14 +08:00
|
|
|
debugfs/Makefile tests/Makefile tests/progs/Makefile \
|
|
|
|
resize/Makefile doc/Makefile intl/Makefile po/Makefile.in ; do
|
|
|
|
if test -d `dirname ${srcdir}/$i` ; then
|
|
|
|
outlist="$outlist $i"
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
AC_OUTPUT($outlist)
|
2005-02-06 04:53:56 +08:00
|
|
|
if test -f util/gen-tarball; then chmod +x util/gen-tarball; fi
|
|
|
|
|