From 06b3948c4f42c4960db21b94fec2d15c2ef56a88 Mon Sep 17 00:00:00 2001 From: nbd Date: Sun, 4 Jan 2009 02:40:12 +0000 Subject: clean up the crypto kernel module package and allow some of the crypto modules to be compiled into the kernel (thx to Jose Vasconcellos) git-svn-id: svn://svn.openwrt.org/openwrt/trunk@13850 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/kernel/modules/crypto.mk | 48 +++++++++++++++------------------------- 1 file changed, 18 insertions(+), 30 deletions(-) (limited to 'package') diff --git a/package/kernel/modules/crypto.mk b/package/kernel/modules/crypto.mk index 26d0717b6..89ab2d388 100644 --- a/package/kernel/modules/crypto.mk +++ b/package/kernel/modules/crypto.mk @@ -30,41 +30,29 @@ ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.26)),1) SHA512_SUFFIX:=$(CRYPTO_GENERIC) endif +CRYPTO_MODULES = \ + ALGAPI=crypto_algapi \ + AEAD=aead \ + BLKCIPHER=$(BLKCIPHER_PREFIX)blkcipher \ + MANAGER=cryptomgr \ + HASH=crypto_hash \ + CBC=cbc \ + ECB=ecb \ + HMAC=hmac \ + DEFLATE=deflate + +crypto_confvar=CONFIG_CRYPTO_$(word 1,$(subst =,$(space),$(1))) +crypto_file=$(if $($(call crypto_confvar,$(1))),$(LINUX_DIR)/crypto/$(word 2,$(subst =,$(space),$(1))).$(LINUX_KMOD_SUFFIX)) +crypto_name=$(if $($(call crypto_confvar,$(1))),$(word 2,$(subst =,$(space),$(1)))) + # XXX: added CONFIG_CRYPTO_HMAC to KCONFIG so that CONFIG_CRYPTO_HASH is # always set, even if no hash modules are selected define KernelPackage/crypto-core SUBMENU:=$(CRYPTO_MENU) TITLE:=Core CryptoAPI modules - KCONFIG:= \ - CONFIG_CRYPTO=y \ - CONFIG_CRYPTO_AEAD \ - CONFIG_CRYPTO_ALGAPI \ - CONFIG_CRYPTO_BLKCIPHER \ - CONFIG_CRYPTO_CBC \ - CONFIG_CRYPTO_DEFLATE \ - CONFIG_CRYPTO_ECB \ - CONFIG_CRYPTO_HASH \ - CONFIG_CRYPTO_HMAC \ - CONFIG_CRYPTO_MANAGER - FILES:= \ - $(LINUX_DIR)/crypto/crypto_algapi.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/crypto/aead.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/crypto/$(BLKCIPHER_PREFIX)blkcipher.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/crypto/cbc.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/crypto/deflate.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/crypto/ecb.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/crypto/crypto_hash.$(LINUX_KMOD_SUFFIX) \ - $(LINUX_DIR)/crypto/cryptomgr.$(LINUX_KMOD_SUFFIX) - AUTOLOAD:=$(call AutoLoad,01, \ - crypto_algapi \ - aead \ - $(BLKCIPHER_PREFIX)blkcipher \ - cryptomgr \ - crypto_hash \ - cbc \ - ecb \ - deflate \ - ) + KCONFIG:=CONFIG_CRYPTO=y $(foreach mod,$(CRYPTO_MODULES),$(call crypto_confvar,$(mod))) + FILES:=$(foreach mod,$(CRYPTO_MODULES),$(call crypto_file,$(mod))) + AUTOLOAD:=$(call AutoLoad,01,$(foreach mod,$(CRYPTO_MODULES),$(call crypto_file,$(mod)))) endef define KernelPackage/crypto-core/2.4 -- cgit v1.2.3