Adjust build systems

Adjust build systems such as we can built
Mbed TLS in the default and full configuration.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
This commit is contained in:
Ronald Cron 2024-07-01 14:50:54 +02:00
parent 90ca4145cf
commit c29afb684e
17 changed files with 243 additions and 208 deletions

View File

@ -13,7 +13,8 @@ target_include_directories(${everest_target}
$<INSTALL_INTERFACE:include> $<INSTALL_INTERFACE:include>
PRIVATE include/everest PRIVATE include/everest
include/everest/kremlib include/everest/kremlib
${MBEDTLS_DIR}/library/) ${MBEDTLS_DIR}/library
${MBEDTLS_DIR}/tf-psa-crypto/core)
# Pass-through MBEDTLS_CONFIG_FILE and MBEDTLS_USER_CONFIG_FILE # Pass-through MBEDTLS_CONFIG_FILE and MBEDTLS_USER_CONFIG_FILE
# This must be duplicated from library/CMakeLists.txt because # This must be duplicated from library/CMakeLists.txt because

View File

@ -11,7 +11,8 @@ target_include_directories(${p256m_target}
$<BUILD_INTERFACE:${MBEDTLS_DIR}/tf-psa-crypto/include> $<BUILD_INTERFACE:${MBEDTLS_DIR}/tf-psa-crypto/include>
$<BUILD_INTERFACE:${MBEDTLS_DIR}/tf-psa-crypto/drivers/builtin/include> $<BUILD_INTERFACE:${MBEDTLS_DIR}/tf-psa-crypto/drivers/builtin/include>
$<INSTALL_INTERFACE:include> $<INSTALL_INTERFACE:include>
PRIVATE ${MBEDTLS_DIR}/library/) PRIVATE ${MBEDTLS_DIR}/library/
${MBEDTLS_DIR}/tf-psa-crypto/core)
# Pass-through MBEDTLS_CONFIG_FILE and MBEDTLS_USER_CONFIG_FILE # Pass-through MBEDTLS_CONFIG_FILE and MBEDTLS_USER_CONFIG_FILE
# This must be duplicated from library/CMakeLists.txt because # This must be duplicated from library/CMakeLists.txt because

View File

@ -357,7 +357,9 @@ if(ENABLE_TESTING OR ENABLE_PROGRAMS)
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tf-psa-crypto/include PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tf-psa-crypto/include
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tf-psa-crypto/drivers/builtin/include PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tf-psa-crypto/drivers/builtin/include
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/library) PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/library
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tf-psa-crypto/core
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tf-psa-crypto/drivers/builtin/src)
# Request C11, needed for memory poisoning tests # Request C11, needed for memory poisoning tests
set_target_properties(mbedtls_test PROPERTIES C_STANDARD 11) set_target_properties(mbedtls_test PROPERTIES C_STANDARD 11)
@ -370,6 +372,8 @@ if(ENABLE_TESTING OR ENABLE_PROGRAMS)
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tf-psa-crypto/include PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tf-psa-crypto/include
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tf-psa-crypto/drivers/builtin/include PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tf-psa-crypto/drivers/builtin/include
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/library PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/library
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tf-psa-crypto/core
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tf-psa-crypto/drivers/builtin/src
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/everest/include) PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/everest/include)
# Pass-through MBEDTLS_CONFIG_FILE and MBEDTLS_USER_CONFIG_FILE # Pass-through MBEDTLS_CONFIG_FILE and MBEDTLS_USER_CONFIG_FILE

View File

