Mbed-TLS / mbedtls-framework

TF-PSA-Crypto and Mbed TLS version-independent build and test framework
Other
1 stars 11 forks source link

Move files from scripts to mbedtls-framework #16

Open ronald-cron-arm opened 1 month ago

ronald-cron-arm commented 1 month ago

The following table lists the files in scripts/. Necessary for the split (CI+code_size_compare.py): 2M+2S +7XS ~ 4M In addition to that: 3S Open questions:

Table columns legend: CI: Directly or indirectly necessary to all.sh F: To be moved to mbedtls-framework (y/n) C: Used in TF-PSA-Crypto S: Work size for the move and potentially changes needed for TF-PSA-Crypto

CI F C S Issue/PR Comment
abi_check.py y y y(1.x) S CI scripts
apidoc_full.sh y y y S called by doxygen.sh, depends on config.py, needs changes for TF-PSA-Crypto
assemble_changelog.py y y y XS 47 adapted to TF-PSA-Crypto
code_style.py y y y XS 48
generate_features.pl + generate_query_config.pl y y y M adapt to mbedtls_config.h split, adapt to tf_psa_crypto_config.h
lcov.sh y y y XS 41 adapted to TF-PSA-Crypto
min_requirements.py y y y XS CI scripts
output_env.sh y y y XS Called by all.sh, basic-build-test.sh
generate_psa_constants.py y y y XS Called by builds, check-generated-files.sh
generate_ssl_debug_helpers.py y y n XS Called by builds, check-generated-files.sh
generate_driver_wrappers.py y n y - branch specific
generate_errors.pl y n n - Error scheme expected to evolve significantly in the short term
generate_visualc_files.pl y(4.x?) n n
make_generated_files.bat y(4.x?) n n
windows_msbuild.bat y(4.x?) n n
basic.requirements.txt y n y - branch specific
ci.requirements.txt y n y - branch specific
driver.requirements.txt y n y - branch specific
maintainer.requirements.txt y n y - branch specific
config.pl y(4.x?) n n - Kept in Mbed TLS for backward compatibility
config.py y n y - branch specific
bump_version.sh n y y S adapt to TF-PSA-Crypto
code_size_compare.py n y y M adapt to mbedtls_config.h split, adapt to tf_psa_crypto_config.h
ecc-heap.sh n y y S depends on benchmark.c, adapt to tf_psa_crypto_config.h
ecp_comb_table.py n n y - Utility to add a new curve in ecp_curves.c, tight to ecp_curves.c code
footprint.sh n y n do we keep it? broken, redundant with code_size_compare.py?
memory.sh + massif_max.pl n y n do we keep it? if yes, adapt to mbedtls_config.h split
prepare_release.sh n y y ? do we keep it?
tmp_ignore_makefiles.sh n y y S do we keep it? if yes, adapt to TF-PSA-Crypto tree
gilles-peskine-arm commented 1 month ago

*.requirements.txt probably should be split differently, with each branch including the framework maintaining requirements for the files that are in that branch. The format supports includes (-r FILENAME, I'm not sure if there are restrictions about directories).

config.pl is for backward compatibility with existing build scripts in 2.x, we should have removed it in 3.x. It's not official but not clearly unofficial either so we should keep it in 3.6 LTS, but it can go away in development.