mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-17 18:34:42 +00:00

Refactor the entire kconfig page for mbedtls, adapt mbedtls makefile and default config file using 'XPL_', in order to have independent mbedtls kconfig options in U-Boot Proper, SPL, TPL and VPL. User can choose legacy or mbedtls libraries for them independently. Set mbedtls native hashing libraries as default when MBEDTLS_LIB, SPL_MBEDTLS_LIB, TPL_MBEDTLS_LIB or VPL_MBEDTLS_LIB is selected. If users prefer using U-Boot legacy hashing libraries, please select MBEDTLS_LIB_HASHING_ALT, SPL_MBEDTLS_LIB_HASHING_ALT, TPL_MBEDTLS_LIB_HASHING_ALT or VPL_MBEDTLS_LIB_HASHING_ALT for U-Boot Proper, SPL, TPL and VPL respectively. Moreover, rename a few kconfig options and update their descriptions to improve the consistency of terminology. Signed-off-by: Raymond Mao <raymond.mao@linaro.org> Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
89 lines
3.1 KiB
Makefile
89 lines
3.1 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0+
|
|
#
|
|
# Copyright (c) 2024 Linaro Limited
|
|
# Author: Raymond Mao <raymond.mao@linaro.org>
|
|
|
|
MBEDTLS_LIB_DIR = external/mbedtls/library
|
|
|
|
# shim layer for hash
|
|
obj-$(CONFIG_$(XPL_)MD5_MBEDTLS) += md5.o
|
|
obj-$(CONFIG_$(XPL_)SHA1_MBEDTLS) += sha1.o
|
|
obj-$(CONFIG_$(XPL_)SHA256_MBEDTLS) += sha256.o
|
|
obj-$(CONFIG_$(XPL_)SHA512_MBEDTLS) += sha512.o
|
|
|
|
# x509 libraries
|
|
obj-$(CONFIG_$(XPL_)ASYMMETRIC_PUBLIC_KEY_MBEDTLS) += \
|
|
public_key.o
|
|
obj-$(CONFIG_$(XPL_)X509_CERTIFICATE_PARSER_MBEDTLS) += \
|
|
x509_cert_parser.o
|
|
obj-$(CONFIG_$(XPL_)PKCS7_MESSAGE_PARSER_MBEDTLS) += pkcs7_parser.o
|
|
obj-$(CONFIG_$(XPL_)MSCODE_PARSER_MBEDTLS) += mscode_parser.o
|
|
obj-$(CONFIG_$(XPL_)RSA_PUBLIC_KEY_PARSER_MBEDTLS) += rsa_helper.o
|
|
|
|
# MbedTLS crypto library
|
|
obj-$(CONFIG_$(XPL_)MBEDTLS_LIB) += mbedtls_lib_crypto.o
|
|
mbedtls_lib_crypto-y := \
|
|
$(MBEDTLS_LIB_DIR)/platform_util.o \
|
|
$(MBEDTLS_LIB_DIR)/constant_time.o \
|
|
$(MBEDTLS_LIB_DIR)/md.o
|
|
|
|
mbedtls_lib_crypto-$(CONFIG_$(XPL_)MD5_MBEDTLS) += $(MBEDTLS_LIB_DIR)/md5.o
|
|
mbedtls_lib_crypto-$(CONFIG_$(XPL_)SHA1_MBEDTLS) += $(MBEDTLS_LIB_DIR)/sha1.o
|
|
mbedtls_lib_crypto-$(CONFIG_$(XPL_)SHA256_MBEDTLS) += \
|
|
$(MBEDTLS_LIB_DIR)/sha256.o
|
|
mbedtls_lib_crypto-$(CONFIG_$(XPL_)SHA512_MBEDTLS) += \
|
|
$(MBEDTLS_LIB_DIR)/sha512.o
|
|
mbedtls_lib_crypto-$(CONFIG_$(XPL_)HKDF_MBEDTLS) += \
|
|
$(MBEDTLS_LIB_DIR)/hkdf.o
|
|
|
|
# MbedTLS X509 library
|
|
obj-$(CONFIG_$(XPL_)MBEDTLS_LIB_X509) += mbedtls_lib_x509.o
|
|
mbedtls_lib_x509-y := $(MBEDTLS_LIB_DIR)/x509.o
|
|
mbedtls_lib_x509-$(CONFIG_$(XPL_)ASN1_DECODER_MBEDTLS) += \
|
|
$(MBEDTLS_LIB_DIR)/asn1parse.o \
|
|
$(MBEDTLS_LIB_DIR)/asn1write.o \
|
|
$(MBEDTLS_LIB_DIR)/oid.o
|
|
mbedtls_lib_x509-$(CONFIG_$(XPL_)RSA_PUBLIC_KEY_PARSER_MBEDTLS) += \
|
|
$(MBEDTLS_LIB_DIR)/bignum.o \
|
|
$(MBEDTLS_LIB_DIR)/bignum_core.o \
|
|
$(MBEDTLS_LIB_DIR)/rsa.o \
|
|
$(MBEDTLS_LIB_DIR)/rsa_alt_helpers.o
|
|
mbedtls_lib_x509-$(CONFIG_$(XPL_)ASYMMETRIC_PUBLIC_KEY_MBEDTLS) += \
|
|
$(MBEDTLS_LIB_DIR)/pk.o \
|
|
$(MBEDTLS_LIB_DIR)/pk_wrap.o \
|
|
$(MBEDTLS_LIB_DIR)/pkparse.o
|
|
mbedtls_lib_x509-$(CONFIG_$(XPL_)X509_CERTIFICATE_PARSER_MBEDTLS) += \
|
|
$(MBEDTLS_LIB_DIR)/x509_crl.o \
|
|
$(MBEDTLS_LIB_DIR)/x509_crt.o
|
|
mbedtls_lib_x509-$(CONFIG_$(XPL_)PKCS7_MESSAGE_PARSER_MBEDTLS) += \
|
|
$(MBEDTLS_LIB_DIR)/pkcs7.o
|
|
|
|
#mbedTLS TLS support
|
|
obj-$(CONFIG_$(XPL_)MBEDTLS_LIB_TLS) += mbedtls_lib_tls.o
|
|
mbedtls_lib_tls-y := \
|
|
$(MBEDTLS_LIB_DIR)/mps_reader.o \
|
|
$(MBEDTLS_LIB_DIR)/mps_trace.o \
|
|
$(MBEDTLS_LIB_DIR)/net_sockets.o \
|
|
$(MBEDTLS_LIB_DIR)/pk_ecc.o \
|
|
$(MBEDTLS_LIB_DIR)/ssl_cache.o \
|
|
$(MBEDTLS_LIB_DIR)/ssl_ciphersuites.o \
|
|
$(MBEDTLS_LIB_DIR)/ssl_client.o \
|
|
$(MBEDTLS_LIB_DIR)/ssl_cookie.o \
|
|
$(MBEDTLS_LIB_DIR)/ssl_debug_helpers_generated.o \
|
|
$(MBEDTLS_LIB_DIR)/ssl_msg.o \
|
|
$(MBEDTLS_LIB_DIR)/ssl_ticket.o \
|
|
$(MBEDTLS_LIB_DIR)/ssl_tls.o \
|
|
$(MBEDTLS_LIB_DIR)/ssl_tls12_client.o \
|
|
$(MBEDTLS_LIB_DIR)/hmac_drbg.o \
|
|
$(MBEDTLS_LIB_DIR)/ctr_drbg.o \
|
|
$(MBEDTLS_LIB_DIR)/entropy.o \
|
|
$(MBEDTLS_LIB_DIR)/entropy_poll.o \
|
|
$(MBEDTLS_LIB_DIR)/aes.o \
|
|
$(MBEDTLS_LIB_DIR)/cipher.o \
|
|
$(MBEDTLS_LIB_DIR)/cipher_wrap.o \
|
|
$(MBEDTLS_LIB_DIR)/ecdh.o \
|
|
$(MBEDTLS_LIB_DIR)/ecdsa.o \
|
|
$(MBEDTLS_LIB_DIR)/ecp.o \
|
|
$(MBEDTLS_LIB_DIR)/ecp_curves.o \
|
|
$(MBEDTLS_LIB_DIR)/ecp_curves_new.o \
|
|
$(MBEDTLS_LIB_DIR)/gcm.o \
|