~ubuntu-branches/ubuntu/oneiric/cryptsetup/oneiric

« back to all changes in this revision

Viewing changes to configure.in

  • Committer: Bazaar Package Importer
  • Author(s): Steve Langasek
  • Date: 2010-06-14 21:47:28 UTC
  • mfrom: (0.1.12 sid)
  • Revision ID: james.westby@ubuntu.com-20100614214728-tm8kdwg6chjejlbq
Tags: 2:1.1.2-1ubuntu1
* Merge from Debian unstable (LP: #594365).  Remaining changes:
  - debian/control:
    + Bump initramfs-tools Suggests to Depends: so system is not
      potentially rendered unbootable.
    + Depend on plymouth.   
  - Add debian/cryptdisks-{enable,udev}.upstart.
  - debian/cryptdisks.functions:
    + new function, crypttab_start_one_disk, to look for the named source
      device in /etc/crypttab (by device name, UUID, or label) and start it
      if configured to do so
    + wrap the call to /lib/cryptsetup/askpass with watershed, to make sure
      we only ever have one of these running at a time; otherwise multiple
      invocations could steal each other's input and/or write over each
      other's output
    + initially create the device under a temporary name and rename it only
      at the end using 'dmsetup rename', to ensure that upstart/mountall
      doesn't see our device before it's ready to go.
    + do_tmp should mount under /var/run/cryptsetup for changing the
      permissions of the filesystem root, not directly on /tmp, since
      mounting on /tmp a) is racy, b) confuses mountall something fierce.
    + when called by cryptdisks-enable, check that we don't already have a
      corresponding cryptdisks-udev job running (probably waiting for a
      passphrase); if there is, wait until it's finished before continuing.
  - debian/cryptdisks{,-early}.init: Make the 'start' action of the init
    script a no-op, this should be handled entirely by the upstart job;
    and fix the LSB header to not declare this should be started in
    runlevel 'S'
  - debian/cryptsetup.postinst: Remove any symlinks from /etc/rcS.d on
    upgrade. 
  - debian/rules: Do not install start symlinks for init scripts, and
    install debian/cryptdisks-{enable,udev}.upstart scripts.
  - Add debian/cryptsetup.apport: Apport package hook. Install in
    debian/rules and create dir in debian/cryptsetup.dirs.
  - debian/rules: link dynamically against libgcrypt and libgpg-error.
  - debian/cryptsetup.postrm: call update-initramfs on package removal.
* Dropped changes, merged/superseded in Debian:
  - Add ext4 support to passdev.
  - cryptroot-hook: don't call copy_modules_dir with empty arguments when
    archcrypto isn't found
  - Set USPLASH=y and FRAMEBUFFER=y in the hook config to pull plymouth into
    the initramfs.
  - change interaction to use plymouth directly if present, and if not, to
    fall back to /lib/cryptsetup/askpass as before
  - cryptdisks.functions: replace 'echo -e' bashism with 'printf'.
  - debian/initramfs/cryptroot-script: if plymouth is present in the
    initramfs, use this directly, bypassing the cryptsetup askpass script
  - debian/initramfs/cryptroot-hook: Properly anchor our regexps when
    grepping /etc/crypttab so that we don't incorrectly match device names
    that are substrings of one another.
  - debian/initramfs/cryptroot-script: Don't leak /conf/conf.d/cryptroot
    file descriptor to subprocesses.
  - Fix grammar error in debian/initramfs/cryptroot-script
    ("setup" -> "set up")
  - debian/initramfs/cryptroot-script: Fix this to work with current
    initramfs-tools:
    + Source /scripts/functions after checking for prerequisites.
    + prereqs(): Do not assume we are running within initramfs, and
      calculate relative path correctly.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
AC_PREREQ(2.57)
2
 
AC_INIT(cryptsetup,1.1.0-rc2)
 
2
AC_INIT(cryptsetup,1.1.2)
 
3
 
 
4
dnl library version from <major>.<minor>.<release>[-<suffix>]
 
5
LIBCRYPTSETUP_VERSION=$(echo $PACKAGE_VERSION | cut -f1 -d-)
 
6
LIBCRYPTSETUP_VERSION_INFO=1:0:0
 
7
 
3
8
AC_CONFIG_SRCDIR(src/cryptsetup.c)
4
9
AC_CONFIG_MACRO_DIR([m4])
5
10
 
37
42
 
38
43
AM_PATH_LIBGCRYPT(1.1.42,,[AC_MSG_ERROR('You need the gcrypt library')])
39
44
 
40
 
AC_CHECK_FUNCS([setlocale, posix_memalign])
 
45
AC_CHECK_FUNCS([posix_memalign])
41
46
 