@ -10,87 +10,90 @@ if(NOT DEFINED MBEDTLS_DIR)
set(MBEDTLS_DIR ${CMAKE_SOURCE_DIR}) set(MBEDTLS_DIR ${CMAKE_SOURCE_DIR})
endif() endif()
set(TF_PSA_CRYPTO_CORE_DIR ../tf-psa-crypto/core)
set(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR ../tf-psa-crypto/drivers/builtin/src)
set(src_crypto set(src_crypto
aes.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/aes.c
aesni.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/aesni.c
aesce.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/aesce.c
aria.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/aria.c
asn1parse.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/asn1parse.c
asn1write.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/asn1write.c
base64.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/base64.c
bignum.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/bignum.c
bignum_core.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/bignum_core.c
bignum_mod.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/bignum_mod.c
bignum_mod_raw.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/bignum_mod_raw.c
block_cipher.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/block_cipher.c
camellia.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/camellia.c
ccm.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/ccm.c
chacha20.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/chacha20.c
chachapoly.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/chachapoly.c
cipher.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/cipher.c
cipher_wrap.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/cipher_wrap.c
constant_time.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/constant_time.c
cmac.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/cmac.c
ctr_drbg.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/ctr_drbg.c
des.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/des.c
dhm.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/dhm.c
ecdh.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/ecdh.c
ecdsa.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/ecdsa.c
ecjpake.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/ecjpake.c
ecp.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/ecp.c
ecp_curves.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/ecp_curves.c
ecp_curves_new.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/ecp_curves_new.c
entropy.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/entropy.c
entropy_poll.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/entropy_poll.c
error.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/error.c
gcm.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/gcm.c
hkdf.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/hkdf.c
hmac_drbg.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/hmac_drbg.c
lmots.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/lmots.c
lms.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/lms.c
md.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/md.c
md5.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/md5.c
memory_buffer_alloc.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/memory_buffer_alloc.c
nist_kw.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/nist_kw.c
oid.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/oid.c
pem.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/pem.c
pk.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/pk.c
pk_ecc.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/pk_ecc.c
pk_wrap.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/pk_wrap.c
pkcs12.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/pkcs12.c
pkcs5.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/pkcs5.c
pkparse.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/pkparse.c
pkwrite.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/pkwrite.c
platform.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/platform.c
platform_util.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/platform_util.c
poly1305.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/poly1305.c
psa_crypto.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto.c
psa_crypto_aead.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_aead.c
psa_crypto_cipher.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_cipher.c
psa_crypto_client.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_client.c
psa_crypto_driver_wrappers_no_static.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_driver_wrappers_no_static.c
psa_crypto_ecp.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_ecp.c
psa_crypto_ffdh.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_ffdh.c
psa_crypto_hash.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_hash.c
psa_crypto_mac.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_mac.c
psa_crypto_pake.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_pake.c
psa_crypto_rsa.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_rsa.c
psa_crypto_se.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_se.c
psa_crypto_slot_management.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_slot_management.c
psa_crypto_storage.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_storage.c
psa_its_file.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_its_file.c
psa_util.c ${TF_PSA_CRYPTO_CORE_DIR}/psa_util.c
ripemd160.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/ripemd160.c
rsa.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/rsa.c
rsa_alt_helpers.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/rsa_alt_helpers.c
sha1.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/sha1.c
sha256.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/sha256.c
sha512.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/sha512.c
sha3.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/sha3.c
threading.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/threading.c
timing.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/timing.c
version.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/version.c
version_features.c ${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/version_features.c
) )
set(src_x509 set(src_x509
@ -133,14 +136,14 @@ if(GEN_FILES)
file(GLOB tls_error_headers ${CMAKE_CURRENT_SOURCE_DIR}/../include/mbedtls/*.h) file(GLOB tls_error_headers ${CMAKE_CURRENT_SOURCE_DIR}/../include/mbedtls/*.h)
add_custom_command( add_custom_command(
OUTPUT OUTPUT
${CMAKE_CURRENT_BINARY_DIR}/error.c ${CMAKE_CURRENT_BINARY_DIR}/${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/error.c
COMMAND COMMAND
${PERL_EXECUTABLE} ${PERL_EXECUTABLE}
${CMAKE_CURRENT_SOURCE_DIR}/../scripts/generate_errors.pl ${CMAKE_CURRENT_SOURCE_DIR}/../scripts/generate_errors.pl
${CMAKE_CURRENT_SOURCE_DIR}/../tf-psa-crypto/drivers/builtin/include/mbedtls ${CMAKE_CURRENT_SOURCE_DIR}/../tf-psa-crypto/drivers/builtin/include/mbedtls
${CMAKE_CURRENT_SOURCE_DIR}/../include/mbedtls ${CMAKE_CURRENT_SOURCE_DIR}/../include/mbedtls
${CMAKE_CURRENT_SOURCE_DIR}/../scripts/data_files ${CMAKE_CURRENT_SOURCE_DIR}/../scripts/data_files
${CMAKE_CURRENT_BINARY_DIR}/error.c ${CMAKE_CURRENT_BINARY_DIR}/${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/error.c
DEPENDS DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../scripts/generate_errors.pl ${CMAKE_CURRENT_SOURCE_DIR}/../scripts/generate_errors.pl
${crypto_error_headers} ${crypto_error_headers}
@ -150,13 +153,13 @@ if(GEN_FILES)
add_custom_command( add_custom_command(
OUTPUT OUTPUT
${CMAKE_CURRENT_BINARY_DIR}/version_features.c ${CMAKE_CURRENT_BINARY_DIR}/${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/version_features.c
COMMAND COMMAND
${PERL_EXECUTABLE} ${PERL_EXECUTABLE}
${CMAKE_CURRENT_SOURCE_DIR}/../scripts/generate_features.pl ${CMAKE_CURRENT_SOURCE_DIR}/../scripts/generate_features.pl
${CMAKE_CURRENT_SOURCE_DIR}/../include/mbedtls ${CMAKE_CURRENT_SOURCE_DIR}/../include/mbedtls
${CMAKE_CURRENT_SOURCE_DIR}/../scripts/data_files ${CMAKE_CURRENT_SOURCE_DIR}/../scripts/data_files
${CMAKE_CURRENT_BINARY_DIR}/version_features.c ${CMAKE_CURRENT_BINARY_DIR}/${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/version_features.c
DEPENDS DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../scripts/generate_features.pl ${CMAKE_CURRENT_SOURCE_DIR}/../scripts/generate_features.pl
${CMAKE_CURRENT_SOURCE_DIR}/../include/mbedtls/mbedtls_config.h ${CMAKE_CURRENT_SOURCE_DIR}/../include/mbedtls/mbedtls_config.h
@ -178,24 +181,23 @@ if(GEN_FILES)
add_custom_command( add_custom_command(
OUTPUT OUTPUT
${CMAKE_CURRENT_BINARY_DIR}/psa_crypto_driver_wrappers.h ${CMAKE_CURRENT_BINARY_DIR}/${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_driver_wrappers.h
${CMAKE_CURRENT_BINARY_DIR}/psa_crypto_driver_wrappers_no_static.c ${CMAKE_CURRENT_BINARY_DIR}/${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_driver_wrappers_no_static.c
COMMAND COMMAND
${MBEDTLS_PYTHON_EXECUTABLE} ${MBEDTLS_PYTHON_EXECUTABLE}
${CMAKE_CURRENT_SOURCE_DIR}/../scripts/generate_driver_wrappers.py ${CMAKE_CURRENT_SOURCE_DIR}/../scripts/generate_driver_wrappers.py
${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}/${TF_PSA_CRYPTO_CORE_DIR}
DEPENDS DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/../scripts/generate_driver_wrappers.py ${CMAKE_CURRENT_SOURCE_DIR}/../scripts/generate_driver_wrappers.py
${CMAKE_CURRENT_SOURCE_DIR}/../scripts/data_files/driver_templates/psa_crypto_driver_wrappers.h.jinja ${CMAKE_CURRENT_SOURCE_DIR}/../scripts/data_files/driver_templates/psa_crypto_driver_wrappers.h.jinja
${CMAKE_CURRENT_SOURCE_DIR}/../scripts/data_files/driver_templates/psa_crypto_driver_wrappers_no_static.c.jinja ${CMAKE_CURRENT_SOURCE_DIR}/../scripts/data_files/driver_templates/psa_crypto_driver_wrappers_no_static.c.jinja
) )
else() else()
link_to_source(error.c) link_to_source(${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/error.c)
link_to_source(version_features.c) link_to_source(${TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_DIR}/version_features.c)
link_to_source(ssl_debug_helpers_generated.c) link_to_source(ssl_debug_helpers_generated.c)
link_to_source(psa_crypto_driver_wrappers_no_static.c) link_to_source(${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_driver_wrappers.h)
link_to_source(${TF_PSA_CRYPTO_CORE_DIR}/psa_crypto_driver_wrappers_no_static.c)
endif() endif()
if(CMAKE_COMPILER_IS_GNUCC) if(CMAKE_COMPILER_IS_GNUCC)
@ -333,8 +335,10 @@ foreach(target IN LISTS target_libraries)
$<BUILD_INTERFACE:${MBEDTLS_DIR}/tf-psa-crypto/drivers/builtin/include/> $<BUILD_INTERFACE:${MBEDTLS_DIR}/tf-psa-crypto/drivers/builtin/include/>
$<INSTALL_INTERFACE:include/> $<INSTALL_INTERFACE:include/>
PRIVATE ${MBEDTLS_DIR}/library/ PRIVATE ${MBEDTLS_DIR}/library/
${MBEDTLS_DIR}/tf-psa-crypto/core
${MBEDTLS_DIR}/tf-psa-crypto/drivers/builtin/src
# Needed to include psa_crypto_driver_wrappers.h # Needed to include psa_crypto_driver_wrappers.h
${CMAKE_CURRENT_BINARY_DIR}) ${CMAKE_CURRENT_BINARY_DIR}/../tf-psa-crypto/core)
# Pass-through MBEDTLS_CONFIG_FILE and MBEDTLS_USER_CONFIG_FILE # Pass-through MBEDTLS_CONFIG_FILE and MBEDTLS_USER_CONFIG_FILE
if(MBEDTLS_CONFIG_FILE) if(MBEDTLS_CONFIG_FILE)
target_compile_definitions(${target} target_compile_definitions(${target}

View File

@ -2,11 +2,15 @@ ifndef MBEDTLS_PATH
MBEDTLS_PATH := .. MBEDTLS_PATH := ..
endif endif
TF_PSA_CRYPTO_CORE_PATH = $(MBEDTLS_PATH)/tf-psa-crypto/core
TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH = $(MBEDTLS_PATH)/tf-psa-crypto/drivers/builtin/src
GENERATED_FILES := \ GENERATED_FILES := \
error.c version_features.c \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/error.c \
$(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/version_features.c \
ssl_debug_helpers_generated.c \ ssl_debug_helpers_generated.c \
psa_crypto_driver_wrappers.h \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_driver_wrappers.h \
psa_crypto_driver_wrappers_no_static.c $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_driver_wrappers_no_static.c
ifneq ($(GENERATED_FILES),$(wildcard $(GENERATED_FILES))) ifneq ($(GENERATED_FILES),$(wildcard $(GENERATED_FILES)))
ifeq (,$(wildcard $(MBEDTLS_PATH)/framework/exported.make)) ifeq (,$(wildcard $(MBEDTLS_PATH)/framework/exported.make))
@ -29,11 +33,12 @@ WARNING_CFLAGS ?= -Wall -Wextra -Wformat=2 -Wno-format-nonliteral
LDFLAGS ?= LDFLAGS ?=
# Include ../include, ../tf-psa-crypto/include and # Include ../include, ../tf-psa-crypto/include and
# ../tf-psa-crypto/drivers/builtin/include for public headers and . for # ../tf-psa-crypto/drivers/builtin/include for public headers and .,
# private headers. Note that . needs to be included explicitly for the sake of # ../tf-psa-crypto/core and ../tf-psa-crypto/drivers/builtin/src for
# library files that are not in the /library directory (which currently means # private headers.
# under /3rdparty). LOCAL_CFLAGS = $(WARNING_CFLAGS) -I. -I../tf-psa-crypto/core \
LOCAL_CFLAGS = $(WARNING_CFLAGS) -I. -I../include -I../tf-psa-crypto/include \ -I../tf-psa-crypto/drivers/builtin/src \
-I../include -I../tf-psa-crypto/include \
-I../tf-psa-crypto/drivers/builtin/include -D_FILE_OFFSET_BITS=64 -I../tf-psa-crypto/drivers/builtin/include -D_FILE_OFFSET_BITS=64
LOCAL_LDFLAGS = LOCAL_LDFLAGS =
@ -105,86 +110,86 @@ endif
endif endif
OBJS_CRYPTO= \ OBJS_CRYPTO= \
aes.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto.o \
aesni.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_aead.o \
aesce.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_cipher.o \
aria.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_client.o \
asn1parse.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_driver_wrappers_no_static.o \
asn1write.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_ecp.o \
base64.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_ffdh.o \
bignum.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_hash.o \
bignum_core.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_mac.o \
bignum_mod.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_pake.o \
bignum_mod_raw.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_rsa.o \
block_cipher.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_se.o \
camellia.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_slot_management.o \
ccm.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_storage.o \
chacha20.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_its_file.o \
chachapoly.o \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_util.o \
cipher.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/aes.o \
cipher_wrap.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/aesni.o \
cmac.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/aesce.o \
constant_time.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/aria.o \
ctr_drbg.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/asn1parse.o \
des.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/asn1write.o \
dhm.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/base64.o \
ecdh.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/bignum.o \
ecdsa.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/bignum_core.o \
ecjpake.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/bignum_mod.o \
ecp.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/bignum_mod_raw.o \
ecp_curves.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/block_cipher.o \
ecp_curves_new.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/camellia.o \
entropy.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/ccm.o \
entropy_poll.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/chacha20.o \
error.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/chachapoly.o \
gcm.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/cipher.o \
hkdf.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/cipher_wrap.o \
hmac_drbg.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/cmac.o \
lmots.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/constant_time.o \
lms.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/ctr_drbg.o \
md.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/des.o \
md5.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/dhm.o \
memory_buffer_alloc.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/ecdh.o \
nist_kw.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/ecdsa.o \
oid.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/ecjpake.o \
pem.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/ecp.o \
pk.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/ecp_curves.o \
pk_ecc.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/ecp_curves_new.o \
pk_wrap.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/entropy.o \
pkcs12.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/entropy_poll.o \
pkcs5.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/error.o \
pkparse.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/gcm.o \
pkwrite.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/hkdf.o \
platform.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/hmac_drbg.o \
platform_util.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/lmots.o \
poly1305.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/lms.o \
psa_crypto.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/md.o \
psa_crypto_aead.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/md5.o \
psa_crypto_cipher.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/memory_buffer_alloc.o \
psa_crypto_client.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/nist_kw.o \
psa_crypto_driver_wrappers_no_static.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/oid.o \
psa_crypto_ecp.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/pem.o \
psa_crypto_ffdh.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/pk.o \
psa_crypto_hash.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/pk_ecc.o \
psa_crypto_mac.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/pk_wrap.o \
psa_crypto_pake.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/pkcs12.o \
psa_crypto_rsa.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/pkcs5.o \
psa_crypto_se.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/pkparse.o \
psa_crypto_slot_management.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/pkwrite.o \
psa_crypto_storage.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/platform.o \
psa_its_file.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/platform_util.o \
psa_util.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/poly1305.o \
ripemd160.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/ripemd160.o \
rsa.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/rsa.o \
rsa_alt_helpers.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/rsa_alt_helpers.o \
sha1.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/sha1.o \
sha256.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/sha256.o \
sha512.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/sha512.o \
sha3.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/sha3.o \
threading.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/threading.o \
timing.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/timing.o \
version.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/version.o \
version_features.o \ $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/version_features.o \
# This line is intentionally left blank # This line is intentionally left blank
include ../3rdparty/Makefile.inc include ../3rdparty/Makefile.inc
@ -349,10 +354,10 @@ else
gen_file_dep = | gen_file_dep = |
endif endif
error.c: $(gen_file_dep) ../scripts/generate_errors.pl $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/error.c: $(gen_file_dep) ../scripts/generate_errors.pl
error.c: $(gen_file_dep) ../scripts/data_files/error.fmt $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/error.c: $(gen_file_dep) ../scripts/data_files/error.fmt
error.c: $(gen_file_dep) $(filter-out %config%,$(wildcard ../include/mbedtls/*.h)) $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/error.c: $(gen_file_dep) $(filter-out %config%,$(wildcard ../include/mbedtls/*.h))
error.c: $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/error.c:
echo " Gen $@" echo " Gen $@"
$(PERL) ../scripts/generate_errors.pl $(PERL) ../scripts/generate_errors.pl
@ -362,33 +367,34 @@ ssl_debug_helpers_generated.c:
echo " Gen $@" echo " Gen $@"
$(PYTHON) ../scripts/generate_ssl_debug_helpers.py --mbedtls-root .. . $(PYTHON) ../scripts/generate_ssl_debug_helpers.py --mbedtls-root .. .
version_features.c: $(gen_file_dep) ../scripts/generate_features.pl $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/version_features.c: $(gen_file_dep) ../scripts/generate_features.pl
version_features.c: $(gen_file_dep) ../scripts/data_files/version_features.fmt $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/version_features.c: $(gen_file_dep) ../scripts/data_files/version_features.fmt
## The generated file only depends on the options that are present in mbedtls_config.h, ## The generated file only depends on the options that are present in mbedtls_config.h,
## not on which options are set. To avoid regenerating this file all the time ## not on which options are set. To avoid regenerating this file all the time
## when switching between configurations, don't declare mbedtls_config.h as a ## when switching between configurations, don't declare mbedtls_config.h as a
## dependency. Remove this file from your working tree if you've just added or ## dependency. Remove this file from your working tree if you've just added or
## removed an option in mbedtls_config.h. ## removed an option in mbedtls_config.h.
#version_features.c: ../include/mbedtls/mbedtls_config.h #version_features.c: ../include/mbedtls/mbedtls_config.h
version_features.c: $(TF_PSA_CRYPTO_DRIVERS_BUILTIN_SRC_PATH)/version_features.c:
echo " Gen $@" echo " Gen $@"
$(PERL) ../scripts/generate_features.pl $(PERL) ../scripts/generate_features.pl
GENERATED_WRAPPER_FILES = \ GENERATED_WRAPPER_FILES = \
psa_crypto_driver_wrappers.h \ $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_driver_wrappers.h \
psa_crypto_driver_wrappers_no_static.c $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_driver_wrappers_no_static.c
$(GENERATED_WRAPPER_FILES): ../scripts/generate_driver_wrappers.py $(GENERATED_WRAPPER_FILES): ../scripts/generate_driver_wrappers.py
$(GENERATED_WRAPPER_FILES): ../scripts/data_files/driver_templates/psa_crypto_driver_wrappers.h.jinja $(GENERATED_WRAPPER_FILES): ../scripts/data_files/driver_templates/psa_crypto_driver_wrappers.h.jinja
$(GENERATED_WRAPPER_FILES): ../scripts/data_files/driver_templates/psa_crypto_driver_wrappers_no_static.c.jinja $(GENERATED_WRAPPER_FILES): ../scripts/data_files/driver_templates/psa_crypto_driver_wrappers_no_static.c.jinja
$(GENERATED_WRAPPER_FILES): $(GENERATED_WRAPPER_FILES):
echo " Gen $(GENERATED_WRAPPER_FILES)" echo " Gen $(GENERATED_WRAPPER_FILES)"
$(PYTHON) ../scripts/generate_driver_wrappers.py $(PYTHON) ../scripts/generate_driver_wrappers.py $(TF_PSA_CRYPTO_CORE_PATH)
psa_crypto.o:psa_crypto_driver_wrappers.h $(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto.o:$(TF_PSA_CRYPTO_CORE_PATH)/psa_crypto_driver_wrappers.h
clean: clean:
ifndef WINDOWS ifndef WINDOWS
rm -f *.o libmbed* rm -f *.o libmbed*
rm -f $(OBJS_CRYPTO)
rm -f $(THIRDPARTY_CRYPTO_OBJECTS) rm -f $(THIRDPARTY_CRYPTO_OBJECTS)
else else
if exist *.o del /Q /F *.o if exist *.o del /Q /F *.o

View File

@ -356,7 +356,7 @@ endif
test/metatest$(EXEXT): test/metatest.c $(DEP) test/metatest$(EXEXT): test/metatest.c $(DEP)
echo " CC test/metatest.c" echo " CC test/metatest.c"
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) -I ../library test/metatest.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@ $(CC) $(LOCAL_CFLAGS) $(CFLAGS) -I../library -I../tf-psa-crypto/core test/metatest.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
test/query_config.o: test/query_config.c test/query_config.h $(DEP) test/query_config.o: test/query_config.c test/query_config.h $(DEP)
echo " CC test/query_config.c" echo " CC test/query_config.c"

View File

@ -78,8 +78,11 @@ foreach(exe IN LISTS executables_libs executables_mbedcrypto)
endif() endif()
add_executable(${exe} ${exe}.c $<TARGET_OBJECTS:mbedtls_test> add_executable(${exe} ${exe}.c $<TARGET_OBJECTS:mbedtls_test>
${extra_sources}) ${extra_sources})
target_include_directories(${exe} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../../tests/include) target_include_directories(${exe}
target_include_directories(${exe} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../../library) PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../../tests/include)
target_include_directories(${exe}
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../../library
${CMAKE_CURRENT_SOURCE_DIR}/../../tf-psa-crypto/core)
if(exe STREQUAL "query_compile_time_config") if(exe STREQUAL "query_compile_time_config")
target_include_directories(${exe} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) target_include_directories(${exe} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
endif() endif()

View File

@ -24,7 +24,7 @@ if( @ARGV ) {
$crypto_include_dir = 'tf-psa-crypto/drivers/builtin/include/mbedtls'; $crypto_include_dir = 'tf-psa-crypto/drivers/builtin/include/mbedtls';
$tls_include_dir = 'include/mbedtls'; $tls_include_dir = 'include/mbedtls';
$data_dir = 'scripts/data_files'; $data_dir = 'scripts/data_files';
$error_file = 'library/error.c'; $error_file = 'tf-psa-crypto/drivers/builtin/src/error.c';
unless( -d $crypto_include_dir && -d $tls_include_dir && -d $data_dir ) { unless( -d $crypto_include_dir && -d $tls_include_dir && -d $data_dir ) {
chdir '..' or die; chdir '..' or die;

View File

@ -16,7 +16,7 @@ if( @ARGV ) {
} else { } else {
$include_dir = 'include/mbedtls'; $include_dir = 'include/mbedtls';
$data_dir = 'scripts/data_files'; $data_dir = 'scripts/data_files';
$feature_file = 'library/version_features.c'; $feature_file = 'tf-psa-crypto/drivers/builtin/src/version_features.c';
unless( -d $include_dir && -d $data_dir ) { unless( -d $include_dir && -d $data_dir ) {
chdir '..' or die; chdir '..' or die;

View File

@ -25,7 +25,9 @@ my $programs_dir = 'programs';
my $mbedtls_header_dir = 'include/mbedtls'; my $mbedtls_header_dir = 'include/mbedtls';
my $drivers_builtin_header_dir = 'tf-psa-crypto/drivers/builtin/include/mbedtls'; my $drivers_builtin_header_dir = 'tf-psa-crypto/drivers/builtin/include/mbedtls';
my $psa_header_dir = 'tf-psa-crypto/include/psa'; my $psa_header_dir = 'tf-psa-crypto/include/psa';
my $source_dir = 'library'; my $tls_source_dir = 'library';
my $crypto_core_source_dir = 'tf-psa-crypto/core';
my $crypto_source_dir = 'tf-psa-crypto/drivers/builtin/src';
my $test_source_dir = 'tests/src'; my $test_source_dir = 'tests/src';
my $test_header_dir = 'tests/include/test'; my $test_header_dir = 'tests/include/test';
my $test_drivers_header_dir = 'tests/include/test/drivers'; my $test_drivers_header_dir = 'tests/include/test/drivers';
@ -55,10 +57,12 @@ my @include_directories = qw(
); );
my $include_directories = join(';', map {"../../$_"} @include_directories); my $include_directories = join(';', map {"../../$_"} @include_directories);
# Directories to add to the include path when building the library, but not # Directories to add to the include path when building the libraries, but not
# when building tests or applications. # when building tests or applications.
my @library_include_directories = qw( my @library_include_directories = qw(
library library
tf-psa-crypto/core
tf-psa-crypto/drivers/builtin/src
); );
my $library_include_directories = my $library_include_directories =
join(';', map {"../../$_"} (@library_include_directories, join(';', map {"../../$_"} (@library_include_directories,
@ -106,7 +110,9 @@ sub check_dirs {
&& -d $mbedtls_header_dir && -d $mbedtls_header_dir
&& -d $drivers_builtin_header_dir && -d $drivers_builtin_header_dir
&& -d $psa_header_dir && -d $psa_header_dir
&& -d $source_dir && -d $tls_source_dir
&& -d $crypto_core_source_dir
&& -d $crypto_source_dir
&& -d $test_source_dir && -d $test_source_dir
&& -d $test_drivers_source_dir && -d $test_drivers_source_dir
&& -d $test_header_dir && -d $test_header_dir
@ -265,12 +271,16 @@ sub main {
$psa_header_dir, $psa_header_dir,
$test_header_dir, $test_header_dir,
$test_drivers_header_dir, $test_drivers_header_dir,
$source_dir, $tls_source_dir,
$crypto_core_source_dir,
$crypto_source_dir,
@thirdparty_header_dirs, @thirdparty_header_dirs,
); );
my @headers = (map { <$_/*.h> } @header_dirs); my @headers = (map { <$_/*.h> } @header_dirs);
my @source_dirs = ( my @source_dirs = (
$source_dir, $tls_source_dir,
$crypto_core_source_dir,
$crypto_source_dir,
$test_source_dir, $test_source_dir,
$test_drivers_source_dir, $test_drivers_source_dir,
@thirdparty_source_dirs, @thirdparty_source_dirs,

View File

@ -291,7 +291,9 @@ function(add_test_suite suite_name)
# them as PUBLIC. # them as PUBLIC.
target_include_directories(test_suite_${data_name} target_include_directories(test_suite_${data_name}
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../library) PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../library
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../tf-psa-crypto/core
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../tf-psa-crypto/drivers/builtin/src)
# Request C11, which is needed for memory poisoning tests # Request C11, which is needed for memory poisoning tests
set_target_properties(test_suite_${data_name} PROPERTIES C_STANDARD 11) set_target_properties(test_suite_${data_name} PROPERTIES C_STANDARD 11)

View File

@ -4,8 +4,8 @@ include ../scripts/common.make
# Set this to -v to see the details of failing test cases # Set this to -v to see the details of failing test cases
TEST_FLAGS ?= $(if $(filter-out 0 OFF Off off NO No no FALSE False false N n,$(CTEST_OUTPUT_ON_FAILURE)),-v,) TEST_FLAGS ?= $(if $(filter-out 0 OFF Off off NO No no FALSE False false N n,$(CTEST_OUTPUT_ON_FAILURE)),-v,)
# Also include library headers, for the sake of invasive tests. # Also include private headers, for the sake of invasive tests.
LOCAL_CFLAGS += -I../library LOCAL_CFLAGS += -I../library -I../tf-psa-crypto/core -I../tf-psa-crypto/drivers/builtin/src
# Enable definition of various functions used throughout the testsuite # Enable definition of various functions used throughout the testsuite

View File

@ -36,3 +36,5 @@ if(LIB_INSTALL_DIR)
endif() endif()
add_subdirectory(include) add_subdirectory(include)
add_subdirectory(core)
add_subdirectory(drivers)

View File

View File

@ -0,0 +1 @@
add_subdirectory(builtin)

View File

@ -0,0 +1 @@
add_subdirectory(src)