my $extension;\r
my $arch;\r
my @inf;\r
-#\r
-# Use PCD to conditionally enable certain openssl features.\r
-# $conditional_feature contains pcd_name:fetures_names pairs\r
-# of conditional features.\r
-# @conditional_feature_dir contains relative_path:pcd_name pairs\r
-# of conditional features in openssl, MUST correspond to the content\r
-# in $conditional_feature.\r
-#\r
-# Configure list [openssl_configuration : new_define_list : new_file_list : pcd]\r
-# 1. no-ec : {NO_EC, NO_ECDH, NO_ECDSA, NO_TLS1_3, NO_SM2} : {/ec/, /sm2/} : PcdOpensslEcEnabled\r
-#\r
-my %conditional_feature = ("PcdOpensslEcEnabled"=>["EC", "ECDH", "ECDSA", "TLS1_3", "SM2"]);\r
-my %conditional_feature_dir = ("/ec/"=>"PcdOpensslEcEnabled", "/sm2/"=>"PcdOpensslEcEnabled");\r
\r
BEGIN {\r
$inf_file = "OpensslLib.inf";\r
push @sslfilelist, ' $(OPENSSL_PATH)/' . $s . "\r\n";\r
next;\r
}\r
- push @cryptofilelist, ' $(OPENSSL_PATH)/' . $s;\r
- foreach (keys(%conditional_feature_dir)) {\r
- if ($s =~ $_) {\r
- push @cryptofilelist, ' |*|*|*|gEfiCryptoPkgTokenSpaceGuid.' . $conditional_feature_dir{$_};\r
- }\r
- }\r
- push @cryptofilelist, "\r\n";\r
+ push @cryptofilelist, ' $(OPENSSL_PATH)/' . $s . "\r\n";\r
}\r
}\r
}\r
push @sslfilelist, ' $(OPENSSL_PATH)/' . $_ . "\r\n";\r
next;\r
}\r
- push @cryptofilelist, ' $(OPENSSL_PATH)/' . $_;\r
- foreach my $conditional_key (keys(%conditional_feature_dir)) {\r
- if ($_ =~ $conditional_key) {\r
- push @cryptofilelist, ' |*|*|*|gEfiCryptoPkgTokenSpaceGuid.' . $conditional_feature_dir{$conditional_key};\r
- }\r
- }\r
- push @cryptofilelist, "\r\n";\r
+ push @cryptofilelist, ' $(OPENSSL_PATH)/' . $_ . "\r\n";\r
}\r
\r
\r
system(\r
"perl -pe 's/\\n/\\r\\n/' " .\r
"< " . $OPENSSL_PATH . "/include/openssl/opensslconf.h " .\r
- "> " . $OPENSSL_PATH . "/../../Include/openssl/opensslconf_generated.h"\r
+ "> " . $OPENSSL_PATH . "/../../Include/openssl/opensslconf.h"\r
) == 0 ||\r
die "Cannot copy opensslconf.h!";\r
print "Done!";\r
"> " . $OPENSSL_PATH . "/../../Include/crypto/dso_conf.h"\r
) == 0 ||\r
die "Cannot copy dso_conf.h!";\r
-print "Done!";\r
-\r
-#\r
-# Add conditional feature to opensslconf.h\r
-#\r
-my $conf_file = "../Include/openssl/opensslconf.h";\r
-my @conf_raw = ();\r
-my @conditional_define = ();\r
-print "\n--> Updating conditional feature in $conf_file ... ";\r
-\r
-foreach my $pcd_name (keys(%conditional_feature)) {\r
- push @conditional_define, "#if !FixedPcdGetBool ($pcd_name)\r\n";\r
- foreach (@{$conditional_feature{$pcd_name}}) {\r
- push @conditional_define, "# ifndef OPENSSL_NO_$_\r\n";\r
- push @conditional_define, "# define OPENSSL_NO_$_\r\n";\r
- push @conditional_define, "# endif\r\n";\r
- }\r
- push @conditional_define, "#endif\r\n";\r
-}\r
-\r
-open( FD, "<" . $conf_file ) ||\r
- die $conf_file;\r
-foreach (<FD>) {\r
- # Insert conditional define to the begin of opensslconf.h\r
- if ($_ =~ "Autogenerated conditional openssl feature list starts here") {\r
- push @conf_raw, $_, @conditional_define;\r
- $subbing = 1;\r
- next;\r
- }\r
- if ($_ =~ "Autogenerated conditional openssl feature list ends here") {\r
- push @conf_raw, $_;\r
- $subbing = 0;\r
- next;\r
- }\r
- push @conf_raw, $_\r
- unless ($subbing);\r
-}\r
-close(FD) ||\r
- die $conf_file;\r
-\r
-open( FD, ">" . $conf_file ) ||\r
- die $conf_file;\r
-print( FD @conf_raw ) ||\r
- die $conf_file;\r
-close(FD) ||\r
- die $conf_file;\r
print "Done!\n";\r
\r
print "\nProcessing Files Done!\n";\r