42
47
AC_C_CONST
43
48
AC_C_BIGENDIAN
71
76
AC_ARG_ENABLE(selinux,
72
77
[  --disable-selinux       disable selinux support [[default=auto]]],[], [])
73
78
 
 
79
AC_ARG_ENABLE([udev],AS_HELP_STRING([--disable-udev],[disable udev support]),[], enable_udev=yes)
 
80
 
 
81
dnl Try to use pkg-config for devmapper, but fallback to old detection
74
82
saved_LIBS=$LIBS
75
 
AC_CHECK_LIB(devmapper, dm_task_set_name,,[AC_MSG_ERROR('You need the device-mapper library')])
76
 
DEVMAPPER_LIBS=$LIBS
 
83
if AC_RUN_LOG([pkg-config --exists --print-errors devmapper]); then
 
84
        PKG_PROG_PKG_CONFIG
 
85
        if test x$enable_static = xyes; then
 
86
                PKG_CONFIG="$PKG_CONFIG --static"
 
87
        fi
 
88
        PKG_CHECK_MODULES([DEVMAPPER], [devmapper >= 1.02.03])
 
89
        LIBS="$LIBS $DEVMAPPER_LIBS"
 
90
else
 
91
        AC_CHECK_LIB(devmapper, dm_task_set_name,,
 
92
                [AC_MSG_ERROR('You need the device-mapper library')])
 
93
        AC_CHECK_LIB(devmapper, dm_task_set_message,,
 
94
                [AC_MSG_ERROR([The device-mapper library on your system is too old.])])
 
95
        DEVMAPPER_LIBS=$LIBS
 
96
fi
 
97
 
 
98
AC_CHECK_FUNCS([dm_task_set_cookie], [have_cookie=yes], [have_cookie=no])
 
99
if test "x$enable_udev" = xyes; then
 
100
        if test "x$have_cookie" = xno; then
 
101
                AC_MSG_WARN([The device-mapper library on your system has no udev support, udev support disabled.])
 
102
        else
 
103
                AC_DEFINE(USE_UDEV, 1, [Try to use udev synchronisation?])
 
104
        fi
 
105
fi
 
106
 
77
107
LIBS=$saved_LIBS
78
108
if test "x$enable_selinux" != xno; then
79
109
        AC_CHECK_LIB(sepol, sepol_bool_set)
88
118
                LIBS=$saved_LIBS2
89
119
        fi
90
120
fi
 
121
 
91
122
LIBS=$saved_LIBS
 
123
 
92
124
DEVMAPPER_LIBS="$DEVMAPPER_LIBS $LIB_PTHREAD"
93
 
AC_SUBST(DEVMAPPER_LIBS)
94
 
AC_SUBST(SELINUX_STATIC_LIBS)
 
125
AC_SUBST([DEVMAPPER_LIBS])
 
126
AC_SUBST([SELINUX_STATIC_LIBS])
 
127
AC_SUBST([LIBCRYPTSETUP_VERSION])
 
128
AC_SUBST([LIBCRYPTSETUP_VERSION_INFO])
 
129
 
 
130
dnl ==========================================================================
 
131
AC_DEFUN([CS_DEFINE],
 
132
        [AC_DEFINE_UNQUOTED(DEFAULT_[]m4_translit([$1], [-a-z], [_A-Z]), [$2], [$3])
 
133
])
 
134
 
 
135
AC_DEFUN([CS_STR_WITH], [AC_ARG_WITH([$1],
 
136
        [AS_HELP_STRING(--with-[$1], [default $2 [$3]])],
 
137
        [CS_DEFINE([$1], ["$withval"], [$2])],
 
138
        [CS_DEFINE([$1], ["$3"], [$2])]
 
139
)])
 
140
 
 
141
AC_DEFUN([CS_NUM_WITH], [AC_ARG_WITH([$1],
 
142
        [AS_HELP_STRING(--with-[$1], [default $2 [$3]])],
 
143
        [CS_DEFINE([$1], [$withval], [$2])],
 
144
        [CS_DEFINE([$1], [$3], [$2])]
 
145
)])
 
146
 
 
147
CS_STR_WITH([plain-hash],   [password hashing function for plain mode], [ripemd160])
 
148
CS_STR_WITH([plain-cipher], [cipher for plain mode], [aes])
 
149
CS_STR_WITH([plain-mode],   [cipher mode for plain mode], [cbc-essiv:sha256])
 
150
CS_NUM_WITH([plain-keybits],[key length in bits for plain mode], [256])
 
151
 
 
152
CS_STR_WITH([luks1-hash],   [hash function for LUKS1 header], [sha1])
 
153
CS_STR_WITH([luks1-cipher], [cipher for LUKS1], [aes])
 
154
CS_STR_WITH([luks1-mode],   [cipher mode for LUKS1], [cbc-essiv:sha256])
 
155
CS_NUM_WITH([luks1-keybits],[key length in bits for LUKS1], [256])
95
156
 
96
157
dnl ==========================================================================
97
158