diff options
author | Floris Bos <bos@je-eigen-domein.nl> | 2015-02-04 19:33:28 +0100 |
---|---|---|
committer | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2015-03-08 22:15:57 +0100 |
commit | 7f57e79a7e61f5e7760e89bca9f466be139c693d (patch) | |
tree | 9484505af616ef155dd044601c05965b2b954232 /package/cryptsetup | |
parent | dc47198684c01dac58518a2b06b59f78c86f50ff (diff) |
cryptsetup: remove hard dependency on libgcrypt
- Add support for the alternative OpenSSL and Linux kernel crypto backends.
The latter does require that additional kernel modules (like algif_hash)
are present and loaded before invoking cryptsetup, so is used as last choice.
- Removes CRYPTSETUP_AUTORECONF as it is redundant, and reconf does
create a dependency on libgcrypt for the m4 macros used.
[Thomas: add an explicit --with-crypto_backend=gcrypt with the
libgcrypt backend is requested.]
Signed-off-by: Floris Bos <bos@je-eigen-domein.nl>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'package/cryptsetup')
-rw-r--r-- | package/cryptsetup/Config.in | 1 | ||||
-rw-r--r-- | package/cryptsetup/cryptsetup.mk | 18 |
2 files changed, 14 insertions, 5 deletions
diff --git a/package/cryptsetup/Config.in b/package/cryptsetup/Config.in index 353420fc9..7f672f9b0 100644 --- a/package/cryptsetup/Config.in +++ b/package/cryptsetup/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_CRYPTSETUP bool "cryptsetup" - select BR2_PACKAGE_LIBGCRYPT select BR2_PACKAGE_POPT select BR2_PACKAGE_LVM2 select BR2_PACKAGE_E2FSPROGS diff --git a/package/cryptsetup/cryptsetup.mk b/package/cryptsetup/cryptsetup.mk index f43bbca9a..88ddc37a5 100644 --- a/package/cryptsetup/cryptsetup.mk +++ b/package/cryptsetup/cryptsetup.mk @@ -8,16 +8,26 @@ CRYPTSETUP_VERSION_MAJOR = 1.6 CRYPTSETUP_VERSION = $(CRYPTSETUP_VERSION_MAJOR).6 CRYPTSETUP_SOURCE = cryptsetup-$(CRYPTSETUP_VERSION).tar.xz CRYPTSETUP_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/cryptsetup/v$(CRYPTSETUP_VERSION_MAJOR) -CRYPTSETUP_CONF_ENV += LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config -CRYPTSETUP_DEPENDENCIES = lvm2 popt e2fsprogs libgcrypt host-pkgconf \ +CRYPTSETUP_DEPENDENCIES = lvm2 popt e2fsprogs host-pkgconf \ $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) CRYPTSETUP_LICENSE = GPLv2+ (programs), LGPLv2.1+ (library) CRYPTSETUP_LICENSE_FILES = COPYING COPYING.LGPL -CRYPTSETUP_AUTORECONF = YES - ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y) CRYPTSETUP_CONF_ENV += LDFLAGS="$(TARGET_LDFLAGS) -lintl" endif +# cryptsetup uses libgcrypt by default, but can be configured to use OpenSSL +# or kernel crypto modules instead +ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) +CRYPTSETUP_DEPENDENCIES += libgcrypt +CRYPTSETUP_CONF_ENV += LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config +CRYPTSETUP_CONF_OPTS += --with-crypto_backend=gcrypt +else ifeq ($(BR2_PACKAGE_OPENSSL),y) +CRYPTSETUP_DEPENDENCIES += openssl +CRYPTSETUP_CONF_OPTS += --with-crypto_backend=openssl +else +CRYPTSETUP_CONF_OPTS += --with-crypto_backend=kernel +endif + $(eval $(autotools-package)) |