mirror of
https://github.com/yuzu-emu/mbedtls.git
synced 2024-12-02 02:04:19 +01:00
Add scripts to create "full" config.h
This commit is contained in:
parent
955028f858
commit
bb3a7f2b20
71
scripts/config-full.pl
Executable file
71
scripts/config-full.pl
Executable file
@ -0,0 +1,71 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
|
||||||
|
use warnings;
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
# Things that shouldn't be enabled.
|
||||||
|
# Notes:
|
||||||
|
# - POLARSSL_X509_ALLOW_EXTENSIONS_NON_V3 and
|
||||||
|
# POLARSSL_X509_ALLOW_UNSUPPORTED_CRITICAL_EXTENSION could be enabled if the
|
||||||
|
# respective tests were adapted
|
||||||
|
my @excluded = qw(
|
||||||
|
POLARSSL_HAVE_INT8
|
||||||
|
POLARSSL_HAVE_INT16
|
||||||
|
POLARSSL_HAVE_SSE2
|
||||||
|
POLARSSL_PLATFORM_NO_STD_FUNCTIONS
|
||||||
|
POLARSSL_ECP_DP_M221_ENABLED
|
||||||
|
POLARSSL_ECP_DP_M383_ENABLED
|
||||||
|
POLARSSL_ECP_DP_M511_ENABLED
|
||||||
|
POLARSSL_NO_DEFAULT_ENTROPY_SOURCES
|
||||||
|
POLARSSL_NO_PLATFORM_ENTROPY
|
||||||
|
POLARSSL_SSL_HW_RECORD_ACCEL
|
||||||
|
POLARSSL_X509_ALLOW_EXTENSIONS_NON_V3
|
||||||
|
POLARSSL_X509_ALLOW_UNSUPPORTED_CRITICAL_EXTENSION
|
||||||
|
POLARSSL_ZLIB_SUPPORT
|
||||||
|
POLARSSL_PKCS11_C
|
||||||
|
_ALT\s*$
|
||||||
|
);
|
||||||
|
|
||||||
|
my $include_dir;
|
||||||
|
|
||||||
|
if( @ARGV ) {
|
||||||
|
die "Invalid number of arguments" if scalar @ARGV != 1;
|
||||||
|
($include_dir) = @ARGV;
|
||||||
|
|
||||||
|
-d $include_dir or die "No such directory: $include_dir\n";
|
||||||
|
} else {
|
||||||
|
$include_dir = 'include/polarssl';
|
||||||
|
|
||||||
|
unless( -d $include_dir ) {
|
||||||
|
chdir '..' or die;
|
||||||
|
-d $include_dir
|
||||||
|
or die "Without arguments, must be run from root or scripts\n"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
my $config_file = "$include_dir/config.h";
|
||||||
|
|
||||||
|
open my $config_read, '<', $config_file or die "read $config_file: $!\n";
|
||||||
|
my @config_lines = <$config_read>;
|
||||||
|
close $config_read;
|
||||||
|
|
||||||
|
my $exclude_re = join '|', @excluded;
|
||||||
|
|
||||||
|
open my $config_write, '>', $config_file or die "write $config_file: $!\n";
|
||||||
|
|
||||||
|
my $done;
|
||||||
|
for my $line (@config_lines) {
|
||||||
|
if ($line =~ /name SECTION: Module configuration options/) {
|
||||||
|
$done = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!$done && $line =~ m!^//\s?#define! && $line !~ /$exclude_re/) {
|
||||||
|
$line =~ s!^//!!;
|
||||||
|
}
|
||||||
|
|
||||||
|
print $config_write $line;
|
||||||
|
}
|
||||||
|
|
||||||
|
close $config_write;
|
||||||
|
|
||||||
|
__END__
|
Loading…
Reference in New Issue
Block a user