AC_INIT(version.h) AC_PREREQ(2.12) MCONFIG=./MCONFIG AC_SUBST_FILE(MCONFIG) 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 \" " "` E2FSPROGS_DAY=`echo $DATE | awk -F- '{print $1}'` MONTH=`echo $DATE | awk -F- '{print $2}'` YEAR=`echo $DATE | awk -F- '{print $3}'` if expr $YEAR ">" 1900 > /dev/null ; then E2FSPROGS_YEAR=$YEAR elif expr $YEAR ">" 90 >/dev/null ; then E2FSPROGS_YEAR=19$YEAR else E2FSPROGS_YEAR=20$YEAR fi case $MONTH in Jan) E2FSPROGS_MONTH="January" ;; Feb) E2FSPROGS_MONTH="February" ;; Mar) E2FSPROGS_MONTH="March" ;; Apr) E2FSPROGS_MONTH="April" ;; May) E2FSPROGS_MONTH="May" ;; Jun) E2FSPROGS_MONTH="June" ;; Jul) E2FSPROGS_MONTH="July" ;; Aug) E2FSPROGS_MONTH="August" ;; Sep) E2FSPROGS_MONTH="September" ;; Oct) E2FSPROGS_MONTH="October" ;; Nov) E2FSPROGS_MONTH="November" ;; Dec) E2FSPROGS_MONTH="December" ;; *) echo "Unknown month $MONTH??" ;; esac unset DATE MONTH YEAR 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) AC_SUBST(E2FSPROGS_DAY) AC_SUBST(E2FSPROGS_VERSION) AC_CANONICAL_HOST dnl dnl Should we compile EVMS plugin or not. Complicated logic, spread dnl over several different command-line options... dnl EVMS_CMT= dnl dnl Use diet libc dnl AC_ARG_WITH([diet-libc], [ --with-diet-libc Use diet libc], CC="diet cc -nostdinc" EVMS_CMT="#" 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 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) 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 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]) if test "$linux_headers" != yes; then LINUX_INCLUDE='-I$(top_builddir)/include' fi AC_SUBST(LINUX_INCLUDE) dnl 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 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) dnl dnl Allow separate `root_prefix' to be specified dnl 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 dnl 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 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 , HTREE_CMT= AC_DEFINE(ENABLE_HTREE) echo "Enabling htree directory support by default" ) AC_SUBST(HTREE_CMT) dnl dnl handle --enable-clear-htree dnl AC_ARG_ENABLE([htree-clear], [ --enable-htree-clear clear htree because we don't trust e2fsck], if test "$enableval" = "no" then HTREE_CLR_CMT=# echo "Disabling htree clearing" else HTREE_CLR_CMT= AC_DEFINE(ENABLE_HTREE_CLEAR) echo "Enabling htree clearing" fi , HTREE_CLR_CMT=# echo "Disabling htree clearing by default" ) AC_SUBST(HTREE_CLR_CMT) dnl dnl handle --enable-evms dnl AC_ARG_ENABLE([evms], [ --disable-evms don't build EVMS plugin], if test "$enableval" == "no" then EVMS_CMT="#" echo "Disabling EVMS plugin" fi ) dnl dnl handle --enable-emvs-10 dnl EVMS_ABI_CODE=120 AC_ARG_ENABLE([evms-10], [ --enable-evms-10 use EVMS 1.0 ABI (instead of EVMS 1.2)], if test "$enableval" != "no" then EVMS_ABI_CODE=100 echo "Enabling EVMS 1.0.0 ABI" fi ) dnl dnl handle --enable-emvs-11 dnl AC_ARG_ENABLE([evms-11], [ --enable-evms-11 use EVMS 1.1 ABI (instead of EVMS 1.2)], if test "$enableval" != "no" then EVMS_ABI_CODE=110 echo "Enabling EVMS 1.1.0 ABI" fi ) if test "$EVMS_ABI_CODE" = "120" then echo "Using EVMS 1.2.0 ABI by default" fi AC_SUBST(EVMS_ABI_CODE) dnl dnl handle --enable-dll-shlibs dnl AC_ARG_ENABLE([dll-shlibs], [ --enable-dll-shlibs select DLL libraries], if test "$enableval" = "no" then DLL_CMT=# MAKEFILE_DLL=/dev/null echo "Disabling DLL shared libraries" else DLL_CMT= MAKEFILE_DLL=$srcdir/lib/Makefile.dll-lib BINARY_TYPE=dllbin LIB_EXT=.sa echo "Enabling DLL shared libraries" fi , MAKEFILE_DLL=/dev/null DLL_CMT=# echo "Disabling DLL shared libraries by default" ) AC_SUBST(DLL_CMT) AC_SUBST_FILE(MAKEFILE_DLL) dnl dnl handle --enable-elf-shlibs dnl AC_ARG_ENABLE([elf-shlibs], [ --enable-elf-shlibs select ELF shared libraries], 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 [case "$host_os" in solaris2.*) MAKEFILE_ELF=$srcdir/lib/Makefile.solaris-lib ;; esac] BINARY_TYPE=elfbin LIB_EXT=.so 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], [ --enable-bsd-shlibs select BSD shared libraries], 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 LIB_EXT=.so [case "$host_os" in darwin*) MAKEFILE_BSDLIB=$srcdir/lib/Makefile.darwin-lib LIB_EXT=.dylib ;; esac] 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], [ --enable-profile build profiling libraries], if test "$enableval" = "no" then PROFILE_CMT=# MAKEFILE_PROFILE=/dev/null echo "Disabling profiling libraries" else PROFILE_CMT= MAKEFILE_PROFILE=$srcdir/lib/Makefile.profile PROFILED_LIB_EXT=_p.a 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], [ --enable-checker build checker libraries], 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 dnl Substitute library extensions dnl AC_SUBST(LIB_EXT) AC_SUBST(STATIC_LIB_EXT) AC_SUBST(PROFILED_LIB_EXT) dnl dnl handle --enable-jbd-debug dnl AC_ARG_ENABLE([jbd-debug], [ --enable-jbd-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-blkid-debug dnl AC_ARG_ENABLE([blkid-debug], [ --enable-blkid-debug enable blkid debugging], 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" ) 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" ) dnl dnl handle --enable-swapfs dnl AC_ARG_ENABLE([swapfs], [ --disable-swapfs disable support of legacy byte-swapped filesystems], if test "$enableval" = "no" then SWAPFS_CMT=# echo "Disabling swapfs support" else SWAPFS_CMT= AC_DEFINE(ENABLE_SWAPFS) echo "Enabling swapfs support" fi , SWAPFS_CMT= echo "Enabling swapfs support by default" AC_DEFINE(ENABLE_SWAPFS) ) AC_SUBST(SWAPFS_CMT) 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 dnl handle --enable-dynamic-e2fsck dnl 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) dnl 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 gnu* | k*bsd*-gnu) 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 dnl MAKEFILE_LIBRARY=$srcdir/lib/Makefile.library AC_SUBST_FILE(MAKEFILE_LIBRARY) dnl dnl AC_ARG_ENABLE([old-bitops], [ --enable-old-bitops Use old (non-standard but native) bitmask operations], if test "$enableval" = "no" then echo "Using new (standard) bitmask operations" else AC_DEFINE(EXT2_OLD_BITOPS) echo "Using old (native) bitmask operations" 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) AM_GNU_GETTEXT dnl dnl End of configuration options dnl AC_SUBST(BINARY_TYPE) AC_PROG_MAKE_SET AC_PATH_PROG(LN, ln, ln) AC_PROG_LN_S AC_PATH_PROG(MV, mv, mv) AC_PATH_PROG(CP, cp, cp) AC_PATH_PROG(RM, rm, rm) 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, :) AC_PROG_INSTALL # 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 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/socket.h sys/sysmacros.h sys/time.h sys/stat.h sys/types.h sys/wait.h sys/resource.h net/if.h netinet/in.h) AC_FUNC_VPRINTF dnl Check to see if dirent has member d_reclen. On cygwin those d_reclen dnl is not decleared. AC_MSG_CHECKING(whether d_reclen declared in dirent) AC_CACHE_VAL(e2fsprogs_cv_have_d_reclen_dirent, AC_TRY_COMPILE( [#include ], [struct dirent de; de.d_reclen = 0; ], [e2fsprogs_cv_have_d_reclen_dirent=yes], [e2fsprogs_cv_have_d_reclen_dirent=no])) AC_MSG_RESULT($e2fsprogs_cv_have_d_reclen_dirent) if test "$e2fsprogs_cv_have_d_reclen_dirent" = yes; then AC_DEFINE(HAVE_RECLEN_DIRENT) fi dnl Check to see if ssize_t was decleared AC_MSG_CHECKING(whether ssize_t declared) AC_CACHE_VAL(e2fsprogs_cv_have_ssize_t, AC_TRY_COMPILE( [#include ], [ssize_t a = 0; ], [e2fsprogs_cv_have_ssize_t=yes], [e2fsprogs_cv_have_ssize_t=no])) AC_MSG_RESULT($e2fsprogs_cv_have_ssize_t) if test "$e2fsprogs_cv_have_ssize_t" = yes; then AC_DEFINE(HAVE_TYPE_SSIZE_T) fi 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 dnl Warning! Use of --enable-gcc-wall may throw off this test. dnl dnl AC_MSG_CHECKING(whether llseek declared in unistd.h) AC_CACHE_VAL(e2fsprogs_cv_have_llseek_prototype, AC_TRY_COMPILE( [#include ], [extern int llseek(int);], [e2fsprogs_cv_have_llseek_prototype=no], [e2fsprogs_cv_have_llseek_prototype=yes])) AC_MSG_RESULT($e2fsprogs_cv_have_llseek_prototype) if test "$e2fsprogs_cv_have_llseek_prototype" = yes; then AC_DEFINE(HAVE_LLSEEK_PROTOTYPE) fi dnl 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 AC_MSG_CHECKING(whether lseek64 declared in unistd.h) AC_CACHE_VAL(e2fsprogs_cv_have_lseek64_prototype, AC_TRY_COMPILE( [#define _LARGEFILE_SOURCE #define _LARGEFILE64_SOURCE #include ], [extern int lseek64(int);], [e2fsprogs_cv_have_lseek64_prototype=no], [e2fsprogs_cv_have_lseek64_prototype=yes])) AC_MSG_RESULT($e2fsprogs_cv_have_lseek64_prototype) if test "$e2fsprogs_cv_have_lseek64_prototype" = yes; then AC_DEFINE(HAVE_LSEEK64_PROTOTYPE) fi 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) 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 AC_SUBST(SIZEOF_SHORT) AC_SUBST(SIZEOF_INT) AC_SUBST(SIZEOF_LONG) AC_SUBST(SIZEOF_LONG_LONG) AC_C_BIGENDIAN dnl dnl See if we have inttypes.h and if intptr_t is defined dnl AC_CHECK_HEADERS([inttypes.h]) AC_CHECK_TYPE(intptr_t,long) 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(). dnl AC_MSG_CHECKING(whether struct stat has a st_flags field) AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags, AC_TRY_COMPILE([#include ], [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 AC_MSG_CHECKING(whether st_flags field is useful) AC_CACHE_VAL(e2fsprogs_cv_struct_st_flags_immut, AC_TRY_COMPILE([#include ], [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 fi AC_CHECK_FUNCS(chflags getrusage llseek lseek64 open64 getmntinfo strtoull strcasecmp srandom fchown mallinfo fdatasync strnlen strptime sysconf pathconf posix_memalign memalign 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 SOCKET_LIB='' 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 DLOPEN_LIB='' AC_CHECK_LIB(dl, dlopen, [DLOPEN_LIB=-ldl AC_DEFINE(HAVE_DLOPEN)]) AC_SUBST(DLOPEN_LIB) dnl 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 dnl We use the EXT2 ioctls only under Linux dnl case "$host_os" in linux*) AC_DEFINE(HAVE_EXT2_IOCTLS) ;; esac dnl dnl OS-specific uncomment control dnl LINUX_CMT="#" CYGWIN_CMT="#" UNIX_CMT= case "$host_os" in linux*) LINUX_CMT= ;; cygwin) CYGWIN_CMT= UNIX_CMT="#" EVMS_CMT="#" ;; *) EVMS_CMT="#" esac AC_SUBST(LINUX_CMT) AC_SUBST(CYGWIN_CMT) AC_SUBST(UNIX_CMT) AC_SUBST([EVMS_CMT]) dnl dnl Linux and Hurd places root files in the / by default dnl case "$host_os" in 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 ''" fi ;; esac dnl dnl On Linux/hurd, force the prefix to be /usr dnl case "$host_os" in linux* | gnu* | k*bsd*-gnu) if test "$prefix" = NONE ; then prefix="/usr"; echo "On $host_os systems, prefix defaults to /usr" if test "$mandir" = '${prefix}/man' ; then echo "...and mandir defaults to /usr/share/man" mandir=/usr/share/man fi fi ;; esac if test "$root_prefix" = NONE ; then if test "$prefix" = NONE ; then root_prefix="$ac_default_prefix" else root_prefix="$prefix" fi 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' fi AC_SUBST(root_prefix) AC_SUBST(root_bindir) AC_SUBST(root_sbindir) AC_SUBST(root_libdir) AC_SUBST(root_sysconfdir) dnl dnl See if -static works. dnl 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 ],[fflush(stdout);], ac_cv_e2fsprogs_use_static=yes, ac_cv_e2fsprogs_use_static=no) LDFLAGS=$SAVE_LDFLAGS]) 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 AC_MSG_RESULT($ac_cv_e2fsprogs_use_static) LDFLAG_STATIC= if test $ac_cv_e2fsprogs_use_static = yes; then LDFLAG_STATIC=-static fi AC_SUBST(LDFLAG_STATIC) dnl 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 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 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 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 test -d include/asm || mkdir include/asm for i in MCONFIG Makefile e2fsprogs.spec \ util/Makefile util/subst.conf util/gen-tarball \ lib/et/Makefile lib/ss/Makefile lib/ext2fs/Makefile lib/e2p/Makefile \ lib/uuid/Makefile lib/uuid/uuid_types.h \ lib/blkid/Makefile lib/blkid/blkid_types.h \ lib/evms/Makefile misc/Makefile ext2ed/Makefile e2fsck/Makefile \ 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)