Shorten encoding of version features
Signed-off-by: Dave Rodgman <dave.rodgman@arm.com>
diff --git a/scripts/data_files/version_features.fmt b/scripts/data_files/version_features.fmt
index d3217a1..0e40597 100644
--- a/scripts/data_files/version_features.fmt
+++ b/scripts/data_files/version_features.fmt
@@ -44,6 +44,12 @@
return -1;
}
+ if (strncmp(feature, "MBEDTLS_", 8)) {
+ return -1;
+ }
+
+ feature += 8;
+
while (*idx != NULL) {
if (!strcmp(*idx, feature)) {
return 0;
diff --git a/scripts/generate_features.pl b/scripts/generate_features.pl
index b99c637..f680951 100755
--- a/scripts/generate_features.pl
+++ b/scripts/generate_features.pl
@@ -66,11 +66,14 @@
$in_section = 0;
next;
}
-
- my ($define) = $line =~ /#define (\w+)/;
- $feature_defines .= "#if defined(${define})\n";
+ # Strip leading MBEDTLS_ to save binary size
+ my ($mbedtls_prefix, $define) = $line =~ /#define (MBEDTLS_)?(\w+)/;
+ if (!$mbedtls_prefix) {
+ die "Feature does not start with 'MBEDTLS_': $line\n";
+ }
+ $feature_defines .= "#if defined(MBEDTLS_${define})\n";
$feature_defines .= " \"${define}\",\n";
- $feature_defines .= "#endif /* ${define} */\n";
+ $feature_defines .= "#endif /* MBEDTLS_${define} */\n";
}
if (!$in_section) {