You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The build scripts in Mbed TLS and TF-PSA-Crypto call several scripts from the framework, and need to know the dependencies of those scripts (data files and auxiliary Python modules). Currently, those dependencies are recorded in **/Makefile and **/CMakeLists.txt in the consuming repositories. Since the dependencies result from code in the framework, we should declare them in the framework repository.
The test data generators all follow the pattern that framework/scripts/generate_xxx_tests.py --list prints the list of output files (and there's --list-for-cmake to produce the same list in a CMake-friendly format). We should expand that, or add another option, to list the dependencies.
The dependencies can include:
Data files (presumably from framework/data_files) referenced in the script.
Python modules from framework/scripts/mbedtls_framework — maybe we can find those automatically using Python introspection?
Source code (e.g. crypto_config.h) read by the script.
An example of where this would have been useful is #83, which required an awkward dance to keep the build scripts working:
In the framework, create a Python module psa_test_case.py.
In consuming branches, add psa_test_case.py as a dependency when running generate_psa_tests.py.
In the framework, start using psa_test_case.py in generate_psa_tests.py.
Update consuming branches with the updated generate_psa_tests.py.
The back-and-forth due to steps 1 and 2 complicate the history of framework updates, which is a pain in itself in the best of cases. We wouldn't need steps 1 and 2 if the framework was the authority for its own dependencies.
The text was updated successfully, but these errors were encountered:
The build scripts in Mbed TLS and TF-PSA-Crypto call several scripts from the framework, and need to know the dependencies of those scripts (data files and auxiliary Python modules). Currently, those dependencies are recorded in
**/Makefile
and**/CMakeLists.txt
in the consuming repositories. Since the dependencies result from code in the framework, we should declare them in the framework repository.The test data generators all follow the pattern that
framework/scripts/generate_xxx_tests.py --list
prints the list of output files (and there's--list-for-cmake
to produce the same list in a CMake-friendly format). We should expand that, or add another option, to list the dependencies.The dependencies can include:
framework/data_files
) referenced in the script.framework/scripts/mbedtls_framework
— maybe we can find those automatically using Python introspection?crypto_config.h
) read by the script.An example of where this would have been useful is #83, which required an awkward dance to keep the build scripts working:
psa_test_case.py
.psa_test_case.py
as a dependency when runninggenerate_psa_tests.py
.psa_test_case.py
ingenerate_psa_tests.py
.generate_psa_tests.py
.The back-and-forth due to steps 1 and 2 complicate the history of framework updates, which is a pain in itself in the best of cases. We wouldn't need steps 1 and 2 if the framework was the authority for its own dependencies.
The text was updated successfully, but these errors were encountered: