From 2f386c55ffde293c9e51e77e8f6b0d6c29637408 Mon Sep 17 00:00:00 2001 From: Dave Rodgman Date: Thu, 2 Mar 2023 13:38:33 +0000 Subject: [PATCH 1/3] Disable MBEDTLS_SHA256_USE_A64_CRYPTO_IF_PRESENT for armclang Signed-off-by: Dave Rodgman --- tests/scripts/all.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/scripts/all.sh b/tests/scripts/all.sh index 353ec69070..7bac408cb9 100755 --- a/tests/scripts/all.sh +++ b/tests/scripts/all.sh @@ -3479,6 +3479,10 @@ component_build_armcc () { scripts/config.py baremetal # armc[56] don't support SHA-512 intrinsics scripts/config.py unset MBEDTLS_SHA512_USE_A64_CRYPTO_IF_PRESENT + + # stop armclang warning about feature detection for A64_CRYPTO + scripts/config.py unset MBEDTLS_SHA256_USE_A64_CRYPTO_IF_PRESENT + scripts/config.py set MBEDTLS_HAVE_ASM make CC="$ARMC5_CC" AR="$ARMC5_AR" WARNING_CFLAGS='--strict --c99' lib From 1c232a831116f7f5584cc36e5a178fbfc9bebd5b Mon Sep 17 00:00:00 2001 From: Dave Rodgman Date: Thu, 2 Mar 2023 13:39:04 +0000 Subject: [PATCH 2/3] Enable -Werror for armclang Signed-off-by: Dave Rodgman --- tests/scripts/all.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/scripts/all.sh b/tests/scripts/all.sh index 7bac408cb9..865e18bef9 100755 --- a/tests/scripts/all.sh +++ b/tests/scripts/all.sh @@ -388,7 +388,7 @@ armc6_build_test() msg "build: ARM Compiler 6 ($FLAGS)" ARM_TOOL_VARIANT="ult" CC="$ARMC6_CC" AR="$ARMC6_AR" CFLAGS="$FLAGS" \ - WARNING_CFLAGS='-xc -std=c99' make lib + WARNING_CFLAGS='-Werror -xc -std=c99' make lib msg "size: ARM Compiler 6 ($FLAGS)" "$ARMC6_FROMELF" -z library/*.o From 0fddf829d529b396dc829a4aa4ab152c5782b12d Mon Sep 17 00:00:00 2001 From: Dave Rodgman Date: Thu, 2 Mar 2023 15:32:12 +0000 Subject: [PATCH 3/3] Add more detailed comment Signed-off-by: Dave Rodgman --- tests/scripts/all.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tests/scripts/all.sh b/tests/scripts/all.sh index 865e18bef9..61233f877b 100755 --- a/tests/scripts/all.sh +++ b/tests/scripts/all.sh @@ -3480,7 +3480,12 @@ component_build_armcc () { # armc[56] don't support SHA-512 intrinsics scripts/config.py unset MBEDTLS_SHA512_USE_A64_CRYPTO_IF_PRESENT - # stop armclang warning about feature detection for A64_CRYPTO + # Stop armclang warning about feature detection for A64_CRYPTO. + # With this enabled, the library does build correctly under armclang, + # but in baremetal builds (as tested here), feature detection is + # unavailable, and the user is notified via a #warning. So enabling + # this feature would prevent us from building with -Werror on + # armclang. Tracked in #7198. scripts/config.py unset MBEDTLS_SHA256_USE_A64_CRYPTO_IF_PRESENT scripts/config.py set MBEDTLS_HAVE_ASM