Files
cryptsetup/configure.in
Milan Broz 4d6dd0df96 Move default cipher paramaters to config.h and allow change through
configuration script.

Change default LUKS keysize to 256.

Change default PLAIN mode to cbc-essiv:sha256.

Note that you have to specify cipher and mode in plain type,
otherwise there is backward incompatibility.

If you really need the same compatible paramaters, you can compile
cryptsetup using old defaults, e.g:

./configure --with-plain-mode=cbc-plain --with-luks1-keybits=128

git-svn-id: https://cryptsetup.googlecode.com/svn/trunk@151 36d66b0a-2a48-0410-832c-cd162a569da5
2009-12-01 14:31:08 +00:00

150 lines
4.3 KiB
Plaintext

AC_PREREQ(2.57)
AC_INIT(cryptsetup,1.1.0-rc3)
AC_CONFIG_SRCDIR(src/cryptsetup.c)
AC_CONFIG_MACRO_DIR([m4])
AM_CONFIG_HEADER([config.h:config.h.in])
AM_INIT_AUTOMAKE(dist-bzip2)
if test "x$prefix" = "xNONE"; then
sysconfdir=/etc
fi
AC_PREFIX_DEFAULT(/usr)
AC_CANONICAL_HOST
AC_GNU_SOURCE
AC_PROG_CC
AM_PROG_CC_C_O
AC_PROG_CPP
AC_PROG_INSTALL
AC_PROG_MAKE_SET
AC_ENABLE_STATIC(no)
AM_PROG_LIBTOOL
AC_HEADER_DIRENT
AC_HEADER_STDC
AC_CHECK_HEADERS(fcntl.h malloc.h inttypes.h sys/ioctl.h sys/mman.h \
ctype.h unistd.h locale.h)
AC_CHECK_HEADERS(uuid/uuid.h,,[AC_MSG_ERROR('You need the uuid library')])
AC_CHECK_HEADER(libdevmapper.h,,[AC_MSG_ERROR('You need the device-mapper library')])
saved_LIBS=$LIBS
AC_CHECK_LIB(uuid, uuid_clear, ,[AC_MSG_ERROR('You need the uuid library')])
AC_SUBST(UUID_LIBS, $LIBS)
LIBS=$saved_LIBS
AM_PATH_LIBGCRYPT(1.1.42,,[AC_MSG_ERROR('You need the gcrypt library')])
AC_CHECK_FUNCS([setlocale, posix_memalign])
AC_C_CONST
AC_C_BIGENDIAN
AC_TYPE_OFF_T
AC_STRUCT_ST_RDEV
AC_SYS_LARGEFILE
AC_PROG_GCC_TRADITIONAL
dnl ==========================================================================
AM_GNU_GETTEXT([external],[need-ngettext])
AM_GNU_GETTEXT_VERSION([0.15])
dnl ==========================================================================
saved_LIBS=$LIBS
AC_CHECK_LIB(popt, poptConfigFileToString,,
[AC_MSG_ERROR([You need popt 1.7 or newer to compile.])])
AC_SUBST(POPT_LIBS, $LIBS)
LIBS=$saved_LIBS
dnl ==========================================================================
AC_ARG_ENABLE(shared-library,
[ --disable-shared-library
disable building of shared cryptsetup library],,
enable_shared_library=yes)
AM_CONDITIONAL(STATIC_LIBRARY, test x$enable_shared_library = xno)
AC_ARG_ENABLE(selinux,
[ --disable-selinux disable selinux support [[default=auto]]],[], [])
saved_LIBS=$LIBS
AC_CHECK_LIB(devmapper, dm_task_set_name,,[AC_MSG_ERROR('You need the device-mapper library')])
DEVMAPPER_LIBS=$LIBS
LIBS=$saved_LIBS
if test "x$enable_selinux" != xno; then
AC_CHECK_LIB(sepol, sepol_bool_set)
AC_CHECK_LIB(selinux, is_selinux_enabled)
if test x$enable_static = xyes; then
SELINUX_STATIC_LIBS=$LIBS
# Check if we need -pthread with --enable-static and selinux
saved_LIBS2=$LIBS
LIBS="$LIBS -static"
AC_SEARCH_LIBS([pthread_mutex_lock], [pthread],
[test "$ac_cv_search_pthread_mutex_lock" = "none required" || LIB_PTHREAD=-lpthread])
LIBS=$saved_LIBS2
fi
fi
if test x$enable_static = xyes; then
saved_LIBS2=$LIBS
LIBS="$LIBS -static"
# Check if it there is still not some missing dependency like static selinux libs
AC_SEARCH_LIBS([dm_set_selinux_context], [devmapper],,
[AC_MSG_ERROR([Your system requires SElinux libraries for static compilation.])])
LIBS=$saved_LIBS2
fi
LIBS=$saved_LIBS
DEVMAPPER_LIBS="$DEVMAPPER_LIBS $LIB_PTHREAD"
AC_SUBST(DEVMAPPER_LIBS)
AC_SUBST(SELINUX_STATIC_LIBS)
dnl ==========================================================================
AC_DEFUN([CS_DEFINE],
[AC_DEFINE_UNQUOTED(DEFAULT_[]m4_translit([$1], [-a-z], [_A-Z]), [$2], [$3])
])
AC_DEFUN([CS_STR_WITH], [AC_ARG_WITH([$1],
[AS_HELP_STRING(--with-[$1], [default $2 [$3]])],
[CS_DEFINE([$1], ["$withval"], [$2])],
[CS_DEFINE([$1], ["$3"], [$2])]
)])
AC_DEFUN([CS_NUM_WITH], [AC_ARG_WITH([$1],
[AS_HELP_STRING(--with-[$1], [default $2 [$3]])],
[CS_DEFINE([$1], [$withval], [$2])],
[CS_DEFINE([$1], [$3], [$2])]
)])
CS_STR_WITH([plain-hash], [password hashing function for plain mode], [ripemd160])
CS_STR_WITH([plain-cipher], [cipher for plain mode], [aes])
CS_STR_WITH([plain-mode], [cipher mode for plain mode], [cbc-essiv:sha256])
CS_NUM_WITH([plain-keybits],[key length in bits for plain mode], [256])
CS_STR_WITH([luks1-hash], [hash function for LUKS1 header], [sha1])
CS_STR_WITH([luks1-cipher], [cipher for LUKS1], [aes])
CS_STR_WITH([luks1-mode], [cipher mode for LUKS1], [cbc-essiv:sha256])
CS_NUM_WITH([luks1-keybits],[key length in bits for LUKS1], [256])
dnl ==========================================================================
AM_CONDITIONAL(STATIC_CRYPTSETUP, test x$enable_static = xyes)
AM_CONDITIONAL(DYNAMIC_CRYPTSETUP, test x$enable_static = xno)
dnl ==========================================================================
AC_OUTPUT([ Makefile
lib/Makefile
lib/libcryptsetup.pc
src/Makefile
po/Makefile.in
luks/Makefile
man/Makefile
tests/Makefile
])