14 #ifndef TF_PSA_CRYPTO_BUILD_INFO_H
15 #define TF_PSA_CRYPTO_BUILD_INFO_H
27 #define TF_PSA_CRYPTO_VERSION_MAJOR 1
28 #define TF_PSA_CRYPTO_VERSION_MINOR 0
29 #define TF_PSA_CRYPTO_VERSION_PATCH 0
36 #define TF_PSA_CRYPTO_VERSION_NUMBER 0x01000000
37 #define TF_PSA_CRYPTO_VERSION_STRING "1.0.0"
38 #define TF_PSA_CRYPTO_VERSION_STRING_FULL "TF-PSA-Crypto 1.0.0"
42 #if !defined(MBEDTLS_ARCH_IS_ARM64) && \
43 (defined(__aarch64__) || defined(_M_ARM64) || defined(_M_ARM64EC))
44 #define MBEDTLS_ARCH_IS_ARM64
47 #if !defined(MBEDTLS_ARCH_IS_ARM32) && \
48 (defined(__arm__) || defined(_M_ARM) || \
49 defined(_M_ARMT) || defined(__thumb__) || defined(__thumb2__))
50 #define MBEDTLS_ARCH_IS_ARM32
53 #if !defined(MBEDTLS_ARCH_IS_X64) && \
54 (defined(__amd64__) || defined(__x86_64__) || \
55 ((defined(_M_X64) || defined(_M_AMD64)) && !defined(_M_ARM64EC)))
56 #define MBEDTLS_ARCH_IS_X64
59 #if !defined(MBEDTLS_ARCH_IS_X86) && \
60 (defined(__i386__) || defined(_X86_) || \
61 (defined(_M_IX86) && !defined(_M_I86)))
62 #define MBEDTLS_ARCH_IS_X86
65 #if !defined(MBEDTLS_PLATFORM_IS_WINDOWS_ON_ARM64) && \
66 (defined(_M_ARM64) || defined(_M_ARM64EC))
67 #define MBEDTLS_PLATFORM_IS_WINDOWS_ON_ARM64
71 #if !defined(MBEDTLS_ARCH_IS_ARMV8_A)
72 #if defined(__ARM_ARCH) && defined(__ARM_ARCH_PROFILE)
73 #if (__ARM_ARCH >= 8) && (__ARM_ARCH_PROFILE == 'A')
75 #define MBEDTLS_ARCH_IS_ARMV8_A
77 #elif defined(__ARM_ARCH_8A)
79 #define MBEDTLS_ARCH_IS_ARMV8_A
80 #elif defined(_M_ARM64) || defined(_M_ARM64EC)
82 #define MBEDTLS_ARCH_IS_ARMV8_A
86 #if defined(__GNUC__) && !defined(__ARMCC_VERSION) && !defined(__clang__) \
87 && !defined(__llvm__) && !defined(__INTEL_COMPILER)
89 #define MBEDTLS_COMPILER_IS_GCC
90 #define MBEDTLS_GCC_VERSION \
91 (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)
94 #if defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
95 #define _CRT_SECURE_NO_DEPRECATE 1
99 #if (defined(__ARMCC_VERSION) || defined(_MSC_VER)) && \
100 !defined(inline) && !defined(__cplusplus)
101 #define inline __inline
104 #if defined(TF_PSA_CRYPTO_CONFIG_FILES_READ)
106 "Something went wrong: TF_PSA_CRYPTO_CONFIG_FILES_READ defined before reading the config files!"
108 #if defined(TF_PSA_CRYPTO_CONFIG_IS_FINALIZED)
110 "Something went wrong: TF_PSA_CRYPTO_CONFIG_IS_FINALIZED defined before reading the config files!"
114 #if defined(TF_PSA_CRYPTO_CONFIG_FILE)
115 #include TF_PSA_CRYPTO_CONFIG_FILE
119 #if defined(TF_PSA_CRYPTO_USER_CONFIG_FILE)
120 #include TF_PSA_CRYPTO_USER_CONFIG_FILE
124 #if defined(TF_PSA_CRYPTO_INCLUDE_AFTER_RAW_CONFIG)
125 #include TF_PSA_CRYPTO_INCLUDE_AFTER_RAW_CONFIG
132 #define TF_PSA_CRYPTO_CONFIG_FILES_READ
134 #if defined(TF_PSA_CRYPTO_CONFIG_VERSION)
135 #if (TF_PSA_CRYPTO_CONFIG_VERSION < 0x01000000) || \
136 (TF_PSA_CRYPTO_CONFIG_VERSION > TF_PSA_CRYPTO_VERSION_NUMBER)
137 #error "Invalid config version, defined value of TF_PSA_CRYPTO_CONFIG_VERSION is unsupported"
144 #if defined(MBEDTLS_PKCS5_C)
155 #include "mbedtls/private/config_psa.h"
157 #include "mbedtls/config_adjust_legacy_crypto.h"
164 #define TF_PSA_CRYPTO_CONFIG_IS_FINALIZED
int mbedtls_iso_c_forbids_empty_translation_units
PSA crypto configuration options (set of defines)