AC_INIT(dump/dump.h) MCONFIG=./MCONFIG AC_SUBST_FILE(MCONFIG) AC_CONFIG_HEADER(config.h) dnl dnl Check for programs dnl AC_PROG_MAKE_SET AC_PROG_LN_S AC_PATH_PROG(CP, cp, cp) AC_PATH_PROG(MV, mv, mv) AC_PATH_PROG(RM, rm, rm) AC_CHECK_TOOL(AR, ar, ar) AC_CHECK_TOOL(RANLIB, ranlib, :) AC_CHECK_TOOL(PATCH, patch, :) AC_PROG_CC AC_PROG_INSTALL dnl dnl Handle --enable-debug dnl AC_ARG_ENABLE([debug], [ --enable-debug include debugging code], if test "$enableval" = "no" then DUMPDEBUG="" RESTOREDEBUG="" else DUMPDEBUG="-DFDEBUG -DTDEBUG -DWRITEDEBUG -DDIRDEBUG" RESTOREDEBUG="-DDIRDEBUG" fi, DUMPDEBUG="" RESTOREDEBUG="" ) AC_SUBST(DUMPDEBUG) AC_SUBST(RESTOREDEBUG) dnl dnl Handle --enable-static dnl AC_ARG_ENABLE([static], [ --enable-static link dump and restore statically], if test "$enableval" = "no" then STATIC="" else STATIC="-static" fi , STATIC="" echo "Linking dump and restore dynamically by default" ) AC_SUBST(STATIC) dnl dnl Handle --enable-rmt dnl AC_ARG_ENABLE([rmt], [ --enable-rmt compile and install rmt], if test "$enableval" = "no" then RMTDIR="" RMTMAKEFILE="" else RMTDIR="rmt" RMTMAKEFILE="rmt/Makefile" fi , RMTDIR="" echo "Not compiling rmt by default" ) AC_SUBST(RMTDIR) dnl dnl Handle --enable-kerberos dnl AC_ARG_ENABLE([kerberos], [ --enable-kerberos compile kerberos extensions], if test "$enableval" = "yes" then OPTDEFS="-DKERBEROS" else OPTDEFS="" fi , OPTDEFS="" echo "Not compiling kerberos extensions by default" ) AC_SUBST(OPTDEFS) dnl dnl Handle --enable-readline dnl AC_ARG_ENABLE([readline], [ --enable-readline enable readline support in restore], if test "$enableval" = "no" then READLINE="" else READLINE="-lreadline -ltermcap" AC_DEFINE(HAVE_READLINE) fi , READLINE="" echo "Not including readline support by default" ) AC_SUBST(READLINE) dnl dnl Handle --enable-oldsylefscript dnl AC_ARG_ENABLE([oldstylefscript], [ --enable-oldstylefscript enable old style F script (no arguments)], if test "$enableval" = "yes" then AC_DEFINE(OLD_STYLE_FSCRIPT) fi , echo "Using new style F script" ) dnl dnl Handle --enable-largefile dnl AC_ARG_ENABLE([largefile], [ --enable-largefile enable Large File System support (your glibc needs to support it)], if test "$enableval" = "yes" then AC_DEFINE(USE_LFS) fi , echo "Not enabling Large File System support" ) dnl dnl Handle --enable-qfa dnl AC_ARG_ENABLE([qfa], [ --enable-qfa enable Quick File Access support], if test "$enableval" = "yes" then AC_DEFINE(USE_QFA) fi , echo "Not enabling Quick File Access support" ) dnl dnl Handle --enable-qfadebug dnl AC_ARG_ENABLE([qfadebug], [ --enable-qfadebug include Quick File Access debugging code], if test "$enableval" = "yes" then AC_DEFINE(DEBUG_QFA) fi , echo "Not including Quick File Access debugging code" ) 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]) 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) CCOPTS=$withval CFLAGS="$CFLAGS $withval", CCOPTS=)dnl AC_SUBST(CCOPTS) 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 set $(BINOWNER) from --with-binowner dnl AC_ARG_WITH([binowner], [ --with-binowner=USER select owner for binaries], AC_MSG_RESULT(BINOWNER is $withval) BINOWNER=$withval, BINOWNER=root echo "BINOWNER defaults to $BINOWNER" )dnl AC_SUBST(BINOWNER) dnl dnl set $(BINGRP) from --with-bingrp dnl AC_ARG_WITH([bingrp], [ --with-bingrp=GROUP select group for binaries], AC_MSG_RESULT(BINGRP is $withval) BINGRP=$withval, BINGRP=tty echo "BINGRP defaults to $BINGRP" )dnl AC_SUBST(BINGRP) dnl dnl set $(BINMODE) from --with-binmode dnl AC_ARG_WITH([binmode], [ --with-binmode=MODE select mode for binaries], AC_MSG_RESULT(BINMODE is $withval) BINMODE=$withval, BINMODE=0755 echo "BINMODE defaults to $BINMODE" )dnl AC_SUBST(BINMODE) dnl dnl set $(MANOWNER) from --with-manowner dnl AC_ARG_WITH([manowner], [ --with-manowner=USER select owner for manual pages], AC_MSG_RESULT(MANOWNER is $withval) MANOWNER=$withval, MANOWNER=man echo "MANOWNER defaults to $MANOWNER" )dnl AC_SUBST(MANOWNER) dnl dnl set $(MANGRP) from --with-mangrp dnl AC_ARG_WITH([mangrp], [ --with-mangrp=GROUP select group for manual pages], AC_MSG_RESULT(MANGRP is $withval) MANGRP=$withval, MANGRP=tty echo "MANGRP defaults to $MANGRP" )dnl AC_SUBST(MANGRP) dnl dnl set $(MANMODE) from --with-manmode dnl AC_ARG_WITH([manmode], [ --with-manmode=MODE select mode for manual pages], AC_MSG_RESULT(MANMODE is $withval) MANMODE=$withval, MANMODE=0644 echo "MANMODE defaults to $MANMODE" )dnl AC_SUBST(MANMODE) dnl dnl set $(DUMPDATESPATH) from --with-dumpdatespath dnl AC_ARG_WITH([dumpdatespath], [ --with-dumpdatespath=PATH select path for dumpdates file], AC_MSG_RESULT(DUMPDATESPATH is $withval) DUMPDATESPATH=$withval, DUMPDATESPATH="${sysconfdir}/dumpdates" echo "DUMPDATESPATH defaults to $DUMPDATESPATH" )dnl AC_SUBST(DUMPDATESPATH) dnl dnl Check for Ext2fs headers and libraries dnl AC_CHECK_HEADER(ext2fs/ext2fs.h, [ext2fs_h=yes], [ext2fs_h=no]) AC_CHECK_LIB(ext2fs, ext2fs_open, [ext2fs_lib=yes], [ext2fs_lib=no], [-lcom_err]) if test "$ext2fs_h" = no -o "$ext2fs_lib" = no; then AC_MSG_ERROR(You need to install the Ext2fs libraries from the E2fsprogs distribution first - hint: make install-libs) fi dnl dnl Try to use ext2_fs.h header from libext2fs instead of from the kernel dnl AC_CHECK_HEADERS(ext2fs/ext2_fs.h) dnl dnl Check for ext2_ino_t type dnl AC_MSG_CHECKING(for ext2_ino_t type in libext2fs headers) AC_TRY_COMPILE([#include #ifdef HAVE_EXT2FS_EXT2_FS_H #include #else #include #endif #include ], [ext2_ino_t ino = 0;], [AC_DEFINE(HAVE_EXT2_INO_T) AC_MSG_RESULT(yes)], AC_MSG_RESULT(no)) dnl dnl Check for s_journal_inum field in ext2_super_block struct dnl AC_MSG_CHECKING(for s_journal_inum field in ext2_super_block struct) AC_TRY_COMPILE([#include #ifdef HAVE_EXT2FS_EXT2_FS_H #include #else #include #endif #include ], [struct ext2_super_block es; es.s_journal_inum = 0;], [AC_DEFINE(HAVE_EXT2_JOURNAL_INUM) AC_MSG_RESULT(yes)], AC_MSG_RESULT(no)) dnl dnl Check for termcap libraries dnl AC_CHECK_LIB(termcap, tgetent, [termcap_lib=yes], [termcap_lib=no]) if test "$termcap_lib" = no; then if test "$READLINE" = "-lreadline -ltermcap"; then AC_MSG_ERROR(You need to install the GNU termcap library or configure without --enable-readline) fi fi dnl dnl Check for readline headers and libraries dnl AC_CHECK_HEADER(readline/readline.h, [readline_h=yes], [readline_h=no]) AC_CHECK_LIB(readline, readline, [readline_lib=yes], [readline_lib=no], "-ltermcap") if test "$readline_h" = no -o "$readline_lib" = no; then if test "$READLINE" = "-lreadline -ltermcap"; then AC_MSG_ERROR(You need to install the GNU readline library or configure without --enable-readline) fi fi dnl dnl Check for zlib headers and libraries dnl AC_CHECK_HEADER(zlib.h, [zlib_h=yes], [zlib_h=no]) AC_CHECK_LIB(z, compress2, [zlib_lib=yes], [zlib_lib=no]) if test "$zlib_h" = yes -a "$zlib_lib" = yes; then ZLIB="-lz" AC_DEFINE(HAVE_ZLIB) else ZLIB="" fi AC_SUBST(ZLIB) dnl dnl Check for library functions dnl AC_CHECK_FUNCS(err errx verr verrx vwarn vwarnx warn warnx realpath lchown) AC_CHECK_FUNC(glob) dnl dnl Check for GLOB_ALTDIRFUNC dnl AC_MSG_CHECKING(for extended glob routines) if test "$ac_cv_func_glob" = "yes"; then AC_EGREP_CPP(yes, [ # include # ifdef GLOB_ALTDIRFUNC yes # endif ], [ AC_DEFINE(HAVE_GLOB) AC_MSG_RESULT(yes) ], [ AC_MSG_RESULT(no) echo "Your system does not support extended glob, will use the internal routines" ]) fi dnl dnl Check for types dnl AC_CHECK_TYPE(quad_t, __s64) AC_CHECK_TYPE(u_quad_t, __u64) dnl dnl Compute top_buildir dnl top_builddir=`cd .; pwd` AC_SUBST(top_builddir) dnl dnl Create directories dnl test -d compat || mkdir compat test -d compat/lib || mkdir compat/lib dnl dnl Output files dnl AC_OUTPUT(MCONFIG Makefile common/Makefile compat/include/Makefile compat/lib/Makefile dump/Makefile restore/Makefile $RMTMAKEFILE)