turn kmod-crypto-core dep into a select, so that packages like mac80211 are always...
[openwrt.git] / package / kernel / modules / crypto.mk
1 #
2 # Copyright (C) 2006 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # $Id$
8
9 CRYPTO_MENU:=Cryptographic API modules
10
11 # XXX: added CONFIG_CRYPTO_HMAC to KCONFIG so that CONFIG_CRYPTO_HASH is 
12 # always set, even if no hash modules are selected
13 define KernelPackage/crypto-core
14   SUBMENU:=$(CRYPTO_MENU)
15   TITLE:=Core CryptoAPI modules
16   KCONFIG:= \
17         CONFIG_CRYPTO=y \
18         CONFIG_CRYPTO_ALGAPI \
19         CONFIG_CRYPTO_BLKCIPHER \
20         CONFIG_CRYPTO_CBC \
21         CONFIG_CRYPTO_DEFLATE \
22         CONFIG_CRYPTO_ECB \
23         CONFIG_CRYPTO_HASH \
24         CONFIG_CRYPTO_HMAC \
25         CONFIG_CRYPTO_MANAGER
26   FILES:= \
27         $(LINUX_DIR)/crypto/crypto_algapi.$(LINUX_KMOD_SUFFIX) \
28         $(LINUX_DIR)/crypto/blkcipher.$(LINUX_KMOD_SUFFIX) \
29         $(LINUX_DIR)/crypto/cbc.$(LINUX_KMOD_SUFFIX) \
30         $(LINUX_DIR)/crypto/deflate.$(LINUX_KMOD_SUFFIX) \
31         $(LINUX_DIR)/crypto/ecb.$(LINUX_KMOD_SUFFIX) \
32         $(LINUX_DIR)/crypto/crypto_hash.$(LINUX_KMOD_SUFFIX) \
33         $(LINUX_DIR)/crypto/cryptomgr.$(LINUX_KMOD_SUFFIX)
34   AUTOLOAD:=$(call AutoLoad,01, \
35         crypto_algapi \
36         cryptomgr \
37         crypto_hash \
38         blkcipher \
39         cbc \
40         ecb \
41         deflate \
42   )
43 endef
44
45 define KernelPackage/crypto-core/2.4
46   FILES:=$(LINUX_DIR)/crypto/deflate.$(LINUX_KMOD_SUFFIX)
47   AUTOLOAD:=$(call AutoLoad,01, deflate)
48 endef
49
50 $(eval $(call KernelPackage,crypto-core))
51
52
53 define KernelPackage/crypto-aes
54   SUBMENU:=$(CRYPTO_MENU)
55   TITLE:=AES cipher CryptoAPI module
56   DEPENDS:=+kmod-crypto-core
57   KCONFIG:= \
58         CONFIG_CRYPTO_AES \
59         CONFIG_CRYPTO_AES_586
60   FILES:=$(LINUX_DIR)/crypto/aes.$(LINUX_KMOD_SUFFIX)
61   AUTOLOAD:=$(call AutoLoad,09,aes)
62 endef
63
64 define KernelPackage/crypto-aes/x86-2.6
65   KCONFIG:=CONFIG_CRYPTO_AES_586
66   FILES:=$(LINUX_DIR)/arch/i386/crypto/aes-i586.$(LINUX_KMOD_SUFFIX)
67   AUTOLOAD:=$(call AutoLoad,09,aes-i586)
68 endef
69
70 $(eval $(call KernelPackage,crypto-aes))
71
72
73 define KernelPackage/crypto-arc4
74   SUBMENU:=$(CRYPTO_MENU)
75   TITLE:=ARC4 (RC4) cipher CryptoAPI module
76   DEPENDS:=+kmod-crypto-core
77   KCONFIG:=CONFIG_CRYPTO_ARC4
78   FILES:=$(LINUX_DIR)/crypto/arc4.$(LINUX_KMOD_SUFFIX)
79   AUTOLOAD:=$(call AutoLoad,09,arc4)
80 endef
81
82 $(eval $(call KernelPackage,crypto-arc4))
83
84
85 define KernelPackage/crypto-des
86   SUBMENU:=$(CRYPTO_MENU)
87   TITLE:=DES/3DES cipher CryptoAPI module
88   DEPENDS:=+kmod-crypto-core
89   KCONFIG:=CONFIG_CRYPTO_AES
90   FILES:=$(LINUX_DIR)/crypto/aes.$(LINUX_KMOD_SUFFIX)
91   AUTOLOAD:=$(call AutoLoad,09,des)
92 endef
93
94 $(eval $(call KernelPackage,crypto-des))
95
96
97 define KernelPackage/crypto-hmac
98   SUBMENU:=$(CRYPTO_MENU)
99   TITLE:=HMAC digest CryptoAPI module
100   DEPENDS:=+kmod-crypto-core
101   KCONFIG:=CONFIG_CRYPTO_HMAC
102   FILES:=$(LINUX_DIR)/crypto/hmac.$(LINUX_KMOD_SUFFIX)
103   AUTOLOAD:=$(call AutoLoad,09,hmac)
104 endef
105
106 $(eval $(call KernelPackage,crypto-hmac))
107
108
109 define KernelPackage/crypto-md5
110   SUBMENU:=$(CRYPTO_MENU)
111   TITLE:=MD5 digest CryptoAPI module
112   DEPENDS:=+kmod-crypto-core
113   KCONFIG:=CONFIG_CRYPTO_MD5
114   FILES:=$(LINUX_DIR)/crypto/md5.$(LINUX_KMOD_SUFFIX)
115   AUTOLOAD:=$(call AutoLoad,09,md5)
116 endef
117
118 $(eval $(call KernelPackage,crypto-md5))
119
120
121 define KernelPackage/crypto-michael-mic
122   SUBMENU:=$(CRYPTO_MENU)
123   TITLE:=Michael MIC keyed digest CryptoAPI module
124   DEPENDS:=+kmod-crypto-core
125   KCONFIG:=CONFIG_CRYPTO_MICHAEL_MIC
126   FILES:=$(LINUX_DIR)/crypto/michael_mic.$(LINUX_KMOD_SUFFIX)
127   AUTOLOAD:=$(call AutoLoad,09,michael_mic)
128 endef
129
130 $(eval $(call KernelPackage,crypto-michael-mic))
131
132
133 define KernelPackage/crypto-sha1
134   SUBMENU:=$(CRYPTO_MENU)
135   TITLE:=SHA1 digest CryptoAPI module
136   DEPENDS:=+kmod-crypto-core
137   KCONFIG:=CONFIG_CRYPTO_SHA1
138   FILES:=$(LINUX_DIR)/crypto/sha1.$(LINUX_KMOD_SUFFIX)
139   AUTOLOAD:=$(call AutoLoad,09,sha1)
140 endef
141
142 $(eval $(call KernelPackage,crypto-sha1))
143
144
145 define KernelPackage/crypto-misc
146   SUBMENU:=$(CRYPTO_MENU)
147   TITLE:=Other CryptoAPI modules
148   DEPENDS:=+kmod-crypto-core
149   KCONFIG:= \
150         CONFIG_CRYPTO_ANUBIS \
151         CONFIG_CRYPTO_BLOWFISH \
152         CONFIG_CRYPTO_CAMELLIA \
153         CONFIG_CRYPTO_CAST5 \
154         CONFIG_CRYPTO_CAST6 \
155         CONFIG_CRYPTO_CRC32C \
156         CONFIG_CRYPTO_FCRYPT \
157         CONFIG_CRYPTO_KHAZAD \
158         CONFIG_CRYPTO_MD4 \
159         CONFIG_CRYPTO_SERPENT \
160         CONFIG_CRYPTO_SHA256 \
161         CONFIG_CRYPTO_SHA512 \
162         CONFIG_CRYPTO_TEA \
163         CONFIG_CRYPTO_TGR192 \
164         CONFIG_CRYPTO_TWOFISH \
165         CONFIG_CRYPTO_TWOFISH_586 \
166         CONFIG_CRYPTO_WP512
167   FILES:= \
168         $(LINUX_DIR)/crypto/anubis.$(LINUX_KMOD_SUFFIX) \
169         $(LINUX_DIR)/crypto/blowfish.$(LINUX_KMOD_SUFFIX) \
170         $(LINUX_DIR)/crypto/cast5.$(LINUX_KMOD_SUFFIX) \
171         $(LINUX_DIR)/crypto/cast6.$(LINUX_KMOD_SUFFIX) \
172         $(LINUX_DIR)/crypto/khazad.$(LINUX_KMOD_SUFFIX) \
173         $(LINUX_DIR)/crypto/md4.$(LINUX_KMOD_SUFFIX) \
174         $(LINUX_DIR)/crypto/serpent.$(LINUX_KMOD_SUFFIX) \
175         $(LINUX_DIR)/crypto/sha256.$(LINUX_KMOD_SUFFIX) \
176         $(LINUX_DIR)/crypto/sha512.$(LINUX_KMOD_SUFFIX) \
177         $(LINUX_DIR)/crypto/tea.$(LINUX_KMOD_SUFFIX) \
178         $(LINUX_DIR)/crypto/twofish.$(LINUX_KMOD_SUFFIX) \
179         $(LINUX_DIR)/crypto/wp512.$(LINUX_KMOD_SUFFIX)
180 endef
181
182 define KernelPackage/crypto-misc/2.6
183   FILES+= \
184         $(LINUX_DIR)/crypto/camellia.$(LINUX_KMOD_SUFFIX) \
185         $(LINUX_DIR)/crypto/crc32c.$(LINUX_KMOD_SUFFIX) \
186         $(LINUX_DIR)/crypto/fcrypt.$(LINUX_KMOD_SUFFIX) \
187         $(LINUX_DIR)/crypto/tgr192.$(LINUX_KMOD_SUFFIX)
188 endef
189
190 $(eval $(call KernelPackage,crypto-misc))
191
192
193 define KernelPackage/crypto-null
194   SUBMENU:=$(CRYPTO_MENU)
195   TITLE:=Null CryptoAPI module
196   DEPENDS:=+kmod-crypto-core
197   KCONFIG:=CONFIG_CRYPTO_NULL
198   FILES:=$(LINUX_DIR)/crypto/crypto_null.$(LINUX_KMOD_SUFFIX)
199   AUTOLOAD:=$(call AutoLoad,09,crypto_null)
200 endef
201
202 $(eval $(call KernelPackage,crypto-null))
203
204
205 define KernelPackage/crypto-test
206   SUBMENU:=$(CRYPTO_MENU)
207   TITLE:=Test CryptoAPI module
208   DEPENDS:=+kmod-crypto-core
209   KCONFIG:=CONFIG_CRYPTO_NULL
210   FILES:=$(LINUX_DIR)/crypto/tcrypt.$(LINUX_KMOD_SUFFIX)
211   AUTOLOAD:=$(call AutoLoad,09,tcrypt)
212 endef
213
214 $(eval $(call KernelPackage,crypto-test))
215