1# SPDX-License-Identifier: GPL-2.0+
2#
3# Makefile for asymmetric cryptographic keys
4#
5
6obj-$(CONFIG_$(SPL_)ASYMMETRIC_KEY_TYPE) += asymmetric_keys.o
7
8asymmetric_keys-y := asymmetric_type.o
9
10obj-$(CONFIG_$(SPL_)ASYMMETRIC_PUBLIC_KEY_SUBTYPE) += public_key.o
11
12#
13# RSA public key parser
14#
15obj-$(CONFIG_$(SPL_)RSA_PUBLIC_KEY_PARSER) += rsa_public_key.o
16rsa_public_key-y := \
17	rsapubkey.asn1.o \
18	rsa_helper.o
19
20$(obj)/rsapubkey.asn1.o: $(obj)/rsapubkey.asn1.c $(obj)/rsapubkey.asn1.h
21ifdef CONFIG_SPL_BUILD
22CFLAGS_rsapubkey.asn1.o += -I$(obj)
23endif
24
25$(obj)/rsa_helper.o: $(obj)/rsapubkey.asn1.h
26ifdef CONFIG_SPL_BUILD
27CFLAGS_rsa_helper.o += -I$(obj)
28endif
29
30#
31# X.509 Certificate handling
32#
33obj-$(CONFIG_$(SPL_)X509_CERTIFICATE_PARSER) += x509_key_parser.o
34x509_key_parser-y := \
35	x509.asn1.o \
36	x509_akid.asn1.o \
37	x509_cert_parser.o \
38	x509_public_key.o
39
40$(obj)/x509_cert_parser.o: \
41	$(obj)/x509.asn1.h \
42	$(obj)/x509_akid.asn1.h
43
44$(obj)/x509.asn1.o: $(obj)/x509.asn1.c $(obj)/x509.asn1.h
45$(obj)/x509_akid.asn1.o: $(obj)/x509_akid.asn1.c $(obj)/x509_akid.asn1.h
46
47#
48# PKCS#7 message handling
49#
50obj-$(CONFIG_$(SPL_)PKCS7_MESSAGE_PARSER) += pkcs7_message.o
51pkcs7_message-y := \
52	pkcs7.asn1.o \
53	pkcs7_parser.o
54obj-$(CONFIG_$(SPL_)PKCS7_VERIFY) += pkcs7_verify.o
55
56$(obj)/pkcs7_parser.o: $(obj)/pkcs7.asn1.h
57$(obj)/pkcs7.asn1.o: $(obj)/pkcs7.asn1.c $(obj)/pkcs7.asn1.h
58
59#
60# Signed PE binary-wrapped key handling
61#
62obj-$(CONFIG_$(SPL_)MSCODE_PARSER) += mscode.o
63
64mscode-y := \
65	mscode_parser.o \
66	mscode.asn1.o
67
68$(obj)/mscode_parser.o: $(obj)/mscode.asn1.h $(obj)/mscode.asn1.h
69$(obj)/mscode.asn1.o: $(obj)/mscode.asn1.c $(obj)/mscode.asn1.h
70