mbedtls/crypto/tests/Makefile
Darryl Green db2b8db715 psa: Add storage implementation for files
Add new functions, psa_load_persistent_key(),
psa_free_persistent_key_data(), and psa_save_persistent_key(), for
managing persistent keys. These functions load to or save from our
internal representation of key slots. Serialization is a concern of the
storage backend implementation and doesn't abstraction-leak into the
lifetime management code.

An initial implementation for files is provided. Additional storage
backends can implement this interface for other storage types.
2018-11-20 15:21:22 +00:00

80 lines
2.2 KiB
Makefile

CFLAGS ?= -O2 -I../include -I../library
WARNING_CFLAGS ?= \
-Werror -Wall -Wextra \
-Wno-unused-function \
-Wno-overlength-strings \
-Wdeclaration-after-statement \
# Don't delete this line.
LDFLAGS ?= -L../library -lmbedcrypto
DEP := ../library/libmbedcrypto.a
# Python executable
PYTHON ?= python
APPS := \
test_suite_psa_crypto \
test_suite_psa_crypto_metadata \
test_suite_psa_crypto_storage_file \
# Don't delete this line.
# Look up for associated function files
func.test_suite_psa_crypto := test_suite_psa_crypto
func.test_suite_psa_crypto_metadata := test_suite_psa_crypto_metadata
func.test_suite_psa_crypto_storage_file := test_suite_psa_crypto_storage_file
.SILENT:
.PHONY: all test clean
all: $(APPS)
$(DEP):
$(MAKE) -C ../library
C_FILES := $(addsuffix .c,$(APPS))
.SECONDEXPANSION:
$(C_FILES): %.c: suites/$$(func.$$*).function suites/%.data scripts/generate_test_code.py suites/helpers.function suites/main_test.function suites/host_test.function
echo " Gen $@"
$(PYTHON) scripts/generate_test_code.py -f suites/$(func.$*).function \
-d suites/$*.data \
-t suites/main_test.function \
-p suites/host_test.function \
-s suites \
--helpers-file suites/helpers.function \
-o .
$(APPS): %: %.c $(DEP)
echo " CC $<"
$(CC) $(CFLAGS) $(WARNING_CFLAGS) $< $(LDFLAGS) -o $@
clean:
rm -rf $(APPS) *.c *.data TESTS
rm -rf data_files/ctr_drbg_seed data_files/hmac_drbg_seed data_files/mpi_write
test: $(APPS)
./test_suite_psa_crypto_metadata
./test_suite_psa_crypto
./test_suite_psa_crypto_storage_file
# Create separate targets for generating embedded tests.
EMBEDDED_TESTS := $(addprefix embedded_,$(APPS))
# Generate test code for target.
.SECONDEXPANSION:
$(EMBEDDED_TESTS): embedded_%: suites/$$(func.$$*).function suites/%.data scripts/generate_test_code.py suites/helpers.function suites/main_test.function suites/target_test.function
echo " Gen ./TESTS/mbedcrypto/$*/$*.c"
$(PYTHON) scripts/generate_test_code.py -f suites/$(func.$*).function \
-d suites/$*.data \
-t suites/main_test.function \
-p suites/target_test.function \
-s suites \
--helpers-file suites/helpers.function \
-o ./TESTS/mbedcrypto/$*
gen-embedded-test: $(EMBEDDED_TESTS)